Обновить

Как помочь вашему RAG адаптироваться? Принимайте DRAG with KNEE! Часть 1

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели6.7K
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Комментарии 2

Не понимаю как при таком алгоритме точка оказалась отброшенной? По сути на графике отсеялись чанки с score < 0.3

Спасибо за первый комментарий :)

В целом да, метод поиска «локтя» (knee-point) как раз и помогает автоматически находить этот порог релевантности (в примере на графике - примерно 0,3).

Алгоритм ищет точку, которая максимально далеко отстоит от прямой хорды, соединяющей начало и конец кривой. Всё, что правее этой точки, уже имеет заметно меньший score, поэтому мы её и берём за границу «ещё релевантно / уже шум».

При этом можно использовать и другие подходы. В анализе сигналов, например, часто применяют накопление энергии (суммируют квадраты значений) и берут объекты, которые содержат, скажем, 95 % общей энергии. Остальное считается шумом. Но тут снова появляется ручной порог (те самые 95 %), который нужно подбирать под каждый датасет. Мне это показалось менее рациональным, поэтому я и выбрал knee - он почти не требует дополнительных гиперпараметров и хорошо работает именно на выпуклой форме RRF-кривой.

Ещё раз спасибо, что написал первым!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации