Запутался, как IDF рассчитывается в Lucene при чтении документов Elastic.Это две части для расчета IDF:
https://www.elastic.co/guide/en/elasticsearch/guide/current/scoring-theory.html
Как часто термин встречается во всех документах в коллекции?Чем чаще, тем меньше вес.Общие термины, такие как или, или мало что дают для релевантности, так как они встречаются в большинстве документов, в то время как необычные термины, такие как astic или hippopotamus , помогают нам увеличить наиболее интересные документы.Частота обратных документов рассчитывается следующим образом:
idf(t) = 1 + log ( numDocs / (docFreq + 1))
Частота обратных документов (idf) термина t представляет собой логарифм числа документов в индексе, деленный на количество документов, содержащих термин.
https://www.elastic.co/guide/en/elasticsearch/guide/current/relevance-intro.html Частота обратных документов Сколько раз термин медовый месяц появлялся в поле твит всех документов в индексе?
Вот мой вопрос: Допустим, я проиндексировал 3 документа с 5 полями, где f1, f2, f3 находятся в doc1, f2, f3, f4 находятся в doc2, а f3, f4, f5 -в док5.Мой запрос к полю f2.
numDocs - это все документы (# -3) или только документы, где присутствует поле (# -2)?docFreq - это кажется очевидным.Я думаю, что это число документов с полем f2, где этот термин совпадает.Это может быть 1 или 2.
Надеюсь, они включают текст в поле , когда они все документы.Спасибо