问题描述
你好,我有一个这种形式的 txt 文件,第一列是单词,第二列是向量。
sort.Interface
我正在尝试将其作为键控向量加载,因为我想计算单词之间的余弦相似度并找到最相似的单词,但我总是遇到错误。
解决方法
我猜实际格式包括换行符,例如:
word 0.256 0.2659 0.326595
word1 0.528 0.6589 0.62326
这或多或少是 GLoVe 训练向量的常见格式,并且与 Google 原始 word2vec.c
代码使用的文本格式非常相似 - 它添加了第一行,其中包含向量及其维度的计数。
(如果您的矢量来自这些工具之一或公共场所,并且有更多关于文件名或来源格式的提示,那么在您的问题中注明会很有帮助。)
如果我猜对了您的真实格式,那么 Gensim 的 KeyedVectors
类可以通过 .load_word2vec_format()
方法和 no_header=True
可选参数加载 GLoVe 格式:
vecs = KeyedVectors.load_word2vec_format(filename,binary=False,no_header=True)
有关更多选项,请参阅文档: