【Estimation of the Number of Clusters】On the True Number of Clusters in a Dataset in AAAI 2019 个人理解

一、简介

题目: On the Persistence of Clustering Solutions and True Number of Clusters in a Dataset
会议: AAAI 2019
任务: 估计无标签数据的类别数量 k k k并聚类。
Idea: 作者认为在不同的分辨率下聚类结果不同,当分辨率很小时,我们只能看到事物的轮廓却看不到细节,在这种情况下,我们几乎无法区分样本之间的差别,所有样本都会被认作同一类;反之,分辨率很大时,我们可能过于关注细节,在这种情况下,每个样本都是独特的无法与其它样本并称一类。
     于是,作者从确定性退火(deterministic annealing, DA)算法中提取退火参数 β \beta β用来衡量分辨率,每个 k k k都会对应一个分辨率区域(作者称该区域大小为persistence,在该区域内我们对聚类结果或簇的数量的判断不会改变),所对应区域最大的 k k k即为要找的 k k k
Note: 优点:该方法与聚类算法独立,可搭配任何聚类算法使用;
      缺点:需要从1遍历到预设的 k max ⁡ k_{\max} kmax,若单次聚类算法运行时间较长将产生较为昂贵的时间成本。

Persistence
如(a2)所示,直观上,若以蓝圈为分辨率,则类别数可视为3;若以绿圈为分辨率,则类别数可视为9。每个 k k k所对应的分辨率区域,即persistence指的就是这个圈可改变的范围。显然,蓝圈成比例缩小直至碰到绿圈前都可以将类别数视为3,但绿圈却只能缩小至红圈,继续缩小类别数可能就不再是9了。同一 k k k下,分辨率所能变化的范围作者使用 log ⁡ β ˉ k  ⁣ −  ⁣ log ⁡ β ˉ k − 1 \log\bar\beta_k\!-\!\log\bar\beta_{k-1} logβˉklogβˉk1 β ˉ \bar\beta βˉ β \beta β改造而来)来衡量,变化曲线如(a3)所示,可见persistence最大的是 k  ⁣ =  ⁣ 3 k\!=\!3 k=3。相应地,由(b3)可以看出, k  ⁣ =  ⁣ 9 k\!=\!9 k=9更适合(b2)。

二、详情

1. 量化分辨率

有了以上介绍,我们会发现最重要的是如何将分辨率量化出来,并且这个量化指标应该有很小时会使样本无法区分,很大时会使样本差异过于明显的特点。

作者在DA算法中找到了这样一个参数,即 β \beta β。DA将聚类视为一个设施选址问题(facility location problem, FLP),简单来说,就是像 k k k-means那样选簇的质心的问题,形式化的表示如下:

其中, Y = { y j : y j ∈ R d , 1 ≤ j ≤ k } \mathcal Y=\{\textbf{y}_\textbf{j}:\textbf{y}_\textbf{j}\in\mathbb R^d,1\leq j\leq k\} Y={yj:yjRd,1jk} k k k个质心, X = { x i : x i ∈ R d , 1 ≤ i ≤ N } \mathcal X=\{\textbf{x}_\textbf{i}:\textbf{x}_\textbf{i}\in\mathbb R^d,1\leq i\leq N\} X={xi:xiRd,1iN} N N N个样本, d ( x i , y j ) d(\textbf{x}_\textbf{i},\textbf{y}_\textbf{j}) d(xi,yj)为两者的欧式距离, p i = 1 / N p_i=1/N pi=1/N。事实上,就是令各样本到最近质心的距离之和最小。

在DA算法中,上式被近似为如下优化问题:

其中,参数 β \beta β为退火参数用来调控 F F F D D D的近似程度。 β  ⁣ →  ⁣ ∞ \beta\!\rightarrow\!\infty β时, F F F收敛于 D D D β  ⁣ →  ⁣ 0 \beta\!\rightarrow\!0 β0时, F F F D D D表现出显著差异。

该近似后的优化问题实际还是要求 Y \mathcal Y Y,所以给定 β \beta β,令 ∂ F ∂ y j  ⁣ =  ⁣ 0 \frac{\partial F}{\partial\textbf{y}_\textbf{j}}\!=\!0 yjF=0,有

其中,

此时,如果 β  ⁣ →  ⁣ 0 \beta\!\rightarrow\!0 β0,则 p ( j ∣ i )  ⁣ →  ⁣ 1 / k p(j|i)\!\rightarrow\!1/k p(ji)1/k y j  ⁣ →  ⁣ ( ∑ i = 1 N x i ) / N \textbf{y}_\textbf{j}\!\rightarrow\!(\sum_{i=1}^N\textbf{x}_\textbf{i})/N yj(i=1Nxi)/N,则对于不同的 x i \textbf{x}_\textbf{i} xi y j \textbf{y}_\textbf{j} yj都是一致的。简单来说,就是只有一个质心,所有样本都属于同一个类。随着 β \beta β增加,不同 x i \textbf{x}_\textbf{i} xi e − β d ( x i , y j ) e^{-\beta d(\textbf{x}_\textbf{i},\textbf{y}_\textbf{j})} eβd(xi,yj)差异开始体现,开始不再属于同一个类。最后 β  ⁣ →  ⁣ ∞ \beta\!\rightarrow\!\infty β,不同 x i \textbf{x}_\textbf{i} xi e − β d ( x i , y j ) e^{-\beta d(\textbf{x}_\textbf{i},\textbf{y}_\textbf{j})} eβd(xi,yj)差异显著,此时需要为每个样本都分配一个质心。

综上, β \beta β便是满足我们需求的参数,进而我们也可以使用 log ⁡ β \log\beta logβ来量化分辨率。

2. 量化persistence

有了分辨率的量化,我们还需要量化 k k k保持不变时分辨率的可变化范围,即persistence。换句话说,就是 β \beta β在什么范围内变化能使 F F F的解 Y \mathcal Y Y不变。

于是,作者对优化问题 F F F做了松弛,要求对所有有限扰动 Ψ \Psi Ψ来说,最优质心 Y \mathcal Y Y满足如下条件:

其实就是希望 F F F的所允许的解 Y \mathcal Y Y的范围能够更大一些。

当扰动 Ψ \Psi Ψ过大使 H ( Y , Ψ , β ) H(\mathcal Y,\Psi,\beta) H(Y,Ψ,β)不再正定时,对于某个 β \beta β值,簇的质心 Y \mathcal Y Y就不再是 F F F的最小值。简单来说, H ( Y , Ψ , β ) H(\mathcal Y,\Psi,\beta) H(Y,Ψ,β)正定的时候质心 Y \mathcal Y Y不会发生大的变动(数量不变),此时所对应的分辨率 β \beta β的范围大小就是当前解 Y \mathcal Y Y的persistence。

所以要想计算出persistence,就要找到临界的 β \beta β,也就是使 H ( Y , Ψ , β ) H(\mathcal Y,\Psi,\beta) H(Y,Ψ,β)非正定的点。首先,计算出 H ( Y , Ψ , β ) H(\mathcal Y,\Psi,\beta) H(Y,Ψ,β),得到如下结果:

其中, I I I为单位矩阵,

可以发现, H ( Y , Ψ , β ) H(\mathcal Y,\Psi,\beta) H(Y,Ψ,β)失去正定性的点在 det ⁡ [ I − 2 β C X ∣ y 0 k ]  ⁣ =  ⁣ 0 \det[I-2\beta C^k_{\mathcal X|\textbf{y}_\textbf{0}}]\!=\!0 det[I2βCXy0k]=0处,其中 y 0  ⁣ ∈  ⁣ Y \textbf{y}_\textbf{0}\!\in\!\mathcal Y y0Y。于是,在 Y \mathcal Y Y中有 k k k个质心时,临界值为

其中, λ max ⁡ ( C X ∣ y 0 k ) \lambda_{\max}(C^k_{\mathcal X|\textbf{y}_\textbf{0}}) λmax(CXy0k) C X ∣ y 0 k C^k_{\mathcal X|\textbf{y}_\textbf{0}} CXy0k的最大特征值, y 0  ⁣ =  ⁣ arg ⁡ max ⁡ { y j } λ max ⁡ ( C X ∣ y j k ) \textbf{y}_\textbf{0}\!=\!\arg\max_{\{\textbf{y}_\textbf{j}\}}\lambda_{\max}(C^k_{\mathcal X|\textbf{y}_\textbf{j}}) y0=argmax{yj}λmax(CXyjk)。超过该临界值 β k \beta_k βk,簇的数量 k k k就应该加1了。

这样,在每个 k k k都能计算出一个 β k \beta_k βk,就可以定义 v ( k ) : = log ⁡ β k  ⁣ −  ⁣ log ⁡ β k − 1 v(k):=\log\beta_k\!-\!\log\beta_{k-1} v(k):=logβklogβk1为persistence。所期望的 k t k_t kt就是 arg ⁡ max ⁡ k v ( k ) \arg\max_kv(k) argmaxkv(k)

但是,这样每次求解都要计算 p ( j ∣ i ) p(j|i) p(ji),为了减少计算(或者说将persistence的计算与DA算法独立),作者将软分配 p ( j ∣ i ) ∈ [ 0 , 1 ] p(j|i)\in[0,1] p(ji)[0,1]替换为硬分配 ν i j ∈ { 0 , 1 } \nu_{ij}\in\{0,1\} νij{0,1}。当样本 x i \textbf{x}_\textbf{i} xi属于簇 π j \pi_j πj ν i j  ⁣ =  ⁣ 1 \nu_{ij}\!=\!1 νij=1;否则, ν i j  ⁣ =  ⁣ 0 \nu_{ij}\!=\!0 νij=0。于是,有

相应地,我们所期望的 k t k_t kt就通过下式计算:

其中,

3. 算法流程

最后,可形成如下确定最优 k k k的流程:

其中,上一节的最后两个公式分别为(11)和(12)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fulin_Gao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值