如何评价聚类结果的好坏
发布网友
发布时间:2022-05-10 10:24
我来回答
共1个回答
热心网友
时间:2022-07-13 17:39
常见的聚类评测指标有纯度和 F 值,其中 F 值更为常用。
F 值的更普适的应用是信息检索的结果,其计算包括了两个指标:召回率(Recall Rate)和准确率(Precision Rate)。
召回率的定义为:检索出的相关文档数和文档库中所有的相关文档数的比率,衡量的是检索系统的查全率;
准确率的定义为:检索出相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准率;F 值为两者的调和平均值。
如果不知道预定义类与聚类的对应关系,就需要得到每一个预定义类与每一个聚类之间的 F 值,其计算方法如下:
precision[i][j] = 预定义第 i 类并被分配到第 j 个聚类的文档数 / 第 j 个聚类中的文档数
recall[i][j] = 预定义第 i 类并被分配到第 j 个聚类的文档数 / 预定义第 i 类的文档数
f[i][j] = 2 * precision[i][j] * recall[i][j] / (precision[i][j] + recall[i][j])
这样就得到了每一个预定义类与每一个聚类之间的 F 值,这在逻辑上构成了二分图关系,边权即为 F 值,目标是找到一个二分图完美匹配使得如下加权平均 F 值最大:
F-measure = sum(f[i][j] * 第 i 个预定义类的文档数) / 总文档数
方法为最大费用最大流或者 KM 算法。如果数据量较小,直接枚举匹配也是可以接受的方法。