首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >K-Means距离度量-大数据和混合尺度

K-Means距离度量-大数据和混合尺度
EN

Stack Overflow用户
提问于 2018-08-22 01:55:58
回答 4查看 339关注 0票数 1

我有一个关于k-means聚类的问题。我们有一个包含120,000个观测值的数据集,需要使用R计算k-means聚类解决方案。问题是k-means通常使用欧几里德距离。我们的数据集由3个连续变量、11个序数(Likert0-5)(我认为像处理连续变量一样处理它们)和5个二进制变量组成。你有什么关于距离度量的建议,我们可以使用k-means方法来处理“大”数据集吗?我们坚持使用k-means,所以我真的希望你们中有一个人有好主意。

干杯,

马丁

EN

回答 4

Stack Overflow用户

发布于 2018-08-22 02:32:30

一种方法是对特征进行归一化,然后只使用11维欧几里德距离。将二进制值转换为0/1 (嗯,它是R,所以无论如何它都是这样做的),然后从那里开始。

我看不出这种方法有什么直接的问题,除了11维的k-means肯定很难解释。你可以尝试使用降维技术,希望让k-means输出更容易阅读,但你对数据集的了解远远超过我们,所以我们帮助你的能力是有限的。

票数 0
EN

Stack Overflow用户

发布于 2018-08-22 08:06:21

你当然也可以把这些二进制变量编码为0,1。

统计中最佳实践是不将likert尺度变量视为数字,因为其分布不均匀。

但我不认为你会得到有意义的k-means聚类。该算法都是关于计算手段的。这在连续变量上是有意义的。离散变量通常缺乏“分辨率”才能很好地工作。然后三个均值降级为一个“频率”,然后数据应该以非常不同的方式处理。

不要用锤子来选择问题。也许你的数据不是钉子;即使你想用kmeans来做,它也不会解决你的问题……相反,阐述您的问题,然后选择正确的工具。那么,考虑到您的数据,什么是好的集群?除非你有一个方程式来衡量这一点,否则处理数据不会解决任何问题。

票数 0
EN

Stack Overflow用户

发布于 2018-08-22 11:42:07

将变量编码为二进制并不能解决根本问题。相反,它只会帮助增加数据维度,这是一个额外的负担。统计学中的最佳实践是不要将原始数据更改为任何其他形式,例如从连续到分类,反之亦然。但是,如果你这样做,即数据转换,那么它必须与要解决的问题同步,并且必须提供有效的理由。

继续下去,正如其他人所说的,首先尝试降低数据集的维度。检查问题,如,missing valuesoutlierszero varianceprincipal component analysis (continuous variables)correspondence analysis (for categorical variables)等。这可以帮助你降低维数。毕竟,数据预处理任务构成了分析的80%

关于混合数据类型的距离度量,您应该知道k中的mean只适用于continuous变量。所以,我不理解对混合数据类型使用k-means算法的logic?考虑选择其他算法,如k-modes。k-modes是k-means的扩展。它不使用距离,而是使用不相似性(即,量化两个对象之间的总不匹配:该数字越小,两个对象越相似)。它使用的不是方法,而是模式。模式是元素的向量,它最小化了向量本身与数据的每个对象之间的不同之处。

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

https://stackoverflow.com/questions/51954240

复制
相关文章

相似问题

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