600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 图数据集Zachary‘s karate club network详细介绍 包括其在NetworkX PyG上的获取和应用方式

图数据集Zachary‘s karate club network详细介绍 包括其在NetworkX PyG上的获取和应用方式

时间:2018-10-22 07:36:18

相关推荐

图数据集Zachary‘s karate club network详细介绍 包括其在NetworkX PyG上的获取和应用方式

诸神缄默不语-个人CSDN博文目录

文章目录

1. 原始数据2. NetworkX中的数据3. PyG中的数据

1. 原始数据

维基百科:Zachary’s karate club - Wikipedia

原始论文:An Information Flow Model for Conflict and Fission in Small Groups

数据集中只有一张图。

该图描述了一个空手道俱乐部会员的社交关系,以34名会员作为节点,如果两位会员在俱乐部之外仍保持社交关系,则在节点间增加一条边。

每个节点具有一个34维的特征向量,一共有78条边。

在收集数据的过程中,管理人员 John A 和 教练 Mr. Hi(化名)之间产生了冲突,会员们选择了站队,一半会员跟随 Mr. Hi 成立了新俱乐部,剩下一半会员找了新教练或退出了俱乐部。通过收集到的图数据,Zachary 进行了分类,除1名会员外都分类正确。

2. NetworkX中的数据

官方文档:networkx.generators.social.karate_club_graph

无向图。一共有34个节点,78条无向、无权、无特征的边。节点具有club属性,取值为 Mr. Hi 或 Officer。

数据获取代码:G = nx.karate_club_graph()

数据文件来源:UCINET IV Datasets

3. PyG中的数据

官方文档:torch_geometric.datasets.KarateClub

源代码:torch_geometric.datasets.karate — pytorch_geometric 1.7.0 documentation

数据文件来源于NetworkX的karate_club_graph,在其基础上做了修改。也是34个节点,78条无向边(edge_index宽为156)。

(官方文档中说是156条边(指无向图边×2的数目))

基于论文 Kipf, T., & Welling, M. (). Semi-Supervised Classification with Graph Convolutional Networks. ArXiv, abs/1609.02907.(就是GCN那篇论文):

用 modularity-based clustering 给每个节点赋予一个四分类的标签(0 1 2 3)。在每一类中选一个节点作为该标签类的真实值节点,是train_mask为True对应索引的节点。(参考源代码:y是通过 community 的 community_louvain 计算出来的。然后将每一类的第一个节点作为真实值节点。)

每个节点有一个34维的特征(x),是独热编码的形式。(node ordering是随机的)

获取数据的方式:

from torch_geometric.datasets import KarateClubdataset = KarateClub()data = dataset[0]print(data)

Data(edge_index=[2, 156], train_mask=[34], x=[34, 34], y=[34])

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。