神经网络,遗传算法作为入侵检测系统

G G*_* Gr 5 c# algorithm neural-network genetic-algorithm

嗨,我需要一些帮助才能开始创建我的第一个算法; 我想创建一个NN /遗传算法用作入侵检测系统.

但我正在努力解决一些问题(之前从未写过算法.)

  1. 我想在C#中开发是否可以作为控制台应用程序?如果是这样的话,作为一个先驱,程序大致会有多大,最简单的形式.它甚至可能在c#中?
  2. 如何连接程序以从网络读取数据?如何将数据包转换为算法的可读数据.
  3. 如何让程序为snort或其他形式的防火墙编写规则,并阻止程序认为是潜在的威胁.(即它发现来自No.2的威胁然后它将规则写入阻止特定流量的snort规则页面)
  4. 如何跟踪数据.(它阻止了什么观察它得出的结论)
  5. 将它放在网络上的哪个位置?(该程序可以连接到其他算法并在同一网络上共享数据,这将是有益的)

如果有人能帮助我开始正确的方向或解释有什么其他替代品,如模糊逻辑等,为什么它被视为黑匣子?

key*_*rdP 3

是的,控制台应用程序和 C# 可用于创建神经网络。当然,如果您想要 UI 具有更多视觉效果,您将需要使用 WinForms/WPF/Silverlight 等。由于没有足够的信息来说明您想要做什么,因此无法判断程序有多大。此外,只要高效,尺寸就不应该成为问题。

我认为这是某种最后一年的项目?您使用什么类型的神经网络?您应该阅读一些有关使用神经网络进行入侵检测的学术论文/白皮书来获得一个想法。例如,此PDF包含一些可能有帮助的信息。

您应该一次迈出一步。创建神经网络与在 Snort 中创建新规则是分开的。一次只处理一个主题,否则你会不知所措。考虑到最困难的部分很可能是神经网络,您应该首先关注它。

不太可能有人会与您一起完成每一步,因为这是一个相当大的项目。展示您所做的事情并解释您需要帮助的地方。

  • @Garrith:这不是一个非此即彼的事情。NN是一种模型结构,而GA是一种训练机制。NN 中的权重不会与 GA 中的权重混淆,它们是相同的参数。遗传算法找到权重,神经网络处理数据,这一切都是高度递归的(遗传算法需要知道每组权重在神经网络中实现时的表现如何,因为这些信息指导适者生存)。 (2认同)