Liczby zmiennoprzecinkowe są precyzyjne, ale ciężkie. Kwantowanie zmniejsza precyzję numeryczną wag i aktywacji modelu, zazwyczaj z 32-bitowych liczb zmiennoprzecinkowych do 8- lub 4-bitowych liczb całkowitych. Model staje się mniejszy, działa szybciej i zużywa mniej energii.
Kompromisem jest dokładność. Agresywna kwantyzacja pogarsza jakość wyników, szczególnie w przypadku zadań wymagających precyzyjnych rozróżnień liczbowych. Kwantyzacja po treningu jest tania, ale stratna. Trening uwzględniający kwantyzację symuluje niską precyzję podczas treningu, przywracając znaczną część utraconej dokładności.
Typowe poziomy kwantyzacji
- 16-bitowa liczba zmiennoprzecinkowa, niewielka kompresja
- 8-bitowa liczba całkowita, powszechnie stosowana do wnioskowania
- 4-bitowa liczba całkowita, agresywna, ale możliwa do zastosowania z ostrożnością
- Binarne i trójkowe, eksperymentalne
Wsparcie sprzętowe jest zróżnicowane. Niektóre akceleratory obsługują natywnie 8-bity i zapewniają znaczne przyspieszenie. Inne korzystają z wolniejszych ścieżek. Wybór schematu kwantyzacji zależy zarówno od docelowego wdrożenia, jak i od modelu.
Comments
No comments yet. Be the first to share a thought.
Leave a comment