Activation Function (Aktivasyon Fonksiyonu)

Yapay sinir ağlarında nöron çıktısını şekillendiren ve ağa doğrusal olmayan karmaşık örüntüleri öğrenme yeteneği kazandıran matematiksel dönüşüm fonksiyonu.

Aktivasyon Fonksiyonu, yapay sinir ağlarında (YSA) her nöronun çıktısını belirleyen matematiksel bir dönüşüm fonksiyonudur. Biyolojik nöronların "ateşleme eşiğine" benzer şekilde, yapay bir nöronun aldığı ağırlıklı toplam sinyali alıp, bir sonraki katmana hangi değeri ileteceğini hesaplar. **Neden Gereklidir?** Aktivasyon fonksiyonu olmadan, ne kadar derin olursa olsun her yapay sinir ağı yalnızca doğrusal bir fonksiyon gibi davranır. Yani yüzlerce katmanlı bir ağ bile tek bir doğrusal dönüşüme indirgenebilir ve ağ karmaşık örüntüleri öğrenemez. Aktivasyon fonksiyonları, ağa *doğrusal olmayan* (non-linear) özellik kazandırarak görüntü tanıma, dil anlama ve ses işleme gibi gerçek dünya problemlerinin çözülmesini mümkün kılar. **Yaygın Türler** **ReLU (Rectified Linear Unit):** f(x) = max(0, x) formülüyle çalışır; negatif değerleri sıfırlar, pozitif değerleri olduğu gibi iletir. Hesaplama verimliliği ve "vanishing gradient" sorununu büyük ölçüde çözmesi sayesinde derin öğrenmede standart tercih haline gelmiştir. **Sigmoid:** Çıktıyı 0 ile 1 arasına sıkıştırır; olasılık yorumlaması için uygundur. Ancak derin ağlarda gradyanların küçülüp yok olmasına (vanishing gradient) yol açabilir. İkili sınıflandırma problemlerinin çıkış katmanında sıklıkla kullanılır. **Tanh (Hiperbolik Tanjant):** Sigmoid'e benzer ama çıktı aralığı –1 ile 1 arasındadır; sıfır merkezli yapısı gizli katmanlarda sigmoid'den daha iyi performans sağlar. **Softmax:** Çok sınıflı sınıflandırma görevlerinde çıkış katmanında kullanılır; tüm çıktıların toplamını 1'e eşitleyerek her sınıf için olasılık dağılımı üretir. **Leaky ReLU:** ReLU'nun "ölü nöron" (dying neuron) sorununu gidermek için negatif girdilere küçük bir eğim (genellikle 0.01) uygular; eğitimde nöronların kalıcı olarak susmamasını sağlar. **GELU (Gaussian Error Linear Unit):** GPT ve BERT gibi modern transformer modellerinin tercih ettiği fonksiyondur. Gaussian dağılımını temel alan yumuşak eşik mekanizması sayesinde özellikle büyük dil modellerinde yüksek performans gösterir. **Doğru Fonksiyon Nasıl Seçilir?** Gizli katmanlar için ReLU ailesi (ReLU, Leaky ReLU, ELU) genellikle ilk tercihtir. İkili sınıflandırma çıkışı için sigmoid, çok sınıflı çıkış için softmax idealdir. Regresyon görevlerinde çıkış katmanında genellikle aktivasyon uygulanmaz. GPT, BERT veya LLaMA gibi transformer tabanlı büyük dil modellerinde GELU veya SwiGLU gibi modern fonksiyonlar kullanılır. **Dikkat Edilmesi Gerekenler** Yanlış aktivasyon seçimi ağın öğrenememesine veya eğitimin çökmesine neden olabilir. Özellikle çok derin ağlarda sigmoid ve tanh kullanımı, geri yayılım (backpropagation) sırasında gradyanların sıfırlanmasına yol açarak eğitimi felç edebilir. PyTorch ve TensorFlow/Keras gibi modern derin öğrenme çerçeveleri tüm yaygın aktivasyon fonksiyonlarını hazır bileşen olarak sunar.

show_chart Doğrusallık Neden Kötü?

Eğer nöronlara aktivasyon fonksiyonu koymazsanız, 100 katmanlı devasa bir ağ bile matematiksel olarak sadece tek bir katman gibi davranır. Yalnızca düz bir çizgi çizebilir (Lineer). Gerçek dünyadaki bir kedi yüzünü veya bir romanı düz bir çizgiyle tanımlayamazsınız. Aktivasyon fonksiyonu o düz çizgiyi eğer, büker ve ağın karmaşık kıvrımları (gözler, kulaklar, kelime şakaları) öğrenmesini sağlar.

Popüler Fonksiyonlar

trending_up ReLU (Rectified Linear Unit)

Günümüzde en çok kullanılan fonksiyondur. Kuralı basittir: Gelen sayı 0'dan küçükse sil (sıfır yap), 0'dan büyükse aynen geçir. Ağı inanılmaz hızlandırır.

timeline Sigmoid

Gelen herhangi bir sayıyı 0 ile 1 arasına sıkıştırır. Bir resmin kedi mi köpek mi olduğu gibi %50 ihtimalli kararlarda kullanılır.

pie_chart Softmax

Ağın en son çıktısında kullanılır. Çıkan yüzlerce sayıyı topladığınızda %100 oranını verecek şekilde olasılıklara dağıtır.

Aktivasyon Fonksiyonu Seçimi: Hangi Durumda Hangisi?

  • check_circle ReLU — Gizli Katmanlar için Standart: max(0, x) işlevi: negatif değerleri sıfırlar. Hesaplama son derece basit, gradyan kaybı (vanishing gradient) azaltılmış. Derin ağlarda varsayılan seçim. Zayıf yönü: negatif girdilerde nöron ölmesi (dying ReLU); çözüm: Leaky ReLU veya ELU kullan.
  • check_circle GELU ve SiLU — Transformer Modelleri: GELU (Gaussian Error Linear Unit) ve SiLU (Sigmoid Linear Unit), ReLU'nun yumuşatılmış versiyonlarıdır. BERT, GPT ve LLaMA gibi büyük dil modellerinde ReLU'nun yerini büyük ölçüde aldı. Hem negatif hem pozitif bölgede yumuşak geçiş sağlar.
  • check_circle Sigmoid — İkili Sınıflandırma Çıktısı: Çıkışı (0, 1) arasına sıkıştırır; olasılık yorumu için idealdir. Gizli katmanlarda kullanılmaz (gradyan kaybı), yalnızca ikili sınıflandırma görevinin çıktı katmanında ya da kapı mekanizmalarında (LSTM gate) tercih edilir.
  • check_circle Softmax — Çok Sınıflı Sınıflandırma Çıktısı: Tüm çıktıların toplamını 1'e eşitleyen, olasılık dağılımı üreten aktivasyon fonksiyonu. Çok sınıflı sınıflandırmanın çıktı katmanında standart seçimdir. Genellikle cross-entropy kayıp fonksiyonuyla birlikte kullanılır.

Aktivasyon Fonksiyonu ve Gradyan Akışı

Aktivasyon fonksiyonunun türevi geri yayılım (backpropagation) sırasında gradyanın katmanlar arasında nasıl aktığını belirler. Sigmoid ve tanh'ın türevi girdi büyüdükçe sıfıra yaklaşır; bu, derin ağlarda gradyanın katmanlar boyunca küçülerek kaybolmasına (vanishing gradient) neden olur. ReLU bu sorunu çözdü: türevi pozitif bölgede 1 sabit kaldığı için gradyan akmaya devam eder. Ancak ReLU'nun negatif bölgedeki türevi sıfır olduğundan o nöronlar eğitim boyunca güncellenmez (dying ReLU). Modern büyük dil modellerinde GELU veya SiLU tercih edilmesinin temel nedeni hem gradyan akışını iyileştirmesi hem de sürekli türevli ve negatif bölgede küçük ama sıfır olmayan bir çıktı üretmesidir.

Sık Sorulan Sorular

  • check_circle Aktivasyon fonksiyonu nedir?: Aktivasyon fonksiyonu, yapay sinir ağlarında her nöronun çıktısını belirleyen doğrusal olmayan matematiksel fonksiyondur. Ağa doğrusal olmama (non-linearity) kazandırır; bu olmadan çok katmanlı ağ matematiksel olarak tek katmana eşdeğer olur ve karmaşık örüntüleri öğrenemez.
  • check_circle ReLU neden popüler?: ReLU (Rectified Linear Unit), hesaplaması son derece basit (max(0,x)) ve türevi pozitif bölgede 1 sabit kalır. Bu özellik derin ağlarda gradyan kaybı problemini büyük ölçüde azaltır. Sigmoid ve tanh'ın derin ağlarda yarattığı gradyan kaybı sorununa çözüm olarak önerildi ve derin öğrenmede standart gizli katman aktivasyonu haline geldi.
  • check_circle Hangi aktivasyon fonksiyonu kullanmalıyım?: Gizli katmanlar için başlangıç noktası: ReLU (veya Leaky ReLU dying-ReLU riskine karşı). Transformer/LLM mimarileri: GELU veya SiLU. İkili sınıflandırma çıktı katmanı: Sigmoid. Çok sınıflı sınıflandırma çıktı katmanı: Softmax. Regresyon çıktı katmanı: aktivasyon yok (lineer çıktı).