Я должен сравнить один пространственный документ со списком пространственных документов и хочу получить список показателей сходства в качестве выходных данных. Конечно, я могу сделать это, используя цикл for, но я ищу какое-то оптимизированное решение, такое как numpy предложения для трансляции и т. Д.
У меня есть один документ против списка документов:
oneDoc = 'Hello, I want to be compared with a list of documents'
listDocs = ["I'm the first one", "I'm the second one"]
spaCy предлагает нам функцию сходства документов:
oneDoc = nlp(oneDoc)
listDocs = nlp(listDocs)
similarity_score = np.zeros(len(listDocs))
for i, doc in enumerate(listDocs):
similarity_score[i] = oneDoc.similarity(doc)
Поскольку один документ сравнивается со списком из двух документов, оценка сходства будет выглядеть следующим образом:
[0.7, 0.8]
Я ищу способ избежать этого для цикла. Другими словами, я хочу векторизовать эту функцию.