相比于监督学习,非监督学习通常没有标注数据,模型,算法的设计直接影响最终的输出和模型的性能。为了评估不同聚类算法的性能优劣,我们需要了解常见的数据簇的特点。
以中心定义的数据簇;这类数据集合倾向于球形分布,通常中心被定义为质心,即此数据簇所有店的平均值。集合中的数据到中心的距离相比到其他簇中心的距离更近。
以密度定义的数据簇:这类数据集合呈现和周围数据簇明显不同的密度,或稠密或稀疏。当数据簇不规则或互相盘绕,并且有噪声和离群点时,常常使用基于密度的簇定义。
以连通定义的数据簇:
这类数据集合中的数据点和数据点之间有连接关系,整个数据簇表现为图结构。该定义对不规则形状或者缠绕数据簇有效。
以概念定义的数据簇:
这类数据集合中的所有数据点具有某种共同性质。
由于数据以及需求的多样性,没有一种算法能够适应于所有的数据类型,数据簇或应用场景,似乎每种情况都可能需要一种不同的评估方法或度量标准。例如:K均值聚类可以用误差平方和来评估,但是基于密度的数据簇可能不是球形,误差平方和则会失效。
在许多情况下,判断聚类算法的好坏强烈依赖于主观解释,尽管如此,聚类算法的评估还是需要的,他是聚类分析中十分重要的部分之一。
聚类评估的任务是估计在数据集上进行聚类的可行性,以及聚类方法产生结果的质量。这一过程又分为三个子任务。
1.估计聚类趋势
这一步骤是检测数据分布中是否存在非随机的簇结构。如果数据是基本随机的,那么聚类的结果也是毫无意义的。我们可以观察聚类误差是否随聚类类别数量的增加而单调变化,如果数据是基本随机的,及不存在非随机簇结构,那么聚类误差随聚类类别数量增加而变化的幅度应该不显著,并且也找不到一个合适的K 对应数据的真实簇数。