Я пытаюсь переписать алгоритм, который в основном принимает входной текстовый файл и сравнивает различные документы и приводит к сходству.
Теперь я хочу напечатать вывод несопоставленных слов и вывести новый текстиль с несопоставленными словами.
Исходя из этого кода, "hello force" является входным параметром и проверяется на соответствие raw_documents и выводит ранг для сопоставленного документа в диапазоне от 0 до 1 (слово "force" сопоставляется со вторым документом, а выходное значение дает больший ранг дляВторой документ, но "привет", отсутствует в любом raw_document. Я хочу напечатать несоответствующее слово "привет", если оно не соответствует), но я хочу напечатать несоответствующее входное слово, которое не было сопоставлено ни с одним из raw_document
import gensim
import nltk
from nltk.tokenize import word_tokenize
raw_documents = ["I'm taking the show on the road",
"My socks are a force multiplier.",
"I am the barber who cuts everyone's hair who doesn't cut their own.",
"Legend has it that the mind is a mad monkey.",
"I make my own fun."]
gen_docs = [[w.lower() for w in word_tokenize(text)]
for text in raw_documents]
dictionary = gensim.corpora.Dictionary(gen_docs)
corpus = [dictionary.doc2bow(gen_doc) for gen_doc in gen_docs]
tf_idf = gensim.models.TfidfModel(corpus)
s = 0
for i in corpus:
s += len(i)
sims = gensim.similarities.Similarity('/usr/workdir/',tf_idf[corpus],
num_features=len(dictionary))
query_doc = [w.lower() for w in word_tokenize("hello force")]
query_doc_bow = dictionary.doc2bow(query_doc)
query_doc_tf_idf = tf_idf[query_doc_bow]
result = sims[query_doc_tf_idf]
print result