Unsupervised deep embedding for clustering analysis算法
偶然发现这篇发在ICML2016的论文,它主要的关注点在于unsupervised deep embedding。据我所了解的,Unsupervised 学习是deep learning的一个难点,毕竟deep network这种很是复杂的非线性映射,暂时的未知因素太多,可能在原来的domain有clustering的特征数据通过nonlinear映射以后,就变得再也不clustering了。网络
这篇论文受t-SNE的启发,优化的目标是两个分布之间的KL距离。假设deep embedding以后的两个点 和
,其中
是第
个类的centroid。因而,similarity 的measure为dom
也能够认为是 属于
的几率。ide
假设此时一个目标分布,则
。优化的过程和普通的BP算法同样,(1)经过BP算法优化deep network的参数,即计算
。(2)经过计算梯度
来调整cluster的centroid,可是否这类centroid的调整也须要乘上一个学习率呢?函数
此外,一个重点的问题是潜在目标分布的构造。Paper里给出了三个标准,我以为这三个标准确实挺有意义的:(1)对预测效果能够strengthen(2)对于一些高几率被标注某个cluster的点,给予更多的权重(3)归一化每一个点对于每一个centroid用于计算loss函数时候的贡献,避免一些大的cluster扭曲了整个feature space。构造以下,学习
其中,。对以上三个标准说一说本身的理解,不必定准确。(1)对于第一点,对于某个明显更靠近
类的point,它比其余point离得除
类之外更远,这个点的
也更高,并且
也可能会更高(2)平方项的应用使得小的更加小了,即emphasis更小。同时,当
较高,在
的全部点中,
也会有相对高的值。(3)对于某些大的cluster,可能总和
更大,反而最终
更小,而对于小的cluster,使得
更大。最终把一个点push到另外一个小cluster。优化
直觉上说,几率分布的初始化的正确性很大程度影响的算法最终的结果,首先由于这不是一个真实的分布,而deep network没有一个很好的初始化很难在另外一个domain 保持cluster的结构。而section 5.1 的结果显示,对于high confidence的点,sample也变得更加canonical,如图越高confidence越明显是“5”的字样,而对于梯度的贡献也愈来愈大,即说明初始化几率分布
也是接近正确的。spa
网络的初始化和SAE(栈autoencoder)同样,采用greedy training的方式训练每一层,而后再微调整个网络。而初始化cluster的选择,则经过在embedding上perform k means clustering 算法获得。3d