添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

如何用python编写链接预测精度评估的代码?

0 人关注

我正在做一个使用adamic_adar索引的链接预测问题。数据集是一个网格网络(有1000个链接的edgelist)。我从观察到的数据集中随机选择了80%(800)的边。我需要从preds中选择最高的200个预测链接,如下图所示,同时计算出精确率。我不知道接下来该怎么做。我应该怎么做呢...帮助!

import numpy as np
import networkx as nx
G = nx.read_edgelist('Grid.txt', create_using=nx.Graph(), nodetype=int)
preds = nx.adamic_adar_index(G);
for u, v, p in preds:
    '(%d, %d) -> %.8f' % (u, v, p)
    print(u, v, p)
    
python
precision
networkx
prediction
Chris
Chris
发布于 2019-01-11
2 个回答
keineahnung2345
keineahnung2345
发布于 2021-03-15
已采纳
0 人赞同

我假设u,v是图形的顶点,p是精度。

import numpy as np
import networkx as nx
import random
G = nx.read_edgelist('Grid.txt', create_using=nx.Graph(), nodetype=int)
preds = nx.adamic_adar_index(G)
preds = random.sample(preds, int(len(preds)*0.8))
preds = sorted(preds, key=lambda x: x[2], reverse=True)[:200]
ratio = sum([t[2] for t in preds])/len(preds)
print(ratio)
    
谢谢你。这应该是很好的结果。谢谢你的帮助
嗨 @Chris 如果这个或任何答案解决了你的问题,请考虑一下 接受它 通过点击复选标记。
Usman
Usman
发布于 2021-03-15
0 人赞同
import numpy as np
import networkx as nx
import random
G = nx.read_edgelist('Grid.txt', create_using=nx.Graph(), nodetype=int)
preds = list(nx.adamic_adar_index(G))