Ранжирование
Что такое ранжирование?
Задача ранжирования (Learning to Rank) заключается, как ни странно, в эффективном ранжировании объектов. Данная постановка может находить применение во многих аспектах нашей жизни, как например выдача списка релевантных сайтов или документов по запросу.
Одной из техник прививания сути ранжирования модели является выбор корректной функции потерь. Поэтому существуют разные подходы для решения данной задачи, а если быть точнее:
- Pointwise. Ваша функция потерь не учитывает ранжирование
- Pairwise. Ваша функция потерь учитывает взаимосвязи между объектами попарно
- Listwise. Ваша функция потерь учитывает взаимосвязи между всеми объектами внутри запроса, то есть списком
Более точно, конечно, расскажут о них сами ребята на семинаре!
Тема семинара
При изучении данной темы у ребят возник вопрос — может ли использование архитектуры с механизмом внимания избавить от необходимости применения listwise методов в задаче ранжирования?
Для полноценного и исчерпывающего анализа необходимо уделить внимание одновременно двум аспектам — подбор суррогатной функции потерь и выбор эффективной архитектуры, так как именно они являются ключевыми проблемами в области LtR (Learning to Rank). Используя механизм внимания в трансформерах, они явно моделируют взаимосвязи между документами в архитектуре нейронной сети, а не полагаются исключительно на функцию потерь. Несмотря на распространенное мнение, что pointwise методы уступают pair- и listwise, они демонстрируют, что их использование в совокупности с нашей моделью дает многообещающие результаты. Кроме того, они улучшают процесс обучения, добавляя к нашей функции потерь дополнительное слагаемое, вдохновленное ListNet лоссом (не пугайтесь, все ведь расскажут), что также приводит к повышению качества ранжирования и превосходит многие современные работы по показателям интересующих метрик.