超图聚类论文阅读2:Last-step算法

news2024/9/23 7:31:01

超图聚类论文阅读2:Last-step算法

《使用超图模块化的社区检测算法》

《Community Detection Algorithm Using Hypergraph Modularity》

COMPLEX NETWORKS 2021, SCI 3区

具体实现源码见HyperNetX库

工作:提出了一种用于超图的社区检测算法。该算法的主要特点是它可以根据一个社区中的顶点与其他社区中的顶点共享超边的频率进行调整以适应各种场景。

动机和贡献

复杂网络中的社区发现——超图社区发现

  • 理论和工具的发展还不够充分,无法在超图情况下直接解决包括聚类在内的大多数问题。

  • 研究者经常创建感兴趣的超图的 2 部图(即,用团替换每个超边)。移动到 2-section 图后,人们显然失去了一些关于尺寸大于 2 的超边的信息,因此人们普遍认为,利用原始超图的知识可以做得更好

相关工作

  • Kumar 等人仍然将问题简化为图,但使用原始超图迭代调整权重以鼓励某些超边包含在某些聚类中但不鼓励其他超边
  • 作者自己在之前提出了图的经典空模型的许多超图扩展,这些扩展可能被真正的超图算法使用

本文贡献:提出了一个能够适应上述各种场景的框架

  • 将图模块化函数的所有扩展推广和统一到超图,并将它们放入一个框架中来实现这一点

  • 不同“切片”的贡献由可以针对给定场景调整的超参数控制(第2节)

  • 提出了两种原型算法来展示框架的潜力,即所谓的概念验证(第 3 节)

  • 引入了一个可能具有独立兴趣的合成随机超图模型,以测试算法在各种场景中的性能(第 4 节)

  • 试验了我们的原型以及该领域的两个主要竞争对手,即 Louvain 和 Kumar 等(第 5 节)

    • 适当调整超参数后,所提出的原型工作得很好
    • 提供了这样的调整可以以无监督的方式进行的证据
  • 揭示更多关于该效果的细节(第 6 节)

模块度函数

我们进一步概括了超图模块化函数,使我们能够以不同的方式评估对模块化函数的各种贡献

图模块度

G = (V, E)、n = |V|、度:degG(v)、社区A的体积

  • 模块化函数有利于图 G 的顶点集的分区,其中大部分边完全落在parts(通常称为簇)内
  • benchmark是用Chung-Lu 随机图模型生成的图具有完全遵循 G 中的度序列的随机图上相连的情况

给定分区A:边贡献+度税
q G ( A ) = ∑ A i ∈ A e G ( A i ) ∣ E ∣ − ∑ A i ∈ A ( vol ⁡ G ( A i ) vol ⁡ G ( V ) ) 2 q_G(\mathbf{A})=\sum_{A_i \in \mathbf{A}} \frac{e_G\left(A_i\right)}{|E|}-\sum_{A_i \in \mathbf{A}}\left(\frac{\operatorname{vol}_G\left(A_i\right)}{\operatorname{vol}_G(V)}\right)^2 qG(A)=AiAEeG(Ai)AiA(volG(V)volG(Ai))2

  • qG(A) ≤ 1
  • 一个分区的话,值为0;一个点是一个分区的话,值小于0
  • 找到最大模块度的分区——接近1
  • 如果 q*(G) 接近于零(这是平凡的下界),则不存在社区结构

超图模块度

可以推广成二部图进行计算,每条边的权重为w(e)/(|e| − 1)

  • 这种选择可确保创建的图的度分布与原始超图相同
  • 它也很好地将 H 上的自然随机游走转换为相应 H[2] 上的随机游走
  • 此过程会创建多重图

H = (V, E)、degH(v)、volH(A)

超图模块化函数的选择并不是唯一的。这取决于人们有多强烈地相信超边是其某些顶点落入一个社区的指标。即超边对社区的贡献

  1. 超边的所有顶点都必须属于其中一个部分
  2. 如果超边超过 50% 的顶点属于分区,则超边对这个分区有贡献
  3. 超边可能有助于对应于最大部分顶点属于的分区

majority-based modularity

Bin(d, p) 表示具有参数 d 和 p 的二项式随机变量
q H m ( A ) = ∑ A i ∈ A e H m ( A i ) ∣ E ∣ − ∑ d ≥ 2 ∣ E d ∣ ∣ E ∣ ∑ A i ∈ A P ( Bin ⁡ ( d , vol ⁡ H ( A i ) vol ⁡ H ( V ) ) > d 2 ) q_H^m(\mathbf{A})=\sum_{A_i \in \mathbf{A}} \frac{e_H^m\left(A_i\right)}{|E|}-\sum_{d \geq 2} \frac{\left|E_d\right|}{|E|} \sum_{A_i \in \mathbf{A}} \mathrm{P}\left(\operatorname{Bin}\left(d, \frac{\operatorname{vol}_H\left(A_i\right)}{\operatorname{vol}_H(V)}\right)>\frac{d}{2}\right) qHm(A)=AiAEeHm(Ai)d2EEdAiAP(Bin(d,volH(V)volH(Ai))>2d)
strict-based modularity
q H s ( A ) = ∑ A i ∈ A e H s ( A i ) ∣ E ∣ − ∑ d ≥ 2 ∣ E d ∣ ∣ E ∣ ∑ A i ∈ A ( vol ⁡ H ( A i ) vol ⁡ H ( V ) ) d = ∑ A i ∈ A e H s ( A i ) ∣ E ∣ − ∑ d ≥ 2 ∣ E d ∣ ∣ E ∣ ∑ A i ∈ A P ( Bin ⁡ ( d , vol ⁡ H ( A i ) vol ⁡ H ( V ) ) = d ) \begin{aligned} q_H^s(\mathbf{A}) & =\sum_{A_i \in \mathbf{A}} \frac{e_H^s\left(A_i\right)}{|E|}-\sum_{d \geq 2} \frac{\left|E_d\right|}{|E|} \sum_{A_i \in \mathbf{A}}\left(\frac{\operatorname{vol}_H\left(A_i\right)}{\operatorname{vol}_H(V)}\right)^d \\ & =\sum_{A_i \in \mathbf{A}} \frac{e_H^s\left(A_i\right)}{|E|}-\sum_{d \geq 2} \frac{\left|E_d\right|}{|E|} \sum_{A_i \in \mathbf{A}} \mathrm{P}\left(\operatorname{Bin}\left(d, \frac{\operatorname{vol}_H\left(A_i\right)}{\operatorname{vol}_H(V)}\right)=d\right) \end{aligned} qHs(A)=AiAEeHs(Ai)d2EEdAiA(volH(V)volH(Ai))d=AiAEeHs(Ai)d2EEdAiAP(Bin(d,volH(V)volH(Ai))=d)
——emH(Ai) 计算大多数顶点属于部分 Ai 的超边数,而在 (3) 中,esH(Ai) 计算所有顶点都属于部分 Ai 的超边数

统一和泛化

独立处理来自大小为 d 的超边对模块化函数的贡献,分别考虑超边内包含在社区的节点恰好为c的情况

上面的多数模块度可以写成:
q H m ( A ) = ∑ A i ∈ A ∑ d ≥ 2 ∑ c = ⌊ d / 2 ⌋ + 1 d ( e H d , c ( A i ) ∣ E ∣ − ∣ E d ∣ ∣ E ∣ ⋅ P ( Bin ⁡ ( d , vol ⁡ H ( A i ) vol ⁡ H ( V ) ) = c ) ) q_H^m(\mathbf{A})=\sum_{A_i \in \mathbf{A}} \sum_{d \geq 2} \sum_{c=\lfloor d / 2\rfloor+1}^d\left(\frac{e_H^{d, c}\left(A_i\right)}{|E|}-\frac{\left|E_d\right|}{|E|} \cdot \mathrm{P}\left(\operatorname{Bin}\left(d, \frac{\operatorname{vol}_H\left(A_i\right)}{\operatorname{vol}_H(V)}\right)=c\right)\right) qHm(A)=AiAd2c=d/2+1d(EeHd,c(Ai)EEdP(Bin(d,volH(V)volH(Ai))=c))
ed,c H (Ai) 是Ai 中恰好有 c 个成员的大小为 d 的超边的数量

可以写成:
q H m ( A ) = ∑ d ≥ 2 ∑ c = ⌊ d / 2 ⌋ + 1 d q H c , d ( A ) q_H^m(\mathbf{A})=\sum_{d \geq 2} \sum_{c=\lfloor d / 2\rfloor+1}^d q_H^{c, d}(\mathbf{A}) qHm(A)=d2c=d/2+1dqHc,d(A)
其中定义一个“切片”:
q H c , d ( A ) = 1 ∣ E ∣ ∑ A i ∈ A ( e H d , c ( A i ) − ∣ E d ∣ ⋅ P ( Bin ⁡ ( d , vol ⁡ ( A i ) vol ⁡ ( V ) ) = c ) ) q_H^{c, d}(\mathbf{A})=\frac{1}{|E|} \sum_{A_i \in \mathbf{A}}\left(e_H^{d, c}\left(A_i\right)-\left|E_d\right| \cdot \mathrm{P}\left(\operatorname{Bin}\left(d, \frac{\operatorname{vol}\left(A_i\right)}{\operatorname{vol}(V)}\right)=c\right)\right) qHc,d(A)=E1AiA(eHd,c(Ai)EdP(Bin(d,vol(V)vol(Ai))=c))
严格模块度可写成:
q H s ( A ) = ∑ d ≥ 2 q H d , d ( A ) q_H^s(\mathbf{A})=\sum_{d \geq 2} q_H^{d, d}(\mathbf{A}) qHs(A)=d2qHd,d(A)
——多数超图模块度中每个“切片”的权重相等,而对于基于严格的定义模块度,仅考虑 c = d 的切片

新模块化函数由超参数 wc,d ∈ [0, 1] (d ≥ 2, [d/2] + 1 ≤ c ≤ d) 控制

给出广义超图模块度统一定义:
q H ( A ) = ∑ d ≥ 2 ∑ c = ⌊ d / 2 ⌋ + 1 d w c , d q H c , d ( A ) q_H(\mathbf{A})=\sum_{d \geq 2} \sum_{c=\lfloor d / 2\rfloor+1}^d w_{c, d} q_H^{c, d}(\mathbf{A}) qH(A)=d2c=d/2+1dwc,dqHc,d(A)
α ∈ [ 0 , ∞ ) \alpha \in[0, \infty) α[0,), and ρ min ⁡ , ρ max ⁡ ∈ ( 0.5 , 1 ] \rho_{\min }, \rho_{\max } \in(0.5,1] ρmin,ρmax(0.5,1] $\rho_{\min } \leq \rho_{\max } $
w c , d = { ( c / d ) α  if  ⌈ d ρ min ⁡ ⌉ ≤ c ≤ ⌈ d ρ max ⁡ ⌉ 0  otherwise  w_{c, d}= \begin{cases}(c / d)^\alpha & \text { if }\left\lceil d \rho_{\min }\right\rceil \leq c \leq\left\lceil d \rho_{\max }\right\rceil \\ 0 & \text { otherwise }\end{cases} wc,d={(c/d)α0 if dρmincdρmax otherwise 
该定义为我们提供了更大的灵活性,并允许对某些切片的估值高于其他切片。

  • 参数 ρmin 和 ρmax 分别与超边的最小和最大“纯度”假设相关,并取决于网络的同质性水平
  • 参数 α 控制不同“纯度”级别的贡献超边之间的相对信息量之间的平滑过渡

在相应地调整超参数之后,广义模块度 可以用于两种极端情况(基于多数和基于严格)以及介于两者之间的任何情况。

此外,广义模块度 可以很好地近似对应的 2 部分图 H[2] 的图模块性。

算法

经典

  1. Louvain:通过考虑其 2 部分(加权)图 H[2] 将问题简化为图,然后尝试找到最大化图模块性函数的分区

    它是一种层次聚类算法,试图优化模块化功能(模块化优化阶段),将社区合并为单个顶点(社区聚合阶段),然后递归地对压缩图执行模块化聚类,直到无法增加模块化为止。

    • 所有的聚类算法在本质上都是启发式的,只旨在找到“足够好”的分区,而不希望找到最好的分区。
    • Louvain 是一种随机算法,在模块化优化阶段发生之前随机排序所有顶点。不幸的是,这意味着该算法不稳定,并且其结果在独立运行之间可能会有很大差异。
    • 为了解决这个问题,可以改用图的集成聚类算法(ECG)。该算法以 Louvain 算法和共识聚类的概念为基础,具有良好的稳定性
  2. Kumar:以下改进通常会在几个合成和真实示例中给出比原始 Louvain 算法更好的结果。

    该算法并不是真正基于超图的,而应该被视为由原始超图引导的基于图的方法的改进

    • 首先在原始超图H的基础上构建一个保度加权图G
    • 将Louvain算法应用于G,试图最大化图模块函数
    • 重新访问超图 H 并根据它们对所获得部分之间的同质性的度量对超边进行仔细的重新加权。
    • 重复这些步骤直到收敛。

LS and HA

传统方法总结:所有基于图模块化优化的成功算法(包括上文提到的 Louvain、ECG 和 Kumar 等)都是以相同的方式开始的。顶点最初自己是一个簇,若模块度增加则将顶点的集群更改为其邻居之一。

——超图中此方法的问题:那么只改变一个顶点的集群可能不会对模块化函数产生积极影响,除非存在小尺寸边。

算法:使用普通图模块化函数 qG(A) 进行“从地面提升过程”,再切换到超图对应函数 qH(A)

——两种, (HA) 尽快切换到超图、 (LS) 停留在图上的时间更长

  1. HA(混合算法)
    1. 通过在从 H 构建的保度图 G 上使用 qG(A) 运行 ECG 来形成小而紧密的团块。修剪低于 70%(投票数)阈值的边,并将连通分量保留为初始团块。
    2. 如果 qH(A) 提高,则合并团块(以随机顺序)。重复直到无法再改进为止。
    3. 一次将一个顶点(以随机顺序)移动到相邻的簇,如果它提高了 qH则保留。重复直到收敛。
  2. LS(最后一步)
    1. 运行 Kumar 算法
    2. 只执行上面的最后一步(步骤 3.)

给出三个参数传入两种算法中:HA(α, ρmin, ρmax) 和 LS(α, ρmin, ρmax)

合成随机超图模型

经典随机图模型:

  • 众所周知和广泛使用的 LFR 基准图

  • 作者自己开发的ABCD

提出了一个受经典随机块模型启发的模型

模型特征:所提出的模型旨在简单,但它试图捕捉这样一个事实,即许多以超图表示的现实世界网络表现出不同程度的同质性或缺乏同质性。它为我们提供了一个工具来测试我们的算法在各种场景下的性能。一个好的算法应该能够以无监督的方式适应任何场景。

实验

设置合适的参数将对算法效果产生积极影响

实验

结论和未来方向

  1. 提出了两种原型算法并做了一些简单的实验来展示它们的潜力

    • 展示了我们的原型算法工作得很好,但只有在对超参数进行适当调整后才能工作
    • 初步实验表明,这种调整可以以无人监督的方式完成,但细节需要修复,并且需要解决过拟合问题
  2. 提出了两种方法来解决任何基于超图模块化函数的算法的初始阶段问题

    1. 将 2-section 图的顶点嵌入到几何空间中,使用具有较大 k 值的经典 k-means 算法来找到初始分区
    2. Kumar 等人提出的 Hyperedge 重新加权方案似乎效果很好,可以很容易地合并到我们的框架中。我们的目标是建立一个灵活的框架,该框架可以模仿 Louvain、ECG、Kumar 等人以及介于两者之间的任何东西,但通过超图模块化功能提供的机会得到额外增强。

方向:

  • 该算法必须是可扩展的,超图模块化功能的更新可以快速完成,但需要正确设计/使用专用数据结构和算法。我们目前使用 Julia 语言实现这样的代码。
  • 除了对大型合成超图进行实验之外,还计划对以超图表示的真实网络进行实验

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/986527.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝牙技术|ESL蓝牙电子价签将成为智能市场新的增长点

蓝牙技术联盟(Bluetooth Special Interest Group, SIG)发布年度报告《2023年蓝牙市场最新资讯》,揭示蓝牙技术的最新发展趋势,及其在各个应用市场中不断扩大的影响力。报告提供了低功耗音频(LE Audio)和Aur…

数字图像处理-形态学图像处理

形态学图像处理 一、基础知识1.1 什么是形态学操作 二、腐蚀与膨胀2.1 腐蚀2.2 膨胀 三、开操作与闭操作3.1 开操作3.2 闭操作3.3 实验对比 四、一些基本的形态学算法4.1边界提取4.2空洞填充4.3 凸壳 一、基础知识 1.1 什么是形态学操作 数字图像处理中的形态学操作是一组用于…

PY32F003F18串口printf功能

1、PY32F003F18复用功能总结: //GPIOxGPIOA,PinGPIO_PIN_0,alternateGPIO_AF9_USART2,则将PA0引脚复用为USART2_TX //GPIOxGPIOA,PinGPIO_PIN_0,alternateGPIO_AF10_SPI1,则将PA0引脚复用为SPI1_MISO //GPIOxGPIOA,PinGPIO_PIN_1,alternateGPIO_AF0_SPI1,则将PA1引…

容器编排学习(六)服务管理与用户权限管理

一 service管理 1 概述 容器化带来的问题 自动调度:在 Pod 创建之前,用户无法预知 Pod 所在的节点,以及 Pod的IP 地址一个已经存在的 Pod 在运行过程中,如果出现故障,Pod也会在新的节点使用新的IP 进行部署应用程…

安达发APS|APS智能排程软件的核心优势

APS软件是一种实时、具有约束能力的排产计划软件,能够对所有资源进行同步优化。它能够模拟生产中的物料、机器设备、人员、供应、客户需求、运输等影响计划的因素,不论是长期的或短期的计划,都具有优化、对比和可执行性。 APS软件采用基于内…

蓝桥杯官网填空题(土地测量)

题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 造成高房价的原因有许多,比如土地出让价格。既然地价高,土地的面积必须仔细计算。遗憾的是,有些地块的形状不规则,比…

echarts条形图实现颜色渐变

eCharts——柱状图中的柱体颜色渐变_echarts 柱状图渐变_小美同学的博客-CSDN博客 【Echarts】柱状图渐变两种实现方式_echarts柱状图渐变_芳草萋萋鹦鹉洲哦的博客-CSDN博客

C++中的stack和queue

文章目录 1. stack的介绍和使用1.1 stack的介绍1.2 stack的使用 2. queue的介绍和使用2.1 queue的介绍2.2 queue的使用 3 priority_queue的介绍和使用3.1 priority_queue的介绍3.2 priority_queue的使用 4. 容器适配器4.1 什么是适配器4.2 STL标准库中stack和queue的底层结构4.…

Vue3学习(仅为了记录,参考意义不大)

一.Vue3介绍 1.Vue3的优势 2.使用create-vue创建vue3项目 vue-cli是创建vue2.0的脚手架工具,create-vue是创建vue3的脚手架工具,create-vue构建速度非常快 3.vue3项目目录和关键文件 二.Vue3组合式API 1.setup选项 setup语法糖: 总结…

fastjson漏洞批量检测工具

JsonExp 简介 版本:1.3.5 1. 根据现有payload,检测目标是否存在fastjson或jackson漏洞(工具仅用于检测漏洞)2. 若存在漏洞,可根据对应payload进行后渗透利用3. 若出现新的漏洞时,可将最新的payload新增至…

湖北初级(助理)、中级、高级(副高)工程类职称申报条件和业绩要求有哪些?

湖北初级、中级、副高职称申报学历条件和业绩要求是什么?有哪些要求?以下来自于官方解答: 副高职称学历要求: 中级职称学历要求: 助理(初级)职称学历要求: 现在评职称,主…

十七、MySQL约束演示

1、约束定义 (1)概念 约束,顾名思义,时作用域表中字段上的规则,用于限制存储在表中的数据,主要用于保证数据库中数据的正确、有效性和完整性。 (2)各种约束分类 1、非空约束(限制…

Win11透明任务栏失效怎么办

近期有小伙伴反映在更新Win11最新版本之后,发现透明任务栏失效了,这是怎么回事呢,遇到这种情况应该怎么解决呢,这里小编就给大家介绍几个Win11透明任务栏失效的解决方法,有需要的小伙伴快来看一看吧。 软件资源&#…

【全网严谨版】L1-016 查验身份证 (C++解法 整理分析了多种方法)

问题描述 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2&#…

二、创建个人首页页面

简介 改造 App.vue 创建一个展示页面,实现一个可以轮播的功能效果。欢迎访问个人的简历网站预览效果 本章涉及修改与新增的文件:style.css、App.vue、assets 一、 自定义全局样式 将 style.css 中的文件样式内容替换为如下代码 /* 初始化样式 --------------------------…

《Java程序设计》实验报告

实验内容:面向对象程序设计 1、定一个名为Person的类,其中含有一个String类型的成员变量name和一个int类型的成员变量age, 分别为这两个变量定义访问方法和修改方法,另外再为该类定义一个名为speak的方法, 在其中输出n…

图书出版如何做好软文营销

在信息技术快速发展的时代,大部分人的阅读方式也从传统的纸媒演变为电子书阅读,在这种形势下,图书出版行业的经营模式、经营理念都面临着许多变革,那么在网络时代,图书出版行业应该如何做好软文营销呢?下面…

高频微观结构:日内及隔夜动量因子

本周天软因子序列课程暂时结束,感谢大家百忙之中参会交流! 本次会议主要内容有: 1.介绍日内及隔夜动量因子的构造逻辑,如何选择市 场代理变量对动量因子进行改进; 2.结合因子研究平台分别分析动量因子、日内涨幅因 子、隔夜涨幅因…

【力扣每日一题】2023.9.7 修车的最少时间

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们一个数值,数组里每个元素表示一个老师傅,老师傅修车花费的时间等于数值乘上车辆数的平方。 问我们修理…

【Docker】镜像的创建、管理与发布

镜像的获取 镜像可以从以下方式获得: 从远程镜像仓库拉取,可以是公有仓库,也可以是私有仓库从Dockerfile构建从文件导入(离线)从容器提交 镜像的基本操作 跟镜像相关的命令如下: $ docker image --help…