聚类算法:层次聚类、DBSCAN 方法与数据分区
1. 数据准备与增量算法应用
首先,我们来看如何生成数据以及应用增量算法。以下代码用于生成数据:
data = Table[RandomVariate[
MultinormalDistribution[c[[i]], kov], m], {i,Length[c]}
]];
A = Flatten[data, 1];
这里生成的集合 A 包含 m = 1200 个数据。接着,使用 LS 距离类函数对集合 A 应用增量算法,并确定具有 2 到 8 个聚类的 LOParts。不过,目前还未明确哪个分区的聚类数量最为合适。
2. 层次聚类算法
2.1 层次聚类算法概述
层次聚类算法是寻找最优分区的一种方法,在人文、生物、医学、考古以及计算机科学等领域都有广泛应用。其基本思想是从一个已知的分区 (k) 出发,构建一个新的分区 (r),可以是将至少两个聚类合并为一个(r < k,聚合算法),也可以是将一个聚类拆分为至少两个(r > k,分裂算法)。
2.2 嵌套分区的概念
定义 4.26 指出,如果满足以下两个条件,则称分区 (k) 嵌套于分区 (r),记为 (k) ⊏(r):
- r < k;
- (k) 中的每个聚类都是 (r) 中某个聚类的子集。
2.3 聚合算法
这里主要考虑聚合算法,它在每一步最多合并当前 k - 分区 (k) 中的两个聚类。为了选择这两
超级会员免费看
订阅专栏 解锁全文
33

被折叠的 条评论
为什么被折叠?



