Как найти похожие документы - PullRequest
3 голосов
/ 05 октября 2011

Как вы находите аналогичные документы данного документа в Lucene. Я не знаю, что это за текст, я знаю только, что это за документ. Есть ли способ найти похожие документы в lucene. Я новичок, поэтому мне может понадобиться рука.

1 Ответ

9 голосов
/ 05 октября 2011

Вы можете проверить функцию MoreLikeThis в lucene.

MoreLikeThis создает запрос lucene на основе терминов в документе, чтобы найти другие подобные документы в индексе.

http://lucene.apache.org/java/3_0_1/api/contrib-queries/org/apache/lucene/search/similar/MoreLikeThis.html

Пример кода (ссылка на Java) -

MoreLikeThis mlt = new MoreLikeThis(reader); // Pass the index reader
mlt.setFieldNames(new String[] {"title", "author"}); // specify the fields for similiarity

Query query = mlt.like(docID); // Pass the doc id 
TopDocs similarDocs = searcher.search(query, 10); // Use the searcher
if (similarDocs.totalHits == 0)
    // Do handling
}
...