Yapay Sinir Ağları — Aktivasyonlar, Kayıp Hesaplama, Geriye Yayılım Algoritması ve Optimizasyon

Aktivasyonlar

Image for post
Image for post

İlk blog yazımda yapay sinir ağlarının temellerini anlattım. Bu yazım yapay sinir ağlarını seri şeklinde yazmayı düşündüğüm ilk yazımın devamı olarak ilerleyecektir. İlk yazıma buradan ulaşabilirsiniz.

Aktivasyon fonksiyonları yapay sinir ağında önemli rol oynar. Burada bazı önemli aktivasyon fonksiyonlarını anlatacağım. Bazı aktivasyon fonksiyonları aşağıdaki tabloda gösterilmiştir.

Image for post
Image for post
  • Birim Fonksiyon : Giriş değeri ile aynıdır.
  • Birim Adım: Sıfırdan büyük olan değerler için 1 küçük olan değerler için 0 değeri döndürür.
  • Sigmoid: Sigmoid fonksiyonunun kullanmanın en önemli nedeni değeri 0 ve 1 arasına sıkıştırmasıdır. Bu yüzden bir modelin olma olasılığını bulan modellerde kullanılır. Çünkü olasılık fonksiyonu 0 ve 1 arasında değer alır. Sigmoid fonksiyonu, eğitim esnasında modelin takılıp kalmasına neden olabilir. Bu yüzden karmaşık makine öğrenmesi modellerinde kullanımı önerilmez. İleri beslemeli yapay sinir ağında kullanılabilir.
  • Tanh (Hiperpolik Tanjant): sigmoid fonksiyonuna benzerdir. Ama tanh -1 ve 1 arasında değer alır. Tanh fonksiyonu genellikle iki sınıfa ayırmada ve ileri beslemeli yapay sinir ağında kullanılır.
  • ReLU(Rectified Linear Unit)-Doğrultulmuş Doğrusal Birim: ReLU günümüzde en çok kullanılan aktivasyon fonksiyonudur. Konvolüsyonel sinir ağlarında ve derin öğrenmede çoğunlukla ReLU kullanılır. Herhangi bir negatif değer ReLU tarafından 0 olarak döndürülür. Tüm negatif değerlerin 0 ‘a çevrilmesi modelin uygun bir şekilde eğitilmesini engeller. Bu nedenle model negatif değerlerle eğitilemez.
  • SoftMax: Çoklu sınıflandırma problemleri için kullanılan bu fonksiyon, verilen her bir girdinin bir sınıfa ait olma olasılığını gösteren [0,1] arası çıktılar üretmektedir.

Kayıp Hesaplama Fonksiyonları

  • Ortalama Sapma Hata (Mean Biased Error-MBE): Genellikle model hatasının bir ölçüsü olarak kullanılmaz, çünkü öngörme de yüksek ama bireysel hatalarda düşük MBE üretebilir. MBE tahmindeki ortalama sapmayı yakalar. Şu şekilde tanımlanır:
Image for post
Image for post
  • Ortalama Mutlak Hata (Mean Absolute Error-MAE(L1): Tahmin doğruluğunun en basit ölçüsüne denir. Adında da anlaşılacağı gibi, mutlak hataların ortalamasıdır. Mutlak hata öngörülen değer ile gerçek değer arasındaki farkın mutlak değeridir. Sürekli değişkenler için doğruluğu ölçer. Değerlerin yönlerini dikkate almadan bir dizi tahmindeki hataların ortalama büyüklüğünü ölçer. Şu şekilde tanımlanır:
Image for post
Image for post
  • Ortalama Kare Hata (Mean Squared Error-MSE-L2): MSE, hata vektörünün iki normunun karesinin örnek sayısına oranını belirtir. Bir regresyon eğrisinin bir dizi noktaya ne kadar yakın olduğunu gösterir. Karesini aldığımız için her zaman pozitif değer verir. Sıfırı yakın olan tahminleyicilerin daha iyi performans gösterdiği söylenebilir. Şu şekilde tanımlanır:
Image for post
Image for post
  • Kök Ortalama Kare Hata ( Root Mean Squared Error-RMSE): Bir model tarafından tahmin edilen değerler ile modellemekte olan ortamdan gerçekte gözlemlenen değerler arasındaki farkın sık kullanılan bir ölçüsüdür. Kök ortalama kare hatası iki veri kümesi arasında ne kadar hata olduğunu ölçer. Bir başka deyişle tahmini bir değer ile gözlemlenen veya bilinen bir değeri karşılaştırır. Şu şekilde tanımlanır:
Image for post
Image for post

Geri Yayılım Algoritması

Geri yayılım algoritması ilk olarak 1970'lerde ortaya çıktı. Önemi David Rumelhart, Geoffrey Hinton ve Ronald Williams’ın ünlü bir 1986 makalesine kadar tam olarak takdir edilmedi. Geri yayılmanın daha önceki öğrenme yaklaşımlarından çok daha hızlı çalışır. Daha önce çözülemeyen problemleri çözmeyi mümkün kılmaktadır. Bugün, geri yayılım algoritması, sinir ağlarında öğrenmenin en önemli parçasıdır.

Geri çoğalmanın merkezinde, maliyet fonksiyonunun © kısmi türevi ∂C / ∂w için ağdaki herhangi bir ağırlık (w (veya bias)) ile ilgili bir ekspresyon bulunur. İfade, ağırlıkları ve bias ‘ları değiştirdiğimizde maliyetin ne kadar hızlı değiştiğini söyler. İfade biraz karmaşık olsa da, her öğenin doğal, sezgisel bir yorumu olan bir güzelliği de vardır. Ve böylece geri yayılım sadece öğrenme için hızlı bir algoritma değildir. Aslında, ağırlıkların ve önyargıların değiştirilmesinin ağın genel davranışını nasıl değiştirdiğine dair ayrıntılı bilgiler veriyor.

Geri yayılımın en önemli amacı ağırlıkları güncellemektir. Bu şekilde, ağırlık ve bias değerlerini değiştirerek hatayı azaltmaya çalışacağız. Bunun için bu denklemin local minimumunu doğru iteratif şekilde yakınsamalıyız. Bu amaç için optimizasyon algoritması kullanılır. En çok kullanılan gradient descent algoritmasıdır. Bu algoritma denklemin local minimuna yakınsamak için birinci türev kullanır.

Optimizasyon

Aşağıda optimizasyon örnekleri verilmiştir. Ve kullanacağımız optimizasyon algoritmalarının altında kısaca özelliklerinden bahsedilmiştir.

Image for post
Image for post

En sık kullanılanı gradient descent algoritması olduğunu söylemiştik. Burada minimum noktayı bulmamız gerekiyor. Öğrenme kat sayısını (α) doğru seçmemiz gerekiyor. Aksi takdirde hızlı ilerleyeceği için minimum noktayı atlayabilir.

Image for post
Image for post

İlk iki yazımda kısaca yapay sinir ağını ve işleyişini anlattım. Bir sonraki yazılarımda tek katmanlı ve çok katmanlı yapay sinir ağına küçük bir veri seti üzerinde matematiksel kısmını birer örnek üzerinde anlatacağım.

Kaynaklar

http://neuralnetworksanddeeplearning.com/chap1.html

https://en.wikipedia.org/wiki/Activation_function

https://agrimetsoft.com/calculators

http://neuralnetworksanddeeplearning.com/chap2.html

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store