Yapay Sinir Ağlarının Eğitimi (Training Neural Networks)
Yazan : Şadi Evren ŞEKER
Bu yazının amacı yapay sinir ağlarının (Artificial neural Networks) nasıl eğitildiğini anlatmaktır.
Bir yapay sinir ağını oluşturan sinir hücreleri (neurons, nöronlar) sinapsisler aracılığı ile birbirlerine bağlıdırlar. Bu sinapsisler bağladıkları nöronların birbirinden haberdar olmasını sağlamaktadırlar. Ancak biyolojik sinir hücrelerinde olduğu gibi bilgisayar dünyasında bulunan yapay sinir ağlarında da bütün bağlantıların (sinapsislerin , synapses) ağırlığı eşit değildir. Bu ağırlık farklılıkları sinir ağının başarısını da etkileyen ve eğitim aşamasında belirlenen eğerlere sahiptir. Aşağıda bir yapay sinir ağı tasviri be bu ağda bulunan nöron ve sinapsislerin değerleri verilmiştir.
Yukarıdaki grafikte görüldüğü üzere sistemin iki girişi bulunmaktadır. Bu giriş değerleri basitçe her nöronda işlenmekte çıkan sonuç sinapsislerde bulunan değerlerle çarpılarak ok yönünde gösterilen bir sonraki nörona girdi olmaktadır. Sonuçta en altta bulunan nöronda T=0.5 değeri (ki bu değer eşik değeri (trashold) olarak isimlendirilir) ile sınanmaktadır. Yukarıdaki sistemin tek çıkışı ve iki katmanı bulunmaktadır.
İşte yapay sinir ağının eğitimi konusu da tam bu noktada devreye girmektedir. Buna göre eğitim aşamasında bu değerlerin değiştirilmesi sonucu etkileyecek ve ağımız eğitilmiş olacaktır.
Bu eğitim işlemini ve nöronların ve sinapsislerin değerlerini taşıyan verileri tutan matrislerin kullanılması ve matrisler üzerinde tanımlı olan matematiksel işlemlerin yapılması matematiksel olarak işlem hızı kazandıracaktır.
Yapay sinir ağlarının eğitimi konusunu da temel olarak ikiye ayırmak mümkündür. Bu ayrım gözetimli (suprevised) veya gözetimsiz (unsupervised) olarak yapılmaktadır. Bir de bu iki yöntemin orta noktası olarak yarı gözetimli (semi supervised) eğitim yöntemi de literatürde bulunmaktadır. Bu eğitim yöntemlerinin birbirinden ayrılan en belirgin özelliği sinapsisler üzerinde bulunan ağırlıkların bir insan tarafından girilmesi veya girilmemesidir. Yani basitçe bir yapay sinir ağının sonuçta ulaşacağı değeri bulması başladığı değere göre uzamakta veya kısalmaktadır. Eğitim sırasında sürekli olarak bu sinapsis ağırlıklarını güncelleyen yapay sinir ağı şayet sonuçta dengeye ulaşacağı değere yakın bir değerden başlarsa çok daha hızlı bir şekilde eğitimini bitirmektedir.
İşte bu noktada bir uzman tarafından (expert) sisteme elle girilen bu ağırlık değerleri eğitim süresini kısaltmaktadır. Bu tarz insan müdahalesi bulunan eğitim sistemlerine gözetimli (supervised) sistemler adı verilirken, yapay sinir ağının tamamen kendi başına bırakıldığı ve sonuç ağırlıklarına kendiliğinden ulaştığı sistemlere gözetimsiz (unsupervised) adı verilir.
Burada unutulmaması gereken önemli bir nokta her iki yöntemde de yapay sinir ağının sürekli olarak doğruluğunun sınanması gerektiğidir. Bu sayede yapay sinir ağının doğru çalıştığına kanaat getirilinceye kadar iki yöntemde de sinir ağı sınanmakta ve ancak beklenen başarıya ulaştığında sistemin eğitimi tamamlanmaktadır.
Ne yazık ki bazı durumlarda yapay sinir ağının yanlış tasarlanması sonucunda hiçbir zaman eğitimi tamamlanamayabilmektedir. Bu tip yapay sinir ağlarının tasarımı hatalı olduğu için tasarım aşamasına geri dönülerek yeni bir tasarım yapılması gerekmektedir.
Bir yapay sinir ağının nasıl sınandığı (tecrübe edildiği, validating neural Networks) konusunu okuyabilirsiniz.
« Akış Diyagramı (Flow Chart) | Yapay Sinir Ağlarının Sınanması (Validating Artificial Neural Networks) »
Yorumlar
Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Yapay Sinir Ağlarının Eğitimi (Training Neural Networks)' isimli yazı 02 Oct 2008 tarihinde, saat: 03:43 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 805 defa okunmuştur.
Benzer yazıları Yapay Sinir Ağları (Artificial Neural Networks) kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.
Yazarın Kitabı
Bu yazının yazarı Şadi Evren ŞEKER'in son çıkan kitabı "Programlama ve Veri Yapılarına giriş (C, C++ ve JAVA ile)" hakkında bilgi almak için Buraya tıklayabilirsiniz.
Eklenen Son Yazılar
- Visual Basic ile Gösterici (Pointer) Kullanımı
- Hasse Çizgeleri (Hasse Diagrams)
- Zeki Vekiller (Akıllı Ajanlar, Intelligent Agents, Zeki Etmenler )
- Integral Kriptoanalizi ( Toplam Tecessüsü , Integral Cryptoanalysis)
- Diferansiyel Kriptoanalizi ( Fark Tecessüsü , Differential Cryptoanalysis)
- Sierpinski Üçgeni (Sierpinski Triangle)
- C ile programlamaya giriş final sınavı çözümleri
- Çok Seviyeli Sıralar (Multi Level Queues)
- Çift Özetleme (Double Hashing)
- İkinci Dereceden Sondalama (Quadratic Probing)
Yapılan Son Yorumlar
- Şadi Evren ŞEKER: Sıralama işleminiz poligonu...
- Şadi Evren ŞEKER: bahsettiğiniz sıralama algoritması...
- Abdurrahman ulusoy: merhaba hocam. gelişigüzel...
- Oguz Okutan: Merhaba hocam.. Fonksiyonlarda degere göre...
- Şadi Evren ŞEKER: Null, NULL, nil veya null olarak...
- Fatih Kabakci: hocam merhabalar,...
- kara: Çok güzel anlatılmış gerçekten teşekkürler...
- Şadi Evren ŞEKER: Bahsettiğiniz şekil dönüşümü...
- Caner: Kullanıcıdan açı girdisi almıyorsanız...
- Furkan Yediyildiz: Algoritmanin mantigi cok güzel...
- havva: çok sağolun çok güzel açıklamalar var tşk...
- Şadi Evren ŞEKER: typedef komutu, bir yapıdan yeni bir...
- fatih kabakci: hocam ben structures ile ilgili bir sorum...
- Şadi Evren ŞEKER: evet, yukarıda açıklanan, herhangi...
- Abdurrahman ulusoy: fi açısından teta kadar döndürme...
- Şadi Evren ŞEKER: Hayır yok, bir noktanın, herhangi...
- Abdurrahman ulusoy: Bu durumda yukarıdaki formüllerin...
- Abdurrahman ulusoy: Merhaba hocam Üstteki mesajımda...
- mustafa ekmekcioğlu: merhaba şadi bey ben hacettepe...
- Şadi Evren ŞEKER: Talebiniz üzerine...
Yakın Yazılar
Yapay Sinir Ağlarının Sınanması (Validating Artificial Neural Networks)
Kazanan Hepsini Alır (Winner Takes All)
Sinir Ağlarında Katmanlar (Neuron Layers)
Yapay Sinir Ağlarının Eğitimi (Training Neural Networks)
Geri Yayılımlı Ağlar (Backpropagation Networks)
İleri Beslemeli Ağlar (Feedforward Neural Networks)
Gizli Katman Sayısı (Number of Hidden Layer)
Yapay Sinir Ağları ve Problem Çözümü
Tek Katmanlı Sinir Ağları (Single Layer Neural Networks)
Yapay Sinir Ağları (Artificial Neural Networks)
Doğrusal Fonksiyon (Linear Function)
Yahut Problemi (Özel Veya Problemi (XOR Problem, exclusive or))
Bağlantılar
