当前位置: 首页 > news >正文

TFS-2010《Fuzzy PCA-Guided Robust k-Means Clustering》

2. 核心思想

这篇论文的核心思想是将鲁棒性(robustness)与确定性(determinism)引入到经典的k-means聚类算法中,提出了一种名为“模糊PCA引导的鲁棒k-means”(Fuzzy PCA-Guided Robust k-means, FPR k-means)的新方法。

其核心思路可以分解为以下几点:

  1. 利用PCA引导k-means:借鉴了Ding和He的工作,将k-means的聚类指标(cluster indicators)的求解问题,通过一个“无质心”(centroidless)的目标函数,转化为一个类似于主成分分析(PCA)的特征值分解问题。这使得初始聚类划分是确定性的,避免了传统k-means对初始质心敏感的问题。
  2. 引入责任权重:认识到传统k-means受噪声影响大,因为它强制所有样本(包括噪声)都必须属于某个簇。为此,论文引入了“责任权重”uiu_iui,用于衡量每个样本iii对整个k-means聚类过程的“责任”或“可信度”。权重小的样本被认为是噪声或离群点。
  3. 模糊PCA框架:将责任权重uiu_iui融入到PCA引导的过程中。具体来说,在进行特征值分解以求解聚类指标时,使用一个由责任权重加权的散度矩阵Uθ/2YTYUθ/2U^{\theta/2}Y^T Y U^{\theta/2}Uθ/2YTYUθ/2,而不是原始的YTYY^T YYTY。这相当于在模糊PCA的框架下寻找主成分,使得聚类过程更关注那些“责任大”的核心样本。
  4. 迭代优化:整个算法通过一个交替优化过程实现:首先,固定责任权重,用加权的PCA方法求解聚类指标;然后,固定聚类指标,利用噪声聚类(noise clustering)的思想更新每个样本的责任权重。这个过程迭代进行,直到收敛。

总而言之,该方法通过一个确定性的初始化(基于加权PCA)和一个迭代的鲁棒化过程(通过责任权重),实现了对数据集中“簇核心”(cluster cores)的稳定提取。

3. 目标函数

论文的目标函数是传统k-means目标函数的鲁棒化版本,结合了噪声聚类的思想。其最终形式如下:

Lrkm=∑i=1n(1−ui)θγ+∑k=1K∑i∈Gkuiθ∥xi−bk∥2 L_{rkm} = \sum_{i=1}^{n} (1 - u_i)^\theta \gamma + \sum_{k=1}^{K} \sum_{i \in G_k} u_i^\theta \|x_i - b_k\|^2 Lrkm=i=1n(1ui)θγ+k=1KiGkuiθxibk2

其中:

  • LrkmL_{rkm}Lrkm 是鲁棒k-means的目标函数。
  • nnn 是样本总数。
  • KKK 是预设的簇数量。
  • ui∈[0,1]u_i \in [0, 1]ui[0,1] 是样本iii责任权重(responsibility weight)。它不是传统的隶属度,而是衡量样本对聚类过程的贡献度。
  • θ\thetaθ 是一个加权指数(通常取1.5或2),控制责任权重的“模糊”程度。
  • γ\gammaγ 是一个惩罚权重,用于调节算法对噪声的敏感度。γ\gammaγ 的值通常根据数据动态设定,如论文中采用的 γ=β∑i=1nuiθdi∑i=1nuiθ\gamma = \beta \frac{\sum_{i=1}^{n} u_i^\theta d_i}{\sum_{i=1}^{n} u_i^\theta}γ=βi=1nuiθi=1nuiθdi,其中β\betaβ是一个可调参数,did_idi是责任判据。
  • bkb_kbk 是第kkk个簇的质心。
  • GkG_kGk 是第kkk个簇的样本集合。

这个目标函数包含两部分:

  1. 第一项 ∑i=1n(1−ui)θγ\sum_{i=1}^{n} (1 - u_i)^\theta \gammai=1n(1ui)θγ 是对“非责任”样本(即被识别为噪声的样本,uiu_iui接近0)的惩罚。uiu_iui越小,该项的值越大,因此优化过程会倾向于让真正的噪声样本的uiu_iui变小。
  2. 第二项是传统的加权k-means误差项,但每个样本的误差都乘以其责任权重的θ\thetaθ次方。这意味着责任权重小的样本对质心bkb_kbk的计算影响也小。

4. 目标函数的详细优化过程

该目标函数通过交替优化(Alternating Optimization)策略进行求解,分为两个主要步骤循环迭代:

步骤一:固定责任权重 uiu_iui,求解聚类指标(Cluster Indicator Estimation)

当责任权重uiu_iui固定时,问题转化为如何为样本分配簇。论文将此问题重新表述为一个“无质心”形式,并利用PCA引导的方法求解。

  1. 质心更新:首先,根据当前的责任权重和簇分配,更新每个簇的质心bkb_kbk。根据目标函数对bkb_kbk求偏导并令其为0,可得:
    bk=∑i∈Gkuiθxi∑i∈Gkuiθ b_k = \frac{\sum_{i \in G_k} u_i^\theta x_i}{\sum_{i \in G_k} u_i^\theta} bk=iGkuiθiGkuiθxi
    这表明质心是簇内样本的加权平均,权重为uiθu_i^\thetauiθ

  2. 无质心目标函数:将上述质心公式代回原目标函数,消去bkb_kbk,得到仅与责任权重uiu_iui和簇分配相关的“无质心”目标函数。

  3. PCA引导求解:将“无质心”目标函数的求解,转化为一个最大化问题:
    max⁡Tr(QK−1TUθ/2YTYUθ/2QK−1) \max \text{Tr}(Q_{K-1}^T U^{\theta/2} Y^T Y U^{\theta/2} Q_{K-1}) maxTr(QK1TUθ/2YTYUθ/2QK1)
    其中:

    • YYY 是对数据矩阵XXX进行加权中心化后的矩阵,即YU=0YU = 0YU=0,其均值是按uiθu_i^\thetauiθ加权的。
    • UUU 是一个对角矩阵,其第iii个对角元素为uiu_iui
    • QK−1=(q1,...,qK−1)Q_{K-1} = (q_1, ..., q_{K-1})QK1=(q1,...,qK1) 是变换后的聚类指标向量矩阵。
    • Tr(⋅)\text{Tr}(\cdot)Tr() 表示矩阵的迹。
  4. 特征值分解:上述最大化问题的最优解QK−1Q_{K-1}QK1,由矩阵Uθ/2YTYUθ/2U^{\theta/2} Y^T Y U^{\theta/2}Uθ/2YTYUθ/2的前K−1K-1K1个最大特征值对应的特征向量构成。这与PCA中取前K−1K-1K1个主成分完全类似,但这里的协方差矩阵被责任权重UUU进行了加权。这一步实现了在考虑样本责任的前提下,以确定性的方式找到最优的(连续松弛的)聚类指标。

步骤二:固定聚类指标,更新责任权重 uiu_iui(Responsibility Weight Estimation)

当聚类指标(即QKQ_KQKHKH_KHK)固定时,需要为每个样本iii更新其责任权重uiu_iui

  1. 计算责任判据 did_idi:定义一个判据did_idi来衡量样本iii的“非责任”程度。根据论文推导,该判据为:
    di=∥xi∥2−∑k=1K∑j=1nqkiqkjxiTxj(ujui)θ/2 d_i = \|x_i\|^2 - \sum_{k=1}^{K} \sum_{j=1}^{n} q_{ki} q_{kj} x_i^T x_j \left( \frac{u_j}{u_i} \right)^{\theta/2} di=xi2k=1Kj=1nqkiqkjxiTxj(uiuj)θ/2
    这个公式比较复杂,其核心思想是did_idi反映了样本iii在当前聚类结构下的“不适配度”或“离群程度”。

  2. 更新责任权重:利用噪声聚类的优化条件,得到更新uiu_iui的闭式解:
    ui=[1+(diγ)1/(θ−1)]−1 u_i = \left[ 1 + \left( \frac{d_i}{\gamma} \right)^{1/(\theta-1)} \right]^{-1} ui=[1+(γdi)1/(θ1)]1
    这个公式非常关键。它表明:

    • 如果样本iii的不适配度did_idi很高(即它离任何簇中心都很远),那么uiu_iui的值就会很小,意味着它被识别为噪声。
    • 如果did_idi很低(即它是某个簇的核心成员),那么uiu_iui的值会接近1。
    • 参数γ\gammaγ决定了从“核心”到“噪声”的阈值。

这两个步骤(步骤一和步骤二)反复迭代,直到责任权重uiu_iui的变化小于一个预设的阈值ϵ\epsilonϵ,算法收敛。

5. 主要贡献点

这篇论文的主要贡献可以总结为以下几点:

  1. 提出了FPR k-means新算法:首次将模糊PCA与鲁棒k-means相结合,提出了一种全新的聚类算法。该算法通过责任权重机制,能够有效识别和抑制噪声样本的影响。
  2. 实现了确定性的鲁棒聚类:该方法结合了PCA引导的确定性初始化和迭代的鲁棒化过程。这使得算法摆脱了传统k-means和模糊聚类对初始值的敏感性,能够以确定性的方式稳定地提取出簇的核心结构,解决了“初始化问题”。
  3. 提供了直观的聚类有效性评估方法:论文将“距离敏感排序”(distance-sensitive ordering)方法进行了改进,使其能够考虑样本的责任权重。通过绘制“簇交叉曲线”(cluster-crossing curve),可以非常直观地可视化聚类结果和簇的数量,便于人工评估聚类的有效性。
  4. 引入了核技巧:为了处理非线性簇边界,论文将核方法(kernel trick)应用到FPR k-means中,扩展了该方法的适用范围。
  5. 强调了“簇核心”的提取:与旨在对所有样本进行硬划分或模糊划分的传统方法不同,该方法的核心目标是稳健地识别出数据中的“簇核心”,这对于理解数据的主要结构非常有价值。

6. 算法实现过程详解

根据论文第III-C节的“Algorithm”部分,FPR k-means的实现过程如下:

  1. 初始化(Step 1):

    • 将所有样本的责任权重初始化为1,即ui=1,∀iu_i = 1, \forall iui=1,i。这相当于假设所有样本最初都是“完全可信”的,此时算法退化为标准的PCA引导k-means。
    • 选择噪声敏感度参数β\betaβ(用于计算γ\gammaγ)和收敛阈值ϵ\epsilonϵ
  2. 数据中心化(Step 2):

    • 根据当前的责任权重uiu_iui,计算加权均值向量b=∑i=1nuiθxi∑i=1nuiθb = \frac{\sum_{i=1}^{n} u_i^\theta x_i}{\sum_{i=1}^{n} u_i^\theta}b=i=1nuiθi=1nuiθxi
    • 对每个样本进行中心化:yi=xi−by_i = x_i - byi=xib,得到中心化后的数据矩阵YYY。这保证了YU=0YU = 0YU=0,其中u=(u1θ,...,unθ)Tu = (u_1^\theta, ..., u_n^\theta)^Tu=(u1θ,...,unθ)T
  3. 求解聚类指标(Step 3):

    • 构造对角矩阵UUU,其对角线元素为uiu_iui
    • 计算加权的散度矩阵Uθ/2YTYUθ/2U^{\theta/2} Y^T Y U^{\theta/2}Uθ/2YTYUθ/2
    • 对该矩阵进行特征值分解,提取前K−1K-1K1个最大特征值对应的特征向量,构成矩阵QK−1=(q1,...,qK−1)Q_{K-1} = (q_1, ..., q_{K-1})QK1=(q1,...,qK1)
    • 根据公式(26)计算第KKK个向量qKq_KqK,并将QK−1Q_{K-1}QK1qKq_KqK合并为QKQ_KQK
  4. 更新责任权重(Step 4):

    • 计算γ\gammaγ:使用公式 γ=β∑i=1nuiθdi∑i=1nuiθ\gamma = \beta \frac{\sum_{i=1}^{n} u_i^\theta d_i}{\sum_{i=1}^{n} u_i^\theta}γ=βi=1nuiθi=1nuiθdi 计算惩罚权重γ\gammaγ。(论文建议只在前几次迭代中更新γ\gammaγ
    • 计算判据did_idi:对于每个样本iii,使用公式 di=∥xi∥2−∑k=1K∑j=1nqkiqkjxiTxj(ujui)θ/2d_i = \|x_i\|^2 - \sum_{k=1}^{K} \sum_{j=1}^{n} q_{ki} q_{kj} x_i^T x_j \left( \frac{u_j}{u_i} \right)^{\theta/2}di=xi2k=1Kj=1nqkiqkjxiTxj(uiuj)θ/2 计算其责任判据did_idi
    • 更新uiu_iui:使用公式 ui=[1+(diγ)1/(θ−1)]−1u_i = \left[ 1 + \left( \frac{d_i}{\gamma} \right)^{1/(\theta-1)} \right]^{-1}ui=[1+(γdi)1/(θ1)]1 更新每个样本的责任权重。
  5. 检查收敛(Step 5):

    • 计算本次迭代更新后的uiNEWu_i^{NEW}uiNEW与上一次的uiOLDu_i^{OLD}uiOLD之间的最大变化量max⁡i∣uiNEW−uiOLD∣\max_i |u_i^{NEW} - u_i^{OLD}|maxiuiNEWuiOLD
    • 如果该变化量小于预设的阈值ϵ\epsilonϵ,则算法收敛,输出连接性矩阵C=QKQKTC = Q_K Q_K^TC=QKQKT或考虑了责任权重的概率连接性矩阵PPP
    • 否则,返回步骤2,用更新后的uiu_iui继续下一轮迭代。

算法收敛后,高责任权重uiu_iui的样本被认为是簇的核心成员,而低uiu_iui的样本则被视为噪声。通过分析最终的连接性矩阵PPP和簇交叉曲线,可以直观地评估聚类结果。

http://www.dtcms.com/a/360863.html

相关文章:

  • macOS中Homebrew安装PHP的详细步骤(五)
  • React学习教程,从入门到精通, React 入门指南:创建 React 应用程序的语法知识点(7)
  • 反物质量子比特初探
  • [免费]基于Python的气象天气预报数据可视化分析系统(Flask+echarts+爬虫) 【论文+源码+SQL脚本】
  • 【iOS】关键字复习
  • 【iOS】折叠cell
  • 量子電腦組裝
  • FunASR开源部署中文实时语音听写服务(CPU)
  • 配送算法19 Two Fast Heuristics for Online Order Dispatching
  • windows10专业版系统安装本地化mysql服务端
  • 【Docker】Docker的容器Container、镜像Image和卷Volume对比
  • Centos安装unoconv文档转换工具并在PHP中使用phpword替换word模板中的变量后,使用unoconv将word转换成pdf
  • openharmony之sandbox沙箱机制详解
  • Docker一键快速部署压测工具,高效测试 API 接口性能
  • datax将数据从starrocks迁移至starrocks
  • Java比较器
  • golang 14并发编程
  • 20250828的学习笔记
  • Socket-TCP 上位机下位机数据交互框架
  • 深入理解 HTTP 与 HTTPS:区别以及 HTTPS 加密原理
  • UART-TCP双向桥接服务
  • Flutter WebAssembly (Wasm) 支持 - 实用指南Flutter WebAssembly (Wasm) 支持 - 实用指南
  • 解决爬虫IP限制:Selenium隧道代理完整解决方案
  • 聚焦智慧教育新趋势:AI+虚拟仿真技术加速未来学习转型
  • 算法面试题(上)
  • 【Java后端】Spring Boot 全局域名替换
  • Azure AI Search构建RAG的优化点
  • 接口自动化测试之设置断言思路
  • 大模型应用开发面试实录:LLM原理、RAG工程与多Agent场景化落地解析
  • mysql实例是什么?