zoukankan      html  css  js  c++  java
  • 图:centrality

    【定义】Centrality:图中每个节点v的相对重要度c(v),重要度是什么可根据具体应用定义。

    【估计方法】

    Degree centrality

    Betweenness centrality

    Closeness centrality

     Eigenvector centrality

    PageRank及其他

    通常,Centrality的估计有几种方法:

    1.  Degree centrality

          计算公式:C(v)=degree(v)

          备注:节点v处的边数直接作为centrality,若边是有向的,则可以有两个c(v)的定义:入度数和出度数

          此定义也可视为到v距离为1的所有路径长度。

    2. Betweenness centrality(Freeman Linton, 1977)

         计算公式:C(v)=图中所有除节点v外的节点对之间经过v的最短路径数/图中所有除节点v外的节点对之间所有的最短路径数;

         备注:衡量v作为路由器的功率。

         计算复杂度:

    1)Floyd-Warshall algorithm(也称Floyd’s algorithm, Roy-Warshall algorithm, Roy-Floyd algorithm, WFI algorithm,基于动态规划的计算任意两点间最短路径的算法,也可用于计算有向图的传递闭包),平均复杂度为theta(|V|^3),|V|为图中节点总数。

    2)Johnson’s algorithm,也是计算最短路径的算法,在稀疏图中(有向、有边权),最坏情况下,O(|V|^2*Log|V|+|V|*|E|)

    3)Brandes' algorithm (a faster algorithm for betweenness centrality, 2001), 在无权重(同权重)的图上,最坏情况下O(|V|*|E|)

    3. Closeness centrality(Freeman, 1978; Opsahl et al., 2010; Wasserman and Faust, 1994)

         计算公式:从v到所有其他节点的最短距离和的倒数。

         备注1:这个centrality只能用于连通图,非联通图上会出现无穷大,然后所有节点的centrality都是0;

         备注2:这个centrality可用于衡量一个节点将信息传播到其他节点的时间或者花费,能用来寻找图中的community leader。

         修正1:Dangalchev(2006)对上述定义做了修正,将v到其他节点t的最短距离d(v,t)修正为2^(-d(v,t)),然后对除v之外的所有节点t的该值求和,作为centrality,使之能够用到非联通图上。

         修正2:Opsahl(2010)和Boldi and Vigna(2013)做了另外一个修正,使得其能用到非联通图上,原来的定义中先对最短距离求和,然后求倒数,该修正中反过来,先对到每个节点的距离求倒数,在对倒数求和,作为cnetrality。

    4. Eigenvector centrality

    5. PageRank及其他

  • 相关阅读:
    MondoDB 之 使用python对MongoDB排序 MondoDB -9
    MondoDB 之 使用python对MongoDB进行文档修改 MondoDB -8
    MondoDB 之 使用python对MongoDB进行查询文档 MondoDB -7
    MondoDB 之 使用python对MongoDB进行插入文档 MondoDB -6
    MondoDB 之 使用python操作MongoDB MondoDB -5
    MondoDB 之 $关键字 及 $修改器 $set $inc $push $pull $pop MondoDB -4
    MondoDB 之 数据类型 MondoDB -3
    MongoDB 之 操作增删改查 MongoDB
    简述常见数据库高可用方案
    关于MySql数据库误操作数据找回的办法
  • 原文地址:https://www.cnblogs.com/1995hxt/p/6825165.html
Copyright © 2011-2022 走看看