7

要获取单词的向量,我可以使用:

model["word"]

但是如果我想得到一个句子的向量,我需要对所有单词的向量求和或者得到所有向量的平均值。

FastText 是否提供了一种方法来做到这一点?

4

3 回答 3

10

如果要计算句子或段落的向量表示,请使用:

$ ./fasttext print-sentence-vectors model.bin < text.txt

这假定 text.txt 文件包含您要为其获取向量的段落。程序将在文件中的每一行输出一个向量表示。

这已在 fasttext repo 的 README 中明确提及。 https://github.com/facebookresearch/fastText

于 2017-04-18T05:44:45.777 回答
1

您也可以使用 python 包装器。使用此处的官方安装指南安装它: https ://fasttext.cc/docs/en/python-module.html#installation

在那之后:

import fasttext
model = fasttext.load_model('model.bin')
vect = model.get_sentence_vector("some string") # 1 sentence
vect2 = [model.get_sentence_vector(el.replace('\n', '')) for el in text] # for text
于 2020-06-17T11:35:38.147 回答
0

要使用 fasttext 获取句子的向量,请尝试以下命令

$ echo "Your Sentence Here" | ./fasttext print-sentence-vectors model.bin

有关这方面的示例,请参阅Learn Word Representations In Fasttext

于 2017-09-07T12:16:59.347 回答