Softmax Nedir?
Yayın: · Son güncelleme:
Softmax Nedir? Kısaca
Softmax, bir sayı vektörünün her elemanının üstelini alıp bunları toplamlarına bölerek, tüm değerleri 0 ile 1 arasında ve toplamı 1 olan bir olasılık dağılımına dönüştüren, çok sınıflı sınıflandırmada yaygın kullanılan bir fonksiyondur.

Softmax, bir modelin ürettiği ham skorları (logit) olasılıklara çeviren fonksiyondur. Çok sınıflı sınıflandırmada ve dil modellerinin bir sonraki kelimeyi seçmesinde temel rol oynar.
Softmax nedir?
Bir vektördeki her skor için formül şöyledir:
softmax(zᵢ) = e^(zᵢ) / Σ e^(zⱼ)
Yani her değerin üsteli alınır ve tüm üstellerin toplamına bölünür. Sonuçta:
- Her çıktı 0 ile 1 arasındadır.
- Tüm çıktıların toplamı 1'dir.
- En büyük skor en yüksek olasılığı alır; üstel fonksiyon farkları büyüttüğü için önde olan aday belirgin biçimde öne çıkar.
Softmax ne demek, nasıl çalışır?
"Soft" (yumuşak) ve "max" (en büyük) kelimelerinden oluşur. Yalnızca en büyük değeri seçmek yerine, her seçeneğe büyüklüğüyle orantılı bir olasılık verir; yani "yumuşatılmış bir en büyüğü seçme" işlemidir.
Varsayımsal bir örnek: Bir görüntü modeli kedi, köpek ve kuş için 2, 1 ve 0,1 skorlarını üretsin. Softmax uygulandığında olasılıklar yaklaşık 0,66, 0,24 ve 0,10 olur. Model en yüksek olasılıkla "kedi" der.
Nerelerde kullanılır?
- Çok sınıflı sınıflandırma: Sinir ağlarının çıkış katmanında, çapraz entropi kaybıyla birlikte.
- Dil modelleri: Kelime dağarcığındaki her token için bir olasılık hesaplanır. Temperature ayarı, softmax öncesinde skorları bölerek dağılımı daha sivri ya da daha düz hâle getirir.
- Dikkat mekanizması: Transformer'larda hangi kelimeye ne kadar odaklanılacağını belirleyen ağırlıklar softmax ile hesaplanır.
Nelere dikkat etmeli?
- Çok büyük skorlarda üstel değerler taşma yapabilir; pratikte tüm skorlardan en büyüğü çıkarılarak sayısal kararlılık sağlanır.
- Softmax'in verdiği yüksek olasılık, modelin gerçekten haklı olduğu anlamına gelmez; modeller aşırı özgüvenli olabilir.
- Bir örnek birden fazla sınıfa ait olabiliyorsa softmax yerine her sınıf için ayrı sigmoid kullanılır.
Sıkça Sorulan Sorular
Softmax ne demek?
Ham skorları toplamı 1 olan olasılıklara çeviren bir fonksiyondur. Adı, en büyük değeri yumuşak bir biçimde seçmesinden gelir.
Softmax ile sigmoid ne zaman kullanılır?
Bir örnek yalnızca tek bir sınıfa ait olabiliyorsa softmax kullanılır. Birden fazla etiket aynı anda doğru olabiliyorsa her etiket için ayrı sigmoid tercih edilir.