8-битный оптимизатор (by Facebook)



Твой ноутбук не тянет обучение глубоких трансформеров? А если видео-памяти станет в 4 раза больше? Facebook представил 8-битный оптимизатор, который уменьшает потребление памяти во время обучения на 75%.



8-бит это что-то сверхъестественное. Только представьте, у 32-битных чисел значений больше 4 млрд, а тут их всего 256! Как такое вообще можно оптимизировать😅



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



Для использования этого чуда достаточно всего двух строчек кода (см. картинку). Даже не надо заново гиперпараметры подбирать — судя по экспериментам из статьи, замена оптимизатора почти ни на что не повлияет.



P.S. Советую посмотреть видео, там простым языком описано как это работает (и зачем).



Статья, GitHub, видео