[论文]Coordination of Cluster Ensembles via Exact Methods
作者:Ioannis T. Christou, Member, IEEE
IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 33, NO. 2, FEBRUARY 2011
Index Terms—Clustering, machine learning, constrained optimization, combinatorial algorithms
一遍关于聚类集成的论文,作者提出了一种新方法:EXAMCE,适用于类内部准则(intracluster criteria),例如Minimum-Sum-of-Squares-Clustering (MSSC)。什么意思,就是通过计算类内部的关系、距离等进行类划分的方法,例如MSSC,类间距离不考虑。
算法的优点:
- 关注全局最优解,不是局部最优解(kmeans)
- 算法的迭代与扩展都是基于最终结果(应该指当前迭代的最终结果)
- 在类标号比较多的时候效果好
算法描述前需要理解两个定义:
Intracluster criterion-based clustering (IC3):
简单点的描述是,如果一个数据集S,划分成k 个类,分别为C1 C2 ...Ck,使用一个成本函数c(.)来衡量各个类,那么样本的划分最优解便是使成本函数之和最小。
Monotone Clustering Property (MCP)
一个聚类结果Ci,如果其包含的样本越多,那么其成本函数的值将越大。
论文中选用了两种例子,一个是MSSC,minimum-entropy clustering criterion,
MSSC:
MSSC 其实描述的是这样一个问题:如果将数据集划分成多个类,那么怎样的划分可以使得类内部样本到内中心的欧式距离之和最小。公式的描述如下:
第一条公式是目标函数,对于每个类,内中的样本到类中心的距离之和,使和最小;第二条公式是求类中心;第三条表示数据集S 中的样本都有有类标号,第四条表示样本不会有两个或以上的类标号。
容易知道MSSC 是符合上面的两个定义的,目标函数的第二个累加号其实就是cost function,同时很容知道其满足MCP。
minimum-entropy clustering criterion
最小信息熵聚类也符合,其目标函数是:
理想情况:
对于瞒住IC3 及MCP 的聚类,最理想的解决过程如下:
我们的样本数一共有n 个,那么由这n 个样本组成的子集数目则为2^n -1,我们记这个数为N,使用一个n-by-N 矩阵A,来表示这全部的子集,矩阵A 的一列n-by-1表示一个子集,样本属于这个子集的对应位为1,否则为0,其实就是穷举,那么我们有目标函数:
这里需要解释的如下:
ci:i-th 子集需要的cost
x:一个N-by-1向量,取值为0,1,表示选取那个子集为最终划分的结果。
k: 最终划分类的个数,其实就是选了多少个子集,x 向量的叠加。
e:单位向量。
理想情况的问题在于我们需要列出样本集的全部非空子集,这是不现实的,作者提出的方法,便是在知道部分子集的情况下,选出最优划分。
论文方法:
既然只知道部分子集,那么A 矩阵便被约束为AB,其中有为 n-by-q 矩阵,q为子集个数,x同样表示最优选择。论文的思路:知道了部分子集,那么选取出当前的最优结果x,去掉重复分类的部分Rm_Dup(有可能一个样本属于了两个子集),进行局部查找Local(C),对选出的子集进行部分替换Expand(C),将新的子集添加到AB,计算新的目标函数值,迭代到收敛。
上面的是论文算法的流程,解释一下:
Rm_Dup:
我们知道当前迭代步的x 的取值,即选取了哪些子集作为最终划分,那么如果一个样本属于两个或以上的类,求这个样本对于这么多个类中的cost function,然后选取cost 最小的保留这个样本,其他的删除,对于MSSC,即样本离类中心最近,那么久保留,其他的便剔除,这样我们便得到了一个样本划分(结果)记为C'。
Local(C):
Rm_Dup我们获得了一个样本划分(C'),那么便调用知道初始化的一个局部最优的算法,对于MSSC,用的是kmeans,对于信息熵,作者调用的是另外一篇论文的方法。这样获得的聚类结果记为C''。
Expand(C):
这一步是局部扩展,前两步获得的子集C'''=C' U C",对每个子集都进行一下操作,设定一个变量γ(论文中为10),一个子集中,离中心最远的γ个样本,从远到近逐步剔除,这样便获得γ个新子集;子集外,离中心最近的γ个样本,逐步加入到子集中,便获得γ个新的子集。作者称这一步对结果的提升有0.5 percent。
这样将这2γ个子集 与C''' 一同并入AB ,作为新的已知子集。结束循环的条件是没有新的子集加入。
论文方法的介绍结束。