tag BF16
Mixed Precision Training Nedir? FP16/BF16 ile Hızlı AI Eğitimi (Karışık Kesinlikli Eğitim)
Bu sayfada BF16 (Mixed Precision Training Nedir? FP16/BF16 ile Hızlı AI Eğitimi (Karışık Kesinlikli Eğitim)) etiketi ile işaretlenmiş 1 yapay zeka kavramını bulabilirsiniz.
Karışık Kesinlikli Eğitim (Mixed-Precision Training), derin öğrenme modellerinin eğitim sürecini hızlandırmak ve bellek kullanımını optimize etmek amacıyla farklı kayan nokta kesinliklerini bir arada kullanan bir tekniktir. Yöntem, ileri ve geri yayılım hesaplamaları ile matris çarpımları için düşük kesinlikli sayı formatları (FP16 veya BF16) kullanırken, model ağırlıklarının ana kopyasını ve kayıp biriktirmesini tam kesinlikte (FP32) tutar. Bu hibrit yaklaşım, sayısal kararlılığı ve model doğruluğunu korurken bellek tüketimini yaklaşık %50 azaltır ve eğitim hızını 2-3 kat artırır. Teknik, NVIDIA'nın Volta ve Turing GPU mimarilerinde Tensor Core'ların tanıtılmasıyla pratik hale gelmiştir. PyTorch (torch.cuda.amp) ve TensorFlow gibi popüler çerçeveler, Otomatik Karışık Kesinlik (AMP) araçlarıyla geliştiricilerin bu tekniği minimal kod değişikliğiyle uygulamasını kolaylaştırır. İki düşük kesinlikli format arasında önemli bir ayrım bulunur: FP16, 10-bit mantis ile yüksek hassasiyet sunar ancak dar bir dinamik aralığa sahipken; BF16 (Brain Float 16), FP32 ile aynı 8-bit üstel aralığı kullanarak taşma ve alt-taşma sorunlarını büyük ölçüde giderir. Bu nedenle büyük dil modeli eğitiminde BF16, FP16'ya kıyasla daha stabil bir seçenek olarak öne çıkmaktadır. Gradient underflow riskine karşı dinamik kayıp ölçeklendirmesi (loss scaling) uygulanır; kayıp değeri geri yayılım öncesinde büyütülür, gradyanlar hesaplandıktan sonra ölçek geri alınır. Karışık kesinlikli eğitim, 2017 yılında Micikevicius ve ekibi tarafından Baidu Research ile NVIDIA işbirliğiyle geliştirilmiş ve ICLR 2018'de yayımlanmıştır. GPT, LLaMA, Stable Diffusion ve Vision Transformer (ViT) gibi modern modellerin eğitiminde endüstri standardı haline gelen bu teknik, sınırlı GPU bütçesiyle daha büyük modeller eğitmeyi ya da aynı donanımda daha büyük toplu iş boyutları (batch size) kullanmayı mümkün kılmaktadır. Gradient birikim (gradient accumulation) stratejisiyle birleştirildiğinde efektif batch boyutu daha da artırılabilir.