CLARA (Clustering LARge Applications,大型应用中的聚类方法)(Kaufmann and Rousseeuw in 1990):不考虑整个数据集, 而是选择数据的一小部分作为样本.
CLARA算法的步骤:
它从数据集中抽取多个样本集, 对每个样本集使用PAM, 并以最好的聚类作为输出
CLARA 算法的步骤:
(1) for i = 1 to v (选样的次数) ,重复执行下列步骤( (2) ~ (4) ) :
(2) 随机地从整个数据库中抽取一个N(例如:(40 + 2 k))个对象的样本,调用PAM方法从样本中找出样本的k个最优的中心点。
(3)将这k个中心点应用到整个数据库上, 对于每一个非代表对象Oj ,判断它与从样本中选出的哪个代表对象距离最近.
(4) 计算上一步中得到的聚类的总代价. 若该值小于当前的最小值,用该值替换当前的最小值,保留在这次选样中得到的k个代表对象作为到目前为止得到的最好的代表对象的集合.
(5) 返回到步骤(1) ,开始下一个循环.
算法结束后,输出最好的聚类结果
CLARA算法的优点与缺点:
优点: 可以处理的数据集比 PAM大
缺点: 1有效性依赖于样本集的大小 2基于样本的好的聚类并不一定是整个数据集的好的聚类, 样本可能发生倾斜
例如, Oi是整个数据集上最佳的k个中心点之一, 但它不包含在样本中, CLARA将找不到最佳聚类