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

TFS-2002《Fuzzy Clustering With Viewpoints》


核心思想 (Core Idea)

该论文的核心思想是提出一种知识引导的模糊聚类(Knowledge-Guided Fuzzy Clustering)新范式,其关键创新在于引入了“视点”(Viewpoints)这一概念。

传统的模糊聚类(如FCM)是纯粹数据驱动的,其目标是仅根据数据本身的分布来发现内在结构。然而,这种方法存在一个显著的“平均化效应”(Averaging Effect):聚类中心倾向于落在数据密集区域,而难以捕捉到数据边缘或稀疏区域的代表性点,这在后续的模糊建模中会导致“剪切效应”(Clipping Effect),即模型无法输出超出训练数据范围的值。

本文提出的“视点”机制旨在解决这一问题。视点是领域知识(Domain Knowledge)的一种形式,由用户或专家提供,代表了对数据集的特定“看法”或“关注点”。这些视点被作为外部引入的、固定的原型(Prototypes),并被强制性地纳入聚类过程。通过这种方式,聚类结果不仅反映了数据的内在结构,还融入了用户的偏好和需求,使得最终的模型更具解释性和实用性。

简而言之,核心思想就是:将用户的“观点”作为先验知识,通过在目标函数中加入与这些“视点”的距离项,来引导和约束聚类过程,从而生成更符合实际应用需求的聚类结果


目标函数 (Objective Function)

论文在标准模糊C均值(FCM)目标函数的基础上,通过引入视点矩阵 B\mathbf{B}BF\mathbf{F}F,构建了一个新的、增强的目标函数。

  • B\mathbf{B}B (Boolean Matrix): 一个 c×nc \times nc×n 的布尔矩阵,其中 ccc 是聚类数,nnn 是数据维度。如果 bij=1b_{ij} = 1bij=1,则表示第 iii 个聚类的第 jjj 个维度是由一个视点固定的;如果 bij=0b_{ij} = 0bij=0,则表示该维度是可优化的聚类中心。
  • F\mathbf{F}F (Value Matrix): 一个与 B\mathbf{B}B 同维度的矩阵,包含了当 bij=1b_{ij} = 1bij=1 时,该视点的具体数值 fijf_{ij}fij

原始FCM的目标函数为:
QFCM=∑i=1c∑k=1Nuikf∥xk−vi∥2Q_{\text{FCM}} = \sum_{i=1}^{c}\sum_{k=1}^{N} u_{ik}^f \|\mathbf{x}_k - \mathbf{v}_i\|^2QFCM=i=1ck=1Nuikfxkvi2

在引入视点后,目标函数被修改为:
Q=∑k=1N∑i=1c∑j=1i,j:bij=0nuikf(xkj−vij)2+∑k=1N∑i=1c∑j=1i,j:bij=1nuikf(xkj−fij)2Q = \sum_{k=1}^{N}\sum_{i=1}^{c}\sum_{\substack{j=1 \\ i,j:b_{ij}=0}}^{n} u_{ik}^f (x_{kj} - v_{ij})^2 + \sum_{k=1}^{N}\sum_{i=1}^{c}\sum_{\substack{j=1 \\ i,j:b_{ij}=1}}^{n} u_{ik}^f (x_{kj} - f_{ij})^2Q=k=1Ni=1cj=1i,j:bij=0nuikf(xkjvij)2+k=1Ni=1cj=1i,j:bij=1nuikf(xkjfij)2

这个目标函数可以被巧妙地简化。定义一个新的矩阵 G\mathbf{G}G,其元素 gijg_{ij}gij 为:
gij={vij,if bij=0fij,if bij=1g_{ij} = \begin{cases} v_{ij}, & \text{if } b_{ij} = 0 \\ f_{ij}, & \text{if } b_{ij} = 1 \end{cases}gij={vij,fij,if bij=0if bij=1

则目标函数可以统一写为:
Q=∑k=1N∑i=1c∑j=1nuikf(xkj−gij)2Q = \sum_{k=1}^{N}\sum_{i=1}^{c}\sum_{j=1}^{n} u_{ik}^f (x_{kj} - g_{ij})^2Q=k=1Ni=1cj=1nuikf(xkjgij)2
这个形式与标准FCM的目标函数在数学结构上完全一致,只是其中的“原型” gi\mathbf{g}_igi 是一个混合体,部分由可优化的 vijv_{ij}vij 构成,部分由固定的 fijf_{ij}fij 构成。


目标函数的详细优化过程 (Optimization Process)

优化过程与FCM类似,采用交替迭代优化策略,即固定一个变量(隶属度或原型),优化另一个变量。

1. 优化隶属度矩阵 UUU

固定所有原型 vi\mathbf{v}_ivi (即固定了 G\mathbf{G}G),对目标函数 QQQ 关于隶属度 uiku_{ik}uik 进行优化。这是一个带约束的优化问题:

  • 约束1: 0<∑k=1Nuik<N0 < \sum_{k=1}^{N} u_{ik} < N0<k=1Nuik<N
  • 约束2: ∑i=1cuik=1\sum_{i=1}^{c} u_{ik} = 1i=1cuik=1 (对每个数据点 kkk)

使用拉格朗日乘子法,构造拉格朗日函数:
V=∑i=1c∑j=1nuikf(xkj−gij)2+λ(1−∑i=1cuik)V = \sum_{i=1}^{c}\sum_{j=1}^{n} u_{ik}^f (x_{kj} - g_{ij})^2 + \lambda \left(1 - \sum_{i=1}^{c} u_{ik}\right)V=i=1cj=1nuikf(xkjgij)2+λ(1i=1cuik)

uiku_{ik}uikλ\lambdaλ 求偏导并令其为0:
∂V∂uik=0,∂V∂λ=0\frac{\partial V}{\partial u_{ik}} = 0, \quad \frac{\partial V}{\partial \lambda} = 0uikV=0,λV=0

经过代数推导,得到更新隶属度的公式:
uik=1∑j=1c(∥xk−gi∥∥xk−gj∥)1/(f−1)u_{ik} = \frac{1}{\sum_{j=1}^{c} \left( \frac{\|\mathbf{x}_k - \mathbf{g}_i\|}{\|\mathbf{x}_k - \mathbf{g}_j\|} \right)^{1/(f-1)}}uik=j=1c(xkgjxkgi)1/(f1)1
这个公式与标准FCM的公式形式相同,但距离计算是基于混合原型 gi\mathbf{g}_igi 而非纯聚类中心 vi\mathbf{v}_ivi

2. 优化聚类中心 VVV

固定隶属度矩阵 UUU,对目标函数 QQQ 关于可优化的聚类中心 vijv_{ij}vij 进行优化。注意,当 bij=1b_{ij}=1bij=1 时,vijv_{ij}vij 是固定的,不参与优化。

QQQ 关于 vijv_{ij}vij 求梯度并令其为0:
∇vijQ=0\nabla_{v_{ij}} Q = 0vijQ=0

在计算梯度时,只有目标函数的第一项(即 bij=0b_{ij}=0bij=0 的部分)对 vijv_{ij}vij 有贡献,第二项(bij=1b_{ij}=1bij=1 的部分)是常数,其导数为0。因此,优化只针对可变的 vijv_{ij}vij

推导结果如下:
vij={∑k=1Nuikfxkj∑k=1Nuikf,if bij=0fij,if bij=1v_{ij} = \begin{cases} \frac{\sum_{k=1}^{N} u_{ik}^f x_{kj}}{\sum_{k=1}^{N} u_{ik}^f}, & \text{if } b_{ij} = 0 \\ f_{ij}, & \text{if } b_{ij} = 1 \end{cases}vij=k=1Nuikfk=1Nuikfxkj,fij,if bij=0if bij=1

这个公式表明,对于可优化的维度,其更新规则与标准FCM完全相同(加权平均);对于由视点固定的维度,其值直接取自 F\mathbf{F}F 矩阵,保持不变。


主要贡献点 (Main Contributions)

  1. 提出“视点”(Viewpoints) 概念:这是论文最核心的贡献。它创造性地将领域知识形式化为一组固定的原型(视点),并将其无缝集成到模糊聚类的目标函数中,实现了知识与数据的协同驱动。
  2. 解决“平均化效应”:通过在数据边缘或稀疏区域设置视点,有效解决了传统聚类和模糊建模中的“平均化效应”和“剪切效应”,使得模型能够更好地覆盖整个输入/输出空间,提升了模型的泛化能力和预测准确性。
  3. 提出“粒度视点”(Granular Viewpoints):论文进一步将视点从精确的数值推广到信息粒度(如区间),使其能表达更模糊、更灵活的领域知识(例如,“大约平均收入”)。这使得方法更具普适性和现实意义。
  4. 生成二型模糊集:当使用粒度视点时,算法会自然地产生区间二型模糊集(Interval Type-2 Fuzzy Sets)作为结果。论文不仅实现了这一点,还提供了一种有效的估计二型模糊集隶属函数的方法,这在文献中是相对新颖的。
  5. 提出“粒度耦合”(Granular Coupling):在结论部分,论文提出了一个前瞻性的想法,即不同数据集上的聚类结果(原型)可以作为“视点”传递给另一个聚类过程,实现知识的迁移和结构的耦合,为跨领域知识迁移提供了新思路。

算法实现过程 (Algorithm Implementation)

以下是该算法(以数值型视点为例)的详细实现步骤:

  1. 初始化

    • 给定数据集 {x1,x2,...,xN}\{\mathbf{x}_1, \mathbf{x}_2, ..., \mathbf{x}_N\}{x1,x2,...,xN},聚类数 ccc,模糊指数 fff
    • 定义视点矩阵 B\mathbf{B}BF\mathbf{F}FB\mathbf{B}B 指明哪些聚类的哪些维度是固定的视点,F\mathbf{F}F 提供这些视点的具体数值。
    • 随机初始化隶属度矩阵 UUU,使其满足 ∑i=1cuik=1\sum_{i=1}^{c} u_{ik} = 1i=1cuik=1
  2. 迭代优化(重复以下步骤,直到收敛):

    • 步骤1:计算混合原型 G\mathbf{G}G
      根据当前的 B\mathbf{B}BF\mathbf{F}F,以及上一轮计算出的 V\mathbf{V}V,构建 G\mathbf{G}G 矩阵:
      gij={vij(old),if bij=0fij,if bij=1g_{ij} = \begin{cases} v_{ij}^{(old)}, & \text{if } b_{ij} = 0 \\ f_{ij}, & \text{if } b_{ij} = 1 \end{cases}gij={vij(old),fij,if bij=0if bij=1
      这里的 vij(old)v_{ij}^{(old)}vij(old) 是上一轮迭代得到的值(在第一轮迭代时,它是随机初始化的)。
    • 步骤2:更新隶属度矩阵 UUU
      使用步骤1得到的 G\mathbf{G}G,根据公式计算每个数据点对每个聚类的新隶属度:
      uik(new)=1∑j=1c(∥xk−gi∥∥xk−gj∥)1/(f−1)u_{ik}^{(new)} = \frac{1}{\sum_{j=1}^{c} \left( \frac{\|\mathbf{x}_k - \mathbf{g}_i\|}{\|\mathbf{x}_k - \mathbf{g}_j\|} \right)^{1/(f-1)}}uik(new)=j=1c(xkgjxkgi)1/(f1)1
    • 步骤3:更新可优化的聚类中心 VVV
      使用步骤2得到的新隶属度 uik(new)u_{ik}^{(new)}uik(new),根据公式更新 V\mathbf{V}V 矩阵:
      vij(new)={∑k=1N(uik(new))fxkj∑k=1N(uik(new))f,if bij=0fij,if bij=1v_{ij}^{(new)} = \begin{cases} \frac{\sum_{k=1}^{N} (u_{ik}^{(new)})^f x_{kj}}{\sum_{k=1}^{N} (u_{ik}^{(new)})^f}, & \text{if } b_{ij} = 0 \\ f_{ij}, & \text{if } b_{ij} = 1 \end{cases}vij(new)=k=1N(uik(new))fk=1N(uik(new))fxkj,fij,if bij=0if bij=1
      注意,当 bij=1b_{ij} = 1bij=1 时,vijv_{ij}vij 的值被强制设为 fijf_{ij}fij,保持不变。
    • 步骤4:检查收敛
      计算本次迭代和上一次迭代的隶属度矩阵之间的差异,例如:
      δ=max⁡i,k∣uik(new)−uik(old)∣\delta = \max_{i,k} |u_{ik}^{(new)} - u_{ik}^{(old)}|δ=i,kmaxuik(new)uik(old)
      如果 δ\deltaδ 小于预设的阈值 ϵ\epsilonϵ,则停止迭代;否则,将 uik(new)u_{ik}^{(new)}uik(new)vij(new)v_{ij}^{(new)}vij(new) 作为新的输入,返回步骤1继续迭代。

输出:最终的隶属度矩阵 UUU 和聚类中心矩阵 V\mathbf{V}V。其中,V\mathbf{V}V 的某些维度是根据数据优化得到的,而另一些维度则固定为用户指定的视点值。

对于粒度视点(区间),算法会并行运行两个实例,分别最小化距离的上界 Q[1]Q[1]Q[1] 和下界 Q[2]Q[2]Q[2],最终得到的原型和隶属度都是区间形式,从而构成二型模糊集。

http://www.xdnf.cn/news/19553.html

相关文章:

  • 嵌入式ARM程序高级调试技能:19.qumu arm elf无法生成coredump
  • 接口测试:如何定位BUG的产生原因
  • nginx-增加VTS模块
  • 数据结构八股
  • 数据结构(C语言篇):(八)栈
  • vscode+EIDE+Clangd环境导入keil C51以及MDK工程
  • shell脚本第六阶段---三剑客之sed
  • C++日志系统:高效异步日志实现解析
  • LeetCode 36. 有效的数独 - 解题思路与实现详解
  • ans.1中的对象标识符OBJECT_IDENTIFIER----OID
  • 【机器学习基础】决策树算法原理及其在无人驾驶技术中的应用
  • Matplotlib:让数据在Python中跳舞的魔法画笔![特殊字符]
  • 基于FPGA的正弦波和及滤波(已通过仿真和上板)
  • 如何确定虚拟机的IP
  • DVWA靶场通关笔记-SQL Injection (Impossible级别)
  • [ Android Audio 篇 ] 高通平台 Android AudioRecord 多通道录音
  • LangChain中Prompt处理机制的技术架构与核心思想分析
  • STL库——stack/queue(类函数学习)
  • 切片语法[::-1]及其可用的类型
  • 基于STM32设计的智能家居控制系统(华为云IOT)_275
  • 2023年IEEE IOTJ SCI1区TOP,动态环境下无人机目标覆盖任务路径规划,深度解析+性能实测
  • KingbaseES JDBC 驱动详解:连接、配置与最佳实践
  • 介绍Ansible和实施Ansible PlayBook
  • pinia状态管理工具
  • Redis核心原理与Java应用实践
  • 洞悉边界:软件测试中边界值分析的艺术与科学
  • OpenJDK 17 解释器分发表与安全点表机制解析
  • 零基础入门AutoSar中的ARXML文件
  • 【Flask】测试平台开发,产品管理功能UI重构-第九篇
  • Kubernetes 服务发现与健康检查详解