Python Gensim中的快速文本
我正在使用Gensim加载我的fasttextPython Gensim中的快速文本,python,word2vec,gensim,fasttext,Python,Word2vec,Gensim,Fasttext,我正在使用Gensim加载我的fasttext.vec文件,如下所示 m=load_word2vec_format(filename, binary=False) 然而,如果我需要加载.bin文件来执行类似于m.most_-simular(“dog”),m.wv.syn0,m.wv.vocab.keys()等命令,我就感到困惑了。?如果是,怎么做 或者.bin文件对于执行此余弦相似性匹配不重要 请帮帮我 可以使用以下各项: from gensim.models import KeyedVect
.vec
文件,如下所示
m=load_word2vec_format(filename, binary=False)
然而,如果我需要加载.bin
文件来执行类似于m.most_-simular(“dog”)
,m.wv.syn0
,m.wv.vocab.keys()
等命令,我就感到困惑了。?如果是,怎么做
或者.bin
文件对于执行此余弦相似性匹配不重要
请帮帮我 可以使用以下各项:
from gensim.models import KeyedVectors
model = KeyedVectors.load_word2vec_format(link to the .vec file)
model.most_similar("summer")
model.similarity("summer", "winter")
现在有很多选项可以使用该模型。gensim库已经发展,因此一些代码片段被弃用。这是一个实际可行的解决方案:
import gensim.models.wrappers.fasttext
model = gensim.models.wrappers.fasttext.FastTextKeyedVectors.load_word2vec_format(Source + '.vec', binary=False, encoding='utf8')
word_vectors = model.wv
# -- this saves space, if you plan to use only, but not to train, the model:
del model
# -- do your work:
word_vectors.most_similar("etc")
也许我回答这个问题晚了: 但在这里,您可以在文档中找到答案: 示例用例 该库有两个主要用例:单词表示学习和文本分类。这两篇论文1和2对此进行了描述。 词表征学习 如1所述,要学习单词向量,请执行以下操作: $./fasttext skipgram-input data.txt-output model
其中data.txt是包含UTF-8编码文本的培训文件。默认情况下,字向量将考虑3到6个字符的字符n-gram。在优化结束时,程序将保存两个文件:model.bin和model.vec。model.vec是包含单词向量的文本文件,每行一个。bin是一个二进制文件,包含模型参数、字典和所有超参数。二进制文件可在以后用于计算字向量或重新启动优化。如果您希望以后能够使用其他数据重新训练gensim模型,则应按如下方式保存整个模型:
model.save(“fasttext.model”)
。
如果您仅使用model.wv.save\u word2vec\u格式(Path(“vectors.txt”))
保存单词向量,您仍然可以执行向量提供的任何类似于相似性的功能,但您将无法使用更多数据重新训练模型
请注意,如果要保存整个模型,则应将文件名作为字符串传递,而不是按照文档中的建议将其包装在get_tmpfile
中