group-telegram.com/ai_newz/1772
Last Update:
🔥 Lion: EvoLved Sign Momentum - новый оптимайзер от Гугла
Google нашел новый алгоритм оптимизации при помощи Symbolic Search (завтра объясню, что это такое). Новый оптимайзер тупо мониторит momentum, а размер финального апдейта весов считается как sign(grad (1-β1) + β1 momentum)
. То есть апдейт для каждого элемента весов равен либо -1 * LR либо +1 * LR! train(weight, gradient, momentum, lr):
Просто волосы дыбом от тупости Lion, но он дает серьезные улучшения в скорости сходимости, да и в найденных локальных минимумах. Рвет и обычную классификацию и языковые модели и диффузионные.
update = interp(gradient, momentum, β1)
update = sign(update)
momentum = interp(gradient, momentum, β2)
// Тут я пропустил weight decay для простоты
update = update * lr
return update, momentum
Чем больше батч, тем лучше работает Lion. Еще он более устойчив к различным выборам гиперпараметров по сравнению с AdamW.
Уже попробовал на свои задачах, вроде работает!
❱❱ Код на PyTorch, JAX и TF
@ai_newz
BY эйай ньюз
Share with your friend now:
group-telegram.com/ai_newz/1772