Perbedaan utama antara FP16 (16-bit floating point) dan Int8 (8-bit integer) presisi untuk model Deepseek terutama berputar di sekitar akurasi, rentang dinamis, dan efisiensi komputasi.
akurasi
FP16 umumnya memberikan akurasi yang lebih tinggi dibandingkan dengan INT8. Ini sangat penting untuk model yang membutuhkan perhitungan yang tepat, karena FP16 dapat mewakili kisaran nilai yang lebih luas dan perbedaan yang lebih baik di antara mereka karena sifatnya yang mengambang. Sebaliknya, presisi yang lebih rendah Int8 dapat menyebabkan kesalahan kuantisasi yang lebih besar, terutama dalam skenario di mana parameter model atau aktivasi memiliki nilai yang melebihi kisaran terbatas bilangan bulat 8 -bit yang ditandatangani, yang membentang dari -128 hingga 127 [1] [4].Kisaran Dinamis
Kisaran dinamis FP16 secara signifikan lebih luas daripada int8. FP16 dapat mengekspresikan nilai -nilai di seluruh spektrum yang jauh lebih besar karena mengalokasikan bit untuk eksponen dan mantissa, memungkinkannya menangani angka yang sangat kecil dan sangat besar secara efektif. Sebagai perbandingan, rentang tetap Int8 membatasi penerapannya, terutama dalam model kompleks di mana nilai output dapat sangat bervariasi [2] [3]. Sebagai contoh, sementara INT8 memiliki kisaran dinamis $$ 2^8 $$, FP16 dapat mewakili nilai dalam kisaran yang secara efektif memungkinkan representasi data yang jauh lebih bernuansa [2].Efisiensi Komputasi
Int8 dioptimalkan untuk efisiensi komputasi, terutama dalam tugas inferensi pada perangkat tepi. Penggunaan aritmatika integer biasanya membutuhkan daya yang lebih sedikit dan dapat menyebabkan perhitungan yang lebih cepat dibandingkan dengan operasi titik mengambang. Efisiensi ini sangat penting untuk menggunakan model dalam aplikasi waktu-nyata di mana latensi dan konsumsi energi adalah faktor penting [1] [4]. Selain itu, kuantisasi INT8 memungkinkan pengurangan yang signifikan dalam penggunaan memori, yang dapat meningkatkan kinerja pada perangkat dengan sumber daya yang terbatas [3] [5].Singkatnya, sementara FP16 menawarkan akurasi yang unggul dan rentang dinamis yang cocok untuk pelatihan dan inferensi model kompleks, int8 unggul dalam efisiensi dan kecepatan operasional, membuatnya lebih disukai untuk penyebaran di lingkungan yang dibatasi sumber daya. Pilihan antara presisi ini seringkali tergantung pada persyaratan spesifik aplikasi, seperti kebutuhan akan akurasi versus kebutuhan akan kecepatan dan efisiensi.
Kutipan:[1] https://arxiv.org/pdf/2303.17951.pdf
[2] https://www.baseten.co/blog/fp8-eficient-model-inference-with-8-bit-floating-point-numbers/
[3.
[4] https://massedcompute.com/faq-answers/?question=Whatse+The+Differences+Between+int8+ dan+fp16+Precision+in+terms+of+Accuracy+ dan+speed%3F
[5] https://www.baseten.co/blog/introduction-to-quanzing-ml-hodels/
[6] https://www.reddit.com/r/machinelearning/comments/114fgo8/d_is_fp16_used_in_deep_learning_or_fp32/
[7] https://forums.developer.nvidia.com/t/same-inference-speed-for-int8-and-fp16/66971
[8] https://forums.developer.nvidia.com/t/int8-vs-fp16-results/158139