TFS-2018《On the convergence of the sparse possibilistic c-means algorithm》

发布于:2025-09-09 ⋅ 阅读:(23) ⋅ 点赞:(0)

核心思想

论文的核心思想是为 Sparse Possibilistic C-Means (SPCM) 算法建立严格的数学收敛性保证。SPCM 是对经典 Possibilistic C-Means (PCM2) 算法的扩展,其核心创新在于引入了 lpl_plp-范数 (0<p<10 < p < 10<p<1) 稀疏性约束

  • Possibilistic Clustering (PCM) 的动机:与 Fuzzy C-Means (FCM) 不同,PCM 允许一个数据点可以不属于任何簇,或者仅属于与其高度兼容的少数几个簇。这使得 PCM 对噪声和离群点更具鲁棒性,但经典 PCM 容易产生“重合簇”(coincident clusters),即多个簇中心收敛到同一高密度区域。
  • SPCM 的动机:为了解决 PCM 的“重合簇”问题并进一步增强对噪声的鲁棒性,SPCM 强制要求每个数据点 xix_ixi 的隶属度向量 ui=[ui1,...,uim]u_i = [u_{i1}, ..., u_{im}]ui=[ui1,...,uim] 是稀疏的。这意味着一个数据点只会对距离其最近的少数几个(甚至零个)簇中心的更新做出贡献,从而迫使算法发现数据中真正稀疏分布的、分离的簇结构。

论文的主要理论贡献是证明了 SPCM 算法的迭代序列会收敛到其代价函数的一个局部最小值,而非仅仅是驻点或鞍点。此外,通过将 PCM2 视为 SPCM 在稀疏参数 λ=0\lambda=0λ=0 时的特例,论文也得出了比以往工作更强的关于 PCM2 收敛性的结论。


目标函数

SPCM 的目标函数 JSPCMJ_{SPCM}JSPCM 是在 PCM2 的目标函数基础上,增加了一个 lpl_plp-范数稀疏性惩罚项:

JSPCM(U,Θ)=∑i=1N∑j=1muij∥xi−θj∥2+∑j=1mγj∑i=1N(uijln⁡uij−uij)+λ∑i=1N∥ui∥pp J_{SPCM}(U, \Theta) = \sum_{i=1}^{N} \sum_{j=1}^{m} u_{ij} \|x_i - \theta_j\|^2 + \sum_{j=1}^{m} \gamma_j \sum_{i=1}^{N} (u_{ij} \ln u_{ij} - u_{ij}) + \lambda \sum_{i=1}^{N} \|u_i\|_p^p JSPCM(U,Θ)=i=1Nj=1muijxiθj2+j=1mγji=1N(uijlnuijuij)+λi=1Nuipp

其中:

  • xi∈Rlx_i \in \mathbb{R}^lxiRl 是第 iii 个数据点,共 NNN 个点。
  • θj∈Rl\theta_j \in \mathbb{R}^lθjRl 是第 jjj 个簇的中心(代表),共 mmm 个簇。
  • uij∈[0,1]u_{ij} \in [0, 1]uij[0,1] 是数据点 xix_ixi 对簇中心 θj\theta_jθj可能性隶属度(possibilistic membership),表示其兼容程度。U=[uij]U = [u_{ij}]U=[uij]N×mN \times mN×m 的隶属度矩阵。
  • γj>0\gamma_j > 0γj>0 是与第 jjj 个簇相关的参数,控制着该簇的影响范围。γj\gamma_jγj 越小,簇的影响范围越小。
  • λ≥0\lambda \geq 0λ0稀疏性正则化参数,控制着施加稀疏性的强度。
  • ∥ui∥pp=∑j=1muijp\|u_i\|_p^p = \sum_{j=1}^{m} u_{ij}^puipp=j=1muijp 是向量 uiu_iuilpl_plp-范数的 ppp 次方。当 0<p<10 < p < 10<p<1 时,该项能有效诱导稀疏性。
  • uijln⁡uiju_{ij} \ln u_{ij}uijlnuijuij=0u_{ij}=0uij=0 时定义为 lim⁡uij→0+uijln⁡uij=0\lim_{u_{ij} \to 0^+} u_{ij} \ln u_{ij} = 0limuij0+uijlnuij=0

各项含义

  1. 第一项 ∑i,juij∥xi−θj∥2\sum_{i,j} u_{ij} \|x_i - \theta_j\|^2i,juijxiθj2:是数据点到其所属簇中心的加权平方误差,旨在拉近高隶属度点与其簇中心的距离。
  2. 第二项 ∑jγj∑i(uijln⁡uij−uij)\sum_{j} \gamma_j \sum_{i} (u_{ij} \ln u_{ij} - u_{ij})jγji(uijlnuijuij):是 PCM2 的正则项,它鼓励隶属度 uiju_{ij}uij 取 0 或 1 的极端值,从而避免 FCM 中的“概率归一化”约束,使每个簇可以独立存在。
  3. 第三项 λ∑i∥ui∥pp\lambda \sum_{i} \|u_i\|_p^pλiuipp:是本文引入的稀疏性诱导项。由于 0<p<10<p<10<p<1,该函数在 uij=0u_{ij}=0uij=0 处不可微且具有“凹”性,能有效迫使许多 uiju_{ij}uij 精确为 0,实现行稀疏(row-sparsity)。

λ=0\lambda = 0λ=0 时,JSPCMJ_{SPCM}JSPCM 退化为经典的 PCM2 目标函数 JPCM2J_{PCM2}JPCM2


目标函数详细的优化过程

SPCM 采用交替优化(Alternating Optimization, AO)策略,轮流更新隶属度矩阵 UUU 和簇中心 Θ\ThetaΘ

1. 更新簇中心 θj\theta_jθj

固定 UUU,对 JSPCMJ_{SPCM}JSPCM 关于 θj\theta_jθj 求偏导并令其为零:

∂JSPCM∂θj=2∑i=1Nuij(θj−xi)=0 \frac{\partial J_{SPCM}}{\partial \theta_j} = 2 \sum_{i=1}^{N} u_{ij} (\theta_j - x_i) = 0 θjJSPCM=2i=1Nuij(θjxi)=0

解得:

θj=∑i=1Nuijxi∑i=1Nuij \theta_j = \frac{\sum_{i=1}^{N} u_{ij} x_i}{\sum_{i=1}^{N} u_{ij}} θj=i=1Nuiji=1Nuijxi

这个更新公式与 FCM 和 PCM 中的公式形式相同,是数据点的加权平均,权重即为隶属度 uiju_{ij}uij

2. 更新隶属度 uiju_{ij}uij

固定 Θ\ThetaΘ,更新 uiju_{ij}uij 是 SPCM 最具挑战性和创新性的部分。目标函数中与 uiju_{ij}uij 相关的部分为:

h(uij;θj)=uij∥xi−θj∥2+γj(uijln⁡uij−uij)+λuijp h(u_{ij}; \theta_j) = u_{ij} \|x_i - \theta_j\|^2 + \gamma_j (u_{ij} \ln u_{ij} - u_{ij}) + \lambda u_{ij}^p h(uij;θj)=uijxiθj2+γj(uijlnuijuij)+λuijp

dij=∥xi−θj∥2d_{ij} = \|x_i - \theta_j\|^2dij=xiθj2,则对 uiju_{ij}uij 求导:

f(uij)=∂h∂uij=dij+γjln⁡uij+λpuijp−1 f(u_{ij}) = \frac{\partial h}{\partial u_{ij}} = d_{ij} + \gamma_j \ln u_{ij} + \lambda p u_{ij}^{p-1} f(uij)=uijh=dij+γjlnuij+λpuijp1

论文[16]中已证明 f(uij)f(u_{ij})f(uij)(0,1)(0, 1)(0,1) 区间内有唯一最小值点 u^ij=[λp(1−p)γj]11−p\hat{u}_{ij} = \left[ \frac{\lambda p (1-p)}{\gamma_j} \right]^{\frac{1}{1-p}}u^ij=[γjλp(1p)]1p1,且方程 f(uij)=0f(u_{ij}) = 0f(uij)=0 最多有两个解。

SPCM 的关键在于,uiju_{ij}uij 的最优解 uij∗u_{ij}^*uij 并非直接由 f(uij)=0f(u_{ij}) = 0f(uij)=0 的解给出,而是需要比较目标函数值。论文推导出一个几何解释:存在一个以数据点 xix_ixi 为中心、半径为 RjR_jRj 的超球体 CijC_{ij}Cij

Rj2=γj1−p(−ln⁡λ(1−p)γj−p) R_j^2 = \frac{\gamma_j}{1-p} \left( -\ln \frac{\lambda (1-p)}{\gamma_j} - p \right) Rj2=1pγj(lnγjλ(1p)p)

  • 如果簇中心 θj\theta_jθj 位于 CijC_{ij}Cij内部或边界(即 ∥xi−θj∥2≤Rj2\|x_i - \theta_j\|^2 \leq R_j^2xiθj2Rj2),则 uij∗u_{ij}^*uijf(uij)=0f(u_{ij}) = 0f(uij)=0较大的那个正解 uij{2}u_{ij}^{\{2\}}uij{2}
  • 如果簇中心 θj\theta_jθj 位于 CijC_{ij}Cij外部(即 ∥xi−θj∥2>Rj2\|x_i - \theta_j\|^2 > R_j^2xiθj2>Rj2),则最优解为 uij∗=0u_{ij}^* = 0uij=0

因此,更新公式可简洁地表示为:

uij∗={uij{2},if ∥xi−θj∥2≤Rj20,otherwise u_{ij}^* = \begin{cases} u_{ij}^{\{2\}}, & \text{if } \|x_i - \theta_j\|^2 \leq R_j^2 \\ 0, & \text{otherwise} \end{cases} uij={uij{2},0,if xiθj2Rj2otherwise

其中,uij{2}u_{ij}^{\{2\}}uij{2} 是通过在区间 (u^ij,1](\hat{u}_{ij}, 1](u^ij,1] 上使用二分法(Bisection Method)求解 f(uij)=0f(u_{ij}) = 0f(uij)=0 得到的较大根。

收敛性证明的核心难点:由于 uiju_{ij}uij 的更新规则是一个分段函数(且在 ∥xi−θj∥2=Rj2\|x_i - \theta_j\|^2 = R_j^2xiθj2=Rj2 处不连续),整个优化算子 TTT 在全局上不是连续的。论文的精妙之处在于,它没有试图证明全局连续性,而是将整个参数空间划分为多个“有效活动集”(valid active set)对应的区域。在每个这样的局部区域(即簇中心 θj\theta_jθj 位于一组特定数据点对应的超球体交集内),算子 TTT 是连续的,并且目标函数 JJJ 是严格单调递减的。通过应用 Meyer 定理(Theorem 1),论文最终证明了算法在每个局部区域内都会收敛到一个严格的局部最小值。


主要的贡献点

  1. 首次为 SPCM 提供收敛性证明:这是本文最核心的贡献。它严格证明了 SPCM 算法的迭代序列会收敛到其代价函数 JSPCMJ_{SPCM}JSPCM 的一个局部最小值,这为算法的可靠性和理论基础提供了坚实保障。
  2. 改进了 PCM2 的收敛性结论:通过将 PCM2 视为 SPCM 在 λ=0\lambda=0λ=0 时的特例,论文证明了 PCM2 也会收敛到其代价函数 JPCM2J_{PCM2}JPCM2 的一个局部最小值。这比 Zhou 等人在 [11] 中利用 Zangwill 定理得出的“收敛到局部最小值或鞍点”的结论要强得多
  3. 深入的理论分析:论文对算法行为进行了深刻的理论剖析,特别是通过引入“活动集”(active set)和“超球体”(hypersphere)的概念,清晰地解释了稀疏性约束如何在几何上影响隶属度的更新和簇中心的移动。
  4. 参数选择指导:论文在附录和 III-A 小节中,对关键参数 KKK(用于计算 λ\lambdaλ)的取值范围给出了理论指导(如 K<pe2(1−p)K < p e^{2(1-p)}K<pe2(1p)),以确保算法在初始化和迭代过程中满足基本假设(如每个簇至少有一个活动点)。

算法的实现过程

SPCM 算法的实现过程如下(以单个簇 jjj 为例,实际需对所有 mmm 个簇并行操作):

算法:SPCM(X,mX, mX,m)

输入:数据集 X={x1,...,xN}X = \{x_1, ..., x_N\}X={x1,...,xN},簇数 mmm
输出:簇中心 Θ={θ1,...,θm}\Theta = \{\theta_1, ..., \theta_m\}Θ={θ1,...,θm},参数 Γ={γ1,...,γm}\Gamma = \{\gamma_1, ..., \gamma_m\}Γ={γ1,...,γm},隶属度矩阵 UUU

  1. 初始化 (t=0t=0t=0)

    • 初始化 θj\theta_jθj:运行标准的 FCM 算法,得到 mmm 个初始簇中心 θj(0)\theta_j^{(0)}θj(0)
    • 初始化 γj\gamma_jγj:利用 FCM 的最终结果计算:
      γj=∑i=1NuijFCM∥xi−θj(0)∥2∑i=1NuijFCM \gamma_j = \frac{\sum_{i=1}^{N} u_{ij}^{FCM} \|x_i - \theta_j^{(0)}\|^2}{\sum_{i=1}^{N} u_{ij}^{FCM}} γj=i=1NuijFCMi=1NuijFCMxiθj(0)2
    • 计算 λ\lambdaλ
      λ=Kγˉp(1−p)e2−p,其中γˉ=min⁡j=1,...,mγj \lambda = K \frac{\bar{\gamma}}{p(1-p) e^{2-p}}, \quad \text{其中} \quad \bar{\gamma} = \min_{j=1,...,m} \gamma_j λ=Kp(1p)e2pγˉ,其中γˉ=j=1,...,mminγj
      通常取 K=0.9K=0.9K=0.9 (当 p=0.5p=0.5p=0.5 时)。
  2. 重复以下步骤直到收敛

    • 更新隶属度 U(t)U^{(t)}U(t)
      对每个数据点 iii 和每个簇 jjj
      1. 计算距离 dij=∥xi−θj(t)∥2d_{ij} = \|x_i - \theta_j^{(t)}\|^2dij=xiθj(t)2
      2. 计算临界半径 Rj2R_j^2Rj2 (公式见上文)。
      3. 如果 dij>Rj2d_{ij} > R_j^2dij>Rj2,则设 uij(t)=0u_{ij}^{(t)} = 0uij(t)=0
      4. 如果 dij≤Rj2d_{ij} \leq R_j^2dijRj2
        • 计算 f(uij)f(u_{ij})f(uij) 的最小值点 u^ij\hat{u}_{ij}u^ij
        • 使用二分法在区间 (u^ij,1](\hat{u}_{ij}, 1](u^ij,1] 内求解方程 f(uij)=0f(u_{ij}) = 0f(uij)=0,得到较大的根 uij{2}u_{ij}^{\{2\}}uij{2}
        • uij(t)=uij{2}u_{ij}^{(t)} = u_{ij}^{\{2\}}uij(t)=uij{2}
    • 更新簇中心 Θ(t+1)\Theta^{(t+1)}Θ(t+1)
      对每个簇 jjj
      θj(t+1)=∑i=1Nuij(t)xi∑i=1Nuij(t) \theta_j^{(t+1)} = \frac{\sum_{i=1}^{N} u_{ij}^{(t)} x_i}{\sum_{i=1}^{N} u_{ij}^{(t)}} θj(t+1)=i=1Nuij(t)i=1Nuij(t)xi
    • 迭代计数t=t+1t = t + 1t=t+1
    • 检查收敛:如果所有 θj\theta_jθj 在连续两次迭代中的变化小于预设阈值,则停止。
  3. 后处理:算法终止后,通常需要一个额外的步骤来识别并移除可能产生的重复簇(即位置非常接近的簇中心)。

计算复杂度:算法的主要计算开销在于更新隶属度 UUU,特别是当需要使用二分法求解 uij{2}u_{ij}^{\{2\}}uij{2} 时。然而,在实践中,由于稀疏性约束,大部分 uiju_{ij}uij 会被直接设为 0,只有少数点需要进行二分法计算,因此实际复杂度仅比 PCM 略高。


网站公告

今日签到

点亮在社区的每一天
去签到