问题标签 [anomaly-detection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1196 浏览

elasticsearch - 使用机器学习创建异常检测

弹性堆栈的新x-pack ML给我留下了深刻的印象。似乎他们的技术随着时间的推移学习数据模式,并且可以预测多个域中的异常。

在此处输入图像描述

放大: 在此处输入图像描述

我想知道可以使用什么方法和网络拓扑来创建类似的功能。假设由于 x-pack 适用于时间序列数据,RNN 将是一个好的开始,这是否公平?

对您的意见和参考感兴趣。

0 投票
1 回答
726 浏览

machine-learning - 无标签机器学习异常检测

我在一段时间内跟踪多个信号并将它们与时间戳相关联,如下所示:

其中 t0 是戳戳,1 是信号 1 的值,10 是信号 2 的值,依此类推。

在特定时间段内捕获的数据应视为正常情况。现在应该从正常情况中检测到重要的推导。通过显着推导,我并不是说一个信号值只是更改为在跟踪阶段未看到的值,而是指许多尚未相互关联的值更改。我不想硬编码规则,因为将来可能会添加或删除更多信号,并且可能会实现具有其他信号值的其他“modi”。

这可以通过某种机器学习算法来实现吗?如果发生一个小的推导,我希望算法首先将其视为对训练集的微小更改,如果它在未来多次发生,则应该“学习”。主要目标是检测更大的变化/异常。

我希望我能足够详细地解释我的问题。提前致谢。

0 投票
1 回答
1834 浏览

python - 隔离森林

我目前正在使用 Python 中的 IsolationForest 方法识别数据集中的异常值,但不完全理解 sklearn 上的示例:

http://scikit-learn.org/stable/auto_examples/ensemble/plot_isolation_forest.html#sphx-glr-auto-examples-ensemble-plot-isolation-forest-py

具体来说,图表实际上向我们展示了什么?观察结果已经被定义为正常/异常值——所以我假设等高线图的阴影表明该观察结果是否确实是异常值(例如,具有较高异常分数的观察值位于较暗的阴影区域?)。

最后,如何实际使用以下代码部分(特别是 y_pred 函数)?

我猜它只是为了完整性而提供的,以防有人想要打印输出?

在此先感谢您的帮助!

0 投票
2 回答
2851 浏览

scikit-learn - sklearn:使用隔离森林进行异常检测

我有一个不包含异常值的训练数据集:

而且,我还有另一组测试向量 ( test_vectors),它们都是异常值。

这是我进行异常值检测的尝试:

因此,这里的异常值百分比约为 10%,这是 sklearn 中用于隔离森林的默认污染参数。请注意,训练集中没有任何异常值。

测试代码和结果:

所以,它只检测到 100 个异常中的 17 个。有人可以告诉我如何提高性能。我完全不确定为什么该算法需要用户指定污染参数。我很清楚它被用作阈值,但我如何事先知道污染水平。谢谢!

0 投票
1 回答
3043 浏览

python - 使用python进行高维异常值检测

有人可以请我指出一个强大的 python 实现算法,如 Robust-PCA 或基于角度的异常值检测 (ABOD) 吗?我尝试了几个 Robust-PCA 的 python 实现,但结果证明它们非常占用内存,程序崩溃了。我的数据集是 60,000 X 900 浮点数。R 有 ABOD 的实现,但我想坚持使用 python。

0 投票
0 回答
39 浏览

pandas - 什么时候适合在拟合之前将特征转换为对数值

我计划使用一类 SVM实现异常检测。我拥有的数据有 25 个特征,其中一些列具有独特的变化,例如趋势和季节性。

我试图将趋势和季节性特征转换为对数值。我发现分布已从偏斜变为正常。

不过,我不确定转换是否可行。另外,我不确定它在装配过程中可能会造成什么后果。

如果有人能强调将特征转换为对数值和/或任何其他可以减轻时间序列变化影响的技术的最佳情况,将不胜感激。

0 投票
2 回答
5378 浏览

python - TensorFlow 异常检测

我被要求使用 tensorflow 和 python 创建一个机器算法,该算法可以通过创建一系列“正常”值来检测异常。我有两个参数,一大堆大约 1.5 的浮点数和时间戳。从基本意义上讲,我还没有看到使用 tensorflow 的类似线程,并且由于我是技术新手,所以我希望制造一台更基本的机器。但是,我希望它不受监督,这意味着我没有指定异常是什么,而是大量过去的数据。谢谢,我正在运行 python 3.5 和 tensorflow 1.2.1。

0 投票
1 回答
3396 浏览

python - Scikit-Learn 的 IsolationForest 决策函数得分范围是多少?

Scikit-Learn 的IsolationForest类有一个方法decision_function可以返回输入样本的异常分数。但是,文档并没有说明这些分数的可能范围是多少,只是说“[分数]越低,越不正常。”

编辑:阅读 jmunsch 的评论后,我再次查看了源代码,这是我更新后的猜测:如果分数公式中的指数始终为负,那么分数将始终介于 0 和 1 之间,这意味着返回的范围是 [- 0.5, 0.5] 因为0.5 - scores由方法返回。但我不确定指数是否总是负数。

0 投票
1 回答
31 浏览

apache-spark - Spark - 评估问题

我正在尝试评估我创建的模型。该模型在输出中为我提供了一个 id 列表及其对应的错误构造(一个分数),并且 id 根据这个分数进行排序。假设分数越高,id 越可疑。

例子:

另外,我还有另一个列表,其中包含真正的可疑 ​​ID。

我的目标是能够说我的可疑列表中的 x% 的 id 在分数列表中位于前 y%。

请问有什么想法吗?和火花的实施将是你的慷慨!

0 投票
0 回答
89 浏览

time-series - 在比较时间序列时,如何实时弥补时间错位?

图片:使用 DTW 对齐两个时间序列。资料来源:维基百科

我正在尝试自动从时间序列中提取特征并学习模式。然而,某些算法期望训练样本在时间上对齐。使用 DTW(动态时间扭曲)- 算法或其子类型之一,可以通过在时间维度上扭曲时间序列来对齐时间序列,以适应平均序列。各个时间序列将具有任意长度(50 - 10000 个数据点),而无法预见沿时间轴的最大偏移(这对处理时间有负面影响)。

关于计算复杂性(DTW 的 O(N^2)),我可以使用哪些替代方案或更改来使 alignmet 实时可行?

任何帮助,将不胜感激。谢谢!