PGL
PGL copied to clipboard
Graph4Rec模板文件执行出问题
运行如下代码时总是报错 node_types_file = "./rec_data/node_types.txt" edges_file = "./rec_data/user2movie.txt" embed_path = "./env_run/src/save_embed/embedding.txt" movie_name_file = "./rec_data/nid2movieName.txt"
nid2type = load_vocab(node_types_file) movie2vec, vec_dim = load_embed(embed_path, nid2type, dtype="movie") user2vec, _ = load_embed(embed_path, nid2type, dtype="user")
print("building ann tree") annIndex = AnnTree(user2vec, vec_dim)
print("loading user2likedMovies") user2likedMovies = load_user2movies(edges_file)
print("loading movie2name") movie2name = load_movie2name(movie_name_file)
报错如下
UnboundLocalError Traceback (most recent call last)
/tmp/ipykernel_199/1169641705.py in
~/Graph4Rec/evaluation/evaluation.py in load_embed(embed_file, metaID2type, dtype) 48 embed = [float(i) for i in fields[1].split(" ")] 49 nodeID2vec[node_id] = embed ---> 50 vec_dim = len(embed) 51 52 return nodeID2vec, vec_dim
UnboundLocalError: local variable 'embed' referenced before assignment
不清楚为何内置函数的变量会被分配。感谢解答
你的embedding 文件是空的吧。
可能是因为你没有启动图引擎就开始训练,这样就没有节点被训练到,embedding文件就是空的。