• Sonuç bulunamadı

3. BİLGİSAYAR GÖRMESİNE DAYALI RAY ARIZA TEŞHİS YÖNTEMLERİ

3.3. Yapay Sinir Ağları (YSA)

Makine öğrenmesi yöntemi olarak Yapay Sinir Ağları (YSA) 1940’lı yıllarda kullanılmaya başlanmıştır. YSA’lar başlangıçta doğrusal problemlerin çözümünde kullanılmış ise de 1970’li yıllarda doğrusal olmayan problemlerin çözümüne de başarı ile uygulanmıştır. 1985 yılında ise kontrol, görüntü ve ses tanıma, tahmin ve kestirim, arıza teşhisi ve tıp gibi birçok alanda YSA başarı ile uygulanmıştır [90]. Şekil 3.3’te örnek bir biyolojik sinir hücresi ve yapay sinir hücresi verilmiştir. Bir yapay sinir hücresi biyolojik sinir hücresini taklit eden bir matematiksel model olarak tanımlanmaktadır.

90

Şekil 3.3’te verilen basit yapay sinir ağının matematiksel modeli Denklem 3.18’de verilmiştir. Denklem 3.3’te 𝑦 sistemin çıkış değeri, sistemin giriş değeri 𝑥$ ve girişlerin ağırlıkları olan 𝑤$ değerlerinin çarpımlarının toplamıdır. Denklem 3.18’de çıkış değeri için verilen toplam fonksiyonunun yanı sıra çarpım, minumum, maksimum, çoğunluk ve kümülatif toplamda kullanılabilmektedir. Bu fonksiyonlar sıra ile Denklem 3.19 – Denklem 3.23’te verilmiştir. Denklem 3.19’da 𝑦 çıkış değeri sistemin giriş değeri 𝑥$ ve girişlerin ağırlıkları olan 𝑤$ değerlerinin çarpımlarının çarpımıdır. Denklem 3.20’de 𝑦 çıkış değeri sistemin giriş değeri 𝑥$ ve girişlerin ağırlıkları olan 𝑤$ değerlerinin çarpımlarından değeri en büyük olana, Denklem 3.21’de ise minimum olana eşittir.

Denklem 3.22’de 𝑦 çıkış değeri sistemin giriş değeri 𝑥$ ve girişlerin ağırlıkları olan 𝑤$ değerlerinin çarpımlarından elde edilen pozitif ve negatiflerden çoğunlukta olana eşittir. Denklem 3.23’te ise hücrenin o anki değeri olan 𝑦q kümülatif olarak hesaplanır, yani hücrenin bir önceki toplamı olan 𝑦qr' o anki giriş değerleri 𝑥

$ ve girişlerin ağırlıkları olan 𝑤$ değerlerinin çarpımlarının toplamıyla toplanır.

𝑦 = › 𝑥$𝑤$ • $ ' (3.18) 𝑦 = £ 𝑥$𝑤$ • $ ' (3.19) 𝑦 = 𝑚𝑎𝑥(𝑥$𝑤$) (3.20) 𝑦 = 𝑚𝑖𝑛(𝑥$𝑤$) (3.21) 𝑦 = › 𝑆𝑔𝑛(𝑥$𝑤$ • $ ' ) (3.22) 𝑦q = 𝑦qr' + › 𝑥 $𝑤$ • $ ' (3.23)

Şekil 3.4’te bir YSA’nın genel yapısı verilmektedir. YSA ağının eğitiminde amaç ağı en iyi modelleyen 𝑊 ve 𝑏 katsayılarının bulunmasıdır. Yukarıdaki denklemler ile kıyaslandığında bir bias değeri toplam fonksiyonuna eklenmektedir. Yukarıdaki toplama fonksiyonları

91

Denklem 3.24’te olduğu gibi genelleştirilirse, sistemin çıkışı olan 𝑦, sistemin 𝑥 giriş değerleriyle doğrusal hareket etmektedir. Denklem 3.25’te olduğu gibi eklenecek 𝑏 (bias) değeri x/y doğrusunun ötelenmesini sağlayacak bir katsayıdır. Bias katsayısının bir diğer avantajı sistem giriş 𝑥 değerlerinin sıfır olması durumunda ortaya çıkar, iterasyon sayısından bağımsız olarak 𝑦 değeri her zaman sıfıra eşit olacak, dolayısı ile sistem öğrenemeyecektir.

𝑦 = 𝑊𝑥 (3.24)

𝑦 = 𝑊𝑥 + 𝑏 (3.25)

Şekil 3.4. YSA modeli

YSA’larda ağ çıkış değeri doğrudan kullanılmak yerine bir aktivasyon fonksiyonundan geçirilirler. Aktivasyon fonksiyonu ile bir YSA doğrusal olmayan bir probleme de uyarlanabilmektedir. Denklem 3.26 doğrusal aktivasyon fonksiyonu olarak adlandırılır, toplama fonksiyonundan gelen 𝑦 çıkış değeri 𝐴 sabit katsayısı ile çarpılarak elde edilir. Denklem 3.27 adım fonksiyonu olarak adlandırılır, eşik değerle kıyaslanan 𝑦 değerine bağlı olarak 0 ya da 1 olmak üzere iki değerden birisini alabilir. Denklem 3.28 sigmoid olarak adlandırılır, aynı zamanda modeli doğrusal olmayan modele dönüştüren, yaygın olarak kullanılan bir fonksiyondur, toplama fonksiyonundan gelen değeri {0 , 1} aralığında bir değere dönüştürür. Denklem 3.29 sigmoid fonksiyonunda olduğu gibi sistemi doğrusal olmayan bir modele dönüştürür, toplama fonksiyonundan gelen değeri {−1 , 1} aralığında bir değere dönüştürür.

92

Denklem 3.30 özellikle derin öğrenme algoritmalarında kullanılan softmax aktivasyon fonksiyonudur. Softmax doğrusal bir sınıflandırma yerine herbir sınıfa ait benzerlik için olasılık değeri üretir. Böylece çıkış değeri daha yorumlanabilir olmaktadır.

𝑓 = 𝐴𝑦 (3.26) 𝑓 = ¦1,0, 𝐸ğ𝑒𝑟 𝑦 > 𝐸ş𝑖𝑘 𝑑𝑒ğ𝑒𝑟 𝑖𝑠𝑒𝐸ğ𝑒𝑟 𝑦 ≤ 𝐸ş𝑖𝑘 𝑑𝑒ğ𝑒𝑟 𝑖𝑠𝑒 (3.27) 𝑓 = 1 1 + 𝑒r‹ (3.28) 𝑓 =𝑒‹+ 𝑒r‹ 𝑒‹− 𝑒r‹ (3.29) 𝑓(𝑧$) = 𝑒¬Š ∑® 𝑒¬- A ' (3.30)

3.3.1. Yapay Sinir Ağlarında Öğrenme

Çok katmanlı YSA’lar da öğrenme temel olarak ağı en iyi ifade eden 𝑊 ağırlık matrisinin ve 𝑏 değerlerinin bulunmasıdır. Bu değerler eğitimin başlangıcında sabit veya rastgele seçilebilir, ancak başlangıç değerlerinin Gauss dağılımına sahip seçilmesi en optimum yoldur. Ağın öğrenmesi; arzu edilen çıkış ile modelin elde ettiği çıkışların karşılaştırılarak ağırlıkların her bir iterasyonda güncellenmesi prensibine dayanmaktadır. Denklem 3.31’de her bir sinir ağı için arzu edilen çıkış değeri 𝑡$ ile ağdan elde edilen çıkış değeri 𝑦$ arasındaki fark 𝑒$ hata değerini göstermektedir. Çok katmanlı YSA’da ki çıktı katmanında ki toplam hata ise Denklem 3.32’de verildiği gibi her bir sinir hücresi için hesaplanarak toplam hata bulunur. Modelin eğitiminde ki amaç bu hatayı minimize etmektir.

𝑒$ = 𝑡$ − 𝑦$ , 1 < 𝑖 < 𝑛 (3.31) 𝛿 =1 2› 𝑒$w H $ ' (3.32)

93

Denklem 3.33’te değişim miktarı 𝑡 anındaki değişim miktarı ∆𝑤ŸHG (𝑡) (t-1) anındaki değişim miktarına bağlı olarak bulunur. Denklemde verilen 𝜆 ve 𝑎 sırası ile öğrenme ve momentum katsayılarıdır. Öğrenme katsayısı ağın performansında önemli rol oynamaktadır. Öğrenme katsayısının küçük olması eğitim süresini uzatır, büyük olması ise kısaltır, çok büyük olursa yakınsamayı engeller. Momentum katsayısı ise ağın eğitimi esnasında yerel minimua takılmasını engeller. Ağırlık değişim değerinin belli bir oranda bir sonraki değişime eklenmesini sağlar ve toplam hata sıfıra daha fazla bir eğilimle yaklaşır. Denklemde δm ise 𝑚. çıktı katmanına ait toplam hatadır ve Denklem 3.34’te ki gibi hesaplanmaktadır.

∆𝑤ŸHG (𝑡) = 𝜆𝛿

H𝑦ŸG+ 𝐴𝑤ŸHG (𝑡 − 1) (3.33)

δm = 𝑦H(1 − 𝑦H)𝑒H (3.34)

Denklem 3.33’te olduğu gibi değişim miktarı hesaplandıktan sonra modelin ağırlıkları 𝑤 matrisi Denklem 3.35’te olduğu gibi, bias değeri ise Denklem 3.36’da ki gibi güncellenir.

𝑤ŸHG (𝑡) = 𝑤

ŸHG (𝑡 − 1) + ∆𝑤ŸHG (𝑡) (3.35)

𝑏H(𝑡) = 𝑏H(𝑡 − 1) +∆𝑏H(𝑡) (3.36)

3.3.2. Yapay Sinir Ağlarında Test

YSA eğitim işleminde kullanılmayan yeni bir veri seti ile performansı test edilmelidir. Bu amaçla eğitim zamanı, iterasyon sayısı gibi birçok kriter kullanılabilir ancak en önemli kriter doğruluk tahminidir. Doğruluk tahmini gerçek ile tahmin edilen arasında ki fark olarak tanımlanır. Bu amaçla kullanılabilecek yaygın üç öngörü doğruluk ölçüleri sırası ile Denklem 3.37 ile Denklem 3.39 arasında verilmiştir. Bunlar sırası ile Hata Kareleri Toplamı (HKT), Ortalama Hata Kareler (OHK) ve Karekök Ortalama Hata Kareler (KOHK) dür. Bir YSA modelinin eğitim işleminin ne zaman bitirileceği hatanın belirlenen eşik değerin altına düşmesidir [91].

94 𝐻𝐾𝑇 = ›(𝑒q)w • $ ' (3.37) 𝑂𝐻𝐾 = 1 𝑁›(𝑒q)w • $ ' (3.38) 𝐾𝑂𝐻𝐾 = √𝑂𝐻𝐾 (3.39)