“NVFP4 ile Verimli ve Doğru Düşük Hassasiyetli Çıkarım”

Yapay zeka (AI) optimizasyonlarının verimli bir şekilde gerçekleştirilmesi, bu teknolojiden en iyi şekilde faydalanmak için kritik öneme sahiptir. Geliştiriciler, AI modellerini çıkarım (inference) için optimize ederken, genellikle model sıkıştırma tekniklerini – özellikle kuantizasyon, damıtma ve budama – düşünürler. Bu üç teknik arasında, şüphesiz ki en yaygın olanı kuantizasyondur. Bunun sebebi, genel olarak bu yöntemin belirli görevlere yönelik doğruluk performansı sunması ve desteklediği çeşitli çerçeveler ile tekniklerin çokluğudur.

Ancak, model kuantizasyonunun en önemli zorluğu, yüksek hassasiyetli veri türlerinden (örneğin FP32) en son FP4 formatına geçişte modelin zeka seviyesinde veya görev bazında doğruluk kaybı yaşama potansiyelidir. NVIDIA Blackwell, FP64, FP32/TF32, FP16/BF16, INT8/FP8, FP6 ve FP4 veri formatlarını destekleyerek maksimum esneklik sağlar. Şekil 1, NVIDIA Ampere, Hopper ve Blackwell GPU’ları arasında en küçük desteklenen kayan nokta veri tipinin ve buna karşılık gelen yoğun/dağınık performansın karşılaştırmasını sunmakta ve GPU nesilleri arasında performans ve veri türü desteğinin evrimini sergilemektedir.

Bar chart titled "Evolution of Performance Across GPU Generations" that compares the smallest floating-point data type supported performance (dense/sparse measured in petaflops) across three different NVIDIA GPU generations: A100 (0.3/0.6 petaflops), H100 (1.9/3.9 petaflops), B200 (9/18 petaflops), B300 (13/18 petaflops), GB200 (10/20 petaflops), and GB300 (15/20 petaflops).
Şekil 1. NVIDIA GPU mimarileri arasındaki düşük hassasiyetli en yüksek performans

Beşinci nesil NVIDIA Blackwell Tensor Core’ları, çeşitli ultra düşük hassasiyet formatları için yeni bir yol açarak araştırma ve gerçek dünya senaryolarını desteklemektedir. Tablo 1, NVIDIA Blackwell tarafından desteklenen üç ana 4-bit kayan nokta formatının – FP4, MXFP4 ve NVFP4 – yapı, bellek kullanımı ve doğruluk açısından önemli farklılıklarını karşılaştırmaktadır. NVFP4’ün, daha önceki formatların basitliğini korurken, model doğruluğunu da sağladığını göstermektedir.

Özellik FP4 (E2M1) MXFP4 NVFP4
Format
Yapı
4 bit (1 işaret, 2 üstel, 1 mantissa) ve yazılım ölçekleme faktörü 4 bit (1 işaret, 2 üstel, 1 mantissa) ve 32 değer bloğu başına 1 paylaşılan 2 tabanlı ölçek 4 bit (1 işaret, 2 üstel, 1 mantissa) ve 16 değer bloğu başına 1 paylaşılmış FP8 ölçeği
Hızlandırılmış Donanım Ölçekleme Hayır Evet Evet
Bellek ~FP16’nın %25’i
Doğruluk FP8’e göre belirgin bir doğruluk kaybı riski FP8’e göre belirgin bir doğruluk kaybı riski Daha büyük modeller için belirgin bir doğruluk kaybı riski daha düşük
Tablo 1. Blackwell destekli 4-bit kayan nokta formatlarının karşılaştırması

Bu yazıda NVFP4 tanıtılmakta ve geliştiricilerin Blackwell üzerinde daha verimli bir şekilde ölçeklenmesine yardımcı olacak şekilde özel olarak tasarlandığı açıklanmaktadır. Nvfp4, ultra düşük hassasiyette en iyi doğruluğu sağlamak için yapılandırılmış bir veri tipidir.

NVFP4 Nedir?

NVFP4, NVIDIA Blackwell GPU mimarisi ile tanıtılan yenilikçi bir 4-bit kayan nokta formatıdır. NVFP4, düşük bitli “mikro” kayan nokta formatları anlayışını geliştirir ve bir formatın daha geniş bir yelpazesini sağlamak için geliştiricilere daha fazla esneklik sunar.

NVFP4’ün yapısı, çoğu 4-bit kayan nokta formatı ile benzerlik gösterir (E2M1) ve 1 işaret bit, 2 üstel bit ve 1 mantissa bit içerir. Formatın değer aralığı yaklaşık -6 ile 6 arasındadır. Örneğin, bu aralıkta 0.0, 0.5, 1.0, 1.5, 2.0, 3.0, 4.0, 6.0 gibi değerler bulunmaktadır (negatif aralık için de aynı değerlere karşılık gelir).

Ultra düşük hassasiyet formatlarının en büyük zorluklarından biri, tensor değerlerinin geniş bir dinamik aralığı boyunca sayısal doğruluğu korumaktır. NVFP4, bu sorunu çözmek için iki mimari yenilikle donatılmıştır:

  • Yüksek hassasiyetli ölçek kodlama
  • İki aşamalı mikro-blok ölçeklendirme stratejisi

Bu strateji, her 16 değer mikro-blok için ince taneli bir E4M3 ölçek faktörünü uygular ve bu faktör, her tensor için uygulanan ikinci düzey bir FP32 skalarını kullanır. Bu iki düzeydeki ölçeklendirme, daha doğru değer temsilini sağlar ve kuantizasyon hatalarını önemli ölçüde azaltır (Şekil 2).

Şekil 2. NVFP4’ün blok ve tensor başına iki aşamalı ölçeklendirme yapısı

Yüksek Hassasiyetli Ölçekleme: Daha Fazla Sinyal, Daha Az Hata

NVFP4’ün paylaşılan mikro-blok ölçekle değer elde etmek için, bloklar E4M3 FP8 hassasiyetında kodlanır. NVFP4, kesirli hassasiyetle güç-hizalama (non-power-of-two scaling factors) sağlayan E4M3 FP8 format varyantını kullanır. Bu ek esneklik, tensorun gerçek dağılımının daha doğru bir şekilde kodlanmasına olanak tanır. Şekil 3, tam hassasiyetli bir giriş matrisini ve E8M0 ile E4M3 ölçeklendirme kullanan sonuçlanan kuantize matrisleri göstermektedir.

Şekil 3. Taban-hizalama ile kesirli ölçekleme arasındaki kuantizasyon hassasiyeti karşılaştırması

E4M3 ile daha hassas bir ölçek faktörünün olmasının dezavantajı, ölçek değerlerinin aralığının azalmasıdır. Bu, bir ikinci düzey ölçek faktörü kullanılarak dengelenir. Bu ikinci düzey ölçek faktörü, tensor başına FP32 olarak uygulanır (Şekil 2’de gösterildiği gibi), böylece mikro blokların E4M3 ölçek faktörlerini etkili bir şekilde kodlayabilmeleri için orijinal tensor dağılımı ayarlanır.

Şekil 4. E8M0 ile E4M3 arasındaki ölçekleme faktörlerinin kuantizasyon hatasını karşılaştırma

Şekil 4, Şekil 3’teki matris dönüşümünün bir sayı hattı temsilidir. Bu örnek, orijinal tam hassasiyet değerlerinin (sarı daireler) kuantize veri tiplerindeki karşılık gelen konumlarını dinamik aralıkları boyunca gösterir. Değerlendirme kriteri, orijinal değerlerden kuantize veri türlerine yapılan eşlemelerin ortalama kare hatası (MSE)dır. MSE, daha düşük çıktısı daha iyidir; E4M3 için ortalama 0.08’de kalır.

E4M3’ün “ortalama olarak daha iyi” olmasının nedeni, o bloktaki 16 değer için hataların karelerinin (veya mutlak hataların) toplandığında, toplam hatanın genellikle E8M0 ile kuantize edilmiş bloklardan daha küçük olmasıdır. Başka bir deyişle:

  • E8M0 = Ölçek faktörünü en yakın 2ⁿ’ye sabitlemekte, bu da blok maksimum (amax) için büyük bir kuantizasyon hatası oluşturabilir ve bloklar için genel kuantizasyon hatalarının genellikle daha büyük olmasına neden olabilir.
  • E4M3 = Blok hatalarını topluca olabildiğince küçük hale getiren bir ölçek faktörü bulmakta; genellikle blok maksimum (amax) için doğruluğu artırmakla birlikte, bazı değerler biraz daha az doğru olabilmektedir, fakat blok bütünlüğü daha yüksek kalitede olur.

Peki, neden E8M0 kullanmalıyız? Cevabı basitlik olduğudur. E8M0 ölçek faktörlerinin hesaplama karmaşıklığı düşüktür (yani, ekstra bir tensor başına yazılım ölçek faktörüne ihtiyaç duymazlar) ve daha az hassas olan aktivasyonlar ve ağırlıklar için yeterli olabilir. E4M3, her küçük değer grubuna ölçek faktörünü ayarlamakta, böylece daha geniş bir giriş aralığına daha ince uyum sağlamakta ve bu da daha düşük toplam yuvarlama hatası ve model zekasının korunmasına yol açmaktadır.

NVIDIA Blackwell beşinci nesil Tensor Core mimarisi, NVFP4’ü uygulamakta ve dinamik ölçekleme ve 4-bit matris işlemleri de dahil olmak üzere mikro ölçeklenmiş FP4 verileri otomatik olarak işlemektedir.

Mikro-Blok Ölçekleme ile Verimli Model Sıkıştırma

NVFP4’ün bir diğer önemli bileşeni, mikro-blokların ortak ölçek faktörünü paylaştığı blok kayan nokta temsilidir. 32 öğeden 16 değer kadar grup boyutunu azaltmak, NVFP4’ün daha ince taneli ölçeklendirme sağlamasına olanak tanır.

AI modellerindeki büyük tensörler genellikle büyük ve küçük sayıları karıştırmakta, tek bir “şemsiye” ölçekleme, önemli kuantizasyon hatalarına yol açarak model performansını düşürebilmektedir. NVFP4’teki sıkı gruplama, verilerin yerel dinamik aralığını eşleştirmek için iki katı fırsat sağlar ve bu da hataları önemli ölçüde azaltmaktadır.

NVFP4’ün kuantizasyon doğruluğunu nasıl artırdığı konusunda daha iyi bir anlayış kazanmak için onu bir önceki sürümü olan MXFP4 ile doğrudan karşılaştırmak faydalıdır. Her iki format da gruplandırılmış değer bloklarına ve ortak ölçek faktörlerine dayanmakta ancak NVFP4’ün ana yeniliği, daha küçük blok boyutu ve sağlam ölçeklendirmedir. Blok boyutunun yarıya indirilmesi – 32 değerden 16’ya – NVFP4’ün verinin dinamik aralığına daha çok yerelleşmesini sağlar. Bu, model ağırlıkları veya aktivasyonlarındaki küçük ama önemli farkları korumayı kolaylaştırır. Şekil 5’te bu konuda daha fazla bilgi verilmektedir.

Şekil 5. NVFP4, MXFP4’e göre daha ince taneli kuantizasyon sağlar.

Peki, bu nasıl çalışır? Her 16 değerlik blok içinde, her 4-bit kodlanmış değer

(−6 ile +6 arasında) şöyle ölçeklenir:

Bu denklemde,

, dinamik olarak hesaplanan daha yüksek hassasiyetli FP8 (E4M3) ölçeğidir ve böylece genel blok hatasının en aza indirilmesi sağlanır. NVFP4, her 16 öğeden oluşan grup için ölçek faktörünü yeniden hesaplayarak, 4-bit hassasiyetteki kuantizasyon hatasını minimize etmekte ve aynı zamanda daha yüksek hassasiyetli formatlara kıyasla bellek ve hesaplama karmaşıklığını da önemli ölçüde azaltmaktadır. NVFP4, yalnızca düşük hassasiyetli bir format olmamakta, ayrıca model zekasını koruma konusunda büyük adımlar atmaktadır.

NVFP4 ile FP8: Model Performansı ve Bellek Verimliliği

Kuantizasyonun faydaları iki faktörden kaynaklanmaktadır: azalmış bellek yükü ve basitleştirilmiş hesaplama işlemleri. Bu iki faktör, bellek bant genişliği üzerindeki baskıyı azaltır ve çıktı token verimliliğini artırabilir. Ayrıca, tarafında basitleştirilmiş dikkat katmanı hesaplamaları sayesinde genel son-hazırlık gecikmesi performansını iyileştirebilmektedir. Bu metrikler ve genel çıkarım performansı hakkında daha fazla bilgi için, LLM Çıkarım Ölçümlendirme: Temel Kavramlar makalesine bakabilirsiniz.

Model Performansı

Çıkarım performans optimizasyonları, model zekasının korunmasını sağlamak için çaba göstermelidir ve NVFP4 bu dengeyi kurmak için tasarlanmıştır. NVFP4’nin vaadi; 4-bite kadar kuantize edilerek büyük bir çıkarım performansı elde etme fırsatı sunarken, model doğruluğuna yalnızca minimal bir etki yapmaktır. Şekil 6, DeepSeek-R1-0528 modelinin yedi farklı değerlendirme boyunca doğruluğunu karşılaştırmakta ve FP8 ile NVFP4 arasındaki minimal doğruluk farkını vurgulamaktadır.

Şekil 6. NVFP4, FP8’den FP4’e geçişte doğruluğun minimal kaybını sağlamaktadır.

Analiz, DeepSeek-R1-0528 modelinin temel dil modelleme görevleri için FP8 formatından NVFP4’e geçildiğinde %1 veya daha az doğruluk kaybı olduğunu göstermektedir. AIME 2024 örneğinde ise NVFP4, %2 oranında daha iyi doğruluk sağlamaktadır.

Bellek Verimliliği

FP8, Hopper ve Blackwell tarafından desteklenmektedir ve daha önce desteklenen 16-bit kayan nokta veri türlerine (FP16/BF16) göre bellekte ve gecikme/verimlilikte önemli avantajlar sunmaktadır. Artık NVFP4, Blackwell üzerinde AI iş yükleri için doğru ve kompakt bir veri tipi sunmaktadır. NVFP4, bir 4-bit değer ile 16 değer başına bir FP8 ölçek faktörü (toplamda 4.5 bit) ve tensor başına bir FP32 ikinci düzey ölçek faktörü ile saklanır. Bu, model bellek ayak izini yaklaşık olarak FP16’ya göre %3.5 oranında, FP8’e göre ise %1.8 oranında azaltmaktadır.

Bu analiz, NVIDIA GB300 NVL72 sıfır ölçekleme sistemine genişletildiğinde, her biri bir NVIDIA Grace CPU ve iki NVIDIA Blackwell Ultra GPU içeren 36 Grace Blackwell Ultra Çip’in toplam bellek bütçesi 40 TB’ye çıkmaktadır. Bu HBM ve Grace bellek bütçesi, NVFP4’ün bellek boyutu ve doğruluk avantajları ile birleştiğinde, özellikle test zamanı ölçekleme zorluklarını aşmada büyük faydalar sağlamaktadır.

FP4 Enerji Verimliliği

Düşük hassasiyet, yalnızca çıkarım sürecini hızlandırmakla kalmaz, aynı zamanda bellek ayak izlerini reduce eder ve watt başına performansı artırır. Dört bitlik her işlem, daha yüksek hassasiyetli veri türlerine göre, veri hareketi ve aritmetiği için daha az enerji gerektirmektedir. Sıvı soğutma gibi yenilikler ve Blackwell Tensor Core mimarisinde FP4 desteği, Blackwell ve Blackwell Ultra’nın enerji verimliliği kazanımlarını, sırasıyla %25 ve %50 oranında artırmasını sağlamaktadır.

Şekil 7. NVFP4, Blackwell Ultra ile Hopper’a kıyasla token başına %50 enerji verimliliği sağlar.

NVFP4 ile Başlayın

Çıkarım ekosistemi, AI’nın artan taleplerini karşılamak için NVFP4 hassasiyetini hızla benimsemektedir. Modelinizi NVFP4’e kuantize etmek istiyorsanız, NVIDIA TensorRT Model Optimizer ve LLM Compressor, bunu gerçekleştirmenize olanak tanır. Artık PTQ, QAT ve diğer gelişmiş kuantizasyon tekniklerini NVFP4’e kuantize etmek için uygulamak oldukça kolaydır.

Kuantize edildikten sonra, NVFP4 modeli kolayca Unified Hugging Face Checkpoint’a aktarılabilir ve NVIDIA TensorRT-LLM, SGLang ve vLLM üzerinde dağıtılabilir. Bu üç çerçeve, NVFP4 desteğini hızla genişletmektedir. TensorRT Model Optimizer ayrıca, LLM olmayan modellerin kuantize edilmesini ve ONNX formatına aktarılmasını da desteklemektedir. Sıfırdan başlamak zorunda değilsiniz; Hugging Face, bazı popüler DeepSeek-R1-0528, Llama 3 ve Flux.1-dev dahil NVFP4 için ön kuantize edilmiş kontrol noktaları sunmaktadır.

İster sıfırdan optimize ediyor olun, ister ön kuantize edilmiş modelleri benimseyin, NVFP4, gerçek dünya dağıtımlarında momentum kazanıyor; daha fazla öğretici ve kod örneği yakında gelecek. Bizi izlemeye devam edin.

Kaynak

Nvdia Blog

Exit mobile version