TFS-2022《A Novel Data-Driven Approach to Autonomous Fuzzy Clustering》


核心思想

这篇论文的核心思想是提出一种全新的、数据驱动自主模糊聚类 (Autonomous Fuzzy Clustering, AFC)算法。其核心创新在于,它巧妙地结合了模糊聚类的灵活性和基于中位数(medoids)聚类的可解释性,并通过一个自适应的高斯核来控制模糊程度,从而实现了两大目标:

  1. 自主确定聚类数量(C):无需用户预先指定聚类数,算法能根据数据的内在结构(局部模式)自动推断出最优的聚类数量。
  2. 获得高质量的初始划分:避免了传统模糊C均值(FCM)等算法因随机初始化而陷入局部次优解的问题,提供了一个稳健且高质量的初始聚类中心集。

该算法通过一个巧妙的"微聚类"(microcluster)机制,将所有数据点视为一个微聚类,利用高斯核计算它们之间的相互隶属度,然后通过计算每个数据点的"累积隶属度"(cumulative membership)并寻找其局部最大值,来一次性地、自主地选出初始的聚类中位数。


目标函数

AFC算法的目标函数是整个优化过程的基石,它定义了算法需要最小化的准则。

其目标函数如下:

J(U,P)=∑k=1K∑i=1Cμˉi,k∥xk−pi∥2J(U, P) = \sum_{k=1}^{K} \sum_{i=1}^{C} \bar{\mu}_{i,k} \|x_k - p_i\|^2J(U,P)=k=1∑Ki=1∑Cμˉi,k∥xk−pi∥2

其中:

  • J(U,P)J(U, P)J(U,P) 是需要最小化的目标函数值。
  • U=[μˉi,k]i=1:C,k=1:KU = [\bar{\mu}{i,k}]{i=1:C, k=1:K}U=[μˉi,k]i=1:C,k=1:K 是模糊隶属度矩阵 。μˉi,k\bar{\mu}_{i,k}μˉi,k 表示数据样本 xkx_kxk 属于由中位数 pip_ipi 代表的第 iii 个聚类的归一化隶属度
  • P=[pi]i=1:CP = [p_i]_{i=1:C}P=[pi]i=1:C 是中位数矩阵 。pip_ipi 是第 iii 个聚类的中位数,它必须是数据集中的一个实际存在的样本点
  • KKK 是数据集中的总样本数。
  • CCC 是聚类的数量(在算法开始时是未知的)。
  • ∥xk−pi∥2\|x_k - p_i\|^2∥xk−pi∥2 是数据样本 xkx_kxk 与聚类中位数 pip_ipi 之间的欧几里得距离的平方。

这个目标函数可以理解为加权的平方误差和 。算法的目标是找到一组中位数 PPP 和对应的隶属度 UUU,使得所有样本到其所属聚类中心的加权距离平方和最小。


目标函数的优化过程

AFC算法对目标函数的优化过程分为两个主要阶段:

第一阶段:自主初始化 (核心创新)

这一阶段不直接优化上述目标函数,而是为第二阶段提供一个极佳的起点。其核心思想是:

  1. 计算自适应核宽 σG\sigma_GσG :根据所有数据点间的相互距离和用户设定的"粒度级别"GGG,通过公式(5)计算出一个全局的高斯核宽度 σG\sigma_GσG。这个 σG\sigma_GσG 控制了"影响范围",是算法数据驱动特性的体现。
  2. 构建微聚类隶属度矩阵 UmicroU_{micro}Umicro :将每个数据点 xkx_kxk 都视为一个微聚类的中位数,利用高斯函数计算它对所有其他数据点 xjx_jxj 的隶属度:
    μ(xk,xj,σG)=e−∥xk−xj∥2/σG2\mu(x_k, x_j, \sigma_G) = e^{-\|x_k - x_j\|^2 / \sigma_G^2}μ(xk,xj,σG)=e−∥xk−xj∥2/σG2
    然后进行归一化,得到微聚类隶属度矩阵 UmicroU_{micro}Umicro。
  3. 计算累积隶属度 λ(xk)\lambda(x_k)λ(xk) :对于每个数据点 xkx_kxk,计算它作为微聚类中位数时,对所有 KKK 个样本(包括自己)的隶属度之和:
    λ(xk)=∑j=1Kμˉk,j′\lambda(x_k) = \sum_{j=1}^{K} \bar{\mu}'_{k,j}λ(xk)=j=1∑Kμˉk,j′
    这个 λ(xk)\lambda(x_k)λ(xk) 可以看作是该点作为"局部模式代表"的综合吸引力或代表性强度
  4. 自主选择初始中位数 P0P^0P0 :找出所有满足 条件1 的数据点:
    如果 λ(xk)>max⁡∥xk−xj∥≤σG;k≠j(λ(xj)), 则 xk∈{p}C0\text{如果 } \lambda(x_k) > \max_{\|x_k - x_j\| \leq \sigma_G; k \neq j} (\lambda(x_j)) \text{, 则 } x_k \in \{p\}_C^0如果 λ(xk)>∥xk−xj∥≤σG;k=jmax(λ(xj)), 则 xk∈{p}C0
    这意味着,xkx_kxk 的累积隶属度在其以 σG\sigma_GσG 为半径的邻域内是最大的。这些点就是局部模式的峰值,被选为初始聚类中位数 P0P^0P0。此时,聚类数 CCC 也就被自主确定了。

第二阶段:迭代优化

在获得高质量的初始中位数 P0P^0P0 后,算法进入标准的交替优化过程,以最小化目标函数 J(U,P)J(U, P)J(U,P)。

  1. 更新中位数 PtP^tPt (固定 Ut−1U^{t-1}Ut−1) :对于每个聚类 iii,在所有数据样本中寻找一个新的中位数 pitp_i^tpit,使得该聚类内所有样本的加权距离平方和最小:
    pit=arg⁡min⁡z∈{x}(∑k=1Kμˉi,kt−1∥xk−z∥2)p_i^t = \arg \min_{z \in \{x\}} \left( \sum_{k=1}^{K} \bar{\mu}^{t-1}_{i,k} \|x_k - z\|^2 \right)pit=argz∈{x}min(k=1∑Kμˉi,kt−1∥xk−z∥2)
    由于中位数必须是实际数据点,因此这是一个在有限集合 {x}\{x\}{x} 上的搜索问题。
  2. 更新隶属度 UtU^tUt (固定 PtP^tPt) :根据新的中位数位置 PtP^tPt,重新计算所有样本的归一化隶属度:
    μˉi,kt=μ(pit,xk,σG)∑j=1Cμ(pjt,xk,σG)\bar{\mu}^t_{i,k} = \frac{\mu(p_i^t, x_k, \sigma_G)}{\sum_{j=1}^{C} \mu(p_j^t, x_k, \sigma_G)}μˉi,kt=∑j=1Cμ(pjt,xk,σG)μ(pit,xk,σG)
    这里使用的仍然是第一阶段计算出的、固定的 σG\sigma_GσG。
  3. 收敛判断 :重复步骤1和2,计算新的目标函数值 J(Ut,Pt)J(U^t, P^t)J(Ut,Pt)。当目标函数值的变化小于预设阈值,或达到最大迭代次数时,停止迭代。

主要贡献点

  1. 数据驱动的自主聚类 :这是最核心的贡献。算法通过"累积隶属度"和局部最大值搜索,完全自主地确定了聚类数量 CCC,无需任何复杂的迭代搜索或外部参数调整,解决了FCM等算法的一大痛点。
  2. 稳健的高质量初始化:提出的初始化方法基于数据的全局结构,避免了随机初始化的不稳定性,为后续优化提供了极佳的起点,提高了算法的鲁棒性和收敛速度。
  3. 可解释的聚类中心 :采用中位数 (实际数据点)而非均值(虚拟点)作为聚类中心,使得聚类结果更具可解释性,尤其适用于需要理解"典型样本"是什么的应用场景。
  4. 数据驱动的模糊度控制 :用一个从数据中自适应计算的高斯核宽度 σG\sigma_GσG 来控制模糊度,取代了传统FCM中需要手动设定的模糊加权指数 mmm,使算法更加自主。
  5. 高效的流式数据扩展:提出了一种"逐块"(chunk-by-chunk)的流式数据聚类机制。它能高效地处理数据流,通过融合新旧聚类中心并移除冗余,实现了对概念漂移和概念突变的自适应。
  6. 计算效率 :对于静态数据,其时间复杂度为 O(K2+HCK)O(K^2 + HCK)O(K2+HCK),其中 K2K^2K2 项来自初始化,HCKHCKHCK 项来自迭代优化,整体效率较高。

实验结果

论文在16个基准数据集(包括合成数据、真实世界数据和图像数据)上进行了大量实验,结果证明了AFC算法的有效性。

  1. 静态数据聚类 :在6个合成数据集和8个真实世界数据集上,AFC算法(G=4G=4G=4)在总体排名 (Table V)上优于12种最先进的对比算法(如FCM, K-means, DBSCAN, AP等)。它在Calinski Harabasz指数 (CHI)、Davies-Bouldin指数 (DBI)和轮廓系数(SC)等质量指标上表现最佳,表明其聚类结果紧凑且分离度好。
  2. 流式数据聚类:在8个真实世界数据集上,AFC算法与5种在线聚类算法(如EC, OKM)相比,同样取得了优异的性能(Table VI),在CHI和SC等指标上排名第一或前三,证明了其在处理数据流时的有效性。
  3. 大规模高维数据 :在MNIST和FMNIST两个大规模高维数据集上,AFC算法的计算效率远高于 对比算法(ADP),同时聚类质量(CHI)也显著更好
  4. 参数 GGG 的影响 :实验表明,粒度级别 GGG 控制着聚类的精细程度。较小的 GGG(如1,2)导致粗粒度、少聚类;较大的 GGG(如5,6)导致细粒度、多聚类。推荐值 G=4G=4G=4 或 555 能在多数情况下取得良好平衡。

算法实现过程详解

以下是AFC算法(静态数据)的详细实现步骤,对应论文中的 Algorithm 1

  1. 输入 :静态数据集 {x}={x1,x2,...,xK}\{x\} = \{x_1, x_2, ..., x_K\}{x}={x1,x2,...,xK} 和粒度级别 GGG。
  2. 计算自适应核宽 σG\sigma_GσG
    • 根据公式(5),利用所有数据点对之间的距离和用户设定的 GGG,计算出 σG2\sigma_G^2σG2。这个值在整个算法过程中保持不变。
  3. 构建微聚类隶属度矩阵 UmicroU_{micro}Umicro
    • 对于每个数据点 xkx_kxk(作为微聚类中位数),计算它对所有 KKK 个数据点 xjx_jxj 的高斯隶属度 μ(xk,xj,σG)\mu(x_k, x_j, \sigma_G)μ(xk,xj,σG)。
    • 对每个 xjx_jxj,将其对所有微聚类的隶属度进行归一化,得到 μˉk,j′\bar{\mu}'{k,j}μˉk,j′。最终形成一个 K×KK \times KK×K 的矩阵 UmicroU{micro}Umicro。
  4. 计算累积隶属度 λ(xk)\lambda(x_k)λ(xk)
    • 对 UmicroU_{micro}Umicro 的每一行(对应一个微聚类中位数 xkx_kxk)求和,得到该点的累积隶属度 λ(xk)\lambda(x_k)λ(xk)。
  5. 自主选择初始中位数 P0P^0P0
    • 遍历所有数据点 xkx_kxk,检查其是否满足条件1 :即在以 σG\sigma_GσG 为半径的邻域内,其 λ(xk)\lambda(x_k)λ(xk) 是否是最大的。
    • 将所有满足条件的 xkx_kxk 收集起来,构成初始聚类中位数集合 P0={p10,p20,...,pC0}P^0 = \{p^0_1, p^0_2, ..., p^0_C\}P0={p10,p20,...,pC0}。此时,聚类数 CCC 被确定。
  6. 初始化隶属度矩阵 U0U^0U0
    • 使用初始中位数 P0P^0P0 和固定的 σG\sigma_GσG,根据公式(3)计算所有样本的归一化隶属度,得到 U0U^0U0。
  7. 迭代优化
    • 初始化 :t=1t = 1t=1,计算初始目标函数值 J(U0,P0)J(U^0, P^0)J(U0,P0)。
    • 循环
      • 步骤1 (更新 PtP^tPt) :对每个聚类 iii,根据公式(9),在原始数据集 {x}\{x\}{x} 中搜索一个新的中位数 pitp_i^tpit,使得该聚类的加权距离平方和最小。
      • 步骤1 (更新 UtU^tUt) :根据新的中位数 PtP^tPt,根据公式(10)重新计算所有样本的归一化隶属度 UtU^tUt。
      • 步骤2 (收敛判断) :计算新的目标函数值 J(Ut,Pt)J(U^t, P^t)J(Ut,Pt)。如果 JJJ 的变化足够小(收敛),则跳出循环;否则,令 t=t+1t = t + 1t=t+1,返回步骤1。
  8. 输出 :最终的聚类中位数矩阵 PPP 和隶属度矩阵 UUU。

综上所述,这篇论文提出了一种思想新颖、实现巧妙的自主模糊聚类算法。它通过"累积隶属度"这一核心概念,成功地将模糊聚类的优势与自主性、可解释性相结合,为解决聚类分析中的核心难题提供了新的思路。

问题分析

公式 (5) 是论文中用于计算自适应核宽度 σG2\sigma_G^2σG2 的核心公式,它是 AFC 算法中的一个关键步骤。该公式通过数据点之间的相互距离和用户设定的"粒度级别" GGG 来计算高斯核的宽度,从而控制隶属度函数的模糊程度。以下是对其数学原理的详细分析:


公式回顾

公式 (5) 表达如下:

σg2=1∑i=1K−1∑j=i+1Kwg,i,j∑i=1K−1∑j=i+1Kwg,i,j∥xi−xj∥2 \sigma_g^2 = \frac{1}{\sum_{i=1}^{K-1} \sum_{j=i+1}^{K} w_{g,i,j}} \sum_{i=1}^{K-1} \sum_{j=i+1}^{K} w_{g,i,j} \|x_i - x_j\|^2 σg2=∑i=1K−1∑j=i+1Kwg,i,j1i=1∑K−1j=i+1∑Kwg,i,j∥xi−xj∥2

其中:

  • g=1,2,...,Gg = 1, 2, \dots, Gg=1,2,...,G:表示粒度级别的索引,GGG 是用户选择的非负整数。
  • wg,i,jw_{g,i,j}wg,i,j 是一个权重函数,定义为:
    wg,i,j={1,如果 ∥xi−xj∥≤σg−1,0,否则. w_{g,i,j} = \begin{cases} 1, & \text{如果 } \|x_i - x_j\| \leq \sigma_{g-1}, \\ 0, & \text{否则}. \end{cases} wg,i,j={1,0,如果 ∥xi−xj∥≤σg−1,否则.
  • σ02=2K(K−1)∑i=1K−1∑j=i+1K∥xi−xj∥2\sigma_0^2 = \frac{2}{K(K-1)} \sum_{i=1}^{K-1} \sum_{j=i+1}^{K} \|x_i - x_j\|^2σ02=K(K−1)2∑i=1K−1∑j=i+1K∥xi−xj∥2:这是初始核宽度的计算公式。

数学原理分析

1. σ02\sigma_0^2σ02 的计算
  • σ02\sigma_0^2σ02 是所有数据点对之间欧几里得距离平方的平均值,乘以一个常数因子 2K(K−1)\frac{2}{K(K-1)}K(K−1)2。
  • 它的作用是提供一个全局尺度,衡量数据集的整体分布范围。具体来说:
    σ02=2K(K−1)∑i=1K−1∑j=i+1K∥xi−xj∥2 \sigma_0^2 = \frac{2}{K(K-1)} \sum_{i=1}^{K-1} \sum_{j=i+1}^{K} \|x_i - x_j\|^2 σ02=K(K−1)2i=1∑K−1j=i+1∑K∥xi−xj∥2
    这里的分母 K(K−1)K(K-1)K(K−1) 是所有可能的数据点对的数量(无序对),因此 σ02\sigma_0^2σ02 可以看作是对数据点间平均距离平方的一种归一化估计。
  • σ02\sigma_0^2σ02 是整个算法的起点,后续的 σg2\sigma_g^2σg2 都是基于它递归计算的。
2. 递归计算 σg2\sigma_g^2σg2
  • 对于 g>0g > 0g>0,σg2\sigma_g^2σg2 的计算依赖于前一步的 σg−12\sigma_{g-1}^2σg−12。具体来说,公式 (5) 中的 wg,i,jw_{g,i,j}wg,i,j 使用了 σg−1\sigma_{g-1}σg−1 作为阈值,来决定是否将数据点对 (xi,xj)(x_i, x_j)(xi,xj) 的距离平方纳入加权平均的计算。
  • wg,i,jw_{g,i,j}wg,i,j 的作用是:
    • 如果两个数据点 xix_ixi 和 xjx_jxj 的距离小于或等于 σg−1\sigma_{g-1}σg−1,则认为它们在当前粒度级别 ggg 下是"邻近"的,权重为 1。
    • 否则,权重为 0,表示这两个点在当前粒度级别下不相关。
  • 因此,σg2\sigma_g^2σg2 的计算可以理解为:
    σg2=邻近点对的距离平方之和邻近点对的数量 \sigma_g^2 = \frac{\text{邻近点对的距离平方之和}}{\text{邻近点对的数量}} σg2=邻近点对的数量邻近点对的距离平方之和
    其中,"邻近点对"是指满足 ∥xi−xj∥≤σg−1\|x_i - x_j\| \leq \sigma_{g-1}∥xi−xj∥≤σg−1 的点对。
3. 自适应性与粒度控制
  • 通过递归地计算 σg2\sigma_g^2σg2,算法能够根据数据的局部结构动态调整核宽度。具体来说:
    • 当 g=1g = 1g=1 时,σ12\sigma_1^2σ12 基于 σ02\sigma_0^2σ02 计算,此时的邻近关系较为宽松,因为 σ02\sigma_0^2σ02 是全局尺度。
    • 随着 ggg 的增加,σg−1\sigma_{g-1}σg−1 逐渐减小,邻近点对的定义变得越来越严格,这使得 σg2\sigma_g^2σg2 能够捕捉到更精细的局部模式。
  • 用户可以通过选择不同的 GGG 来控制聚类结果的精细程度:
    • 较小的 GGG 导致较大的 σg2\sigma_g^2σg2,聚类结果较粗略。
    • 较大的 GGG 导致较小的 σg2\sigma_g^2σg2,聚类结果更精细。
4. 高斯核宽度的意义
  • 在 AFC 算法中,高斯核宽度 σG2\sigma_G^2σG2 最终用于计算隶属度函数:
    μ(pi,xk,σG)=e−∥pi−xk∥2σG2 \mu(p_i, x_k, \sigma_G) = e^{-\frac{\|p_i - x_k\|^2}{\sigma_G^2}} μ(pi,xk,σG)=e−σG2∥pi−xk∥2
    其中,pip_ipi 是聚类中心(中位数),xkx_kxk 是数据点。
  • σG2\sigma_G^2σG2 控制了隶属度函数的"影响范围"。较大的 σG2\sigma_G^2σG2 表示每个聚类中心的影响范围较大,数据点更容易被分配到多个聚类;较小的 σG2\sigma_G^2σG2 则表示影响范围较小,聚类结果更加明确。
  • 通过从数据中自适应地计算 σG2\sigma_G^2σG2,AFC 算法避免了手动调参的困难,同时能够更好地适应数据的内在结构。
5. 递归过程的稳定性
  • 由于 σg2\sigma_g^2σg2 是基于前一步的 σg−12\sigma_{g-1}^2σg−12 计算的,这种递归方式确保了计算的稳定性和一致性。
  • 每一步的 σg2\sigma_g^2σg2 都是从数据中提取的统计量,而不是人为设定的参数,因此具有很强的数据驱动特性。

总结

公式 (5) 的数学原理在于通过递归的方式,利用数据点之间的距离信息和用户设定的粒度级别 GGG,自适应地计算出适合当前数据分布的高斯核宽度 σG2\sigma_G^2σG2。这一过程的核心思想是:

  1. 全局到局部的过渡 :从全局尺度 σ02\sigma_0^2σ02 开始,逐步细化到更局部的结构。
  2. 数据驱动的自适应性:通过递归计算,算法能够自动调整核宽度,无需人工干预。
  3. 粒度控制 :用户可以通过调整 GGG 来控制聚类结果的精细程度,从而灵活应对不同复杂度的数据分布。

这种设计不仅提高了算法的鲁棒性和通用性,还使得 AFC 算法能够在多种场景下(静态数据和流式数据)表现出优异的性能。

相关推荐
2501_924879362 小时前
口罩识别场景误报率↓79%:陌讯多模态融合算法实战解析
人工智能·深度学习·算法·目标检测·智慧城市
万粉变现经纪人2 小时前
如何解决pip安装报错ModuleNotFoundError: No module named ‘keras’问题
人工智能·python·深度学习·scrapy·pycharm·keras·pip
whaosoft-1432 小时前
51c自动驾驶~合集12
人工智能
Chan162 小时前
【智能协同云图库】第七期:基于AI调用阿里云百炼大模型,实现AI图片编辑功能
java·人工智能·spring boot·后端·spring·ai·ai作画
计算机科研圈2 小时前
字节Seed发布扩散语言模型,推理速度达2146 tokens/s,比同规模自回归快5.4倍
人工智能·语言模型·自然语言处理·数据挖掘·开源·字节
陈哥聊测试2 小时前
Coze开源了!意味着什么?
人工智能·ai·开源·项目管理·项目管理软件
木木子99992 小时前
超平面(Hyperplane)是什么?
算法·机器学习·支持向量机·超平面·hyperplane
FL16238631293 小时前
室内液体撒漏泄漏识别分割数据集labelme格式2576张1类别
人工智能·深度学习