Aktivasyon fonksiyonu: sinir ağına doğrusal olmayan esneklik katan bileşen
Aktivasyon fonksiyonu, sinir ağındaki bir nöronun çıktısına doğrusal olmayan bir dönüşüm uygular. ReLU, sigmoid ve softmax'ın ne işe yaradığını öğrenin.
Aktivasyon fonksiyonu nedir?
Aktivasyon fonksiyonu, bir yapay sinir ağında nöronun girdilerinin ağırlıklı toplamını alıp çıktıya dönüştüren matematiksel fonksiyondur. Bu dönüşüm doğrusal olmaz; sinir ağının kaç katmanı olursa olsun karmaşık örüntüleri öğrenebilmesini sağlayan şey budur.
Aktivasyon olmasaydı, ardışık katmanlar matematiksel olarak tek bir doğrusal işleme indirgenir ve ağ derinleştikçe hiçbir yeni yetenek kazanmazdı.
Nasıl çalışır?
Bir nöron önce girdileri ağırlıklarıyla çarpıp toplar ve bir sapma terimi ekler. Sonuç aktivasyon fonksiyonundan geçer ve sonraki katmana iletilen çıktı elde edilir. Fonksiyon, nöronun ne kadar "ateşleneceğine" karar veren bir kapı gibi düşünülebilir. Örneğin bir görüntü sınıflandırıcıda ilk katmanlar kenar gibi basit örüntülere, sonraki katmanlar şekil ve nesne parçalarına duyarlı hale gelir; bu hiyerarşi, her katmandaki doğrusal olmayan dönüşüm sayesinde oluşur.
Eğitim sırasında geri yayılım, fonksiyonun türevini kullanarak ağırlıkların nasıl değişeceğini hesaplar. Bu yüzden fonksiyonun türevinin iyi davranması, eğitimin kararlılığı için önemlidir.
Yaygın aktivasyon fonksiyonları
ReLU, negatif girdileri tamamen susturur, pozitif girdileri olduğu gibi geçirir. Hesaplaması basittir ve derin ağlarda en yaygın tercihtir. Sigmoid, her girdiyi alt ve üst sınır arasında bir değere sıkıştırır; olasılık benzeri çıktı gereken yerlerde, özellikle evet-hayır türü sınıflandırmanın çıkış katmanında kullanılır.
Tanh sigmoide benzer ama çıktısı negatif ve pozitif değerler arasında dengelidir. Softmax ise çok sınıflı problemlerde çıkış katmanında ham skorları toplamı bir olan olasılıklara dönüştürür. Leaky ReLU gibi türevler, negatif bölgede tamamen susmayı önleyerek ölü nöron sorununu azaltmayı amaçlar.
Hangisi ne zaman seçilir?
Gizli katmanlarda genellikle ReLU ya da türevleriyle başlanır, çünkü hızlı ve etkilidir. Çıkış katmanı ise görevin doğasına göre belirlenir: evet-hayır türü sınıflandırmada sigmoid, çok sınıflı sınıflandırmada softmax, sürekli bir değer tahmininde çoğu zaman doğrusal çıkış.
Sigmoid ve tanh derin ağların gizli katmanlarında gradyanların çok küçülmesine (kaybolan gradyan) yol açabilir; bu nedenle gizli katmanlarda daha az tercih edilir.
Sık yapılan hatalar
Gizli katmana sigmoid koyup derin bir ağın öğrenmediğini görmek tipik bir hatadır. Bir başkası regresyon problemi için çıkış katmanına sigmoid ya da softmax koyup tahminleri yapay biçimde sınırlamaktır.
Öğrenme oranı yüksek tutulduğunda ReLU ile çok sayıda nöronun ölmesi de görülebilir. Çıkış katmanıyla uyumsuz bir kayıp fonksiyonu seçmek de benzer sorun yaratır; örneğin softmax çıkışı çok sınıflı çapraz entropi kaybıyla eşleştirilir. Bu tür sorunlar eğitim eğrisinde öğrenmenin durması şeklinde kendini gösterir ve aktivasyon seçimi ile öğrenme oranı birlikte gözden geçirilir.
Mindset programlarında aktivasyon fonksiyonları
Derin Öğrenme Temelleri eğitimi sinir ağlarının temellerini, derin öğrenme mimarilerini ve model eğitimi ile hiperparametre yönetimini işler; aktivasyon seçiminin eğitim davranışını nasıl etkilediğini görmek isteyen veri bilimciler ve mühendisler için uygundur. Derin Öğrenme Programı da aynı alanı bütüncül bir yoldan ele alır.
İlgili Mindset programı
Derin Öğrenme (Deep Learning) Temelleri
Sık sorulan sorular
Aktivasyon fonksiyonu olmadan sinir ağı çalışır mı?
Çalışır, ama yalnızca doğrusal ilişkileri öğrenebilir. Katman sayısı artırılsa bile ağ tek bir doğrusal modelden farksız kalır. Görüntü, metin ya da karmaşık örüntü içeren problemler için doğrusal olmayan aktivasyon şarttır.
ReLU neden bu kadar popüler?
Hesaplaması çok basittir, pozitif bölgede gradyanı korur ve kaybolan gradyan sorununu sigmoide göre belirgin biçimde azaltır. Bu sayede derin ağlar daha hızlı ve kararlı eğitilir. Eksiği, negatif girdide nöronun tamamen susması olasılığıdır.
Softmax ile sigmoid arasındaki fark nedir?
Sigmoid tek bir çıktıyı olasılık benzeri bir değere çevirir ve evet-hayır türü problemlerde kullanılır. Softmax ise birden fazla sınıfın skorunu birbiriyle ilişkilendirerek toplamı bir olan olasılık dağılımına dönüştürür; çok sınıflı sınıflandırmada tercih edilir.
Ölü nöron sorunu nedir?
ReLU kullanılan bir nöronun girdileri sürekli negatif kaldığında çıktısı ve gradyanı sıfırlanır; nöron bir daha öğrenmez. Düşük öğrenme oranı, uygun ağırlık başlatma ve Leaky ReLU gibi türevler bu sorunu azaltmak için kullanılır.