İçeriğe geç
parazade
Yapay Zeka

FP8 Nedir?

Yayın: · Son güncelleme:

FP8 Nedir? Kısaca

FP8, sayıları yalnızca 8 bit ile saklayan kayan noktalı sayı biçimlerinin genel adıdır. Yapay zekâ modellerinin eğitiminde ve çıkarımında 16 bitlik biçimlere göre yarı bellekle ve daha yüksek hızla hesaplama yapmak için kullanılır.

FP8 nedir?
İçindekiler
  1. FP8 nedir?
  2. Nasıl kullanılır?
  3. Nelere dikkat etmeli?

FP8, büyük dil modellerinin büyümesiyle önem kazanan düşük hassasiyetli bir biçimdir. Yeni nesil yapay zekâ hızlandırıcılarının bir kısmı FP8 işlemlerini donanım düzeyinde destekler.

FP8 nedir?

8 bit çok az olduğu için tek bir "doğru" dağılım yoktur. Yaygın olarak iki biçim kullanılır:

Biçim İşaret Üs Kesir Öne çıkan özellik
E4M3 1 4 3 Daha hassas, aralığı dar
E5M2 1 5 2 Aralığı geniş, daha az hassas

Genel eğilim, ileri geçişte ağırlık ve aktivasyonlar için E4M3'ün, geniş aralık isteyen gradyanlar için E5M2'nin kullanılmasıdır.

Nasıl kullanılır?

8 bit ile temsil edilebilen değerler çok sınırlı olduğundan, sayılar FP8'e çevrilmeden önce bir ölçek katsayısıyla uygun aralığa taşınır. Hesaplama sonrası bu ölçek geri alınır. Eğitimde genellikle yalnızca matris çarpımları FP8'de yapılır; hassas işlemler BF16 ya da FP32'de kalır.

Çıkarımda FP8, modelin bellekte kapladığı alanı 16 bitlik sürüme göre yaklaşık yarıya indirir. Bu, daha büyük modelleri aynı donanıma sığdırmayı ya da daha fazla isteği aynı anda işlemeyi sağlar.

Nelere dikkat etmeli?

FP8 her donanımda desteklenmez; desteklemeyen kartlarda hız kazancı olmaz. Ölçekleme yanlış yapılırsa doğruluk düşebilir, eğitim kararsızlaşabilir. Bu nedenle FP8'e geçişten sonra model kalitesini mutlaka ölçmek gerekir. Daha agresif bellek tasarrufu için 4 bitlik niceleme yöntemleri de kullanılır.

Sıkça Sorulan Sorular

FP8 ile INT8 arasındaki fark nedir?

İkisi de 8 bit kullanır. INT8 tam sayı biçimidir ve ölçekleme ile ondalık değerleri temsil eder; FP8 ise üs içeren kayan noktalı bir biçimdir ve daha geniş bir değer aralığını doğal olarak kapsar.

FP8 ile model eğitilebilir mi?

Evet, destekleyen donanımlarda büyük modellerin eğitiminde kullanılıyor. Ancak genellikle karma hassasiyet ile uygulanır; bazı işlemler daha yüksek hassasiyette tutulur.

İlgili terimler

BF16(BFloat16)BF16 (BFloat16), sayıları 16 bit ile saklayan ve 32 bitlik FP32 ile aynı üs aralığını koruyan kayan noktalı sayı biçimidir. Hassasiyetten bir miktar ödün vererek yapay zekâ eğitiminde bellek ve hız kazancı sağlar.FP16FP16 (yarım hassasiyet), sayıları 16 bit ile saklayan kayan noktalı sayı biçimidir. Yapay zekâda model ağırlıklarını ve hesaplamaları 32 bitlik biçime göre yarı bellekle ve genellikle daha hızlı işlemek için kullanılır.Niceleme(Quantization)Niceleme (quantization), bir yapay zekâ modelinin ağırlıklarını 16 bit yerine 8 ya da 4 bit gibi daha düşük hassasiyetle saklayarak model dosyasını küçültme yöntemidir. Böylece model daha az bellekle çalışır; karşılığında kalitede genellikle küçük bir kayıp olur.GPU(Graphics Processing Unit)GPU (Graphics Processing Unit, grafik işlem birimi), çok sayıda basit hesabı aynı anda yapabilen işlemcidir. Başlangıçta oyun ve grafik için geliştirilmiş, paralel hesaplama gücü sayesinde yapay zekâ eğitimi ve çıkarımının temel donanımı olmuştur.Özellik(Feature)Özellik (feature), makine öğrenmesinde her bir örneği tanımlayan ve modelin tahmin yaparken girdi olarak kullandığı ölçülebilir nitelik ya da değişkendir. Örneğin ev fiyatı tahmininde metrekare, oda sayısı ve konum birer özelliktir.Ağırlık(Weight)Ağırlık (weight), yapay sinir ağlarında ve diğer makine öğrenmesi modellerinde her girdinin ya da bağlantının çıktıya ne kadar katkı yapacağını belirleyen ve eğitim sırasında veriden öğrenilen sayısal parametredir.