论文阅读“Deep Kernel Learning for Cl

2021-07-07  本文已影响0人  掉了西红柿皮_Kee

Wu C, Khan Z, Ioannidis S, et al. Deep Kernel Learning for Clustering[C]//Proceedings of the 2020 SIAM International Conference on Data Mining. Society for Industrial and Applied Mathematics, 2020: 640-648.

摘要翻译

论文提出了一种深度学习方法来发现核(kernels),用于识别样本数据上的类簇。 所提出的神经网络产生样本嵌入(embedding),这些嵌入是由谱聚类激发的,并且至少与谱聚类一样具有表现力。 我们的训练目标基于希尔伯特·施密特独立标准(Hilbert Schmidt Independence Criterion),可以通过 Stiefel 流形上的梯度适应进行优化,从而显著加速依赖于特征分解(eigen-decompositions)的谱方法。 最后,训练好的嵌入表示可以直接应用于样本外数据。通过实验表明,提出的方法在广泛的真实和合成数据集上优于几种最先进的深度聚类方法以及传统的聚类方法如 k -means和 spectral clustering。

引入:聚类算法基于一些预定义的相似性概念将相似的样本组合在一起。表示这种相似性的一种方法是通过核方法。然而,一个适当的“核”的选择是依赖于数据的;因此,核的设计过程通常是一门需要对数据有密切了解的艺术。一个常见的选择是:只需使用在各种条件下性能良好的通用内核,如 polynomial kernels 或 Gaussian kernels。

Intro

论文提出了KernelNet(KNet),一种直接从观测数据中学习核(kernels)和诱导聚类的方法。KNet通过将神经网络表示与高斯核相结合来训练深度核。给定N个样本表示\left\{x_i\in {R^d}\right\}_{i=1}^N,我们要学习一个核--\tilde{k}(·,·)如下所示:

ψ_{θ(·)}是由\theta参数化的神经网络嵌入函数。d_i,d_j是正则化常数。直观地解释是,将神经网络 (NN) 参数化结合到高斯内核中,能够学习一个灵活的用于聚类的深度内核,专门针对给定的数据集定制。

related work 记录
Hilbert-Schmidt Independence Criterion

Hilbert Schmidt Independency Criterion (HSIC) 是两个随机变量之间的统计相关性度量。与互信息 (MI) 一样,它通过比较(两个随机变量的联合分布)与(其边缘分布的乘积)来衡量相关性。然而,与 MI 相比,HSIC 更容易凭经验计算,因为它不需要直接估计联合分布。
考虑样本量为N的独立同分布样本,\left\{(x_i,y_i)\right\}_{i=1}^N来自一个联合分布(注:我认为这里考虑的是样本特征x和样本的标签y之间的联合分布(依赖关系))。设 X ∈ R^{N×d}Y ∈ R^{N×c} 是包含每个样本的相应矩阵。
k_X:R^d×R^d→R是任意的特征核;本方法中使用的是高斯核:

Gaussian kernel
k_Y:R^c×R^c→R是另一个特征核---线性核(注:使用one-hot向量,相同的标签向量之间相乘为1;不同的标签向量之间正交,相乘为0): linear kernel
并且定义K_XK_Y为核矩阵,K_{X_{i,j}}=k_X(x_i,x_j)K_{Y_{i,j}}=k_Y(y_i,y_j)。正则化的高斯核矩阵{\tilde{K}_X}\in R^{N×N}如下计算:
其中D为度矩阵:
由此,XY 之间的 HSIC 通过经验估计:
直观地,HSIC通过经验测量了两个随机变量的样本之间的依赖性。尽管 HSIC 可以更普遍地定义为任意特征内核,但这种特殊选择与谱聚类(以及来自谱聚类的动机)有直接关系。
对于给定的X,考虑如下的优化目标: target
最优解U_0∈R^{N×c}对应到“target”正好是获得的谱嵌入。实际上,U_0包括归一化相似度矩阵的top c个特征向量,由
给定。
问题形式化

因为涉及到谱聚类,所以模型对非凸类型的数据集也很友好。模型的设计目标是通过首先将样本嵌入到类簇变得凸的空间(得到嵌入表示)来对样本进行聚类(如使用k-means)。作者希望由神经网络学习的嵌入表示至少像谱聚类一样具有表现力,即通过谱聚类可分离的数据也可以通所提出的模型进行分离。此外,这种学习到的嵌入表示应该泛化到样本外的数据,从而使模型能够在原始数据集之外聚类新的样本,而不需要重新训练模型。

Learning the Embedding and a Deep Kernel

问题需要将含有N个样本的数据集X \in R^{N×d}聚类到c个类簇中。设ψ:R^{d}×R^m→R^{d~'}是将一个样本嵌入到R^{d~'},由θ∈R^m参数化的DNN进行映射学习;我们用ψ_θ(x)表示参数θx∈R^d的映射表示。用Ψ:R^{N×d}×R^m→R^{N×d~'}表示嵌入由ψ映射的整个数据集,并使用Ψ_θ(X)表示X的嵌入映射。设U_0∈R^{N×c}是通过谱聚类得到的关于X的谱嵌入。我们可以通过以下优化来训练ψ来诱导与U_0相似的行为:

op target

由于HSIC是一种变量之间的依赖性度量,通过训练θ使Ψ_θ(X)最大限度地依赖于U_0,使得Ψ成为谱嵌入的替代品,与谱嵌入(embedding)具有相似的特性。

然而,通过上式(op target)学习的代理Ψ受到U_0的限制,因此它只能像U_0一样具有鉴别性。为了解决这个问题,不同于(op target),联合发现Ψ和一个耦合的谱嵌入U

op target-1 为了直观地了解如何由(op target)得到(op target-1),即(op target-1)如何推广到(op target)。如果嵌入 Ψ 固定为恒等映射(即,对于Ψ_θ(X) ≡ X),通过等式(target),仅针对U进行优化会产生谱嵌入 U_0ΨU 的联合优化能够进一步改进 U_0 以及耦合的 Ψ
Kernel Learning

关于(op target-1)的优化可以解释为内核学习。通过学习ψ,我们发现了如下的正则化的核:

Out-of-Sample Data

学习到的嵌入Ψ可以很容易地应用于样本外数据。在数据集X上训练Ψ,给定一个新的数据集Y \in R^{N×d~'},我们可以用如下的步骤对其进行有效聚类。

与谱聚类相比,这么做避免了重新计算整个数据集(X;Y)的联合嵌入。特别地,给定原始数据集X,可以通过在X的一个小子集上优化(op target-1)训练嵌入Ψ,以达到加速计算的目的。

Convex Cluster Images

待优化(op target-1)中(4.8a)的第一个项鼓励Ψ形成凸簇。


在该算法上连续几次迭代可以得出如下的情况: 使得数据逐渐线性可分。
KNet Algorithm

算法通过迭代式交替优化\tilde{\theta}=(\theta,\theta')U

Initialization

我们将U初始化为U_0,通过X的标准化相似度矩阵L的top c特征向量计算得出。初始化θ,使Ψ成为恒等映射( identity map); 这是通过SGD预训练来(\theta,\theta')实现:

Updating \tilde{\theta}
对于k≥1,其中F是优化目标(op target-1)中(4.8a)。

To simplify this computation, instead we hold both U and D fixed, and update \tilde{\theta} via one epoch of SGA over (4.8a). At the conclusion of one epoch, we update the Gaussian kernel K_X and the corresponding degree matrix D via Eq. (3.3).

Updating U (via Eigendecomposition)
算法实现
第二种更新U的方式没太看懂,请自行移步论文查看

该算法使用巧妙的将深度学习和核学习结合起来,有漂亮的公式和数学推导。使用交替更新的方式对算法进行优化,既使用了重建约束的方式保证了学习到的谱嵌入的有效性,也使用U_0进行初始化使得后续的更新提升了谱聚类的性能。整体思路值得借鉴。

上一篇 下一篇

猜你喜欢

热点阅读