无监督图像聚类

《基于卷积神经网络的大规模人脸聚类》-申小敏

无监督图像聚类_第1张图片

使用上图的CNN结构,在LFW人脸数据库上进行训练,得到一个经过预训练的CNN网络。

使用预训练的CNN网络提取人脸特征,提取出的特征用于K-means聚类得出最后的聚类结果。

评价指标:Rand Index聚类评价,F1-measure聚类评价。

 

《Learning Feature Representations with K-means》

从原始的人脸图像中随机crop出某个size(eg:16*16)的patches,对所有crop得出的patches进行k-means聚类,找到k个聚类中心(要build一个complete dictionary至少需要256个中心),这k个聚类中心的作用类似于卷积核。

数据预处理:

使用上式对数据进行归一化,然后进行ZCA whitening,这个步骤可以去除patches的相关性,可以提高k-means的效果。

无监督图像聚类_第2张图片

用于图像识别:用上面的方法学习到的聚类中心作为卷积核,对输入图形进行卷积、relu、池化等操作,最后得出分类结果(这个过程需要labeled data

 

《采用无监督学习算法与卷积的图像分类模型》-王改华

无监督图像聚类_第3张图片

 

《一种基于前向无监督卷积神经网络的人脸表示学习方法》——朱陶

无监督图像聚类_第4张图片

对训练集进行归一化处理,将对齐后的人脸图像划分为2X2个相同大小的width X height的块,对于每一个人脸块,首先在其上提取kXk大小的小块,步长为1,设置k=9,对所有训练集中的图像进行同样的处理,使用K-means聚类将得到的人脸小块聚类为H个类,通过线性判别分析算法学习判别投影,保留前L个判别投影作为卷积核。

使用上面得到的卷积核对人脸图像进行卷积,sigmoid,最大池化和WPCA降维,再对特征进行二范数归一:

 

《convolutional clustering for unsupervised learning》

一般的k-means学习到的filters可能具有相似的作用,为了减少近邻滤波器之间的冗余,本文使用更大的窗口作为输入,然后从中选择哪一个patch被提取用于聚类。

窗口从输入图像中随机选择,尺寸是滤波器的两倍。k-means的所有中心在整个窗口上执行卷积操作,在窗口中的每个location计算出一个相似度矩阵,窗口中对应着最大activation的patch意味着它与该聚类中心最相似,最后,那个patch就从窗口中被提取出来,分配给那个中心。修改过的字典学习模型如下:

无监督图像聚类_第5张图片

STL-10数据集有10个类,96*96的RGB图像,每类500张用于训练,800张用于测试,另外,它包含10W张无标签的,由分布相似但更广泛的图像中抽取而来的图像用于无监督学习算法。

 

你可能感兴趣的:(聚类)