您好,我有一些{2}中使用Word2Vec Java实现生成的word2vec模型,并通过调用
保存writeWord2VecModel(Word2Vec vectors, String path)
该文件的输出是一个zip文件,其中包含一堆txt文件。 我可以使用
在DL4j中成功加载和使用模型Word2Vec readWord2VecModel(String path)
我现在正尝试使用gensim
import gensim
model = gensim.models.KeyedVectors.load_word2vec_format('file_path, binary=False)
但是出现以下错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe0 in position 10: invalid continuation byte
我还尝试使用binary = True并获得相同的结果。
如果我提取由DL4J生成的模型,则会得到以下文件:
有没有办法在python genism
中读取该模型?
答案 0 :(得分:0)
图像中显示的所有文件名都不是gensim
类型的文件名。
您要为load_word2vec_format()
提供什么文件路径和文件名? (gensim
的所有加载方法都无法保存.zip
存档。)
可能还有另一种将DL4J中的向量导出为word2vec.c格式(文本或二进制,单个文件)而不是完整模型ZIP存档的方法。
如果成功完成此操作,请尝试将具有适当的load_word2vec_format()
值的单个文件提供给binary
。
(如果那时您有一个格式正确的文件,但是您仍然遇到Unicode错误-也许在文件的后面-有一个可选的unicode_errors='ignore'
参数可以提供给load_word2vec_format()
Unicode错误收费的问题–但是我认为这不是您的主要问题,如果DL4J可以正确地导出字向量,这也不是您的问题。)