Şimdiye kadar öğrendiklerimin bir listesini burada yapmaya başlayacağım. @ Marcodena'nın dediği gibi, artılar ve eksiler daha zordur çünkü çoğunlukla bu şeyleri denemekten öğrenilen sezgisel deneyimlerdir, ama en azından incinemeyeceklerinin bir listesini yapmayı düşünüyorum.
Öncelikle, notasyonu açıkça tanımlayacağım böylece karışıklık olmaz:
Gösterim
Bu gösterim Neilsen'in kitabından .
Feedforward Sinir Ağı, birbirine bağlı birçok nöron tabakasıdır. Bir girdi alır, daha sonra bu giriş ağ üzerinden "kandırır" ve sinir ağı bir çıkış vektörü döndürür.
Daha teorik çağrı (aka çıkış) aktivasyon j t h nöron i t h tabaka, bir 1 j olan j t h giriş vektörü öğesi.aijjthitha1jjth
Sonra bir sonraki katmanın girişini önceki ilişkiyle aşağıdaki ilişki yoluyla ilişkilendirebiliriz:
aij=σ(∑k(wijk⋅ai−1k)+bij)
nerede
- aktivasyon işlevidir,σ
- gelen ağırlıktır k t h nöron ( I - 1 ) t h katman j t h nöron i t h tabakası,wijkkth(i−1)thjthith
- , i t h katmanındaki j t h nöronununönyargısıdırvebijjthith
- aktivasyon değerini temsil eder j t h nöron i t h tabakası.birbenjjt hbent h
Bazen geç temsil etmek Σ k ( W ı j k ⋅ bir i - 1 k ) + b i j , diğer bir deyişle, bir nöronun aktivasyon değeri aktivasyon fonksiyonunu uygulamadan önce.zbenjΣk( wbenj k⋅ aben - 1k) + bbenj
Kısa özlü gösterim için yazabiliriz
birben= σ( wben× aben - 1+ bben)
Bir girdi olarak ileri beslemeli ağda çıkışını hesaplamak için aşağıdaki formülü kullanmak için , set bir 1 = I , ardından hesaplamak bir 2 , bir 3 , ... , bir m , m katmanlarının sayısıdır.ben∈ Rnbir1= Benbir2, bir3,…,amm
Aktivasyon İşlevleri
(aşağıda, okunabilirlik için e x yerine yazacağız )exp(x)ex
Kimlik
Ayrıca doğrusal bir aktivasyon işlevi olarak da bilinir.
aij=σ(zij)=zij
Adım
birbenj= σ( zbenj) = { 01eğer zbenj< 0eğer zbenj> 0
Parçalı doğrusal
Bazı seç ve x max bizim "aralık" dir. Bu aralıktan daha az olan her şey 0 olur ve bu aralıktan daha büyük olan her şey 1 olur. Başka bir şey arasında doğrusal olarak enterpolasyon yapılır. resmen:xminxmaksimum
birbenj= σ( zbenj) = ⎧⎩⎨⎪⎪⎪⎪0m zbenj+ b1eğer zbenj< xmineğer xmin≤ zbenj≤ xmaksimumeğer zbenj> xmaksimum
Nerede
m = 1xmaksimum−xmin
ve
b = - m xmin= 1 - m xmaksimum
sigmoid
birbenj= σ( zbenj) = 11 + exp( - zbenj)
Tamamlayıcı log-log
birbenj= σ( zbenj) = 1 - exp( -exp( zbenj) )
iki kutuplu
birbenj= σ( zbenj) = { - 1 1eğer zbenj< 0eğer zbenj> 0
Bipolar Sigmoid
birbenj= σ( zbenj) = 1 - exp( - zbenj)1 + exp( - zbenj)
tanh
birbenj= σ( zbenj) = tanh( zbenj)
LeCun'un Tanh'ı
birbenj= σ( zbenj) = 1.7159 tanh( 2)3zbenj)
Ölçekli:
Sert Tanh
birbenj= σ( zbenj) = en fazla( -1,dak(1,zbenj) )
Kesin, mutlak
birbenj= σ( zbenj) = ∣ zbenj|
doğrultucu
Rektifiye Doğrusal Birim (ReLU), Max veya Rampa Fonksiyonu olarak da bilinir .
birbenj= σ( zbenj) = en fazla ( 0 , zbenj)
ReLU’nun Değişiklikleri
Bunlar, MNIST için gizemli sebeplerden dolayı çok iyi bir performansa sahip gibi görünen bazı aktivasyon fonksiyonları.
birbenj= σ( zbenj) = en fazla ( 0 , zbenj) + cos( zbenj)
Ölçekli:
birbenj= σ( zbenj) = en fazla ( 0 , zbenj) + günah( zbenj)
Ölçekli:
Pürüzsüz Doğrultucu
Pürüzsüz Doğrultulmuş Doğrusal Birim, Pürüzsüz Maks veya Yumuşak artı olarak da bilinir
birbenj= σ( zbenj) = Log( 1+exp( zbenj) )
Logit
birbenj= σ( zbenj) = Log( zbenj( 1 - zbenj))
Ölçekli:
istatistik ihtimal birimi
birbenj= σ( zbenj) = 2-√erf- 1( 2 zbenj- 1 )
erf
Alternatif olarak, olarak ifade edilebilir
birbenj= σ( zbenj) = ϕ ( zbenj)
φ
Ölçekli:
Kosinüs
Bkz Rastgele Mutfak Lavabo .
birbenj= σ( zbenj) = cos( zbenj)
Softmax
birbenj= exp( zbenj)Σktecrübe( zbenk)
zbenjtecrübe( zbenj)zbenj0
kütük( abenj)
kütük( abenj) = Log⎛⎝⎜tecrübe( zbenj)Σktecrübe( zbenk)⎞⎠⎟
kütük( abenj) = zbenj- log( ∑ktecrübe( zbenk) )
Burada log-sum-exp hilesini kullanmamız gerekiyor :
Diyelim ki bilgisayar kullanıyoruz:
kütük( e2+ e9+ e11+ e- 7+ e- 2+ e5)
Önce üstellerimizi kolaylık sağlamak için büyüklüklerine göre sıralayacağız:
kütük( e11+ e9+ e5+ e2+ e- 2+ e- 7)
e11e- 11e- 11
kütük( e- 11e- 11( e11+ e9+ e5+ e2+ e- 2+ e- 7) )
kütük( 1e- 11( e0+ e- 2+ e- 6+ e- 9+ e- 13+ e- 18) )
kütük( e11( e0+ e- 2+ e- 6+ e- 9+ e- 13+ e- 18) )
kütük( e11) + log( e0+ e- 2+ e- 6+ e- 9+ e- 13+ e- 18)
11 + log( e0+ e- 2+ e- 6+ e- 9+e- 13+e-18)
kütük( e11)e- 11≤ 0
Resmen diyoruz m = maks ( zben1, zben2, zben3, . . . )
kütük( ∑ktecrübe( zbenk) ) = m + log( ∑ktecrübe( zbenk- m ) )
Softmax fonksiyonumuz daha sonra olur:
birbenj= exp( log( abenj) ) = exp( zbenj- m - günlük( ∑ktecrübe( zbenk- m ) ) )
Aynı zamanda bir sidenote olarak softmax fonksiyonunun türevi:
dσ( zbenj)dzbenj= σ'( zbenj) = σ( zbenj) ( 1 - σ( zbenj) )
maxout
zbirbenj
n
birbenj= maks.k ∈ [ 1 , n ]sbenj k
nerede
sbenj k= aben - 1∙ wbenj k+ bbenj k
∙
WbenbeninciWbenWbenjjben - 1
Eğer alt nöronlarımız olacaksa, her nöron için 2B ağırlık matrisine ihtiyacımız olacak, çünkü her bir alt nöron önceki katmandaki her nöron için bir ağırlık içeren bir vektöre ihtiyaç duyacaktır. Bu, anlamına gelir.WbenWbenjjWbenj kkjben - 1
bbenbbenjjben
bbenbenbbenjbbenj kkjinci
wbenjbbenjwbenj kbirben - 1ben - 1bbenj k
Radyal Temel Fonksiyon Ağları
Radyal Temel Fonksiyon Ağları, kullanmak yerine Feedforward Sinir Ağlarının bir modifikasyonudur.
birbenj= σ( ∑k( wbenj k⋅ aben - 1k) + bbenj)
wbenj kkμbenj kσbenj k
Daha sonra için aktivasyon fonksiyonumuzu adlandırırız.ρσbenj kbirbenjzbenj k
zbenj k= ∥ ( aben - 1- μbenj k∥-----------√= ∑ℓ( aben - 1ℓ- μbenj k ℓ)2-------------√
μbenj k ℓℓinciμbenj kσbenj k
zbenj k= ( aben - 1- μbenj k)TΣbenj k( aben - 1- μbenj k)----------------------√
Σbenj k
Σbenj k= diag ( σbenj k)
Σbenj kσbenj kbirben - 1μbenj k
Bunlar gerçekten sadece Mahalanobis mesafesinin "
zbenj k= ∑ℓ( aben - 1ℓ- μbenj k ℓ)2σbenj k ℓ--------------⎷
σbenj k ℓℓinciσbenj kσbenj k ℓ
Σbenj kΣbenj k= diag ( σbenj k)
Her iki durumda da, mesafe fonksiyonumuz seçildikten sonra, hesaplayabiliriz.birbenj
birbenj= ∑kwbenj kρ ( zbenj k)
Bu ağlarda, aktivasyon fonksiyonunu sebeplerle uyguladıktan sonra ağırlıklar ile çarpmayı seçerler.
μbenj kσbenj kbirbenj
Ayrıca buraya bakınız .
Radyal Temel Fonksiyon Ağ Aktivasyon Fonksiyonları
Gauss
ρ ( zbenj k) = exp( -12( zbenj k)2)
Multikuadratik
( x , y)( zbenj, 0 )( x , y)
ρ ( zbenj k) = ( zbenj k- x )2+ y2------------√
Bu Vikipedi'den . Sınırlandırılmamış ve herhangi bir pozitif değer olabilir, ancak normalleştirmenin bir yolu olup olmadığını merak ediyorum.
y= 0x
Ters Çok Kademeli
Çevrilmiş hariç, ikinci dereceden aynı:
ρ ( zbenj k) = 1( zbenj k- x )2+ y2------------√
* SVG kullanarak intmath Grafiklerinden Grafik .