论文笔记:Improved Deep Embedded Clustering with Local Structure Preservation

前言

DEC 忽略了至关重要的因素,即定义的聚类损失可能会破坏特征空间(聚类损失不能保证局部结构的保存),从而导致无代表性的无意义特征,进而损害聚类性能。

文章提出的Improved Deep Embedded Clustering algorithm(IDEC) 考虑到了保留数据结构,利用聚类损失作为指导,操纵特征空间来分散数据点。 为了约束数据生成分布的局部结构,采用了一种欠完备的自动编码器。通过融合聚类损失和自动编码器的损失,IDEC联合聚类标签分配和学习适合聚类并保留数据结构的特征,最后的优化问题采用mini-batch梯度下降法和反向传播。

论文链接:https://www.ijcai.org/Proceedings/2017/0243.pdf
github:https://github.com/dawnranger/IDEC-pytorch

1.介绍

在本文中,提出了改进的深度嵌入式群集(IDEC)算法来处理数据结构p保留。
具体来说,
(1)使用聚类损失作为指导来操纵特征空间以分散数据点。
(2)为了约束操作并维护数据生成分布的局部结构,应用了不完整的自动编码器。
(3)通过集成聚类损失和自动编码器的重建损失,IDEC可以共同优化聚类标签分配,并学习适用于使用局部结构保留进行聚类的功能。
(4)通过小批量随机梯度下降和反向传播可以有效地解决由此产生的优化问题。
(5)在图像和文本数据集上的实验从经验上验证了局部结构保存的重要性和算法的有效性。

总之:IDEC 可以联合执行聚类并学习具有局部结构保护的代表性特征。

2.网络框架

在这里插入图片描述
聚类损失(Clustering loss)用于分散嵌入点 z z z,重建损失可确保嵌入空间保留数据生成分布的局部结构

3.模块详解

3.1 Autoencoder

自动编码器是一种神经网络,它被训练来尝试将其输入复制到其输出。在内部,它有一个隐藏层z,用z描述表示输入的代码。整个网络包括两部分编码函数和解码函数,其中解码函数用于产生重构。

自动编码器有两种类型:

  • 不完全表示的自动编码器(Under-complete autoencoder)
  • 去噪自动编码器(Denoising autoencoder)

1.Under-complete autoencoder
它控制低于输入数据x的潜在数据z的维数。学习这种不完全的表示迫使自动编码器捕获数据的最显著特征。

2.Denoising autoencoder
与重建x给定x不同,去噪自动编码器将以下目标最小化:

在这里插入图片描述
其中,其中 x ~ \tilde{x} x~ 是被某种形式的噪声破坏的x的副本。.因此,去噪自动编码器必须从这种损坏中恢复 x x x,而不是简单地复制它们的输入。通过这种方式,去噪自动编码器可以强制编码器和解码器隐式捕获数据生成分布的结构。在该算法中,去噪自动编码器被用于预训练欠完备自动编码器用于DEC框架的初始化

3.2 聚类损失和初始化

定义为分布P和Q之间的KL散度,其中Q是根据学生的t分布测量的软标签的分布,P是从Q得出的目标分布。也就是说,聚类损失定义为:
在这里插入图片描述
软分配
测量嵌入点和质心之间的相似度:

在这里插入图片描述
目标分布
目标分布(辅助分布)用来衡量样本属于某个聚类的分布:

在这里插入图片描述

局部结构保护
之前获得的嵌入点不一定适合聚类任务。 为此,DEC 放弃了解码器,并使用聚类损失Lc对编码器进行了微调。

但是,我们认为这种微调可能会使嵌入空间变形,削弱嵌入特征的代表性,从而损害群集性能。 因此,我们建议保持解码器不受影响,并将聚类损失直接附加到嵌入式空间。

为了确保聚类损失的有效性,在预训练中使用的堆叠式去噪自动编码器已不再合适。 因为应该对干净数据的特征进行聚类,而不是对自动编码器进行降噪的噪声数据进行聚类。

因此,我们直接消除了噪音。 然后,堆叠的去噪自动编码器会退化为不完整的自动编码器。 重建损耗由均方误差(MSE)衡量:

4. 算法

在这里插入图片描述

5. 实验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述