You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决运行作者名消歧项目时Word2Vec模型不可迭代报错

Word2Vec模型不可迭代报错修复方案

错误根因

该报错由gensim库版本迭代后的API不兼容导致:你运行的开源项目基于gensim 3.x版本编写,本地安装的是gensim 4.0及以上版本,新版本不再支持直接对Word2Vec实例做成员判断、直接取词向量的操作,相关能力已全部迁移到模型的wv属性下。

修复方法

无需降级依赖库,仅修改两处调用Word2Vec模型的代码即可:

  • 判断词是否在词表的逻辑j in model修改为j in model.wv
  • 获取词向量的逻辑model[j]修改为model.wv[j]

另外你提供的代码存在缩进缺失问题,运行前需保证循环、分支下的代码有正确的缩进层级,修正后的完整代码片段如下:

num_step = 20 #GRU时序个数
word_input = 100

paperid_title = {}
with open("gene/paper_title.txt",encoding = 'utf-8') as adictfile:
    for line in adictfile:
        toks = line.strip().split("\t")
        if len(toks) == 2:
            paperid_title[toks[0]] = toks[1]

save_model_name = "gene/word2vec.model"
model = word2vec.Word2Vec.load(save_model_name)

paper_vec={}
paper_len={}
for paperid in paperid_title:
    split_cut = paperid_title[paperid].split()
    words_vec = []
    for j in split_cut:
        if (len(words_vec)<num_step) and (j in model.wv):
            words_vec.append(model.wv[j])

内容的提问来源于stack exchange,提问作者Meet Maratha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 21:57:05