У меня есть куча документов, которые я хочу обработать с помощью spaCy. Когда я загружаю модель lg, векторы слов будут генерироваться для каждого обрабатываемого документа. Я хочу сохранить всю эту информацию на диск, чтобы потом восстановить ее. Причина в том, что я выполняю попарное сходство.
Итак, вот что я делаю, чтобы сохранить их
import spacy
nlp = spacy.load('en_core_web_lg')
doc = nlp(my_text)
doc.to_disk(my_file)
И вот что я делаю, чтобы восстановить
import spacy
nlp = spacy.load('en_core_web_lg')
idoc = Doc(Vocab()).from_disk(os.path.join(saved_docs, all_docs[i]))
jdoc = Doc(Vocab()).from_disk(os.path.join(saved_docs, all_docs[j]))
print(idoc.similarity(jdoc))
Это дает:
ModelsWarning: [W007] В используемой вами модели нет загруженных векторов слов, поэтому результат метода Do c .similarity будет основан на теггере , синтаксический анализатор и NER, которые могут не дать полезного суждения о сходстве. Это может произойти, если вы используете одну из небольших моделей, например en_core_web_sm
, которые не поставляются с векторами слов и используют только контекстно-зависимые тензоры. Вы всегда можете добавить свои собственные векторы слов или использовать вместо этого одну из более крупных моделей, если они доступны.
как если бы векторы слов не пережили процесс to_disk / from_disk.
Что как правильно сохранить эту информацию?