Как я могу найти и распечатать несоответствующие / несходные слова из документов (набор данных)? - PullRequest
0 голосов
/ 05 февраля 2019

Я пытаюсь переписать алгоритм, который в основном принимает входной текстовый файл и сравнивает различные документы и приводит к сходству.

Теперь я хочу напечатать вывод несопоставленных слов и вывести новый текстиль с несопоставленными словами.

Исходя из этого кода, "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
...