标签传播算法应用于非重叠社区(SLPA算法)

SLPA(说话者-听者标签传播算法)是一种扩展的LPA,用于识别社交网络中的重叠社区。在SLPA中,节点可持有多个标签,通过信息传播过程动态更新。算法包括初始化、信息传播和后处理三个阶段,模拟人类交流行为,以最常讨论的标签为主导。节点根据其在网络中的角色切换为说话者或听众,传播和接受标签,最终形成重叠社区结构。
部署运行你感兴趣的模型镜像

标签传播算法应用于非重叠社区

LPA应用于非重叠社区,也是最基础的标签传播算法。本文只考虑非重叠社区。

SLPA算法

通过Speaker-listener互动的动态过程揭示社交网络中的重叠社区。

我们提出了一个有效的算法使用底层网络结构来识别单个重叠节点和整个重叠社区。本文提出的算法是标签传播算法(LPA)的扩展。解决重叠的一种方法是允许每个节点拥有多个标签。
本算法基于说话者-听者的信息传播过程(SLPA),来模仿人类的交流行为,来使节点的标签更新。
在SLPA中,每个节点可以是一个listener或一个speaker。根据节点是充当信息提供者还是充当信息使用者来切换角色。通常,一个节点可以根据需要保留任意数量的标签,这取决于它在底层网络结构所驱动的随机过程中所经历的。节点积累了反复观察的标签的知识,而不是擦除其中一个标签以外的所有标签。此外,节点观察到某一标签的次数越多,将此标签传播到其他节点的可能性就越大(模仿人们喜欢传播最常讨论的观点)。
在这里插入图片描述
简而言之,SLPA包括以下三个阶段:
1)首先,使用此节点的ID(即,使用唯一标签)初始化每个节点的内存。
2)然后,重复以下步骤,直到满足停止条件为止:
A.选择一个节点作为侦听器。
B.选定节点的每个邻居都按照特定的说话规则发出单个标签,例如从其内存中选择一个随机标签,其概率与该标签在内存中的出现频率成正比。
C.侦听器遵循某些侦听规则,从邻居收到的标签集合中接受一个标签,例如从当前步骤中观察到的标签中选择最受欢迎的标签。
3)最后,基于节点内存中标签的后处理被应用于输出社区。

您可能感兴趣的与本文相关的镜像

PyTorch 2.6

PyTorch 2.6

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值