Aktivasyon fonksiyonları neden gereklidir? ReLU, sigmoid, tanh ve GELU'yu karşılaştırın.

Cevap

Aktivasyon fonksiyonları ağa doğrusal olmayan (non-linear) bir yapı kazandırır. Aktivasyon olmadan, kaç katman olursa olsun art arda lineer dönüşümler tek bir lineer dönüşüme eşittir (W2(W1x) = (W2W1)x). Ağ karmaşık örüntüleri öğrenemez.

FonksiyonAralıkAvantajDezavantajTipik kullanım
Sigmoid(0, 1)Olasılık olarak yorumlanırDoyar, vanishing gradient, merkezlenmemişBinary çıktı katmanı, gate'ler
Tanh(-1, 1)Sıfır merkezliYine doyarRNN/LSTM içi
ReLU[0, ∞)Hızlı, doymaz (pozitif tarafta)Dying ReLU: negatifte gradyan 0CNN'ler, genel gizli katmanlar
Leaky ReLU(-∞, ∞)Negatifte küçük eğim, ölmezEk hiperparametreReLU alternatifi
GELUyaklaşık (-0.17, ∞)Pürüzsüz, olasılıksal kapıBiraz daha pahalıBERT, GPT ailesi
SwiGLU–Gated yapı, daha iyi kaliteEkstra parametreLlama, modern LLM'ler
Softmax(0,1), toplamı 1Çok sınıflı olasılık dağılımı–Çok sınıflı çıktı katmanı

Pratik seçim

  • Gizli katmanlar için varsayılan: ReLU (CNN) veya GELU/SwiGLU (transformer).
  • Çıktı katmanı probleme göre seçilir: regresyon için aktivasyonsuz (lineer), binary için sigmoid, çok sınıflı için softmax.
import torch.nn as nn
mlp = nn.Sequential(nn.Linear(128, 256), nn.GELU(), nn.Linear(256, 10))

Not: PyTorch'ta nn.CrossEntropyLoss softmax'ı kendi içinde uygular. Modelin sonuna ayrıca softmax eklemek yaygın bir hatadır.

  1. NumPy ile sayısal olarak kararlı (numerically stable) softmax ve cross-entropy loss yazın. Logit'lere göre gradyanı nedir?ZorDerin ÖğrenmeYapay Zeka
  2. PyTorch ile bir sınıflandırma modeli için eksiksiz bir training loop yazın. Hangi adımlar sık unutulur?OrtaDerin ÖğrenmeYapay Zeka
  3. Transfer learning nedir? Önceden eğitilmiş bir modeli küçük bir veri setine nasıl fine-tune edersiniz?OrtaDerin ÖğrenmeYapay Zeka
  4. Embedding nedir? One-hot encoding'e göre avantajı nedir ve nerelerde kullanılır?KolayDerin ÖğrenmeYapay Zeka
  5. Transformer mimarisini anlatın. Encoder-only, decoder-only ve encoder-decoder modeller arasındaki fark nedir?ZorDerin ÖğrenmeYapay Zeka
  6. Self-attention nasıl çalışır? Scaled dot-product attention'ı NumPy ile yazın ve neden sqrt(d_k) ile bölündüğünü açıklayın.ZorDerin ÖğrenmeYapay Zeka

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle