Eğitim neden bu kadar bellek yiyor?
Bir sinir ağını eğitirken veri katmanlardan sırayla geçiyor. Sonra modelin hatası ölçülüyor ve geri yayılım (backpropagation) bu hatayı sondan başa doğru katman katman dağıtıyor. Her ağırlığın ne kadar düzeltileceği böyle bulunuyor.
Sorun şu: Geri dönerken her katmanın ileri geçişte ürettiği ara sonuçlara, yani aktivasyonlara ihtiyaç var. Bu yüzden eğitim boyunca bütün katmanların aktivasyonları bellekte tutuluyor. Model derinleştikçe bellek de büyüyor. Bugünkü transformer’lar büyük ölçüde katman ekleyerek büyüdüğü için bu hızla darboğaza dönüşüyor. Üstüne her ağırlığın gradyanı ve optimizer’ın tuttuğu ek bilgiler de bellekte duruyor.
Eski bir fikir: Blok blok eğitmek
Akla gelen çözüm basit: Ağı parçalara (bloklara) böl, her bloğu ayrı eğit. Böylece bellekte aynı anda tek bir bloğun yükü olur. Bu fikir yıllardır deneniyor, Hinton’ın Forward-Forward algoritması da bunlardan biri. Ama makaleye göre bu yöntemler hep uçtan uca eğitimin gerisinde kaldı. Her bloğa verilen yerel hedefler gelişigüzel seçiliyordu ve çoğu sadece görüntü sınıflandırmada denenmişti.
DiffusionBlocks ne yapıyor?
Sakana AI’dan Makoto Shing ve Takuya Akiba ile Tokyo Üniversitesi’nden Masanori Koyama’nın yöntemi, bloklara matematiksel olarak tutarlı bir görev veriyor. Bu görev difüzyon (diffusion) modellerinden geliyor. Difüzyon modelleri saf gürültüden başlayıp adım adım temizleyerek sonuç üretiyor. Resim üreticilerinin çoğu böyle çalışıyor, metin üreten difüzyon modelleri de var. İşe yarayan özellikleri şu: Her gürültü seviyesindeki temizleme adımı, diğerlerinden bağımsız öğrenilebiliyor.
Yazarların gözlemi, transformer’lardaki residual bağlantıların (her katmanın, girdisine küçük bir düzeltme eklemesi) bir diferansiyel denklemin adım adım çözümüne benzemesi. Difüzyonun temizleme süreci de aynı tür denklemle tarif ediliyor. Ağ birkaç küçük değişiklikle bir gürültü temizleyiciye dönüştürülüyor:
- Katmanlar birkaç bloğa bölünüyor.
- Her bloğa bir gürültü aralığı veriliyor, yani “hedefe ne kadar yakınız?” sorusunun bir dilimi.
- Her bloğa hangi aralıkta çalıştığını söyleyen küçük bir koşullandırma modülü ekleniyor.
Eğitimin her adımında rastgele tek bir blok seçiliyor, diğerleri hiç hesaplanmıyor. Bellek kabaca blok sayısına bölünüyor. Bloklar birbirinden habersiz olduğu için farklı ekran kartlarında hiç iletişim kurmadan paralel de eğitilebiliyor.
Sonuçlar
Makale yöntemi beş mimaride deniyor: görüntü sınıflandırma, görüntü üretimi, maskeli difüzyon dil modeli, sıradaki token’ı tahmin eden klasik (otoregresif) dil modeli ve aynı ağı defalarca çalıştıran döngülü model.
- ImageNet’te görüntü üretiminde 3 blokla benzer kalite, 3 kat daha az eğitim belleği. Üretim sırasında her adımda sadece ilgili blok çalıştığı için çıkarım maliyeti de düşüyor.
- 12 katmanlı Llama-2 tarzı bir dil modelinde 4 blokla 4 kat daha az bellek. Üretilen metnin kalitesi kullanılan ölçütlerde korunuyor, hatta biraz iyileşiyor.
- Görüntü üretiminde 2–3 blok, uçtan uca eğitimden biraz daha iyi sonuç verdi. Blok sayısı arttıkça kalite düşüyor.
Sınırları
- Ölçek küçük. Dil modeli 12 katman ve 768 boyutlu, kabaca GPT-2’nin en küçük boyu. Yüz milyarlarca parametreli modellerde çalıştığı henüz gösterilmedi.
- Dil modeli birebir aynı değil. Klasik model, gelecek token’ları gürültüden temizleyen bir yapıya çevriliyor. Bu yüzden standart perplexity ölçülemiyor, yazarlar başka ölçütler kullanıyor.
- Hesap azalmıyor. Makaleye göre toplam iş aynı kalıyor, kazanç bellekte.
- Hazır modeller henüz yok. Önceden eğitilmiş büyük bir modeli bu yapıya çevirmek, yazarların gelecek çalışma listesinde.
Sonra ne oldu?
Ekim 2026 itibarıyla GitHub’daki resmi kod sadece görüntü sınıflandırma deneyini içeriyor, dil modeli deneylerinin kodu orada yok. Eğitimi ucuzlatmanın başka yollarını sonra da yazdık: Dust geri yayılımı tamamen bırakmayı deniyor, NVFP4 ise sayıları 4 bitte tutarak yükü hafifletiyor.
Düşün
- Bir ağın katmanlarına “sen şu işi yap” diye açık rol vermek, onları kendi hâline bırakmaktan neden daha iyi sonuç verebilir?
- Büyük model eğitmek tek bir ekran kartıyla mümkün olsaydı, yapay zekâ alanında ilk ne değişirdi?
Videoyu izle
Kaynaklar (4, İngilizce)
- arXiv 2506.14202: DiffusionBlocks: Block-wise Neural Network Training via Diffusion Interpretation (yeni sekmede açılır)
- Sakana AI: DiffusionBlocks: Training Neural Networks One Block at a Time (yeni sekmede açılır)
- GitHub: SakanaAI/DiffusionBlocks (yeni sekmede açılır)
- bycloud: The Most Absurd Way To Train LLMs... With 3x Less Memory!? (video) (yeni sekmede açılır)
Kendi cümlelerimizle yazılmış bir özettir, çeviri değildir. Tüm kaynaklar yukarıda.