Mixture of Depths (Derinlik Karışımı)

Transformer bloklarında hangi tokenlerin işlenip hangilerinin artık bağlantıyla atlanacağını öğrenilmiş bir yönlendirici ile seçen, hesaplama bütçesini token bazında dağıtan adaptif hesaplama yöntemi.

Mixture of Depths (MoD, Türkçesiyle Derinlik Karışımı), transformer tabanlı dil modellerinde her tokenin her katmandan geçmesi kuralını gevşeten, hesaplama bütçesini token ve katman bazında dinamik olarak dağıtan bir adaptif hesaplama yöntemidir. Google DeepMind araştırmacıları (Raposo ve arkadaşları) tarafından 2024 yılında yayımlanan "Mixture-of-Depths: Dynamically allocating compute in transformer-based language models" makalesiyle tanıtıldı. Çıkış noktası basit bir gözlemdir: bir dizideki tokenlerin hepsi aynı derecede zor değildir; bazı tokenler için tam dikkat ve ileri besleme hesaplaması gereksizdir. Standart transformer bu farkı görmez ve her tokene aynı miktarda hesaplama harcar. MoD'de her transformer bloğunun başında hafif bir yönlendirici (router) bulunur. Yönlendirici her token için skaler bir ağırlık üretir; en yüksek ağırlığa sahip ilk k token bloğun tam işleminden (öz-dikkat ve MLP) geçer, kalan tokenler artık bağlantı (residual connection) üzerinden değişmeden bir sonraki bloğa aktarılır. Buradaki k değeri sabit bir kapasite olarak önceden belirlenir; makalede en iyi sonuçlar her iki blokta bir yönlendirme yapıp kapasiteyi dizinin %12,5'i ile sınırlamakla elde edilmiştir. Kapasitenin sabit olması önemli bir mühendislik avantajı getirir: tensör boyutları önceden bilindiği için hesaplama grafiği statik kalır ve donanım verimliliği erken çıkış (early exit) gibi dinamik yöntemlere göre çok daha iyidir. Yöntem, Mixture of Experts (MoE) ile sık karıştırılır ama farklı bir ekseni kontrol eder. MoE bir tokenin hangi uzman ağ tarafından işleneceğini seçerken, MoD tokenin bu blokta işlenip işlenmeyeceğini seçer. İki yaklaşım birbirine dik olduğundan aynı modelde birleştirilebilir; makale bu birleşimi MoDE (Mixture of Depths and Experts) adıyla sunar. Deneysel sonuçlara göre MoD modelleri, eşit eğitim FLOPs bütçesinde temel modellerden daha düşük kayıp değerine ulaşır; eşit kalitede ise ileri geçiş başına FLOPs belirgin biçimde azalır ve örnekleme sırasında adım süresi %50'ye kadar kısalır. MoD'nin en dikkat çekici zorluğu otoregresif üretimdir. Top-k seçimi dizideki tüm tokenleri görmeyi gerektirir, oysa üretim sırasında gelecekteki tokenler henüz yoktur. Makale bunun için iki çözüm önerir: yönlendirici çıktısına eklenen yardımcı bir ikili sınıflandırma kaybı ya da tokenin ilk k'ye girip girmeyeceğini tahmin eden küçük bir yardımcı MLP. Her iki yaklaşım da kalite kaybını ihmal edilebilir düzeyde tutar. MoD günümüzde araştırma aşamasında olup çok modlu büyük modeller için γ-MoD ve p-MoD gibi türevleri yayımlanmıştır.

layers Mixture of Depths Nedir?

Mixture of Depths, transformer modellerinde sabit olan "her token her katmandan geçer" kuralını esneten bir mimari düzenlemedir. Standart bir modelde 50 katman varsa, dizideki en basit noktalama işareti bile 50 kez öz-dikkat ve ileri besleme hesaplamasından geçer. MoD bu israfı hedef alır: her blokta yalnızca yönlendiricinin seçtiği token alt kümesi tam işlem görür, diğerleri bloğu atlayarak ilerler. Toplam hesaplama bütçesi önceden belirlenen kapasiteyle sabit tutulduğundan, yöntem ya aynı bütçeyle daha derin ve güçlü bir model eğitmeye ya da aynı kalitede modeli daha az hesaplamayla çalıştırmaya imkân tanır. Yaklaşım 2024 yılında Google DeepMind ekibinin makalesiyle tanıtıldı ve MoE'den sonra en çok tartışılan koşullu hesaplama fikirlerinden biri oldu.

alt_route Çalışma Prensibi: Yönlendirici, Top-k Seçimi ve Artık Bağlantı

Her MoD bloğunun girişinde, token temsilini tek bir skaler ağırlığa indiren doğrusal bir yönlendirici bulunur. Dizideki tüm tokenlerin ağırlıkları karşılaştırılır ve en yüksek k tanesi seçilir; k değeri kapasite oranı ile dizi uzunluğunun çarpımıdır. Seçilen tokenler öz-dikkat ve MLP katmanlarından geçer, çıktı yönlendirici ağırlığıyla çarpılıp artık akıma eklenir. Bu çarpım kritik bir ayrıntıdır: yönlendirici ağırlığı hesaplama grafiğinin içinde kaldığı için gradyan geri yayılımla öğrenilir, ayrı bir pekiştirmeli öğrenme sinyaline gerek kalmaz. Seçilmeyen tokenler ise hiçbir dönüşüme uğramadan artık bağlantı üzerinden sonraki bloğa taşınır. Makalede yönlendirme her blokta değil, dönüşümlü olarak her iki blokta bir uygulanmış; aradaki bloklar tüm tokenleri işlemiştir. Bu dönüşümlü düzen, her blokta yönlendirmeye göre daha kararlı eğitim vermiştir.

compare_arrows Standart Transformer, MoE ve MoD Karşılaştırması

  • check_circle Standart Transformer: Her token her blokta tam işlem görür; token başına FLOPs sabittir. Uygulaması basit, ancak kolay tokenlere de zor tokenlerle aynı bütçeyi harcar.
  • check_circle Mixture of Experts (MoE): Her blokta tüm tokenler işlenir; ileri besleme katmanı yerine birden fazla uzman ağdan biri ya da birkaçı seçilir. Toplam parametre sayısı büyür, token başına aktif parametre sabit kalır.
  • check_circle Mixture of Depths (MoD): Token bazında blok atlama; token başına FLOPs değişir, parametre sayısı değişmez. Kapasite sabit olduğu için tensör boyutları önceden bilinir.
  • check_circle MoDE (MoD + MoE): Önce bloğun işlenip işlenmeyeceği, sonra hangi uzmanın devreye gireceği seçilir. Makalede aşamalı (staged) ve bütünleşik (integrated) olmak üzere iki varyant sunulmuştur.

schedule Otoregresif Üretimde Yönlendirme Sorunu

Top-k seçimi nedensel olmayan bir işlemdir: bir tokenin ilk k'ye girip girmediğini bilmek için dizideki diğer tokenlerin ağırlıklarını da görmek gerekir. Eğitimde tüm dizi elde olduğundan bu sorun yaratmaz, ancak otoregresif üretimde tokenler tek tek üretilir ve gelecekteki tokenler henüz yoktur. Makale iki çözüm önerir. İlkinde yönlendirici çıktısına yardımcı bir ikili çapraz entropi kaybı eklenir; hedef, tokenin eğitimde ilk k'ye girip girmediğidir. Böylece yönlendirici, üretimde tek başına bakılabilecek bir eşik öğrenir. İkincisinde küçük bir yardımcı MLP, ana modelin gradyanını etkilemeden aynı tahmini yapar. Her iki yöntem de üretim kalitesini ölçülebilir biçimde düşürmeden token bazlı kararı nedensel hâle getirir.

balance Avantajlar ve Sınırlılıklar

  • check_circle Hesaplama tasarrufu: Yönlendirilen bloklarda tokenlerin büyük kısmı atlandığı için ileri geçiş başına FLOPs düşer; uzun dizilerde kazanç daha da belirginleşir.
  • check_circle Statik hesaplama grafiği: k sabit olduğundan tensör boyutları önceden bilinir; erken çıkış gibi dinamik boyutlu yöntemlerin GPU verimliliği sorunları yaşanmaz.
  • check_circle Ayarlanabilir denge: Kapasite oranı değiştirilerek hız ile kalite arasındaki denge tasarım aşamasında kontrol edilir; daha düşük kapasite daha hızlı ama daha riskli.
  • check_circle Üretimde nedensellik sorunu: Top-k kararı tüm diziyi görmeyi gerektirir; otoregresif üretim için yardımcı kayıp ya da yardımcı tahminci eklemek zorunludur.
  • check_circle Olgunlaşmamış ekosistem: Yaygın çıkarsama sunucuları ve eğitim çerçevelerinde hazır destek sınırlıdır; gerçek duvar saati kazancı uygulamanın kalitesine bağlıdır.

science Güncel Durum ve Türev Çalışmalar

MoD hâlâ araştırma aşamasındadır ve büyük ölçekli üretim modellerinde standart bir bileşen hâline gelmemiştir. Bununla birlikte fikir hızla yayılmıştır: çok modlu büyük dil modellerinde görüntü tokenlerinin büyük kısmının gereksiz olduğu gözleminden yola çıkan γ-MoD ve p-MoD gibi çalışmalar, MoD yönlendirmesini görüntü-dil modellerine uyarlayarak eğitim ve çıkarsama maliyetini düşürmüştür. Önceden eğitilmiş bir modele yalnızca yönlendiricileri ince ayarlayarak MoD eklemeyi amaçlayan yaklaşımlar da önerilmiştir. Topluluk tarafından yazılmış PyTorch uygulamaları GitHub üzerinde bulunabilir. Speculative decoding, Flash Attention ve MoE gibi tekniklerle birleştirilmesi, aynı donanımda daha yüksek verim elde etmek için önemli bir araştırma yönü olarak görülmektedir.

help Sık Sorulan Sorular

  • check_circle Mixture of Depths hangi problemi çözer? Standart transformerın her tokene eşit hesaplama harcamasından kaynaklanan israfı azaltır. Aynı FLOPs bütçesiyle daha güçlü bir model ya da aynı kalitede daha hızlı çıkarsama elde edilir.
  • check_circle MoD ile MoE arasındaki temel fark nedir? MoE bir tokenin hangi uzman ağ tarafından işleneceğini seçer, MoD ise tokenin bu blokta işlenip işlenmeyeceğini seçer. İki yaklaşım birbirine dik olduğundan MoDE adıyla birleştirilebilir.
  • check_circle Kapasite oranı nedir? Bir blokta tam işlenecek token sayısının dizi uzunluğuna oranıdır. Makalede en iyi sonuç %12,5 kapasiteyle alınmıştır; yani yönlendirilen bloklarda tokenlerin %87,5'i bloğu atlar.
  • check_circle Yönlendirici nasıl eğitilir? Yönlendirici ağırlığı blok çıktısıyla çarpıldığı için hesaplama grafiğinin parçasıdır ve modelin geri kalanıyla birlikte gradyan inişiyle öğrenilir. Ayrı bir pekiştirmeli öğrenme sinyali gerekmez.
  • check_circle MoD üretim ortamlarında kullanılıyor mu? Büyük ticari modellerde standart bileşen olarak doğrulanmış bir kullanım yoktur. Araştırma prototipleri, çok modlu türevleri ve topluluk uygulamaları mevcuttur; yaygın benimseme için çerçeve desteğinin olgunlaşması beklenmektedir.