MoreLike Это не возвращает 100% -ную оценку в Lucene.Net при сравнении одного и того же документа друг с другом

Я не знаю, правильно ли я звоню Lucene.net. Я пытаюсь вызвать функцию MoreLikeThis, чтобы сравнить документ с самим собой, и я получаю только 0,3174651 баллов, где я думаю, что я должен получить балл 1,0. Я ожидаю, что неправильно ожидать?

Это мой код:

                int docId = hits[i].Doc;
                var query2 = mlt.Like(docId);
                TopScoreDocCollector collector = TopScoreDocCollector.Create(100, true);
                searcher.Search(query2, collector);
                ScoreDoc[] hits2 = collector.TopDocs().ScoreDocs;
                var result = new List<string>();
                for (int k = 0; k < hits2.Length; k++)
                {
                    docId = hits2[k].Doc;
                    float score = hits2[k].Score;
                }

Я делаю что-то не так, пожалуйста?

1 ответ

Решение

Единственное, что вы делаете неправильно, думает, что результаты Lucene - это проценты. Это не так.

Оценка документов по запросу должна использоваться для сравнения силы совпадений в контексте этого отдельного запроса. Они довольно эффективны при сортировке результатов, но не являются процентными показателями и обычно не подходят для отображения пользователю.

Другие вопросы по тегам