【发布时间】:2016-05-07 06:57:58
【问题描述】:
我有 150 张图片,10 个不同的人各 15 张。所以基本上我知道哪个图像应该属于一起,如果集群。
这些图像有 73 个维度(特征向量),我使用 matlab 中的 kmeans 函数将它们聚类为 10 个簇。
后来,我处理了这 150 个数据点,并将其维度从 73 减少到 3 以用于我的工作,并对它们应用相同的 kmeans 函数。
我想通过应用相同的 k-means 函数来比较在这些数据集(已处理和未处理)上获得的结果,并希望知道将其降低到较低维度的处理是否改善了 kmeans 聚类。
我认为比较每个集群的方差可以作为比较的一个参数,但是我不确定我是否可以直接比较和评估我的结果(在集群距离之和等范围内),因为这两种情况的维度不同。谁能建议我可以比较kmean结果的方法,使它们标准化的方法或我可以进行的任何其他比较?
【问题讨论】:
-
你考虑过silhouettes吗?
-
@Dan 谢谢你的参考,我是新手,还没有考虑过剪影。据我了解,比较两种情况下的轮廓值(“未处理”73 维和“已处理”3 维中的相同数据点)可能不需要任何其他形式的归一化,是这样吗?
-
由于 kmeans 是一个分类器,您可以通过查看每个分类器中正确分类的图像数量来比较两个不同的分类器(在您的情况下,kmeans 的亮度为 73 与 kmeans 的亮度为 3)。此外,由于 kmeans 分配了 closes 集群的标签,因此您可以通过比较与最近集群的距离和与第二近集群的距离来了解模型的稳健程度。该距离之间的“大”差异转化为对噪声的良好鲁棒性(由于噪声而误分类的可能性低)。
标签: matlab machine-learning cluster-analysis data-mining k-means