首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多维孤立点的发现

多维孤立点的发现
EN

Data Science用户
提问于 2016-04-30 06:11:50
回答 3查看 2.1K关注 0票数 2

我正在处理一个非正态分布的数据集。数据集包含成本、折扣和利润三个维度。

我试图在所有这些维度中找出可能的离群点。我使用Z-得分来检测单维的离群值,以找出导致异常值的高成本。

作为下一步,我试图找到高成本,高利润和低折扣的离群点。

我想出了一个公式:

代码语言:javascript
复制
Zscore(cost) + Zscore(profit) - Zscore(discount)

负号,因为我想找到折扣低的离群点。

这样做有意义吗?或者,是否有进一步证明的方法来实现这一目标?

EN

回答 3

Data Science用户

发布于 2016-06-29 19:56:10

你考虑过使用Mahalanobis距离吗?它可以被认为是多维Z-分数的大小。

我更喜欢看Mahalanobis距离的方式是多元正态分布指数的平方根。这类似于Z-分数,它是应用平方之前的单变量正态分布的指数。两者之间的一个很大的区别是Z分数是有符号的,而Mahalanobis距离是无符号的,这对于寻找离群点并不重要。

我知道你没有正态分布的数据,但有时假装你的数据是正态分布的会有很好的效果,所以使用Mahalanobis距离值得研究。

票数 2
EN

Data Science用户

发布于 2016-04-30 08:48:35

因为您的数据是正态分布的(高斯),所以您可以很容易地尝试用您想要的语言实现这个来自coursera:https://class.coursera.org/ml-005/lecture/91的alghoritm。

票数 0
EN

Data Science用户

发布于 2016-05-30 13:40:23

如果你确定你要找的是什么,那么使用Z-得分就可以了。它也可以仅仅是在使用一些ML之前转换数据的一种方式。请注意,Z-得分适用于正态分布的数据(您说情况并非如此)。也要注意,在三维中寻找离群点并不像在1维中寻找3次异常值那么简单。你应该把你的数据绘制成3D,并试图找出哪里可能是异常值。

否则,单类支持向量机就能很好地检测异常/异常值。看看简介这里。此外,任何聚类算法都可能有助于获得更好的洞察力。例如,DBSCAN帮助您根据数据的密度找到集群。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/11518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档