SpectralNet
背景
在无监督学习中,谱聚类是一种能够学习非凸流形的方法,然而它有两个局限性:一是可扩展性差,不能适用于数据量较大时场景;二是out-of-sample,即当遇到非训练样本时无法处理。
为了解决上述两个问题,该文提出了一种深度学习的方法SpectralNet. 其要点
- 该文提出一种受限随机优化的方法(constrained stochastic optimization),随机优化使其能够扩展到大的数据集;限制(constraints)是通过一个输出层实现,将输出保持正交(orthogonal)。
- 神经网络方法自然将其应用到out-of-sample上。
- 利用孪生网络(Siamese network)的方法学习样本之间的相似性,获得比传统基于欧式距离的方法更好的效果
神经网络用于谱聚类,分为两个部分,一部分神经网络用于数据降维,即训练得到一个mapFθ:Rd→RkF_{\theta}: \mathbb R^d \rightarrow \mathbb R^kFθ:Rd→Rk;另一个部分用于分类,即函数c:$\mathbb R^k \rightarrow {1,2,…,k} $.
整个SpectralNet的训练可分为三个部分:
- 通过一个孪生网络(Siamese network),利用给定的距离度量,无监督学习affinity
- 通过无监督学习优化一个谱聚类的目标FθF_{\theta}Fθ, 并且保证正交性orthogonality
- 通过在降维的空间,学习聚类的类别
方法
网络结构
目标是学习一个投射函数y=Fθ(x)y = F_{\theta}(x)y=Fθ(x),使得下列式子最小:
L=E[w(x,x′)∣∣y−y′∣∣2]L = \mathbb E[w(x, x')||y-y'||^2]L=E[w(x,x′)∣∣y−y′∣∣2]
其中y,y′∈Rky, y' \in \mathbb R^ky,y′∈Rk, 期望是关于数据集DDD的i.i.d.的元素(x,x′)(x, x')(x,x′), θ\thetaθ是元素的参数。
当然,如果F函数将所有的元素map到同样的值,那么损失函数最低,但没有意义,为了防止这种情况,我们要求所有的输出是正交的,即
E[yyT]=Ik×k\mathbb E[yy^T] = I_{k\times k}E[yyT]=Ik×k
由于分布DDD未知,我们采用随机选取样本的进行优化,即在每次迭代中,随机选取m个样本,不失一般性,我们有x1,...,xm∈Xx_1, ...,x_m \in Xx1,...,xm∈X, 并且安排他们在m×dm \times dm×d的矩阵中,其中第i行包括xiTx_i^TxiT, 然后最小化损失
LSpectralNet(θ)=1m2∑i,j=1mWi,j∣∣yi−yj∣∣2(1)L_{SpectralNet}(\theta) = \frac{1}{m^2}\sum_{i,j=1}^m W_{i,j}||y_i - y_j||^2 \tag 1LSpectralNet(θ)=m21i,j=1∑mWi,j∣∣yi−yj∣∣

SpectralNet是为了解决传统谱聚类在大数据集和out-of-sample问题上的局限而提出的深度学习方法。它利用孪生网络学习样本间的相似性,通过约束随机优化保证正交性,实现数据降维和分类。SpectralNet的训练包括学习affinity矩阵、谱聚类优化和正交化过程,最终通过k-means完成聚类。

3523

被折叠的 条评论
为什么被折叠?



