SimPO'л Сама.
Или че там за зверь такой Simple Preference Optimization.
В общем, вижу, что из каждого утюга вещают за очередную трансформацию
DPO в новый метод через лось — ака
SimPO. А Дядя напомнит,что за DPO уже вещал
туть. К радости моей и вашей, тут будет все кратенько. Когда только появился
log-sigmoid loss для этих всех ваших pair rank выравниваний текстов, мы уже пытались в него вкорячить идеи из metric learning. Тем более корнями log-sigmoid лось уходит как раз таки в
pair-rank/multiple-choise лоссы, просто с отображением на сигмоиде. А далее отсюда рождался и
MarginRankLoss.
Так вот, мы давно подметили,что если добавить в этот log-sigmoid лосс еще и зазор,то мы можем улучшить как сходимость так и свойства упорядочивания по рангу объектов, тк в дефолтном случае ранги могли идти чуть ли не в тысячную подряд. Зазор дает вам не менее, чем его значение отступа между порядками по рангу скоров. В методе
SimPO, авторы также добавили margin под кодовым именем гамма.
Но это еще не все, также был убран штраф за отклонение от референс модели. Однако, чтобы компенсировать это, была добавлена нормализация по длине токенов обоих частей лосса. Причем, авторы показали,что такая эвристика работает, да еще и уберегает от биаса по предпочтению более длинных генераций. Просто ранее наблюдалось,что награда порой была выше для более длинных текстов, а вот норма на длину генерации дает дисконтирование и уравнивание в правах по смыслу, а не длине.
Таким образом, simPO откинул все лишнее в своем лоссе, став тем самым "простым".
В результате экспериментов, simPO показал при своей простоте, улучшение скорости обучения, а также (думаю засчет введения margin и дисконта по длине) улучшение метрик на различных бенчах в тч ArenaHard.
Да и наше комьюнити подхватило реализацию simPO для своих экспов. Те же ребята из Saiga и Vikhr.
Итого учите базу, часто комбинация кубиков из базовых концептов, а в данном случае: metric learning идеи с зазором, логсигмоида и dpo, — порождает новые простые и эффективные методы.