Aktivasyon Fonksiyonu Nedir?
Yazımızda yapay sinir ağlarında ve makine öğrenmesinde karşımıza çıkan aktivasyon fonksiyonlarının tanımını, kullanım alanlarını, nasıl ve ne için kullanıldığını açıklamaya çalışacağız. Bununla beraber ya projelerinde kullanılan Aktivasyon fonksiyonlarının türlerini açıklayıp, birbirleri üzerindeki üstünlüklerini veya eksiklerini tartışacağız.
17.02.2022 tarihli yazı 9135 kez okunmuştur.
Aktivasyon fonksiyonu hakkında detaylara girmeden önce Şekil 1’de gösterilen blok diyagramında örnek basit bir nöral ağ yapısını paylaştık. Bu diyagram, yapay sinir ağlarının temel yapı birimini oluşturur. X1 ile gösterilen değerler girdiler olarak adlandırılırken W1 ile gösterilen birimlerse bu girdilere karşılık gelen ağırlıkları oluşturur. Girdiler çeşitli ağırlıklar ile çarpılıp Şekil 1’de gösterilen toplama fonksiyonu ile toplanır. Elde edilen değerler sistemde kullanılan aktivasyon fonksiyonundan geçirilerek çıkışa ulaşılır. Aktivasyon fonksiyonunun buradaki görevi giriş sinyallerini çıkış sinyallerine çevirir.
Temel olarak aktivasyon fonksiyonu, veri yapılarını öğrenip anlamlı bir sonuç oluşturur. Eğer aktivasyon fonksiyonsuz bir yapay sinir ağı düşünürsek bu ağ, basit bir doğrusal regresyona benzeyecektir. Aktivasyon fonksiyonu için biraz derine inelim:
Yukarıda görüldüğü üzere aktivasyon fonksiyonu, nöron yapısının en son ayağında yer alıyor. Aktivasyon fonksiyonunda elde edilen değer;
Şekil 1: Nöral Ağ Blok Diyagramı ve Aktivasyon Fonksiyonu
►İlginizi Çekebilir: Yinemeli Sinir Ağları (RNN) Nedir?
Şekil 1: Nörol ağ
►İlginizi Çekebilir: Makine Öğrenmesi Yöntemleri
olacaktır. Aktivasyon fonksiyonu, toplama fonksiyonundan elde edilen y değerini kontrol etmek için kullanılıyor. Kontrol etmekten kasıt, sistemde kullanılan fonksiyonun yapısına göre y değerine bir hüküm vermektir. Daha basitçe elde edilen y değerinde o nöronun yapısına göre nöronun aktif olup olmayacağına karar verir. aktivasyon fonksiyonunun ismini böyle düşünebiliriz. Bu durumdan ötürü derin sinir ağları için önemli bir yapıdır. Burada kullanılan aktivasyon fonksiyonu çıkıştaki anlamlı bilginin elde edilmesinde kilit bir rol oynar. Çıkışta iyi bir performans elde edilmek için probleme uygun olan fonksiyonun seçilmesi gerekmektedir. Yanlış seçilen fonksiyon tüm sistemi batırabilir. Çeşitli fonksiyonlar kullanılarak birbirleri arasında karşılaştırmalar yapılabilir. Böylece sisteme uygun olan fonksiyon seçilmiş olur.
Aktivasyon Fonksiyonu Çeşitleri
Nöral ağlarda çeşitli aktivasyon fonksiyonları kullanılmaktadır. Veriye ve problemlere göre kullanılan aktivasyon fonksiyonları değişmektedir. Unutmayalım ki aktivasyon fonksiyonu kullanılmayan bir yapay sinir ağın çıktısı doğrusal regresyondan farklı olmayacaktır. Tüm veriler doğrusal veri türü olamayacağından sistemimizin de doğrusal olmayan problemleri de öğrenmesi gerekmektedir. Aktivasyon fonksiyonları bundan dolayı önemlidir.
Şekil 2: Yapay Sinir Ağlarında Sıklıkla Kullanılan Aktivasyon Fonksiyonları
►İlginizi Çekebilir: Derin Öğrenme | 'Nedir?' Serisi 2.Bölüm
►İlginizi Çekebilir: Derin Öğrenme | 'Nedir?' Serisi 2.Bölüm
Sigmoid Aktivasyon Fonksiyonu
0 ile 1 arasında çıktı üreten sigmoid fonksiyonu en çok kullanılan aktivasyon fonksiyonlarından biridir. Pürüzsüz eğrilere sahip olan sigmoid fonksiyonu bu özelliği sayesinde girdi değerlerindeki küçük değişiklikler çıktı değerlerinde gözlemlenebilir. Sigmoid fonksiyonu göründüğü üzere türevlenebilir bir fonksiyon olduğundan dolayı kullanıldığında öğrenme işlemi gerçekleştirebilir.
Şekil 3: Sigmoid Aktivasyon Fonksiyonu
Sigmoid fonksiyonu aşağıdaki gibi tanımlanabilir;
Sigmoid fonksiyonun bazı dezavantajları vardır. Bu dezavantajlardan biri “Kaybolan Gradyan Problemi” ’dir. Kaybolan Gradyan Problemi, yapay sinir ağlarında veriler eğitilirken karşılaşılan bir problemdir. Grafikte de görebildiğimiz üzere x değerleri ilerlerken uç noktalarda değer 0 ‘a yakınsamaktadır. Yani X değerlerinde değişimler artarken Y’de bu değerleri görememeye başlarız. Bu kaybolan gradyan problemine örnektir.
ReLU (Doğrultulmuş Doğrusal Birimler) Aktivasyon Fonksiyonu
ReLU son zamanlarda sigmoid fonksiyonu yerine en çok tercih edilen fonksiyonlardan biridir. Bu fonksiyon basit bir yaklaşıma sahiptir. Rectified Lineer Unit, çıktı değerleri [0, +∞] arasında yer almaktadır.
Şekil 4: ReLU Aktivasyon Fonksiyonu
ReLU aktivasyon fonksiyonunun sıklıkla kullanılmasının en büyük sebebi Şekil 4’te göründüğü üzere 0’dan büyük olan girdilerin sabit türev değerine sahip olmasıdır. Böylece ağ daha hızlı eğitilebilir. Bu da büyük bir avantaj sağlar. ReLU aşağıdaki gibi tanımlanır;
Burada fonksiyon çıktısı olan X, sıfırdan büyük değerlerde olduğunda (X>0) sonuç X alınırken, sıfırdan küçük veya eşit olduğu anlarda sonuç 0 olarak alınır. Böylece Şekil 5’teki grafik karşımıza çıkacaktır. Sadece pozitif değerlerde aktif olan ReLU aktivasyon fonksiyonları, sinir ağında ara katmanlardaki olası bir negatif çıkışı aktif etmeyecektir. Böylece aynı anda tüm nöronları aktif olarak atayamayacaktır. Bu performans açısından etkilidir. Böylece sistem daha hızlı ve verimli çalışır.
Softmax Aktivasyon Fonksiyonu
Softmax aktivasyon fonksiyonu sınıflandırma problemlerinde sıklıkla kullanılır. Softmax, sisteme girilen her girdinin bir sınıfa ait olmasını gösteren çıktılar üretir. Bu çıktılar [0,1] değer arasında yer alır. 0 ile 1 arasında yer alması sebebiyle bu fonksiyonda olasılıktan bahsedilebilir. Sigmoid fonksiyonuna benzeyen yapısının sigmoid’den tek farkı elde edilen çıktıların 1’e kadar olan toplamlarının normalize edilmesidir. Yani girdi ne olursa olsun (pozitif, negatif, sıfır vs.) softmax fonksiyonu bu girdiyi 0 ile 1 arasına dönüştürür. Böylece olasılık ortaya çıkar. Eğer bir girdinin değeri küçük veya negatif olduğunda softmax fonksiyonu bu değeri küçük olasılık olarak atar. Eğer girdi büyük ise büyük olasılık olarak atar. Ancak her zaman bu olasılıklar 0 ile 1 arasındadır.
Şekil 5: Softmax Aktivasyon Fonksiyonu
Sigmoid ile softmax sınıflandırma problemlerinde oldukça kullanılır fakat sigmoid fonksiyonu çıkışta ikili sonuç elde edildiği durumlarda kullanılırken softmax fonksiyonu ise çok katmanlı sınıflandırma problemlerinde kullanılır.
Hiperbolik Tanjant Aktivasyon Fonksiyonu
Her x değeri için bir çıktı üreten hiperbolik tanjant fonksiyonu bu özelliği ile bir sürekli fonksiyondur. Bu aktivasyon fonksiyonu [-1, +1] arasında çıktı üretir. Sigmoid fonksiyonuna oldukça benzer ve ikili sınıflandırma problemlerinde kullanılır. Sigmoid fonksiyonuna göre daha çok değer alabilir. Böylece bu durum sinir ağın daha hızlı öğrenmesine sebep olur ve bu durumda verimliliği arttırır. Sigmoid fonksiyonuna benzeyen yapısı nedeniyle bu aktivasyon fonksiyonunda da Kaybolan Gradyan Problemi karşımıza çıkar.
Şekil 6: Hiperbolik Tanjant Aktivasyon Fonksiyonu
Basamak (Step) Aktivasyon Fonksiyonu
Şekilden de anlaşılacağı üzere ikili değerler alan basamak fonksiyonu ikili sınıflayıcı problemlerinde kullanılır. Türevi alınan fonksiyon değerlerinin bir temsili olmadığından kullanılması pek tavsiye edilmez ve sağlıklı bir çıktı oluşturmaz.Önerilen Aktivasyon Fonksiyonu Seçimi
Yapay sinir ağları tüm gizli katmanlarında aynı aktivasyon fonksiyonlarını kullanır. Aktivasyon fonksiyonun seçimi tam olarak kullanan kişiye bağlıdır. Genel olarak 1990’larda çeşitli problemlerde sigmoid fonksiyonu temel olarak seçilen bir aktivasyon fonksiyonuydu. Yıllar ilerledikçe hiperbolik tanjant fonksiyonu gizli katmanlarda daha çok kullanılmaya başlandı ve temel olarak seçildi. Ancak bu iki fonksiyonunda Kaybolan Gradyan Problemine sahip olduğundan yeni arayışlar içerisine girildi.
Modern sinir ağları modelleri ReLU (Rectified Lineer Unit) fonksiyonunu kullanıyor. Örneğin Çok Katmanlı Perceptron (MLP) ağ modeli ve CNN (Convolutional Neural Network) modeli ReLU fonksiyonunu kullanır. Yinelemeli Sinir Ağları modelinde ise Hiperbolik Tanjant ve Sigmoid aktivasyon fonksiyonunu kullanır.
Kaynak:
►machinelearningmastery.com
►deepai.com
►researchgate.net
►geeksforgeeks.org
YORUMLAR
Aktif etkinlik bulunmamaktadır.
- Dünyanın En Görkemli 10 Güneş Tarlası
- Dünyanın En Büyük 10 Makinesi
- 2020’nin En İyi 10 Kişisel Robotu
- Programlamaya Erken Yaşta Başlayan 7 Ünlü Bilgisayar Programcısı
- Üretimin Geleceğinde Etkili Olacak 10 Beceri
- Olağan Üstü Tasarıma Sahip 5 Köprü
- Dünyanın En İyi Bilim ve Teknoloji Müzeleri
- En İyi 5 Tıbbi Robot
- Dünyanın En Zengin 10 Mühendisi
- Üretim için 6 Fabrikasyon İşlemi
- Enerji Yönetiminde Ölçümün Rolü: Verimliliğe Giden Yol
- HVAC Sistemlerinde Kullanılan EC Fan, Sürücü ve EC+ Fan Teknolojisi
- Su İşleme, Dağıtım ve Atık Su Yönetim Tesislerinde Sürücü Kullanımı
- Röle ve Trafo Merkezi Testlerinin Temelleri | Webinar
- Chint Elektrik Temel DIN Ray Ürünleri Tanıtımı
- Sigma Termik Manyetik Şalterler ile Elektrik Devrelerinde Koruma
- Elektrik Panoları ve Üretim Teknikleri
- Teknik Servis | Megger Türkiye
- Güneş Enerji Santrallerinde Yıldırımdan Korunma ve Topraklama
- Megger Türkiye Ofisi
ANKET