Gradient Descent (Gradyan İnişi)

Gradient descent, kayıp fonksiyonunu azaltmak için parametreleri gradyanın tersi yönünde adım adım güncelleyen optimizasyon algoritmasıdır.

Gradient descent (gradyan inişi), bir modelin kayıp fonksiyonunu minimize etmek için parametreleri gradyanın negatif yönünde iteratif olarak güncelleyen optimizasyon algoritmasıdır. Güncelleme kuralı tek satırdır: **θ ← θ − α · ∇L(θ)**. Burada θ model parametrelerini, ∇L(θ) kaybın parametrelere göre türevini (gradyanı), α ise adım büyüklüğünü belirleyen öğrenme hızını (learning rate) temsil eder. Doğrusal regresyondan 1 trilyon parametreli dil modellerine kadar neredeyse tüm modern makine öğrenmesi eğitimi bu kuralın bir varyantıyla yapılır. Sezgisel karşılığı, sisli bir dağda gözü bağlı vadiye inen bir yürüyüşçüdür: yürüyüşçü yalnızca ayağının altındaki eğimi hisseder ve her adımda en dik iniş yönüne ilerler. Eğim gradyana, adım boyu öğrenme hızına, vadinin dibi ise minimum hataya karşılık gelir. Adım çok büyükse vadi atlanır ve kayıp ıraksar; çok küçükse yakınsama saatler yerine haftalar alır. Pratikte üç ana biçimi vardır: tüm veri kümesini tek seferde işleyen **batch gradient descent**, her adımda tek örnek kullanan **stochastic gradient descent (SGD)** ve derin öğrenmenin fiili standardı olan, 16–4096 örneklik gruplarla çalışan **mini-batch gradient descent**. Derin sinir ağlarında gradyanlar geriye yayılım (backpropagation) ile zincir kuralı üzerinden hesaplanır; PyTorch ve JAX gibi kütüphaneler bunu otomatik türev (autograd) ile yapar. Güncelliği tartışmasızdır: GPT-5, Claude, Gemini ve Llama ailesi dahil bütün büyük dil modelleri, gradient descent'in uyarlanabilir türevleri olan AdamW ve 2025'ten itibaren yaygınlaşan Muon gibi optimizatörlerle eğitildi. Konveks problemlerde yakınsama matematiksel olarak kanıtlanmıştır; derin ağların non-konveks kayıp yüzeylerinde ise eyer noktaları (saddle point) ve düz plato bölgeleri asıl pratik zorluğu oluşturur. SGD'nin stokastik gürültüsü, paradoksal biçimde bu noktalardan kaçışı kolaylaştırır ve genelleme performansına katkı yapar. Kısacası gradient descent, yapay zekanın "öğrenme" dediğimiz sürecinin matematiksel motorudur.

Nasıl Çalışır: Güncelleme Kuralı Adım Adım

Algoritma dört adımlı bir döngüdür: (1) **İleri geçiş** — model mevcut parametrelerle tahmin üretir. (2) **Kayıp hesabı** — tahmin ile gerçek değer arasındaki fark bir kayıp fonksiyonuyla (MSE, cross-entropy) sayıya dönüştürülür. (3) **Geriye yayılım** — zincir kuralıyla her parametrenin kayba etkisi, yani gradyan ∇L(θ) hesaplanır. (4) **Güncelleme** — her parametre θ ← θ − α·∇L(θ) kuralıyla gradyanın tersi yönde kaydırılır. Bu döngü, kayıp yeterince düşene veya doğrulama metriği plato yapana kadar binlerce iterasyon tekrarlanır. Somut örnek: y = wx doğrusal modelinde w = 3, gerçek eğim 5 ve α = 0.1 ise, MSE gradyanı w'yi her adımda 5'e doğru çeker; 20–30 iterasyonda hata binde birin altına iner. GPT ölçeğindeki modellerde aynı kural, tek adımda yüz milyarlarca parametreye eşzamanlı uygulanır.

Temel Kavramlar

kayip-fonksiyonu Kayıp Fonksiyonu (Loss)

Modelin tahmininin gerçek değerden ne kadar uzak olduğunu ölçen fonksiyon. Dağ metaforunda bulunduğunuz yükseklik; iniş hedefi bu değeri küçültmektir.

ogrenme-hizi Öğrenme Hızı (α)

Her güncellemedeki adım büyüklüğü. Çok büyük α kaybı ıraksatır, çok küçük α eğitimi gereksiz uzatır; tipik LLM ön eğitim değeri 1e-4 ile 6e-4 arasıdır.

gradyan Gradyan (∇L)

Kaybın her parametreye göre kısmi türevlerinden oluşan vektör. En dik artış yönünü gösterir; algoritma bu yönün tam tersine ilerler.

minimum Global ve Lokal Minimum

Global minimum kayıp yüzeyinin en dip noktası, lokal minimum ise çevresinden düşük ama en dip olmayan çukurdur. Yüksek boyutlu ağlarda asıl engel eyer noktalarıdır.

yakinsama Yakınsama (Convergence)

Güncellemelerin kaybı artık anlamlı düşürmediği durum. Konveks fonksiyonlarda garanti; derin ağlarda erken durdurma ve doğrulama kaybıyla izlenir.

Varyantlar ve Modern Optimizatörler

  • check_circle Batch Gradient Descent: Tüm veri kümesiyle tek gradyan hesaplar; en kararlı ama en pahalı yöntem. Milyonlarca örnekli kümelerde bellek ve süre açısından pratik değildir.
  • check_circle Stochastic Gradient Descent (SGD): Her adımda tek örnek kullanır; gürültülü ama hızlıdır ve eyer noktalarından kaçışa yardım eder. Momentum eklentisiyle görüntü modellerinde hâlâ güçlü bir seçenektir.
  • check_circle Mini-Batch Gradient Descent: 16–4096 örneklik gruplarla GPU paralelliğini kullanır; derin öğrenmenin fiili standardıdır. Batch büyüdükçe öğrenme hızı da lineer ölçekleme kuralıyla artırılır.
  • check_circle Adam ve AdamW: Gradyanın birinci ve ikinci momentlerini izleyerek parametre başına uyarlanabilir adım kullanır. AdamW, weight decay'i doğru ayrıştırır ve LLM ince ayarının standardıdır.
  • check_circle Muon (2025+): Matris parametreleri için Newton-Schulz ortogonalizasyonu kullanan yeni nesil optimizatör. Moonshot AI'ın 1T parametreli Kimi K2 modeli Muon türeviyle (MuonClip) eğitildi ve AdamW'ye göre belirgin token verimliliği raporlandı.
  • check_circle RMSProp ve AdaGrad: Uyarlanabilir öğrenme hızının öncüleri. AdaGrad seyrek özelliklerde işe yarar ancak adımları zamanla aşırı küçültür; RMSProp bunu üstel ortalamayla düzeltir.

Öğrenme Hızı Seçimi ve Zamanlama (LR Schedule)

Öğrenme hızı, gradient descent'in en kritik hiperparametresidir. Yanlış seçimin iki belirtisi nettir: kayıp NaN'a fırlıyorsa α çok büyük, yüzlerce adımda kıpırdamıyorsa çok küçüktür. Pratik başlangıç değerleri: sıfırdan CNN eğitimi için 1e-3 (Adam), LLM ön eğitimi için 1e-4–6e-4, LoRA ince ayarı için 1e-4–2e-4, tam ince ayar için 1e-5–5e-5. Sabit hız yerine zamanlama (schedule) kullanmak standarttır: eğitimin ilk %1–5'inde hız sıfırdan hedefe doğrusal yükseltilir (**warmup**), ardından **cosine decay** ile kademeli düşürülür. 2024–2025'te yaygınlaşan **WSD (warmup-stable-decay)** planı, uzun sabit fazın ardından kısa ve sert bir düşüş uygular; toplam adım sayısını önceden bilmeyi gerektirmediği için sürekli ön eğitimde tercih edilir. Learning rate finder (hızı üstel artırıp kayıp eğrisini izleme) hâlâ hızlı bir ilk tahmin aracıdır.

LLM Eğitiminde Gradient Descent Pratiği

Modern büyük model eğitimi, sade gradyan inişinin üzerine dört mühendislik katmanı ekler. **Gradyan kırpma:** gradyan normu tipik olarak 1.0 ile sınırlanır (`clip_grad_norm_`), patlayan gradyan kaynaklı kayıp sıçramalarını (loss spike) engeller. **Karma hassasiyet:** ileri ve geri geçiş BF16, ağırlık güncellemesi FP32 ile yapılır; bellek kabaca yarıya iner, H100/B200 GPU'larda iş çıkarma oranı belirgin artar. **Gradyan biriktirme:** GPU belleğine sığmayan etkin batch boyutları, birkaç mini-batch gradyanının toplanıp tek güncelleme yapılmasıyla elde edilir; 1024'lük hedef batch, 8 GPU'da 32'lik mikro-batch ve 4 biriktirme adımıyla kurulur. **Dağıtık optimizasyon:** ZeRO/FSDP, optimizatör durumunu (AdamW'de parametre başına 2 ek değer, yani 3 kat bellek) binlerce GPU'ya böler. Llama 3'ün 405B modelinin 15T token üzerinde 16.000 H100 ile eğitimi, bu katmanların tamamını aynı anda kullanan güncel bir örnektir.

Sık Karşılaşılan Sorunlar

kaybolan-gradyan Kaybolan Gradyan

Derin katmanlarda gradyanlar çarpıla çarpıla sıfıra yaklaşır ve ilk katmanlar öğrenemez. ReLU, residual bağlantılar ve normalizasyon katmanları bu sorunu büyük ölçüde çözdü.

patlayan-gradyan Patlayan Gradyan

Gradyanlar astronomik değerlere büyür, kayıp NaN olur. Gradyan kırpma ve dikkatli ağırlık başlatma standart önlemlerdir.

eyer-noktasi Eyer Noktaları

Bir yönde minimum, diğerinde maksimum olan düz bölgeler; yüksek boyutta lokal minimumdan çok daha yaygındır. SGD gürültüsü ve momentum kaçışı hızlandırır.

loss-spike Kayıp Sıçramaları

LLM ön eğitiminde kaybın aniden fırlaması. Gradyan kırpma, kontrol noktasına geri dönüp sorunlu batch'i atlama ve MuonClip gibi teknikler kullanılır.

Sık Sorulan Sorular

  • check_circle Gradient descent nedir, kısaca nasıl açıklanır?: Model parametrelerini, kayıp fonksiyonunun gradyanının tersi yönünde küçük adımlarla güncelleyerek hatayı minimize eden optimizasyon algoritmasıdır. Formülü θ ← θ − α·∇L(θ) şeklindedir ve tüm derin öğrenme eğitiminin temelini oluşturur.
  • check_circle SGD ile Adam arasındaki fark nedir?: SGD tüm parametrelere aynı sabit adımı uygular; Adam ise gradyan momentlerini izleyerek her parametreye ayrı, uyarlanabilir adım verir. Adam çoğu görevde daha hızlı yakınsar; SGD + momentum bazı görüntü modellerinde daha iyi genelleme verebilir.
  • check_circle Öğrenme hızı nasıl seçilir?: Görev tipine göre bilinen aralıktan başlanır: Adam ile sıfırdan eğitimde 1e-3, LLM ince ayarında 1e-5–2e-4. Learning rate finder ile kayıp eğrisi taranır; ardından warmup + cosine decay zamanlaması uygulanır.
  • check_circle Gradient descent neden lokal minimuma takılmaz?: Yüksek boyutlu kayıp yüzeylerinde kötü lokal minimumlar nadirdir; asıl engel eyer noktalarıdır. Mini-batch gürültüsü ve momentum, algoritmayı bu düz bölgelerden iterek pratikte iyi çözümlere ulaştırır.
  • check_circle Backpropagation ile gradient descent aynı şey mi?: Hayır. Backpropagation, gradyanları zincir kuralıyla verimli hesaplayan yöntemdir; gradient descent ise bu gradyanları kullanarak parametreleri güncelleyen algoritmadır. Biri hesaplama, diğeri optimizasyon adımıdır.
  • check_circle ChatGPT gibi modeller gradient descent ile mi eğitiliyor?: Evet. GPT-5, Claude ve Llama dahil tüm büyük dil modelleri, gradient descent'in uyarlanabilir türevleri olan AdamW veya Muon ile, mini-batch'ler ve warmup + decay zamanlamasıyla eğitilir.