Aktivasyonlar
11 aktivasyonun matematiği, türevleri ve varsayılanları.
01Eleman bazlı dönüşümler#
Şekil korunur. PReLU tek ortak alpha öğrenir, kanal başına ayrı eğim yoktur. Diğer aktivasyonların parametresi yoktur. GELU varsayılanı kesin erf formu; true tanh yaklaşımını seçer.
| API | İleri | Yerel türev |
|---|---|---|
| ReLU() | max(0,x) | x>0 ? 1 : 0 |
| LeakyReLU(0.01f) | x>0 ? x : αx | x>0 ? 1 : α |
| PReLU(0.25f) | x>0 ? x : αx | dα += Σ(x≤0) dy·x |
| ELU(1.f) | x>0 ? x : α(exp(x)−1) | x>0 ? 1 : y+α |
| GELU(false) | x·Φ(x) | Φ(x)+x·φ(x) |
| GELU(true) | 0.5x[1+tanh(c(x+0.044715x³))] | 0.5(1+tanh u)+0.5x(1−tanh²u)c(1+0.134145x²); u=c(x+0.044715x³) |
| Sigmoid() | σ=1/(1+exp(−x)) | σ(1−σ) |
| Tanh() | tanh(x) | 1−y² |
| SiLU() | x·σ(x) | σ+xσ(1−σ) |
| Mish() | x·tanh(softplus(x)) | tanh(s)+xσ(x)(1−tanh²(s)) |
02Softmax#
Son eksende satır maksimumu çıkarılıp üstel hesaplanır. Her satır yaklaşık 1 toplar. Backward tam Jacobian yerine iç çarpım kullanır. Tümü −∞ satırı geçerli dağılım değildir.
03LogSoftmax#
Son eksende kararlı x−logsumexp(x) uygulanır. Çıktı log-olasılıktır. Çok küçük olasılıkların önce hesaplanıp log alınması yerine doğrudan bu dönüşüm kullanılır.
04Sıfır noktası ve testler#
ReLU sıfırda türev 0 seçer. LeakyReLU/PReLU negatif dalı kullanır. Sonlu fark testlerinde kink noktalarını atlayın. SIMD ve float32 farkları için bit eşitliği yerine tolerans kullanın.