使用 fasttext 计算词嵌入
Calculate word embeddings using fasttext
我正在尝试使用 fasttext 为以下句子计算词嵌入。
a = 'We are pencil in the hands'
我没有任何预训练模型,我该怎么做?
您需要 table 个经过训练的嵌入。
您可以从 FastText website 下载预训练的嵌入并使用它们提供的代码来加载嵌入。您甚至不需要为此安装 FastText:
import io
def load_vectors(fname):
fin = io.open(fname, 'r', encoding='utf-8', newline='\n', errors='ignore')
n, d = map(int, fin.readline().split())
data = {}
for line in fin:
tokens = line.rstrip().split(' ')
data[tokens[0]] = map(float, tokens[1:])
return data
那你就直接从字典里查吧。
或者,您可以按照 tutorial 在您的文本数据上自行训练 fasttext。用于训练词嵌入的数据集的合理最小值是数十万个词。
我正在尝试使用 fasttext 为以下句子计算词嵌入。
a = 'We are pencil in the hands'
我没有任何预训练模型,我该怎么做?
您需要 table 个经过训练的嵌入。
您可以从 FastText website 下载预训练的嵌入并使用它们提供的代码来加载嵌入。您甚至不需要为此安装 FastText:
import io
def load_vectors(fname):
fin = io.open(fname, 'r', encoding='utf-8', newline='\n', errors='ignore')
n, d = map(int, fin.readline().split())
data = {}
for line in fin:
tokens = line.rstrip().split(' ')
data[tokens[0]] = map(float, tokens[1:])
return data
那你就直接从字典里查吧。
或者,您可以按照 tutorial 在您的文本数据上自行训练 fasttext。用于训练词嵌入的数据集的合理最小值是数十万个词。