我下载了1.5gb的fasttext.cc向量,我使用了示例代码spaCy examples vectors_fast_text。我在终端中执行了以下命令:
python config/vectors_fast_text.py vectors_loc data/vectors/wiki.pt.vec
处理器处于100%状态几分钟后,我收到了以下文字:
class colspan 0.32231358
从这里发生了什么?如何将这些向量导出到其他位置,例如使用我的AWS S3培训模板?
答案 0 :(得分:0)
我修改了示例脚本,加载我的语言的现有数据,读取文件word2vec,最后写入文件夹中的所有内容(此文件夹需要存在)。
按照vectors_fast_text.py:
[LANGUAGE] = example:“pt”
[FILE_WORD2VEC] =“./ data / word2vec.txt”
from __future__ import unicode_literals
import plac
import numpy
import spacy
from spacy.language import Language
@plac.annotations()
def main():
nlp = spacy.load('[LANGUAGE]')
with open("[FILE_WORD2VEC]", 'rb') as file_:
header = file_.readline()
nr_row, nr_dim = header.split()
nlp.vocab.reset_vectors(width=int(nr_dim))
count = 0
for line in file_:
count += 1
line = line.rstrip().decode('utf8')
pieces = line.rsplit(' ', int(nr_dim))
word = pieces[0]
print("{} - {}".format(count, word))
vector = numpy.asarray([float(v) for v in pieces[1:]], dtype='f')
nlp.vocab.set_vector(word, vector) # add the vectors to the vocab
nlp.to_disk("./models/new_nlp/")
if __name__ == '__main__':
plac.call(main)
输入终端:
python vectors_fast_text.py
完成后大约需要10分钟,具体取决于word2vec文件的大小。在脚本中我打印了这个单词,以便你可以关注。
之后,您必须输入终端:
python -m spacy package ./models/new_nlp/ ./my_models/
python setup.py sdist
然后你会有一个“zip”文件。
pip install /path/to/pt_example_model-1.0.0.tar.gz
可以在spaCy网站上找到详细的教程: https://spacy.io/usage/training