Zhang X, Wang S, Wu Z, et al. Unsupervised image clustering algorithm based on contrastive learning and K-nearest neighbors[J]. International Journal of Machine Learning and Cybernetics, 2022: 1-9.
摘要翻译
随着时代的发展,人们每天都会生成大量的数据,其中大部分是未标记的数据,但人工标记需要大量的时间和时间,所以无监督算法的使用频率越来越高。本文提出了一种基于对比学习和k-最近邻的无监督图像聚类算法(CLKNN)。CLKNN分为训练两步,即表示学习步骤和聚类步骤。作者指出对比学习和k-近邻对CLKNN有巨大的影响。在表示学习中,CLKNN通过双数据增强处理图像得到两幅不同的增广图像;CLKNN利用双对比损失提取增广图像的高级特征信息,即最大化提高行空间的相似性和列空间的相似性,以保证信息的不变性。在聚类过程中,CLKNN对每幅图像通过引入k个最近邻进行分析,使每幅图像与其最近邻的相似性最大化,得到最终结果。
模型浅析
模型的整体过程科一概括为:CLKNN使用对比学习来提取图像的高级特征。然后CLKNN通过引入KNN来识别每幅图像的最近邻。最后,CLKNN使每幅图像与其最近邻图像之间的相似性最大化,得到最终结果。整体模型图如下所示:主要操作包括以下几部分:
- 使用不同的增强方式(和)对原始数据进行增强,得到对应的和。这部分也是作者所提到的数据的双增强部分。
- 使用共享的预训练模型(ResNet)对数据进行特征的提取,得到对应的特征表示和。
- 使用两个浅层MLP对特征表示进行行和列的对比学习,通过设定features_dim和cluster_dim来进行实例级别和类簇级别的对比学习。(这部分在之前的AAAI论文阅读中已经进行了阐述,此处不进行概述)
- 最后是聚类中所使用的损失。针对聚类任务的特征,作者引入了k近邻来提高聚类效果。作者的一个直观的想法是一批数据中相似度较高的样本,即每个样本的k近邻基本是属于一个类簇的。因此,k-最近邻损失是通过最大化每幅图像与其k个最相似图像之间的相似性来进一步优化模型。 作者将原始的数据样本记作,记作样本的k个近邻样本。通过聚类函数学习原始样本的软标签分配,得到关于的类簇的概率分布。作者给出了两个优化的方向,首先是k近邻损失:
其中,和分别对应两种增强学习到的类簇级别的标识特征,关于也考虑了当前batch中的全部样本:
最终聚类过程的依赖于两个损失的同时优化:
作为数据增强和对比学习在单视图上的应用,相比于AAAI的工作而言,将其在聚类阶段进行了拓展,使得在聚类中不仅考虑了所抽取的行列信息,也引入了聚类中较为显著的紧邻信息,可以看做是一个突破。