【问题标题】:Anomaly detection python异常检测python
【发布时间】:2020-06-01 12:45:41
【问题描述】:

我有一个数据集,每个点有 7 个参数:

  • counterOfPackets
  • counterOfSyn
  • counterOfPa
  • counterOfR
  • counterOfRA
  • counterOfFin
  • packetsTotalSize

我想找到一种方法将所有异常值添加到 python 列表中(而不是 plt.show GUI)。 我应该使用什么算法以及如何将结果作为 python 列表查看? 感谢您的帮助:D

【问题讨论】:

  • 异常检测是一个非常广泛的研究领域。您能否解释您的数据或提供数据中异常值或异常的定义?
  • @sim 感谢您的快速重播。我有我嗅探到的网络数据,我希望能够将数据分类为多种攻击,例如 syn flood 等。当然,知道哪些数据是好的,哪些数据是攻击之一。

标签: python machine-learning dataset artificial-intelligence outliers


【解决方案1】:

Will Badr 在 Medium 上的这个页面是一个很好的资源 - https://towardsdatascience.com/5-ways-to-detect-outliers-that-every-data-scientist-should-know-python-code-70a54335a623。就使用什么异常值检测算法而言,答案取决于数据的分布。我发现使用标准偏差和四分位间距的距离来识别异常值是成功的。但是,这些方法比正态分布更有效,在我的场景中,我找到了将数据转换为正态分布而不影响结果的方法。

【讨论】:

  • 我尝试了方法 2,并设法得到了箱线图,但是如何将数据作为列表?我与视觉形象无关
  • 嘿@Lidorelias3,您需要复制箱线图中使用的逻辑,即选择值高于或低于四分位间距1.5倍的行,公式在中再次解释中篇文章。您可以使用scipy.stats.iqr 计算四分位数间距(docs.scipy.org/doc/scipy/reference/generated/…)。希望这会有所帮助。
猜你喜欢
  • 2019-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-16
  • 2014-05-06
  • 2020-08-27
  • 2019-07-24
  • 2017-12-26
相关资源
最近更新 更多