论文阅读“Incomplete multi-view clust
Chao G, Wang S, Yang S, et al. Incomplete multi-view clustering with multiple imputation and ensemble clustering[J]. Applied Intelligence, 2022: 1-11.
摘要导读
多视图聚类是机器学习和数据挖掘中的一项重要而具有挑战性的任务。在过去的十年中,这一课题引起了广泛的关注,并取得了许多进展。然而,在现实中,由于机器错误、传感器故障等不同的因素,多视图数据大多不完整,因此如何处理这一问题成为一个挑战。(首先提出不完整聚类任务)现有的一些工作主要是处理视图缺失的情况,这意味着在数据集的某些视图中,某些样本的整体特征会丢失。(整体视图的缺失)实际上,缺失值可以发生在任何位置,即在任何视图中都会遗漏一些值。(视图中任意值的缺失)针对较为平凡的任意值缺失问题,本文提出了一种包含多重推断和集成聚类的两阶段算法来处理任意值缺失情况下的多视图聚类。采用多重推断法处理缺失值问题,采用加权集成聚类法实现多视图聚类。
Intro
以多视图数据中的某个视图为例,说明view missing case 和 any value missing case二者之间的不同,
其中表示第个样本,表示第维特征。很明显,所谓视图缺失是指由于外部原因导致的整个视图特征未被采集到,而任意值缺失则是更加普遍的一种现象且更难处理。当前处理多视图中缺失值的技术主要分为:删除有缺失值的样本(当缺失值较多时,可能会丢失较多的有效信息),对缺失值进行计算补齐imputation(这里分为single imputation 和 multiple imputation,其中单一推断法方法包括平均推断法、随机推断法、回归推断法、EM(期望最大)推断法等;多重推断(MI)多次计算缺失值,以考虑到缺失值的不确定性,在大多数情况下表现更好),不做任何处理(用矩阵来指示视图缺失或者值缺失,这些缺失的值不参与运算)。
现有方法:(1)借助指示矩阵,缺失样本或视图不参与运算;(2)首先推断缺失值,然后使用多视图算法对其进行聚类。二者的区别在于前者更适合处理缺失视图的情况,而后者则可以处理任何缺失值的情况。
method
为了解决视图缺失和多视图聚类问题,本文(1)采用当前较为流行的MI方法来处理缺失值,并探索了不同的MI方法来选择最佳和最稳定的方法,以达到一组完整的数据集,然后(2)考虑不同视图的贡献,采用了视图加权策略进行集成聚类。
One of the most significant advantage of
multiple imputation
is that it can recover the incomplete datasets without caring about the form of incompleteness. Given that most of existing multi-view clustering algorithms are confined to deal with view missing datasets,the introduction of multiple imputation to clustering
could bring about a great improvement of the performance of algorithms. Further more,multiple imputation yields multitude of datasets
and ensemble clustering is exactly good at processing large scale datasets simultaneously.
因此,多重推断不仅可以满足对缺失值的补全,甚至可以达到和生成模型一样的效果,产生更多新的样本。
-
Multiple imputation(MI)
与单一计算相比,MI考虑了缺失值的不确定性,并填充了更稳健的缺失值。特别是在统计学方面,MI已经成为处理缺失值的最流行和最有效的技术。本文使用的是MICE(R package)里面的Sample, RF(Rondom Forest), Cart, Misdatouch等方法。这里的每种方法在不同类型的数据集上性能不同,MI阶段的性能会进一步影响EC聚类,因此选择有效的MI算法是必要的。 -
Ensemble clustering(EC)
对于给定样本对,聚类集成的margin表示为: 即,投票结果为的权重和与投票结果不为的权重和之差。形式化为: 根据前面的定义,可以证明对于的预测,错误的概率为: 分子为margin的方差,分母为期望的平方,计算方式如下: 因此,整个模型的优化目的是找到可以让最小化的,最终的解可以表示为(7)式:
EC主要包含两个阶段:生成和共识函数。在生成阶段,对由MI作用的完整数据集,选择一些聚类算法,如k-means,分别对完整数据集的每个视图进行聚类分配。最后,每个完整数据集的每个视图对应于一个结果,这是一个共同关联矩阵。
表示-th视图的数据矩阵,其中是该视图的特征维数,是样本的数量。Ground truth 表示第个样本属于哪个类簇。在生成步骤之后,可以从完整的数据中获得较多聚类结果。假设是个切片(pieces)对应的聚类模型,是分配给的聚类分配,。协关联矩阵的每个元素表示为以下值:,其中是个示性函数,如果满足则,否则为。
对于任意一组样本对,对应的矩阵中的真实标签为。
为了收集来自所有结果的信息,本文引入了一种加权的方式进行信息的整合:
(1),
其中表示第个聚类模型的权重,是所有的切片(piece)数目,是迭代的次数。
本文引入一个概率模型来完成对的优化,聚类的准确率可以表示为一个概率:。根据划分概率的贝叶斯估计
假设得到最优的共关联矩阵,可以进行层次聚类得到最终的聚类结果。在本文中,作者选择的是自下而上并以距离为准则的层次聚类。即,该算法将每个样本视为单例聚类,然后合并聚类对形成新的聚类,使每个聚类的原始观测没有比阈值更大的协同距离,其中阈值是一个需要调整的参数。
该论文中对多视图数据的定义和MI涉及到的个数据切片很模糊,在算法部分的描述视图和切片的转换好像也没交代清楚,也可能是我自己太菜了没捋清楚。为了不误导大家,这里放一个论文中的算法流程供大家理解。
我理解的应该是每个视图都被转换为个对应的切片,然后把-th对应的视图组合在一起,形成个完整的多视图子数据集,类似于bagging的思路。然后用于后续的集成。