Skip to content

Latest commit

 

History

History
795 lines (609 loc) · 29 KB

File metadata and controls

795 lines (609 loc) · 29 KB
sidebar_position 3

Centrality 中心性与关键性算子集

算子类别:Centrality(节点/边重要性度量)

算法数量:21 个

适用阶段:关键节点识别、影响力评估、瓶颈/桥梁定位、网络稳健性分析、传播能力评估、层级结构分析、二部图重要性排序

产品定位:为“谁最重要 / 谁是关键中介 / 哪条边最关键 / 信息如何扩散更快 / 哪些节点影响网络稳健性 / 节点处于什么层级位置”提供统一的中心性能力底座。


一、算子集概述

Centrality 算子集面向各类关系网络,包括社交网络、交易网络、引用网络、通信网络、交通路网、依赖网络、生物网络、二部推荐网络等,提供对节点、边、层级位置与传播作用的系统化刻画能力,主要覆盖以下问题:

  1. 连接规模型影响力

    • 谁连接最多?
    • 谁被最多节点指向?
    • 谁主动连接最多节点?
    • 典型算法:degree_centrality, in_degree_centrality, out_degree_centrality
  2. 距离可达型效率

    • 谁到其他节点平均距离更近?
    • 谁在非连通网络中仍具有较强触达能力?
    • 典型算法:closeness_centrality, harmonic_centrality
  3. 最短路桥梁与中介作用

    • 谁最常出现在最短路径上?
    • 哪条边最关键?
    • 哪些节点承担最多网络流量或路径负载?
    • 典型算法:betweenness_centrality, edge_betweenness_centrality, load_centrality
  4. 电流流动与网络瓶颈

    • 如果信息像电流一样在网络中流动,哪些节点最关键?
    • 哪些节点对整体连通和流通能力影响更大?
    • 典型算法:current_flow_betweenness_centrality
  5. 全局权威与谱中心性

    • 谁连接的节点也很重要?
    • 谁在随机游走或链接投票机制下更权威?
    • 典型算法:eigenvector_centrality, katz_centrality, pagerank, hits
  6. 传播、渗流与扩散能力

    • 哪些节点适合作为传播种子?
    • 在部分节点已经激活或处于特定状态时,谁对传播更关键?
    • 典型算法:voterank, percolation_centrality
  7. 局部结构与稳健性贡献

    • 谁参与更多紧密子结构?
    • 删除某个节点会对网络整体结构造成多大影响?
    • 典型算法:subgraph_centrality, laplacian_centrality
  8. 邻域相似与局部中心性

    • 谁在共同邻居关系中更重要?
    • 哪些节点在局部邻域中具有较高连接价值?
    • 典型算法:common_neighbor_centrality
  9. 层级结构与流向位置

    • 节点处于网络的上游还是下游?
    • 网络是否具有清晰的营养级、控制级或层级结构?
    • 典型算法:trophic_levels
  10. 二部图重要性排序

  • 在用户-物品、作者-论文、机构-项目等二部图中,如何同时评估两侧节点的重要性?
  • 典型算法:birank

二、算子能力分类

能力类型 对应算子 功能描述
连接规模(无权) degree_centrality 以连接数量衡量节点直接影响力
连接规模(有向) in_degree_centrality, out_degree_centrality 分别衡量“被指向”和“主动指向”的影响力
距离效率 closeness_centrality, harmonic_centrality 基于到其他节点的距离刻画触达效率;调和中心性对不可达节点更稳健
最短路桥梁(节点) betweenness_centrality, load_centrality 衡量节点作为中介、桥梁或路径负载承载点的程度
最短路桥梁(边) edge_betweenness_centrality 衡量关键连接边对全网联通和最短路径的贡献
电流流中心性 current_flow_betweenness_centrality 基于电流流动模型衡量节点在网络流通中的关键程度
全局权威/影响力(谱/迭代) eigenvector_centrality, katz_centrality, pagerank, hits 从“连接到重要节点更重要”、随机游走、Hub-Authority 等角度衡量全局影响力
团结构贡献(谱) subgraph_centrality 衡量节点参与闭环、小团、子结构的程度
传播种子选择 voterank 通过投票与抑制机制选择分散且覆盖能力强的扩散种子
渗流传播中心性 percolation_centrality 在节点状态或激活程度参与传播时,衡量节点对渗流扩散的关键性
二阶距离中心性 second_order_centrality 基于随机游走返回时间波动评估节点稳定性和中心性
拉普拉斯中心性 laplacian_centrality 衡量节点对图整体能量、结构稳健性和连通性的贡献
共同邻居中心性 common_neighbor_centrality 基于共同邻居结构衡量节点或局部连接的重要性
层级/营养级分析 trophic_levels 计算有向网络中节点的层级位置或流向层次
二部图排序 birank 在二部图中同时评估两类节点的重要性和相互强化关系

三、通用输入输出约定

  • 输入 G:NetworkX 图对象

    • 可为无向图 Graph
    • 可为有向图 DiGraph
    • 部分算法支持加权图
    • 部分算法适用于二部图或连通图
  • 常见输出

    • 节点中心性:{node: score} 字典
    • 边中心性:{(u, v): score} 字典
    • HITS:(hubs_dict, authorities_dict)
    • VoteRank:按影响力排序的节点列表
    • BiRank:二部图两侧节点的重要性分数
    • 层级类结果:{node: level} 或节点层级分数字典

说明:不同中心性算法对权重的解释不同。
最短路类中心性通常将权重解释为距离 / 成本 / 阻力;谱中心性、PageRank、HITS、BiRank 等通常将权重解释为连接强度 / 转移概率 / 投票权重。工程使用时需要明确字段语义。


四、算子详细说明

1. degree_centrality —— 度中心性(连接规模)

功能说明
计算每个节点的度中心性:节点连接数在全网规模下的归一化结果,用于衡量“直接关系覆盖面”。

产品价值

  • 直观、计算快,适合大图快速筛查
  • 识别高连接账户、高互动用户、高依赖组件
  • 可作为其他复杂中心性算法前的基础排序指标

典型场景

  • 社交网络:找好友最多或互动最多的用户
  • 交易网络:找交易对手最多的账户
  • 依赖网络:找依赖或被依赖最多的服务模块

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:通常不使用权重
  • 输出:{node: score}
  • 复杂度:O(V + E)

2. in_degree_centrality —— 入度中心性(被关注 / 被调用)

功能说明
在有向图中计算每个节点被指向的程度,反映“被引用、被关注、被调用”的连接层面影响力。

产品价值

  • 适合刻画被动影响力
  • 能识别被大量节点依赖、引用或关注的核心节点
  • 与出度中心性配合,可区分“权威型节点”和“活跃型节点”

典型场景

  • 引用网络:被引用最多的论文
  • 关注网络:粉丝最多的账号
  • 调用依赖:被调用最多的核心服务

适用与特性

  • 图类型:有向图
  • 权重:通常不使用权重
  • 输出:{node: score}
  • 复杂度:O(V + E)

3. out_degree_centrality —— 出度中心性(主动扩散 / 主动调用)

功能说明
在有向图中计算每个节点主动指向其他节点的程度,反映“主动连接、主动传播、主动调用”的活跃度。

产品价值

  • 识别主动扩散者、广播者或调用入口
  • 与入度中心性互补,便于区分“受欢迎”和“活跃”
  • 适合分析外向型节点和上游发起节点

典型场景

  • 社交网络:关注很多人的活跃账号
  • 引用网络:引用很多文献的综述型论文
  • 依赖网络:调用很多下游模块的入口服务

适用与特性

  • 图类型:有向图
  • 权重:通常不使用权重
  • 输出:{node: score}
  • 复杂度:O(V + E)

4. closeness_centrality —— 接近中心性(平均距离最短)

功能说明
计算节点到其他节点最短路径距离之和的倒数。距离越短,节点越接近网络中心,触达效率越高。

产品价值

  • 识别能最快触达全网的节点
  • 适合信息分发、资源调度和网络效率分析
  • 可结合边距离表示路网里程、通信时延或业务成本

典型场景

  • 交通路网:平均到达时间最短的枢纽站点
  • 通信网络:平均跳数或时延最小的中继节点
  • 组织网络:能最快触达大多数人的团队成员

关键参数

  • u:只计算单个节点
  • distance:边距离属性
  • wf_improved:是否按可达比例缩放,适合非连通图

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为距离
  • 输出:{node: score} 或单节点分数
  • 复杂度:通常 O(V * (V + E))

5. betweenness_centrality —— 介数中心性(关键中介 / 桥梁)

功能说明
衡量节点位于其他节点对最短路径上的程度。越多最短路径经过该节点,该节点越像网络中的桥梁、关口或中介。

产品价值

  • 定位结构洞和跨社群连接者
  • 识别单点故障风险
  • 适合网络稳健性、瓶颈分析和关键节点识别

典型场景

  • 社交网络:跨圈层关系中介
  • 交易网络:资金链中的关键过渡账户
  • 交通路网:关键枢纽或必经路口

关键参数

  • k:抽样近似,适合大图
  • weight:边权重属性,通常解释为距离
  • normalized:是否归一化
  • endpoints:是否将端点计入最短路径计数
  • seed:抽样随机种子

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为距离
  • 输出:{node: score}
  • 复杂度:精确计算通常较高,大图建议使用抽样近似

6. edge_betweenness_centrality —— 边介数中心性(关键连接边)

功能说明
衡量边出现在多少对节点最短路径上。高边介数的边通常是跨社区连接、桥边或关键链路。

产品价值

  • 识别断开后影响最大的关键边
  • 支持链路加固、社区划分和网络脆弱性分析
  • 可用于定位网络瓶颈连接

典型场景

  • 交通路网:关键路段、桥梁、隧道
  • 通信网络:关键链路、光纤段
  • 供应链网络:跨区域关键供给连接

关键参数

  • k:抽样近似
  • weight:边权重属性,通常解释为距离
  • normalized:是否归一化
  • seed:抽样随机种子

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持
  • 输出:{(u, v): score}
  • 复杂度:精确计算通常较高,大图建议使用近似计算

7. eigenvector_centrality —— 特征向量中心性(连接到重要者更重要)

功能说明
基于邻接矩阵主特征向量为节点打分。节点不仅因为连接多而重要,也因为连接到重要节点而更重要。

产品价值

  • 比度中心性更强调高质量连接
  • 适合发现核心圈层中的核心节点
  • 能体现“重要节点互相加持”的关系结构

典型场景

  • 社交网络:核心社群中的关键影响者
  • 引用网络:被高影响节点连接的论文
  • 组织网络:与关键岗位紧密协作的成员

关键参数

  • max_iter:最大迭代次数
  • tol:收敛误差阈值
  • nstart:初始向量
  • weight:连接强度权重

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为连接强度
  • 输出:{node: score}
  • 复杂度:O(k * (V + E)),其中 k 为迭代次数

8. katz_centrality —— Katz 中心性(多跳影响衰减累积)

功能说明
在特征向量中心性的基础上,考虑所有长度路径的贡献,并通过衰减系数控制远距离连接的影响。

产品价值

  • 同时考虑直接影响和间接影响
  • 适合影响沿链路逐步衰减的业务场景
  • 对入度为 0 或连接较少的节点也可通过基线项给出分数

典型场景

  • 风控传导:风险沿交易链衰减传播
  • 引用网络:多跳引用影响力分析
  • 组织网络:跨层级协作影响力评估

关键参数

  • alpha:衰减系数
  • beta:基线影响
  • max_iter:最大迭代次数
  • tol:收敛误差阈值
  • normalized:是否归一化
  • weight:连接强度权重

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为连接强度
  • 输出:{node: score}
  • 复杂度:O(k * (V + E))

9. pagerank —— PageRank(随机游走全局重要性)

功能说明
将图视为随机游走过程,节点的重要性由来自其他重要节点的指向累积而来,并通过阻尼系数控制随机跳转。

产品价值

  • 适合大规模网络的稳定重要性排序
  • 可通过个性化向量实现“面向特定主题或群体”的排序
  • 对网页、引用、推荐、交易等链接型网络解释性强

典型场景

  • 链接网络:页面或资源权威度排序
  • 引用网络:论文或专利影响力排序
  • 邮件/沟通网络:关键联系人优先级
  • 交易网络:重要账户识别

关键参数

  • alpha:阻尼系数
  • personalization:个性化向量
  • dangling:悬挂节点处理策略
  • max_iter:最大迭代次数
  • tol:收敛误差阈值
  • weight:转移权重

适用与特性

  • 图类型:有向图为主;无向图可视为双向有向图
  • 权重:支持,通常解释为转移权重
  • 输出:{node: score}
  • 复杂度:O(k * (V + E))

10. hits —— HITS(Hub / Authority 双角色)

功能说明
为每个节点计算两类分数:

  • Hub:指向高 Authority 节点的程度
  • Authority:被高 Hub 节点指向的程度

产品价值

  • 能区分“资源入口”和“内容权威”
  • 适合引用、链接、依赖等方向性强的网络
  • 比单一中心性更适合解释双角色结构

典型场景

  • 站点链接:导航站与内容站识别
  • 引用网络:综述论文与权威论文识别
  • 依赖网络:调用入口与核心模块识别

关键参数

  • max_iter:最大迭代次数
  • tol:收敛误差阈值
  • nstart:初始向量
  • normalized:是否归一化

适用与特性

  • 图类型:有向图为主
  • 权重:通常不使用权重
  • 输出:(hubs_dict, authorities_dict)
  • 复杂度:O(k * (V + E))

11. harmonic_centrality —— 调和中心性(不可达更稳健)

功能说明
以到其他节点距离的倒数求和。不可达节点贡献为 0,因此在非连通图中比接近中心性更稳定。

产品价值

  • 非连通网络中仍能给出可用排名
  • 兼顾全局触达能力和局部可达效率
  • 适合存在孤岛、弱连通或断裂结构的图

典型场景

  • 知识图谱:多社群结构下识别高触达节点
  • 引用网络:跨领域可达能力分析
  • 交通/通信网络:故障或断连情况下评估关键节点

关键参数

  • nbunch:只计算部分节点
  • sources:指定来源集合
  • distance:边距离属性

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为距离
  • 输出:{node: score}
  • 复杂度:通常 O(V * (V + E))

12. load_centrality —— 负载中心性(流量承载型中介)

功能说明
衡量节点在最短路径流量分摊意义下的承载程度。与介数中心性类似,但更强调网络中的负载流经解释。

产品价值

  • 适合分析网络流量承载和中继压力
  • 可用于交通、通信、系统依赖等负载型网络
  • 支持识别容易成为瓶颈的节点

典型场景

  • 通信网络:承担最多中继负载的节点
  • 交通网络:承载最多通勤流的枢纽
  • 系统依赖:承担最多转发或聚合的网关模块

关键参数

  • cutoff:只考虑一定长度以内的路径
  • weight:边权重属性
  • normalized:是否归一化

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持,通常解释为距离
  • 输出:{node: score}
  • 复杂度:通常较高,大图建议结合 cutoff 或近似策略

13. subgraph_centrality —— 子图中心性(小团结构参与度)

功能说明
通过谱方法度量节点参与各类闭环、小团和子结构的程度。节点参与越多紧密结构,子图中心性越高。

产品价值

  • 识别紧密团体中的核心节点
  • 对协同、团伙、闭环结构敏感
  • 适合中小规模网络中的深层结构分析

典型场景

  • 社交网络:紧密朋友圈中的核心人物
  • 生物网络:参与关键功能模块的基因或蛋白
  • 合作网络:参与密集协作组的作者或团队

适用与特性

  • 图类型:通常用于无向图
  • 权重:通常不使用权重
  • 输出:{node: score}
  • 复杂度:谱分解相关,通常更适合中小规模图

14. voterank —— VoteRank(扩散种子选择)

功能说明
通过“节点投票 + 选中后抑制邻居投票能力”的机制,迭代选择一组影响力种子节点,使种子分布更分散、覆盖面更大。

产品价值

  • 比单纯选择度最高节点更不容易扎堆
  • 适合影响力最大化、营销触达和监控点位选择
  • 可输出一组具有较强覆盖能力的候选节点

典型场景

  • 营销传播:选择更分散的种子用户
  • 安全告警:选择关键节点做优先监控
  • 缓存/内容分发:选择代表性节点做内容投放

关键参数

  • number_of_nodes:返回的种子节点数量

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:通常不使用权重
  • 输出:节点列表
  • 复杂度:通常近线性,取决于选择的种子数量

15. current_flow_betweenness_centrality —— 电流流介数中心性

功能说明
基于电流网络模型计算节点中心性。与普通介数中心性只关注最短路径不同,电流流介数会考虑所有可能路径上的流动贡献。

产品价值

  • 更适合刻画真实网络中“多路径分流”的中介作用
  • 能识别在整体流通结构中具有关键作用的节点
  • 对网络稳健性和冗余路径分析更有解释力

典型场景

  • 电力网络:关键输电节点识别
  • 通信网络:多路径传输下的关键中继
  • 交通网络:存在多条替代路线时的瓶颈分析
  • 生物网络:信号通路中的关键中转节点

关键参数

  • weight:边权重属性
  • normalized:是否归一化
  • solver:线性方程求解方式
  • dtype:数值精度类型

适用与特性

  • 图类型:通常用于连通无向图
  • 权重:支持
  • 输出:{node: score}
  • 复杂度:涉及线性代数求解,通常适合中小规模图或稀疏优化场景

16. percolation_centrality —— 渗流中心性

功能说明
在节点具有状态值或激活程度的情况下,衡量节点在网络渗流、传播或扩散过程中的关键程度。

产品价值

  • 将节点状态纳入中心性计算
  • 适合动态传播、风险扩散、疫情传播等场景
  • 能识别在当前传播状态下最关键的中介节点

典型场景

  • 风险传播:已感染或高风险账户影响分析
  • 疫情网络:疾病扩散中的关键传播节点
  • 舆情网络:热点信息扩散过程中的关键用户
  • 故障传播:系统中异常状态的传导分析

关键参数

  • states:节点状态或渗流状态
  • weight:边权重属性
  • attribute:节点状态属性字段

适用与特性

  • 图类型:有向图 / 无向图
  • 权重:支持
  • 输出:{node: score}
  • 适合结合时间片、状态值或传播阶段进行分析

17. second_order_centrality —— 二阶中心性

功能说明
基于随机游走返回时间的标准差衡量节点中心性。节点越容易被稳定地返回或访问,通常越具有结构中心性。

产品价值

  • 从随机游走稳定性的角度衡量节点重要性
  • 可补充 PageRank、接近中心性等常规指标
  • 适合分析网络中的稳定中心和结构均衡位置

典型场景

  • 社交网络:识别处于稳定核心位置的用户
  • 通信网络:稳定可达的中继节点
  • 推荐网络:随机游走下更稳定触达的对象
  • 复杂网络:节点访问稳定性评估

适用与特性

  • 图类型:通常用于连通无向图
  • 权重:视具体实现支持情况而定
  • 输出:{node: score}
  • 注意:计算通常涉及随机游走相关矩阵,规模较大时成本较高

18. laplacian_centrality —— 拉普拉斯中心性

功能说明
通过衡量节点对图拉普拉斯能量的贡献,评估节点对网络整体结构、连通性和稳健性的影响。

产品价值

  • 强调节点删除或变化对整体网络结构的影响
  • 适合网络稳健性和脆弱性分析
  • 能识别维护图结构完整性的重要节点

典型场景

  • 基础设施网络:关键设施节点识别
  • 通信网络:影响整体连通质量的节点
  • 供应链网络:影响系统稳定性的企业或仓库
  • 风控网络:破坏结构稳定性的关键账户

关键参数

  • weight:边权重属性
  • normalized:是否归一化

适用与特性

  • 图类型:通常用于无向图
  • 权重:支持
  • 输出:{node: score}
  • 适合网络稳健性、脆弱性和节点删除影响分析

19. common_neighbor_centrality —— 共同邻居中心性

功能说明
基于共同邻居结构衡量节点或局部连接的重要性。共同邻居越多,通常说明节点处于更紧密的局部关系结构中。

产品价值

  • 适合刻画局部结构中的连接价值
  • 能用于相似性、潜在关系和局部影响力分析
  • 可辅助链接预测、社区分析和局部核心识别

典型场景

  • 社交网络:共同好友多的潜在关键用户
  • 推荐系统:用户-兴趣局部关系分析
  • 合作网络:共同合作者结构分析
  • 风控网络:共同交易对象或共同关系人识别

适用与特性

  • 图类型:通常用于无向图
  • 权重:通常不使用权重
  • 输出:中心性分数或候选关系分数
  • 适合局部结构分析和邻域相似性分析

20. trophic_levels —— 营养级 / 层级位置

功能说明
计算有向网络中节点的层级位置。该算法常用于具有方向流动关系的网络,刻画节点处于上游、中游还是下游。

产品价值

  • 识别网络中的层级结构
  • 适合有明确流向、依赖方向或控制方向的图
  • 可用于判断系统是否具有清晰的上下游关系

典型场景

  • 生态网络:物种营养级分析
  • 供应链网络:上游供应商与下游客户层级
  • 依赖网络:底层模块、中间模块、上层应用识别
  • 资金流网络:资金来源、中转和终端位置分析

适用与特性

  • 图类型:有向图
  • 权重:可结合边强度或流量
  • 输出:{node: level}
  • 适合层级结构、方向流和上下游位置分析

21. birank —— BiRank 二部图排序

功能说明
BiRank 是面向二部图的排序算法,通过两侧节点之间的相互强化关系,同时计算两类节点的重要性分数。

产品价值

  • 适合用户-物品、作者-论文、机构-项目等二部关系网络
  • 能同时评估两侧节点的重要性
  • 可用于推荐、排序、资源优先级和影响力评估

典型场景

  • 推荐系统:用户与物品双侧重要性排序
  • 学术网络:作者与论文影响力联动评估
  • 招聘网络:候选人与岗位匹配重要性
  • 企业网络:机构与项目、供应商与产品关系分析

关键参数

  • 二部图两侧节点集合
  • 边权重:交互强度、评分、次数或关联强度
  • 迭代收敛参数:最大迭代次数、收敛阈值等

适用与特性

  • 图类型:二部图
  • 权重:支持,通常解释为交互强度
  • 输出:两侧节点分数字典
  • 复杂度:通常为迭代式计算,约 O(k * E)

五、推荐使用指南(实践建议)

  • 快速找大户 / 活跃节点degree_centrality / in_degree_centrality / out_degree_centrality
  • 找桥梁与结构洞betweenness_centrality / edge_betweenness_centrality
  • 找流量承载节点load_centrality
  • 找多路径流动下的关键节点current_flow_betweenness_centrality
  • 找离大家都近的节点closeness_centrality
  • 非连通图中的触达能力评估harmonic_centrality
  • 找权威与核心圈层pagerank / eigenvector_centrality / katz_centrality
  • 区分入口与权威内容hits
  • 找紧密团体核心subgraph_centrality
  • 选扩散种子voterank
  • 结合传播状态做关键节点识别percolation_centrality
  • 评估节点对网络稳健性的贡献laplacian_centrality
  • 分析局部共同邻居结构common_neighbor_centrality
  • 分析有向网络层级位置trophic_levels
  • 二部图双侧排序birank

六、可直接回答的典型问题(示例)

  • “输出 Top-20 度中心性最高的节点。”
  • “哪些节点被最多节点指向?”
  • “哪些节点主动连接最多下游节点?”
  • “输出 Top-20 介数中心性最高的节点,用于识别关键中介。”
  • “计算所有边的边介数中心性,并按降序输出 Top-50 关键边。”
  • “哪些节点在多路径流动模型下最关键?”
  • “当前网络中哪些节点承担最多负载?”
  • “在当前邮件通信网络中,PageRank 最高的联系人是谁?”
  • “在不连通的社交图中,调和中心性 Top-20 用户名单是什么?”
  • “用 VoteRank 选出 30 个扩散种子节点用于营销触达。”
  • “在传播状态已知的情况下,哪些节点的渗流中心性最高?”
  • “哪些节点删除后会对网络整体结构造成最大影响?”
  • “这个有向网络中,哪些节点处于上游层级,哪些处于下游层级?”
  • “在用户-物品二部图中,同时给出用户和物品的重要性排序。”

七、工程落地注意事项

  1. 先明确中心性含义

    • 度中心性强调直接连接数量。
    • 接近中心性强调触达效率。
    • 介数中心性强调桥梁和中介作用。
    • PageRank、特征向量、Katz 强调全局权威和重要节点互相强化。
    • 拉普拉斯中心性强调节点对整体结构稳定性的贡献。
  2. 权重语义要统一

    • 最短路类中心性中,权重通常表示距离、成本、阻力,越小越近。
    • 谱中心性和随机游走类算法中,权重通常表示连接强度、交互频率或转移权重,越大越强。
    • 同一张图如果存在多个权重字段,应明确每个算法使用哪个字段。
  3. 非连通图要谨慎选择

    • 接近中心性在非连通图中可能受不可达节点影响。
    • 非连通图中建议优先考虑 harmonic_centrality
    • 电流流类中心性通常要求连通图,使用前应先检查连通性。
  4. 大图场景注意性能

    • 精确介数中心性和边介数中心性计算成本较高。
    • 可使用抽样参数、Top-K 策略或离线批处理。
    • 谱分解类和电流流类算法更适合中小规模图或稀疏优化场景。
  5. 传播类指标需要结合业务状态

    • voterank 适合无状态的扩散种子选择。
    • percolation_centrality 适合节点状态已知的传播过程分析。
    • 不同传播阶段可能产生不同关键节点排序。
  6. 二部图不要直接套用普通中心性

    • 用户-物品、作者-论文、机构-项目等二部图建议使用 birank
    • BiRank 能同时刻画两侧节点的相互强化关系。
    • 若直接投影成单侧图,可能丢失原始二部关系信息。
  7. 排序结果建议结合业务阈值解释

    • 中心性高不一定代表“业务上最重要”。
    • 建议结合节点属性、边权重、时间窗口、社区结构和异常规则进行综合判断。

八、算子清单

序号 算子名称 中文说明
1 degree_centrality 度中心性
2 in_degree_centrality 入度中心性
3 out_degree_centrality 出度中心性
4 closeness_centrality 接近中心性
5 betweenness_centrality 介数中心性
6 edge_betweenness_centrality 边介数中心性
7 eigenvector_centrality 特征向量中心性
8 katz_centrality Katz 中心性
9 pagerank PageRank 中心性
10 hits HITS Hub/Authority 中心性
11 harmonic_centrality 调和中心性
12 load_centrality 负载中心性
13 subgraph_centrality 子图中心性
14 voterank VoteRank 扩散种子选择
15 current_flow_betweenness_centrality 电流流介数中心性
16 percolation_centrality 渗流中心性
17 second_order_centrality 二阶中心性
18 laplacian_centrality 拉普拉斯中心性
19 common_neighbor_centrality 共同邻居中心性
20 trophic_levels 营养级 / 层级位置
21 birank BiRank 二部图排序