【复杂网络】如何用简易通俗的方式快速理解什么是“相对重要节点挖掘”?

什么是相对重要节点?

  • 一、相对重要节点的定义
  • 二、如何区分相对重要节点与重要节点?
    • 1. 相对重要性与节点相似性
    • 2. 识别相对重要节点的两个阶段
      • 第一阶段:个体重要性值的计算
      • 第二阶段:累积重要性值的计算
  • 三、相对重要节点挖掘算法
    • 1. 基于结构特征的指标和方法
    • 2. 基于随机游走的指标和方法
    • 3. 经典的相对重要节点挖掘算法
      • · DDMF算法
      • · CDBRWR算法
      • · NEGM算法
  • 四、常用的算法评价指标
    • 1. Precision
    • 2. Recall
    • 3. AUC

一、相对重要节点的定义

在网络科学中,一个网络可以由多个节点(Node)和连接这些节点的边(Edge)组成。节点通常代表网络中的实体,如社交网络中的个体、互联网中的服务器、生物网络中的蛋白质等,而边则代表实体间的某种关系或相互作用,如友谊、超链接、蛋白质间的相互作用等。

在任何网络中,都存在一些节点,它们由于其位置、连接方式或连接数量等特点,在网络中扮演着比其他节点更为重要的角色。这些节点被称为“重要节点”。然而,重要性的判断往往依赖于特定的上下文和分析目的。在某些情况下,我们可能需要识别出相对于其他节点在特定功能或结构上更为关键的节点,这就是“相对重要节点”

相对重要节点是指在特定网络结构或功能中,相较于其他节点,具有更高影响力或中心性的节点。这种重要性是相对的,因为它依赖于网络的特定属性和分析的特定目标。例如,在社交网络中,一个节点可能因为拥有更多的连接(即“度”较高)而被认为是相对重要的;而在交通网络中,一个节点可能因为连接了更多的重要路段而被认为是关键的。

在这里插入图片描述

二、如何区分相对重要节点与重要节点?

在复杂网络分析中,区分相对重要节点与重要节点是至关重要的。这两者虽然在概念上有所重叠,但它们在分析的侧重点和应用场景中存在明显差异。

1. 相对重要性与节点相似性

相对重要性的概念主要基于节点相似性的概念,即一个节点在网络中的作用和影响力与已知重要节点的相似程度。这种相似性可以通过多种方式来衡量,包括但不限于节点的连接模式、中心性指标、网络拓扑位置等。

2. 识别相对重要节点的两个阶段

识别网络中的相对重要节点通常包括以下两个阶段:

第一阶段:个体重要性值的计算

在这一阶段,针对网络中每一个节点,计算其相对于已知重要节点集中某一特定节点的重要性值。这个过程涉及到对节点间相似性的量化,可能包括度量节点的连接数量、连接质量、网络中的位置等因素。例如,如果一个节点与已知的重要节点有直接的连接,或者通过较少的中间节点与重要节点相连,那么这个节点可能具有较高的相对重要性。

第二阶段:累积重要性值的计算

在第一阶段的基础上,重复计算上述过程,得到每个节点相对于已知重要节点集中所有节点的重要性值。然后,将这些值进行加和,得到每个节点的相对重要得分。这个得分综合反映了节点在整个网络中相对于已知重要节点的总体重要性。最后,依据节点的相对重要得分的大小,可以识别出网络中哪些节点是相对重要节点。得分较高的节点可能在网络的信息传播、影响力扩散或结构稳定性中扮演着更为关键的角色。

三、相对重要节点挖掘算法

1. 基于结构特征的指标和方法

这一类算法侧重于分析网络的拓扑结构特征,通过比较目标节点与已知重要节点之间的结构差异来计算相对重要性。

NN指标(Node Neighbors):考虑目标节点的邻居节点集合与已知重要节点的邻居集合之间的相似度。
RD指标(Random Distance):基于随机距离的概念,计算目标节点与已知重要节点间的平均最短路径长度。
WSP指标(Weighted Structural Perturbation):考虑节点在网络结构扰动下的影响权重,评估其对网络稳定性的贡献。
Katz指标:通过考虑节点间的路径数量和长度,评估节点间的相似性。
上述这些指标和方法主要通过量化节点间的结构相似性的方式,从而识别网络中的相对重要节点。

2. 基于随机游走的指标和方法

与基于结构的方法不同,基于随机游走的算法将网络视为一个随机过程,模拟节点重要性得分在网络中的传递。

MarC指标(Markov Clustering):利用马尔可夫链的聚类特性,识别网络中的社区结构和重要节点。
NLD方法(Node Local Diffusion):通过局部扩散模型,评估节点在信息传播中的作用。
Ksmar方法:一种基于随机游走的中心性度量,考虑了节点的可达性和影响力。
PPR方法(PageRank):Google著名的算法,通过随机游走模型评估网页的重要性,同样适用于网络节点重要性的评估。
PHITS方法(Personalized HITS):基于HITS(Hyperlink-Induced Topic Search)算法的改进,通过个性化的随机游走来识别权威和中心节点。

3. 经典的相对重要节点挖掘算法

在相对重要节点挖掘的领域内,多种算法被设计来识别网络中的相对重要节点。以下是三种具有代表性的算法,它们各自采用了不同的策略和理论基础。

· DDMF算法

DDMF(Distance Distribution and Multi-index Fusion)是一种基于距离分布和多指标融合的相对重要节点挖掘算法。该算法主要分为两个主要阶段:第一阶段,基于网络中节点间的最短距离信息,计算所有节点的距离分布向量;第二阶段,对余弦相似度、欧式距离和相对熵进行多指标融合,使用熵权法计算不同指标对应的权重,进而计算目标节点集中所有节点的相对重要性得分,并对最终得分进行降序排序,得分高的节点则视为网络中的相对重要节点。
文献引用:Zhao N, Liu Q, Jing M, et al. DDMF: a method for mining relatively important nodes based on distance distribution and multi-index fusion[J]. Applied Sciences, 2022, 12(1): 522. (SCI)

· CDBRWR算法

CDBRWR(Community Detection and Biased Random Walk with Restart)是一种基于社区发现和带重启的有偏随机游走的相对重要节点挖掘算法。该算法主要分为两个主要阶段:第一阶段,对网络进行社区划分,得到网络中的若干个社区;第二阶段,提出了一种全新的带重启的有偏随机游走策略,从已知重要节点出发,按照该游走策略进行节点赋分,最终计算目标节点集中节点的相对重要得分,同时对节点的相对重要得分进行降序排序,得分高的节点则视为网络中的相对重要节点。
文献引用:Liu Q, Wang J, Zhao Z, et al. Relatively important nodes mining algorithm based on community detection and biased random walk with restart[J]. Physica A: Statistical Mechanics and its Applications, 2022, 607: 128219.(SCI)

· NEGM算法

NEGM(Network Embedding and Gravity Model)是一种基于网络嵌入和引力模型的相对重要节点挖掘算法。该算法主要分为两个阶段:第一阶段,利用经典的网络嵌入方法将网络中所有节点转换为欧式空间中低维、实值、稠密的向量,并计算向量空间中所有节点之间的欧式距离;第二阶段,借鉴牛顿万有引力定律的思想,将节点的度视为节点的质量,将向量空间中节点的欧式距离视为节点之间的距离,计算已知重要节点对目标节点集中所有节点的引力大小,依据节点的总引力大小,确定网络中哪些节点是相对重要节点。
文献引用:Zhao N, Liu Q, Wang H, et al. Estimating the relative importance of nodes in complex networks based on network embedding and gravity model[J]. Journal of King Saud University-Computer and Information Sciences, 2023, 35(9): 101758. (SCI)

四、常用的算法评价指标

在相对重要节点挖掘算法的评估过程中,准确度(Precision)、召回率(Recall)和曲线下面积(AUC)是三个最常用的算法评价指标,它们共同构成了评估算法性能的基础。以下是三种指标对应的计算公式:

1. Precision

在这里插入图片描述

2. Recall

在这里插入图片描述

3. AUC

在这里插入图片描述

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

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

相关文章

条件变量解决同步问题之打印金鱼

说明 本代码为jyy老师上课演示条件变量解决同步问题示例(本人只做记录与分享) 本人未使用老师封装的POSIX线程库, 直接在单文件中调试并注释 问题描述 有三类线程 T1 若干: 死循环打印< T2 若干: 死循环打印> T3 若干: 死循环打印_ 任务: 对线程同步&#xff0c;使得屏幕…

ASP.NET一种基于C2C模式的网上购物系统的设计与实现

摘 要 网络购物已经慢慢地从一个新鲜的事物逐渐变成日常生活的一部分&#xff0c;以其特殊的优势而逐渐深入人心。本课题是设计开发一种基于C2C模式的网上购物系统。让各用户使用浏览器进行商品浏览。注册用户可以轻松的展示自己的网络商店&#xff0c;能对自己的用户信息进行…

Vagrant + docker搭建Jenkins 部署环境

有人问&#xff0c;为什么要用Jenkins&#xff1f;我说下我以前开发的痛点&#xff0c;在一些中小型企业&#xff0c;每次开发一个项目完成后&#xff0c;需要打包部署&#xff0c;可能没有专门的运维人员&#xff0c;只能开发人员去把项目打成一个war包&#xff0c;可能这个项…

钉钉群定时发送消息1.0软件【附源码】

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 有时候需要在钉钉群里提醒一些消息。要通知的群成员又不方便用定时钉的功能&#xff0c;所以写了这么一个每日定时推送群消息的工具。 易语言程序&#xff0c;附上源码与模块&#x…

C++中vector的简单实现

文章目录 一、主要任务1. 查看文档的网站的链接2.内部模拟的函数 二、本人的模拟实现过程1. 所需模拟实现的函数a.构造、拷贝构造b. reverse()扩容c.insert()、push_back()插入数据d. erase()、pop_back()删除数据e. swap()交换f. begin()、end()非const与const迭代器g. 完善构…

mysql的存储结构

一个表就是一个ibd文件 .ibd文件大小取决于数据和索引&#xff0c;在5.7之后才会为每个表生成一个独立表空间即一个ibd文件&#xff0c;在此之前&#xff0c;所有表默认下都会存储在“系统表空间”&#xff08;共享表空间&#xff09;&#xff0c;所有表都在一个ibd文件。 inn…

示例六、湿敏传感器

通过以下几个示例来具体展开学习,了解湿敏传感器原理及特性&#xff0c;学习湿敏传感器的应用&#xff1a; 示例六、湿敏传感器 一、基本原理&#xff1a;随着人们生活水平的不断提高&#xff0c;湿度监控逐步提到议事日程上。由于北方地区秋冬季干燥&#xff0c;需要控制室内…

16.接口自动化学习-编码处理与装饰器

1.编码和解码 编码&#xff1a;将自然语言翻译成计算机可以识别的语言 hello–01010 解码&#xff1a;将机器识别的语言翻译成自然语言 2.编码格式 UTF-8 GBK unicode 3.编码操作 #编码操作str1"hello呀哈哈哈"str2str1.encode(gbk)print(str2)print(type(str2))…

js原型链与继承笔记

前置阅读&#xff1a;https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Inheritance_and_the_prototype_chain js中的“类”是一个函数。function test() {}中&#xff0c;test是由Function生成的。prototype与__proto__的区别&#xff1a; 前者是js函数&#xff08;C…

Linux学习之路 -- 文件系统 -- 缓冲区

前面介绍了文件描述符的相关知识&#xff0c;下面我们将介绍缓冲区的相关知识。 本质上来说&#xff0c;缓冲区就是一块内存区域&#xff0c;因为内核上的缓冲区较复杂&#xff0c;所以本文主要介绍C语言的缓冲区。 目录 1.为什么要有缓冲区 2.应用层缓冲区的默认刷新策略 …

如何在bud里弄3d模型?---模大狮模型网

随着数字化设计的不断发展&#xff0c;越来越多的设计软件提供了对3D模型的支持&#xff0c;为设计师们带来了更广阔的创作空间。Bud作为一款功能强大的设计工具&#xff0c;也提供了添加和编辑3D模型的功能&#xff0c;让用户能够更加灵活地进行设计创作。本文将为您详细介绍如…

【计算机网络】计算机网络体系结构

&#x1f6a9;本文已收录至专栏&#xff1a;计算机网络学习之旅 一.常见的三种结构 (1) OSI参考模型 为了使不同体系结构的计算机网络都能互连起来&#xff0c;国际标准化组织于1977年成立了专门机构研究该问题&#xff0c;提出了著名的开放系统互连基本参考模型&#xff0c…

pycharm 将项目连同库一起打包及虚拟环境的使用

目录 一、创建虚拟环境 1、用 anaconda 创建 2、Pycharm 直接创建 二、虚拟环境安装第三方库 1、创建项目后&#xff0c;启动终端(Alt F12)&#xff0c;或者点击下方标记处。 2、使用 pip 或者 conda 来进行三方库的安装或卸载 3、将项目中的库放入文档&#xff0c;便于…

李宏毅-注意力机制详解

原视频链接&#xff1a;attention 一. 基本问题分析 1. 模型的input 无论是预测视频观看人数还是图像处理&#xff0c;输入都可以看作是一个向量&#xff0c;输出是一个数值或类别。然而&#xff0c;若输入是一系列向量&#xff0c;长度可能会不同&#xff0c;例如把句子里的…

Spring STOMP-消息处理流程

一旦STOMP的接口被公布&#xff0c;Spring应用程序就成为连接客户端的STOMP代理。本节描述服务端消息处理的流程。 spring-messaging模块包含消息类应用的基础功能&#xff0c;这些功能起源于Spring Integration项目。并且&#xff0c;后来被提取整合到Spring框架&#xff0c;…

Spring Boot 调用外部接口的几种方式

Spring Boot 调用外部接口的几种方式 在微服务架构中&#xff0c;服务间的调用是不可或缺的环节。Spring Boot 为开发者提供了多种方式来实现这一任务&#xff0c;这个文章将为你详细介绍这些方式。 一、使用RestTemplate RestTemplate是 Spring Boot 早期版本中常用的 REST 客…

十个最适合论文写作的GPTs及其应用

文章目录 一、GPTs让一切皆有可能二、最适合论文写作的GPTs及其应用1、[Paper Search Engine](https://chat.openai.com/g/g-9v5gHG9Bo)2、[Academic Paper Specialist&#xff08;学术论文撰写专家&#xff09;](https://chat.openai.com/g/g-jryw3pfsH)3、[Paper Connect 论文…

微信公众号接入chatGPT自动回复(2)

微信公众平台 配置自动回复的服务器 application.properties中的配置 验证服务器接口配置 其实就两个接口(相同的url地址,只不过请求方式不一样) 1.验证接口(get请求) 2.自动回复接口(post请求) 完整代码 这个地址就是上面URL配置的地址 如果使用Nginx的话自动配置 将该代…

11个免费的 android数据恢复应用程序功能分析

在手机上丢失数据是一个很大的错误。但是&#xff0c;在这种情况下&#xff0c;除了惊慌失措之外&#xff0c;最好开始使用android数据恢复应用程序搜索以查找将其取回的方法。您可以检查手机的备份存储以在Android上进行数据恢复&#xff0c;但是如果数据仍然无处可寻&#xf…