我想用gensim训练word2vec模型
python 3.5.3
gensim 2.1.0
numpy 1.12.1 + mkl
scipy 0.19.0
import gensim
import codecs
class MySentences(object):
def __init__(self,filename):
self.filename=filename
def __iter__(self):
with codecs.open(self.filename) as f:
for line in f.readlines():
wordlist=list()
for word in line:
wordlist.append(word)
yield wordlist
sentences=MySentences('D:/Documents/Data/icwb2-data-processed/pku_training.rmspace.utf8')
model=gensim.models.Word2Vec(sentences)
model.save('w.model')
我运行此代码,导致错误:
AttributeError:module' gensim'没有属性'模型'
由于我将此文件命名为' gensim.py'
谢谢@BurhanKhalid !!!
答案 0 :(得分:1)
在python中,如果您自己编写的代码模块名称与库模块名称相同,则可能会导致错误。
因此,您不应将训练文件命名为“ gensim.py”,而该文件会覆盖gensim库文件:“ gensim.py”
答案 1 :(得分:0)
您必须从gensim导入模型。