美文网首页
[PED01]Deep Subspace Clustering

[PED01]Deep Subspace Clustering

作者: 张小甜甜 | 来源:发表于2020-06-01 18:36 被阅读0次

    论文作者:Pan Ji(University of Adelaide) Tong Zhang、Hongdong Li(Australian National University)等
    论文类型:NIPS2017
    @TOC

    一句话描述

    提出DSC-Nets,在编码器和解码器中间添加一个自表示层,可以处理非线性可分的数据。
    使用预训练+微调的策略训练网络,使得网络咋在小数据集上也可以work

    Introduction

    • subspace clustering
      • 目的:以无监督的方式将来自低维子空间的点聚类
      • 步骤:先学到相似度矩阵,在谱聚类。
      • 分类:
        • 分解法
        • 高阶模型法
        • 基于自表达方法。比分解法更鲁棒,相对基于局部模型的高阶法而言考虑所有数据点的连接。
      • 存在问题:
        • 目前的工作都是对线性子空间进行聚类。然而现实世界中的数据并不一定符合线性子空间模型。如某一主题的人脸图像位于非线性子空间中。
        • 现有的方法解决非线性问题通常使用核技巧。用预定义核(如多项式核或者高斯核)代替数据矩阵的内积。
        • 核方法存在问题:
          • 选择什么样的核,通常是根据经验。
          • 没有明确的解释可以说明预定义核对应的隐式特征空间是真正适合子空间聚类的。
      • 提出方法:
        • 学习一个可以很好的适合子空间聚类的非线性映射。通过自动编码器的编码层将数据非线性的映射到潜在空间(Latent space)。
        • 在编码器和解码器之间引入一个自表达层。全连接、没有偏移量、没有非线性激活。这个层可以编码数据的自表达性质
    • AEs (Auto-encoders)
      • 可以将数据非线性地转换到潜在空间中。
    • 将深度学习和子空间聚类结合到一起的,到目前为止(2017)只有:
      • [36] X. Peng, S. Xiao, J. Feng, W.-Y. Yau, and Z. Yi. Deep subspace clustering with sparsity prior. In IJCAI,2016.
      • 与[36]区别:[36]是使用得到的深度特征再进行聚类。本文是直接学习相似度矩阵。

    Method (DSC-Nets)

    目标函数

    • 深度自编码器
      通过编码器得到输入数据 x_i 的潜在表示 z_i ,通过解码器将潜在表示 z_i 重建成 \hat{x}_i
      image
    • 自表达
      • 自表达性质是指数据点可以通过与其在同一个子空间的其他数据点的线性组合来表示。表示为:
        X=XC
        其中C是自表达组合系数矩阵。假设子空间之间互相独立,那么通过最小化C的范数(公式1),可以保证C具有对角结构。这样就可以利用C来构造相似度矩阵。

        image
        对C用的范数不同,可以延伸出不同的方法:
        • L1:Sparse Subspace Clustering (SSC)
        • 核范数:Low Rank Representation (LRR)、Low Rank Subspace Clustering(LRSC)
        • L2范数
      • 有噪声和数据损坏的情况:X=XC+E,需要最小化\|E\|_F,也就是如下形式:

        image

    但是,自表达性质只适用于线性空间。前面提到了核方法的一些缺点,因此本文在深度自编码器中加入自表达的概念。

    • 基于自表达的深度自编码器
      希望训练一个深度自编码器可以学到适合子空间聚类的潜在表示。因此,引入一层编码自表达的概念。
      image
      损失函数中,有重建误差和自表达的误差和正则化项。
      • 在自表达这一项,表示每个潜在空间中的点z_i可以通过其他点z_j以权重c_ij进行线性组合来近似表示。这可以通过一个全连接层来表示。不进行非线性激活。
      • 其中,C采用了两种范数来进行试验。L_1L_2
      • 因此,为了解这个式子,我们可以把C看做一个网络层的参数\Theta_s。这样就可以通过反向传播联合优化自编码器的参数\Theta\Theta_s了。如果采用交替优化\Theta\Theta_s的方法,由于目标函数非凸,所以不能保证收敛。

    目标函数转化为:

    image

    网络结构

    image
    • 包括三部分:编码器、自表达层、解码器。
    • 采用卷积自动编码器。参数少,易训练。全连接的也可以用。
    • 卷积层:2 \times 2步长的核、ReLU非线性激活。
    • 一次把所有的样本放进一个batch中。
    • 参数量
      • 自动编码器的参数量:\sum_i2k^2_i n_{i-1}n_i+\sum_i2n_i-n_1+1
      • 样本数为N,自表达层参数为N^2

    训练策略

    直接训练具有数百万个参数的网络很困难。提出 预训练+微调 策略。

    • 首先预训练没有自表达层的网络。然后用预训练的参数初始化编码器和解码器。
    • 微调阶段:大batch所有数据,用梯度下降来最小化损失函数。用Adam。
    • 网络训练好后用自表示层的参数构造相似度矩阵|C|+|C^T|
    • 最后进行某种聚类算法得到聚类结果。

    Experiments

    • 数据集:
      face clustering Dataset:Extended Yale B [21] and ORL [39]
      general object clustering Dataset:COIL20 [31] and COIL100 [30].
    • Extended Yale B


      image
      image
      image
    • ORL


      image
      image
      image
    • COIL20 and COIL100 Datasets


      image
      image

    总结

    使用深度自编码器和自表达层直接学习到相似度矩阵,来做子空间聚类。
    预训练+微调的的训练策略,使得网络可以处理具有挑战性的小数据集。

    相关文章

      网友评论

          本文标题:[PED01]Deep Subspace Clustering

          本文链接:https://www.haomeiwen.com/subject/gewszhtx.html