【文献阅读笔记】Deep Subspace Clustering Networks

标题(paper):Deep Subspace Clustering Networks

期刊 + 时间 + 有无源代码: NIPS’17: Proceedings of the 31st International Conference on Neural Information Processing Systems + December 2017 Pages 23–32 +

作者: Pan Ji, Tong Zhang, Hongdong Li, Mathieu Salzmann, Ian Reid

方法名及缩写: deep subspace clustering networks (DSC-Nets) (based on deep auto-encoders)

算法框架: 首先不加自表达层进行网络参数预训练。然后利用梯度下降(确定方向而不是随机)进行损失函数优化,其中网络参数使用Adam算法调整。

流程图 : 在这里插入图片描述

网络结构:堆叠编码器+自表达层+堆叠解码器

i t h i^{th} ith层的编码层有 n i n_i ni个核大小为 k i × k i k_i \times k_i ki×ki的通道,权值参数的数量为 k i 2 n n − 1 n i k^2_i n_{n-1} n_i ki2nn1ni ( n 0 = 1 n_0=1 n0=1).

网络全部的权值参数数量为: ∑ i 2 k i 2 n n − 1 n i \sum_i2k^2_i n_{n-1} n_i i2ki2nn1ni, 对于 N N N个输入图像,自表达层的参数个数为 N 2 N^2 N2

主要创新点: 在自编器编码层和解码层中间,提出了一种新的自表达层的方法。

动机: 1、大多数子空间聚类方法基于线性映射的方式不合理。2、一般kernel方法自己选哪种kernel,可能效果好但是没有明确理论原因。

目标函数:
L ( Θ , C ) = 1 2 ∥ X − X ^ Θ ∥ F 2 + λ 1 ∥ C ∥ p + λ 2 2 ∥ Z Θ e − Z Θ e C ∥ F 2 s . t . ( d i a g ( C ) = 0 ) L(\Theta,\mathbf{C})=\frac12\|\mathbf{X}-\hat{\mathbf{X}}_\Theta\|_F^2+\lambda_1\|\mathbf{C}\|_p+\frac{\lambda_2}2\|\mathbf{Z}_{\Theta_e}-\mathbf{Z}_{\Theta_e}\mathbf{C}\|_F^2\quad\mathrm{s.t.}\quad(\mathrm{diag}(\mathbf{C})=\mathbf{0}) L(Θ,C)=21XX^ΘF2+λ1Cp+2λ2ZΘeZΘeCF2s.t.(diag(C)=0)
Θ \Theta Θ是网络参数 Θ e \Theta_e Θe编码器参数, Θ d \Theta_d Θd解码器参数,

C C C自表达层系数矩阵

p p p是范数,可以是 l 1 l_1 l1 l 2 l_2 l2等范数约束

为了方便更新,上述目标函数被改写(本质同一个):
L ~ ( Θ ~ ) = 1 2 ∥ X − X ^ Θ ~ ∥ F 2 + λ 1 ∥ Θ s ∥ p + λ 2 2 ∥ Z Θ e − Z Θ e Θ s ∥ F 2 s . t . ( diag ⁡ ( Θ s ) = 0 ) , \tilde{L}(\tilde{\Theta})=\frac{1}{2}\|\mathbf{X}-\hat{\mathbf{X}}_{\tilde{\Theta}}\|_{F}^{2}+\lambda_{1}\|\Theta_{s}\|_{p}+\frac{\lambda_{2}}{2}\|\mathbf{Z}_{\Theta_{e}}-\mathbf{Z}_{\Theta_{e}}\Theta_{s}\|_{F}^{2}\quad\mathrm{s.t.}\quad\left(\operatorname{diag}(\Theta_{s})=\mathbf{0}\right), L~(Θ~)=21XX^Θ~F2+λ1Θsp+2λ2ZΘeZΘeΘsF2s.t.(diag(Θs)=0),
Θ ~ \tilde{\Theta} Θ~是网络参数

Θ s \Theta_s Θs就是 C C C

第一项:自编码器的损失函数

第二+第三项:自表达层的损失函数

优化步骤: (网络训练)

1、首先在所有数据上预训练深度自编码器,而不使用自表达层。然后我们使用训练好的参数来初始化网络的编码器和解码器层。

2、在此之后,在微调阶段,使用所有数据构建一个大批,以使用梯度下降方法最小化(4)中定义的损失 L(Θ)。具体来说,我们使用Adam,一种基于自适应动量的梯度下降方法来最小化损失,在所有实验中我们将学习率设置为1.0 × 10−3。由于我们总是在每个训练历元中使用相同的批处理(优化策略是基于确定性动量的梯度方法而不是随机梯度方法。)

注解:(优缺点 + 随便想记的内容 )

1、基于深度自编码器实现的方法,在本文中使用了卷积自编码器,但是作者在文中提到也可以用全连接的自编码器代替。
2、代码暂时没看,看了可能更新一点其他内容。
3、DSC-Net-L1 ( l 1 l_1 l1范数约束) DSC-Net-L2 ( l 2 l_2 l2范数约束)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值