我想使用k-means聚类来对测试数据进行分类,基于训练数据,这两者都有3个类别(1、2和3)。
如何使用kmeans聚类(例如使用Matlab)对测试数据集进行分类,例如使用k=10的聚类大小?我知道可以设置k=3,然后使用最近邻方法根据其最近的聚类大小来识别数据…但不确定对于k=3以外的值该使用什么?如何为这10个聚类中的每一个标记标签?
谢谢
回答:
不太清楚你到底想做什么,尽管这里是我理解的概要。
当你对数据进行聚类时,理想情况下标签是不存在的,因为你要么使用聚类来从数据中获取洞察,要么将其用于预处理。
不过,如果你想进行聚类,然后根据聚类中心的接近程度为新数据点分配类别ID,你可以这样做。
首先,你通过自助法或其他方法选择k
,可能使用轮廓系数。一旦你得到聚类中心,检查哪个中心与新数据点最接近,并相应地分配类别ID。
在这种情况下,你可能有兴趣使用Rand指数或调整后的Rand指数,来评估聚类质量。