如何用K Means做异常点检测?

  统计/机器学习 无监督学习    浏览次数: 598
0

如何用K Means做非监督的异常点检测?有什么思路吗?谢谢!


 

ggg818   2018-05-05 13:00



   3个回答 
3

类似于one-class SVM,先用干净的数据(没有异常点)得到一个K Means。然后把测试集(包含异常点)根据之前KMeans的结果进行聚类,如果一个点距离它最近的中心超过之前训练集里的最大距离的话,就判断它为异常点。


SofaSofa数据科学社区 DS面经 问答 实战

matt   2018-10-06 14:39

0

可以考虑离每簇的centroid最远的点,它们就是异常点。

SofaSofa数据科学社区 DS面经 问答 实战

数据痴汉   2018-05-27 00:07

补充下:可能用基于概率密度的聚类方法更好点。 - 数据痴汉   2018-06-07 13:34
0

如果没有训练数据,可以考虑人为设定一定比例(比如0.1%)为异常点,或把距离的histogram画出来,找个拐点设定距离的阈值,大于这个阈值的是异常点。

SofaSofa数据科学社区 DS面经 问答 实战

Zealing   2018-10-07 05:17



  相关主题

k-medoids和k-means区别   3回答

通俗地解释c-means以及fuzzy c-means是什么意思   1回答

关于online KMeans步骤中成员更新分类的问题?   1回答

关于小批量K均值(mini-batch K Means)的问题   3回答

K-Means实现mini-batch online learning的原理是什么?   1回答

K Means初始点必须是样本中的点吗   2回答

Jenks和K Means在一维数据时,是不是等价的?   2回答

K-MEANS初始点选择的问题   2回答

K-means怎么选K?   6回答

为什么K Means算法对样本的输入顺序比较敏感?   2回答

二分法K Means的算法是什么?和普通的K Means有什么区别?   2回答

进行K-Means聚类前,需要对数据做怎样的预处理?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!