Можно ли реализовать логи c поиска близких друзей в Elasticsearch? - PullRequest
0 голосов
/ 06 августа 2020

Основная идея c проста, у нас есть некоторые внешние пары kv, подразумевающие идентификатор друга и соответствующее значение близости, которое может передаваться в elasticsearch. Мы хотим сначала запросить и получить несколько совпадающих документов с соответствующей оценкой релевантности текста в порядке убывания, затем мы выбираем топ-3 друга с наивысшей степенью близости из топ-N соответствующих документов, используя внешние kv-пары в качестве элементов рекомендаций, сортируем топ-3 элемента по предыдущей оценке релевантности текста, а затем отсортируйте другие документы, не содержащие рекомендаций, также по предыдущей оценке релевантности текста и поместите эти документы за 3 элементами рекомендаций.

Думаю, после сортировки документов по релевантности текста я могу написать повторную оценку скрипт для повышения оценки 3 документов, которые имеют наивысшую степень близости, предположим, что оценка релевантности исходного текста равна xxx, в сценарии rescore с N window_size я могу поднять _score до 1000xxx, а оценка других не рекомендуемых документов останется прежней, поэтому после переоценки документы с топ-3 наивысшей степенью интимности могут быть помещены в топ-3 результата с релевантностью текста в порядке убывания, а остальные также ранжируются по релевантности текста в порядке убывания. Но все изменилось после с несколькими осколками и координатными узлами, поскольку каждый осколок (предположим, что у нас есть 4 осколка) поднимет 3 документа, на стороне координатного узла 3x4-3 рекомендуемые документы кандидата будут потеряны после слияния, и им нужно будет понизить их _score и прибегнуть. Но rescore не может работать на координатном узле. И я думаю, что сценарий сортировки может запускаться как на узле данных, так и на узле координат (хотя в руководстве по ES это четко не указано), но кажется, что window_size нельзя применить к сценарию сортировки, чтобы получить релевантность текста top-N на узле данных . Так есть ли способ добиться этого logi c?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...