Ваги з трьох станів замість чисел
27 лютого 2024 року Microsoft Research і Університет Китайської академії наук показали мовну модель, кожна вага якої дорівнює −1, 0 або 1. На 3 мільярдах параметрів вона зрівнялася з повноточною LLaMA за перплексією, витрачаючи у 3,55 раза менше пам'яті GPU і працюючи у 2,71 раза швидше.
Чому це важливо
Доти зменшення розрядності було стисненням уже навченої моделі, і за нього платили якістю. Тут розрядність стала властивістю самого навчання, а множення чисел у лінійних шарах звелося до додавання й віднімання — тобто питання, що можна запустити поза дата-центром, перестало залежати від того, чи є чим стискати.
Три стани на вагу потребують log₂(3) ≈ 1,58 біта, звідки назва. Активації лишаються 8-бітними. Порівнювали з власноруч відтвореною FP16 LLaMA, навчивши обидві на 100 мільярдах токенів RedPajama. З таблиці 1 першої версії: паритет за перплексією настає з розміру 3B — 2,71 раза швидше і у 3,55 раза менше пам'яті GPU. Конфігурація 3.9B дає 2,40 раза швидше і у 3,32 раза менше пам'яті. Окремо: на 7-нанометрових кристалах арифметика матричного множення споживає у 71,4 раза менше енергії. Запис не стверджує, що 3.9B виграє всюди. За таблицею 2 вона обходить FP16 LLaMA 3B на шести zero-shot тестах із семи й програє на OpenbookQA (24,2 проти 24,6); середнє — 51,2 проти 49,7. Твердження «за всіма тестами» джерело не підтримує. Найбільша модель у статті — 3,9 мільярда параметрів; поведінка схеми на десятках мільярдів тут не виміряна.