Tanh veya Hiperbolik Tanjant, yapay zeka (AI) ve makine öğreniminde (ML), özellikle sinir ağlarında (NN'ler) kullanılan yaygın olarak tanınan bir aktivasyon fonksiyonudur. Sigmoid fonksiyonuna benzer şekilde, Tanh S şeklindedir (sigmoidal) ancak girdi değerlerini -1 ile 1 arasında bir aralıkla eşler. Bu özellik onu sıfır merkezli yapar, yani çıktıları sıfır etrafında dağıtılır. Diğer aktivasyon fonksiyonları gibi Tanh da ağa doğrusal olmayan bir özellik katarak derin öğrenme (DL) modellerinin verilerdeki doğrusal modellerin yakalayamadığı karmaşık örüntüleri ve ilişkileri öğrenmesini sağlar. Matematiksel hiperbolik tanjant fonksiyonundan türetilmiştir.
Tanh Nasıl Çalışır?
Tanh fonksiyonu herhangi bir gerçek değerli girdiyi alır ve (-1, 1) aralığına sıkıştırır. Sıfıra yakın girdiler sıfıra yakın çıktılar üretir. Büyük pozitif girdiler 1'e yaklaşan çıktılarla sonuçlanırken, büyük negatif girdiler -1'e yaklaşan çıktılar verir. Sıfır merkezli yapısı, model eğitimi sırasında gradyan inişi gibi optimizasyon algoritmasının daha hızlı yakınsamasına yardımcı olabileceği için genellikle Sigmoid fonksiyonuna (0 ile 1 arasında çıktı verir) göre bir avantaj olarak kabul edilir. Bunun nedeni , geriye yayılma sırasında geri aktarılan gradyanların dengeli pozitif ve negatif değerlere sahip olma olasılığının daha yüksek olması ve potansiyel olarak model ağırlıklarının daha istikrarlı bir şekilde güncellenmesine yol açmasıdır.
Avantajlar ve Dezavantajlar
Avantajlar:
- Sıfır Merkezli Çıktı: -1 ile 1 arasında değişen çıktılar, Sigmoid gibi sıfır merkezli olmayan fonksiyonlara kıyasla eğitim dinamiklerini iyileştirebilen sonraki katmanlara aktarılan verilerin merkezlenmesine yardımcı olur.
- Daha Güçlü Gradyanlar: Sigmoid ile karşılaştırıldığında, Tanh sıfır etrafında daha dik gradyanlara sahiptir, bu da eğitim sırasında kaybolan gradyan sorununu bir dereceye kadar azaltabilir ve potansiyel olarak daha hızlı öğrenmeye izin verebilir.
Dezavantajlar:
- Kaybolan Gradyanlar: Sigmoid gibi Tanh da kaybolan gradyan sorunundan muzdariptir. Çok büyük pozitif veya negatif girdiler için fonksiyon doyuma ulaşır (çıkışı 1 veya -1'e çok yakın hale gelir) ve gradyan aşırı derecede küçülür, bu da daha derin katmanlardaki ağırlık güncellemelerini engeller.
- Hesaplama Maliyeti: Tanh hiperbolik hesaplamalar içerir, bu da onu ReLU (Rectified Linear Unit) gibi daha basit fonksiyonlardan hesaplama açısından biraz daha pahalı hale getirir.
Tanh ve Diğer Aktivasyon Fonksiyonları
- Tanh vs. Sigmoid: Her ikisi de sigmoidaldir, ancak Tanh'ın çıkış aralığı (-1, 1) iken Sigmoid'inki (0, 1)'dir. Tanh'ın sıfır merkezli özelliği genellikle gizli katmanlar için tercih edilirken, Sigmoid genellikle bir olasılığın gerekli olduğu ikili sınıflandırma görevleri için çıktı katmanlarında kullanılır.
- Tanh vs. ReLU: ReLU çıktıları 0 ila sonsuz arasında değişir ve hesaplama açısından çok verimlidir. ReLU pozitif girdiler için doygunluktan kaçınır ancak "ölen ReLU" probleminden (nöronların inaktif hale gelmesi) muzdarip olabilir. Tanh her iki uçta da doyuma ulaşırken, sıfır merkezli yapısı avantajlı olabilir. Bununla birlikte, ReLU ve varyantları(Leaky ReLU, GELU, SiLU), daha iyi gradyan akışı ve verimlilik nedeniyle, özellikle bilgisayarla görme (CV) alanında birçok modern derin öğrenme mimarisinde büyük ölçüde Tanh'ın yerini almıştır. Derin öğrenmede çeşitli aktivasyon fonksiyonlarını keşfedebilirsiniz.
Yapay Zeka ve Makine Öğrenimi Uygulamaları
Tanh tarihsel olarak, özellikle de bu alanda popüler bir seçim olmuştur:
- Tekrarlayan Sinir Ağları (RNN'ler): Tanh, özellikle Doğal Dil İşleme (NLP) görevleri için RNN'lerin ve Uzun Kısa Süreli Bellek (LSTM) ağları gibi varyantların gizli durumlarında yaygın olarak kullanılmıştır. Sınırlandırılmış aralığı, tekrarlayan bağlantılar içindeki bilgi akışını düzenlemeye yardımcı olur. Daha fazla ayrıntı için LSTM'leri Anlamak bölümüne bakınız.
- Gizli Katmanlar: ReLU varyantları artık daha yaygın olmasına rağmen, ileri beslemeli ağların gizli katmanlarında kullanılabilir. Sıfır merkezli özelliğin belirli bir problem veya mimari için özellikle faydalı olduğu durumlarda seçilebilir.
- Duygu Analizi: Eski NLP modellerinde Tanh, metinden çıkarılan özelliklerin (örneğin, bir RNN tarafından işlenen kelime katıştırmaları) negatiften (-1) pozitife (+1) kadar duygu polaritesini temsil eden sürekli bir aralığa eşlenmesine yardımcı olmuştur. Stanford NLP Group gibi kuruluşların kaynakları bu tür teknikler hakkında arka plan sağlar.
- Kontrol Sistemleri ve Robotik: Takviyeli Öğrenmede (RL), Tanh bazen belirli bir aralıkta sınırlandırılmış sürekli eylemler çıkaran politikalar için son aktivasyon fonksiyonu olarak kullanılır (örneğin, -1 ile +1 arasında motor torkunu kontrol etmek). OpenAI Gym gibi çerçeveler genellikle RL araştırmalarında kullanılır.
gibi modern mimariler olsa da Ultralytics YOLO genellikle nesne algılama gibi görevler için SiLU gibi işlevleri kullandığından, Tanh'ı anlamak değerli olmaya devam etmektedir. Aktivasyon fonksiyonlarının evrimi için bağlam sağlar ve hala belirli ağ tasarımlarında veya eski sistemlerde görünebilir. Gibi çerçeveler PyTorch ve TensorFlow Tanh'ın uygulamalarını sağlar. Ultralytics HUB gibi platformları kullanarak farklı aktivasyon fonksiyonlarını eğitebilir ve deneyebilirsiniz.