← На главную

Глоссарий

Плавающая точка: fp32, bf16 и потеря копеек

Коротко: Плавающая точка это способ хранения дробных чисел в памяти компьютера. Форматы отличаются длиной: fp32 стандартный для обучения, bf16 укороченный формат современных ускорителей, fp64 длинный эталонный. Главный подвох в том, что точность распределена неравномерно: деления сгущаются к нулю. Возле нуля различимы крошечные величины, а возле единицы всё мельче некоторого порога исчезает при сложении: рубль плюс копейка превращается в рубль. На этом эффекте построены оба бага из статьи про софтмакс: малое слагаемое теряется в знаменателе, и градиент тихо обнуляется без ошибок в логах.