В ElasticSearch удаленные стоп-слова продолжают оказывать небольшое влияние на подсчет очков
Запрос На Базовое Соответствие: Билли Сью
Тестовый запрос соответствия #1: Билли Сью и
Тестовый запрос соответствия #2: Билли и Сью
Мы получаем одинаковые оценки между базой и #1, но база и #2 имеют одинаковые, но разные оценки.
Используя API analyze, стоп-слово and
удаляется в обоих тестовых запросах, но свойства маркеров start_offset и end_offset отличаются для Sue
между базовым запросом и тестовым запросом #2.
По существу, предварительное удаление стоп-слов расстояние между оставшимися жетонами записывается и оказывает небольшое, но конечное влияние на подсчет очков.
Вопрос
Есть ли способ отложить вычисление свойств start_offset
и end_offset
токенов до тех пор, пока стоп-слова не будут удалены, или иным образом предотвратить влияние удаленных стоп-слов на подсчет очков?
1 ответ:
Возможно, отключить приращения позиции на фильтре стоп-слов и посмотреть, поможет ли это? Особенно если ваше отображение имеет какой-то фильтр после фильтра стоп-слов, вы получите странные артефакты от приращений позиции
Например, что-то вроде этого:
"analyzer": { "analyzer_example":{ "tokenizer":"standard", "filter":["standard", "lowercase", "filter_stop"] } }, "filter": { "filter_stop":{ "type":"stop", "enable_position_increments":"false" } }