哪个是寻找异常值的最佳聚类算法?

时间:2011-06-27 01:31:04

标签: cluster-analysis data-mining outliers

基本上我有一些每小时和每日的数据,如

第1天

小时,测量 (1,21) (2,22) (3,27) (4,24)

第2天 小时,测 (1,23) (2,26) (3,29) (4,20)

现在我想通过考虑每小时变化以及使用双变量分析的每日变化来查找数据中的异常值...其中包括每小时和度量......

那么考虑到这种情况,哪种最佳聚类算法更适合寻找异常值?

3 个答案:

答案 0 :(得分:2)

一个'好'建议(:P)我可以给你的是(根据我的经验)处理类似于空间特征的时间并不是一个好主意。所以要注意这样做的解决方案。您可能可以从异常检测中搜索时间序列数据的文献开始。

答案 1 :(得分:2)

你真的应该对你的数据使用不同的重复表示。

如果要检测异常值,为什么不使用实际的异常值检测方法?

除此之外,请阅读一些文献。例如,已知k-means具有异常值的问题。另一方面,DBSCAN被设计用于具有“噪声”(DBSCAN中的N)的数据,其基本上是异常值。

但是,您表示数据的方式仍然不能很好地完成这些工作。

答案 2 :(得分:1)

由于您的数据的性质(它有自己的季节性,趋势,自相关等),您应该使用基于时间序列的离群值检测方法。基于时间序列的异常值具有不同的类型(AO,IO等),并且它有点复杂,但有些应用程序可以很容易地实现。

http://cran.r-project.org/下载最新的R版本。安装软件包“forecast”& “TSA”。

使用预测包的auto.arima函数来获取适合您的数据的最佳模型,并将这些变量与您的数据一起传递给检测器。检测TSA功能。这些函数将弹出数据中存在的任何异常值及其时间索引。

R也很容易与其他应用程序集成,或者只是简单地运行批处理作业....希望有帮助......