Я использую SpaCy для вычисления расстояния между несколькими документами, мой подход следующий:
1) Преобразовать текст в просторный объект
2) Удалить стоп-слова
3) Для каждого из оставшихся слов получите векторное представление и рассчитайте среднее.
4) Используйте несколько методов для измерения расстояния между документами.
Моя проблема с этим подходом в том, что для больших документов требуется много времени.
Я обнаружил, что у spacy есть метод, называемый подобием, для этого он работает быстрее:
nlp_latin = spacy.load("/tmp/la_vectors_wiki_lg")
doc1 = nlp_latin(u"Caecilius est in horto")
doc2 = nlp_latin(u"servus est in atrio")
doc1.similarity(doc2)
Но он использует только косинусное расстояние, есть ли метод, который просто возвращает средний вектор документа?