ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

图神经网络

2021-06-10 21:32:52  阅读:195  来源: 互联网

标签:曹操 Graph 路径 nx 神经网络 print 节点


图与节点的基本

图直径:

图中所有的两两节点他们的最短路径的最大值。·

节点的度中心性:

公式Ndegree/(n-1)   也就是该节点的度/(全部的节点-1)

节点的特征向量中心性Eigenvector Centrality:

如果一个节点连接的度越多,其特征向量中心性越大。

中介中心性Betweenness Centrality :

经过该节点的最短路径/其余两两节点的最短路径。

 

先来看曹操的betweenness的计算,分子的第一项:蔡文姬出发到甄姬的最短路径没有经过曹操,所以为0,假设蔡文姬出发去周瑜的最短路径经过曹操所以为1,从蔡文姬出发去夏侯惇的最短路径经过曹操所以为1,从蔡文姬出发前往典韦的最短路径有两条(都是要经过一个人才到)里面有一条是经过曹操的所以其为0.5,所以分子的第一项为(0+1+1+0.5)。分子的第二项:从甄姬出发到蔡文姬的最短路径不经过曹操所以为0,从甄姬出发到典韦的最短路径不经过曹操所以为0,从甄姬出发到周瑜的最短路径经过曹操所以其为1,从甄姬出发到夏侯惇的最短路径经过曹操,所以其为1,所以分子的第二项为(0+0+1+1)。后面的也是同样来类推。来看分母,先是蔡文姬去除了曹操以外的所有人总共有4条最短路径,除了曹操之外总共有5个人,所以分母为5*4

 连接中心性closeness

 

 

计算曹操的closeness:分子是全部节点的个数-1,任意两个节点之间的距离为1,曹操到任意的其他5个人的距离均是为1,所以分母为5。

再计算甄姬的closeness:分子是全部节点的个数-1,甄姬到曹操和蔡文姬的最短路径是1,而到典韦,夏侯惇,周瑜都需要经过曹操,所以最短距离是2。

网页排序算法pageRank

如果一个网页被很多其他网页所链接,那么说明他受到普遍的承认和信赖,那么他的排名就高。PR值越高说明该网页越受欢迎(越重要

假设一个由只有4个页面组成的集合:A,B,C和D。如果所有页面都只链向A,那么A的PR(PageRank)值将是B,C及D的和。

换句话说,根据链出总数平分一个页面的PR值。

 

 

 

 

 

使用networkx进行计算

import numpy as np
import pandas as pd
import networkx as nx

edges = pd.DataFrame()  #使用pd构造dataframe
edges["sources"] = [1,1,2,2,3,3,4,4,5,5]  #构造源节点列表
edges["targets"] = [2,4,5,3,1,2,5,1,3,4]  #构造目标节点列
edges["weights"] = [1,1,1,1,1,1,1,1,1,1]  #构造边的权重列
#使用pandas来生成图,比如从1出发到2,权重是1,从1出发到4权重也是1
Graph = nx.from_pandas_edgelist(edges,source="sources",target="targets",edge_attr="weights")
print(nx.degree(Graph)) #打印每一个节点的度
print(list(nx.connected_components(Graph))) #打印连通的成分
print(nx.diameter(Graph)) #打印图直径,图上的任意两个相邻的点之间的路径的最大值为图直径
print(nx.degree_centrality(Graph)) #打印度中心性
print(nx.eigenvector_centrality(Graph)) #打印特征向量中心性
print(nx.betweenness_centrality(Graph)) #betweenness_centrality
print(nx.closeness_centrality(Graph)) #closeness_centrality
print(nx.pagerank(Graph)) #pagerank
print(nx.hits(Graph)) #hits

 

标签:曹操,Graph,路径,nx,神经网络,print,节点
来源: https://www.cnblogs.com/zqh962903415/p/14872875.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有