【问题标题】:Web client classification using Artifical Neural Network使用人工神经网络的 Web 客户端分类
【发布时间】:2011-01-18 04:14:47
【问题描述】:

我有一个高流量的网站。
我想创建一个软件来即时分析客户端请求并确定它们是来自真实用户还是僵尸网络机器人。为了训练神经网络识别合法(“好”)用户,我可以在没有 DDoS 活动时使用日志。一旦经过训练,网络就会将真实用户与机器人区分开来。

我有什么:

  • 请求 URI(和订单)
  • 饼干
  • 用户代理
  • 请求频率。

关于如何为这项任务设计最佳人工神经网络以及如何调整它有什么想法吗?

编辑:[回应 cmets 关于这个问题范围过于广泛的问题]

我目前有一个可用的 C# 程序,它根据相同请求的频率阻止客户端。现在我想用一个基于神经网络的分类器来提高它的“智能”。
我不知道如何为 ANN 标准化这些输入,我需要在这个特定领域提出建议。

【问题讨论】:

  • 这是一个范围非常广泛的问题——因为整个计算机科学学科都致力于回答这个问题。
  • 这是一个广泛的问题。你试过了吗?
  • 没有。我有一个可用的 C# 程序,它可以根据相同请求的频率阻止客户端。但现在我想用神经网络提高它的“智能”。我不知道如何为 ANN 标准化这些输入。
  • 有趣的问题,但我希望您意识到,当数据包到达您的服务器时,缓解 DDoS 攻击已经为时已晚。如果您的上游连接已饱和,从机器人中区分真实用户有什么好处?
  • 这取决于 DDoS 攻击的类型。如果当机器人试图多次请求 index.php 时,攻击的目标是您的 CPU 或内存,那么这与流量无关,而与您的 CPU 和内存有关,您可以阻止这些机器人并释放您的 CPU 时间和内存。

标签: artificial-intelligence neural-network


【解决方案1】:

这并不适合神经网络。提供了很好的神经网络(作为粗略指南):

  1. 您可以节省处理能力,
  2. 数据不是临时的,
  3. 输入数据是有限的,

我不认为你真的通过了这些。

【讨论】:

  • (2) - 你是什么意思? (3) - 数据是有限的。例如,您可以传递 5 个请求并询问 ANN 它是否看起来像真实用户。我认为 NN 对数据进行分类是一项很好的任务,不是吗?
  • 数据是时间的,它有时间信息。这取决于您在 NN 中输入的信息是否是有限的(实际上固定长度更好地描述了此属性)。我不想阻止你尝试这个,但我不希望它会起作用。
  • “数据是时间的,它有时间信息” - 不,你可以将时间增量传递给 NN
  • 时间的 - “时间的或与时间有关的”,它仍然是时间的。
【解决方案2】:

Re:规范化输入:您将输入数据映射到一组符号(然后将其转换为数字),或者将输入映射到浮点数,其中数字代表某种程度的强度。您可以将任何类型的数据映射到任何类型的方案,但是当问题解决方案是非线性时,您真的只想使用 ANN(一个分类的另一个分类的所有数据不能聚集在一条线的一侧,所有线另一侧的其他分类的数据)。在这两种情况下,您最终都会得到一个与输出相关的输入向量([BOT, HUMAN] 或 [BOT, HUMAN, UNKNOWN] 或 [BOT, PROBABLY-BOT, PROBABLY-HUMAN, HUMAN] 等)。

您如何区分两个用户同时提交完全相同的图书请求(假设您正在销售图书)?

【讨论】:

  • 真的比我想象的要复杂
猜你喜欢
  • 2011-11-19
  • 1970-01-01
  • 1970-01-01
  • 2014-11-08
  • 2014-10-09
  • 2011-01-22
  • 2011-07-13
  • 2017-10-10
相关资源
最近更新 更多