Возрастание двухбашенных моделей в системах рекомендаций

Растущая популярность двухбашенных моделей в системах рекомендаций

Погружение в новейшие технологии, используемые для устранения смещения в ранжировании моделей

Фото Евгения Смирнова

Рекомендательные системы являются одними из самых распространенных приложений машинного обучения в настоящее время. Однако, основные модели ранжирования страдают от множества смещений, которые могут сильно ограничить качество получаемых рекомендаций. Проблема построения непредвзятых ранжировщиков — также известных как непредвзятое обучение ранжированию, ULTR — остается одной из наиболее важных исследовательских проблем в области машинного обучения и до сих пор далека от решения.

В этой статье мы подробно рассмотрим один из подходов к моделированию, который в последнее время позволил индустрии очень эффективно контролировать смещения и, таким образом, создавать значительно лучшие рекомендательные системы: модель двух башен, где одна башня обучается релевантности, а другая (поверхностная) башня обучается смещениям.

Хотя двухбашенные модели, возможно, использовались в индустрии уже несколько лет, первая статья, которая формально представила их более широкому сообществу машинного обучения, была статья Huawei PAL 2019.

PAL (Huawei, 2019) — оригинальная двухбашенная модель

В статье Huawei PAL (“позиционно-осознанное обучение ранжированию”) рассматривается проблема позиционного смещения в контексте магазина приложений Huawei.

Позиционное смещение наблюдается снова и снова в моделях ранжирования во всей индустрии. Оно означает, что пользователи чаще всего нажимают на элементы, показываемые первыми. Это может быть связано с тем, что пользователи спешат, они слепо доверяют алгоритму ранжирования или по другим причинам. Вот график, демонстрирующий позиционное смещение в данных Huawei:

Позиционное смещение. Источник: статья Huawei PAL

Позиционное смещение является проблемой, поскольку мы просто не можем знать, нажали ли пользователи на первый элемент, потому что он действительно был для них наиболее релевантным, или потому что он был показан первым — а в рекомендательных системах мы стремимся решить первую задачу обучения, а не вторую.

Решение, предложенное в статье PAL, заключается в факторизации задачи обучения:

p(click|x,position) = p(click|seen,x) x p(seen|position),