【发布时间】:2018-01-31 05:03:55
【问题描述】:
我正在使用 python 2.7 64 位,我想使用 glove 预训练的词向量 spacy 中的维基百科语料库。默认情况下 spacy 是在 glove 的通用爬网语料库上进行训练的。任何人都可以提供相同的代码 sn-p。
【问题讨论】:
我正在使用 python 2.7 64 位,我想使用 glove 预训练的词向量 spacy 中的维基百科语料库。默认情况下 spacy 是在 glove 的通用爬网语料库上进行训练的。任何人都可以提供相同的代码 sn-p。
【问题讨论】:
如果您的向量已经以标准 word-tab-vector 格式训练,您可以使用来自spaCy Github 的示例代码将其添加到 spaCy 模型:
with open(vectors_loc, 'rb') as file_:
header = file_.readline()
nr_row, nr_dim = header.split()
nlp.vocab.reset_vectors(width=int(nr_dim))
for line in file_:
line = line.rstrip().decode('utf8')
pieces = line.rsplit(' ', int(nr_dim))
word = pieces[0]
vector = numpy.asarray([float(v) for v in pieces[1:]], dtype='f')
nlp.vocab.set_vector(word, vector) # add the vectors to the vocab
使用新的CLI API 可能更有效,它可以让您使用自定义向量创建新的空白模型。请注意,使用不同的向量可能会破坏所有其他管道组件(NER、POS、依赖项),因为它们需要现有的向量。
【讨论】: