• Sonuç bulunamadı

Yapay sinir ağları bir bilgi işleme sistemi olup biyolojik sinir ağları ile ortak performans karakteristiklerine sahiptir. Son senelerde kullanım alanları oldukça gelişmiş olup, ses ayırt etme, uzaktan algılama gibi bir çok uygulamada kullanılmaya başlanmıştır. Burada amaç, oluşturulan yapay sinir ağı modeline çeşitli örnekleri kapsayan bir eğitim setinin iteratif olarak beslenmesi sonucu ağ modelinin öğrenmesinin sağlanmasıdır.

Bilgisayarların işlem hızlarının geliştirilmesiyle birlikte bir çok kompleks problemin çözümünde kullanılan bu yöntem paralel işlem mimarisine dayanmaktadır. Yöntemin işleyişinin insan beyninin işleyişine benzer iki yönü mevcuttur.

1 ) Bilgi, bir öğrenme sürecine tabi tutulan bir ağ tarafından kazanılır.

2 ) Nöronların arasındaki bağlantıyı sağlayan ve sinaptik ağırlıklar (weights) olarak bilinen bağlar bilgiyi sınıflandırma yaparak depo etmektedir.

Sınıfları birbirinden ayıran en basit ayırma fonksiyonları, birinci dereceden eğrilerdir. Bu tür sınıflandırıcılara lineer sınıflandırıcılar denir. Buna rağmen sınır belirleme en basit durumlarda bile zordur. Bunun nedeni ayrık bölgeler oluşturabilmek için özellik grupları arasında sonsuz adet sınır çizilebilmesidir.

Şekil 4.1‟ de örnek bir verinin en yakın komşuluk ilişkisine göre hangi sınıfa ait olduğuna karar verilmesi ve belirlenen sınıfa dahil edilmesi işlemi şematik olarak gösterilmektedir [6]. Her iki sınıfa ait mesafeler (d1 ve d2) karşılaştırılarak bilginin hangi sınıfa daha yakın özellikler içerdiği kararlaştırılır.

Lineer karar sınırı

Şekil 4.1 Sınıflar arası en yakın komşuluk bilgisinin karşılaştırılması ve sınıfların lineer karar sınırı ile ayrılması

Bu sınıflandırma tekniği, sınıflar birbirlerinden ayrık durumda olduğu durumlarda oldukça iyi sonuçlar vermektedir. Şekil 4.1‟de olduğu gibi Sınıf 1‟e ait olmasına rağmen Sınıf 2‟ye daha yakın görünen X örneği, hangi sınıfa ait olduğuna karar verilmeye çalışılan U örneğinin yanlış bir sınıfa dahil edilmesine neden olmaktadır. Bu problem, U gibi sınıflandırılacak örneklerin, mevcut sınıfların içerdiği tüm örneklere ait uzaklıklarının hesaplanıp, ortalamasının alınması yoluyla giderilebilmektedir.

Sınıfların belirlenmesinden sonraki en zor kısım karar sınırının oluşturulmasıdır. Şekil 4.1‟ deki gibi sınıfların birbirinden ayrık olması lineer bir karar sınırı ile ayrılabilmelerini sağlamaktadır. Oysa günümüzde yapılan çoğu uygulamada lineer olmayan yapılar ile karşılaşılmakta bu da karar sınırlarının oluşturulmasında lineer olmayan fonksiyonlar kullanılmasını gerektirmektedir.

Yapay sinir ağları nöron veya nod adı verilen ve giriş bilgisine göre belli işlemler yaparak durum cevabı üreten tek veya çoklu ünitelerden meydana gelmiştir. Bu işlemlerin ne şekilde gerçekleştiği, sinir ağı modelinin türüne ve öğrenme yoluna bağlı olarak değişiklik gösterir. Bu modellerden ileri beslemeli (feed-forward) sinir ağlarına örnek olarak geriye yayılım (backpropagation) algoritması, karşılıklı yayılım

(counterpropagation) algoritması, rekabetçi öğrenmeye örnek olarak da kendi kendini organize eden sistemler (self-organising maps), radyal temelli fonksiyonlar ve genelleştirilmiş regresyon yaklaşımları verilebilir. Bunlar tam olarak birbirleriyle denk yöntemler olmamasına rağmen veri analiz problemlerinin bir çoğunda kullanışlıdır. Bir çok uygulamada çeşitli veriler alınır ve öğrenme süreci içinde bunlar kendi aralarındaki ilişkilere göre anlamlı gruplara sınıflandırılmaya çalışılır. Kendi kendini organize eden sistemler gibi denetlenmeyen (istenilen çıkış ile elde edilen çıkışın kıyaslanmaması hali) sinir ağlarında girilen veri doğrudan hafızaya işlenir. Ağırlıklardaki yenilenme dış etkilere göre yapılmaz. Giriş verisini kendi içinde ilişkilendirerek öğrenme işlevini gerçekleştirir. Daha çok veri inceleme problemlerinde kullanılır. Ağ, girilen verinin yapısını bir denetleme yapmadan öğrenerek, çıkış olarak girilen verinin topolojik karakter haritasını oluşturur. Bu özellik haritası, verinin özelliklerine göre gruplar oluşturur ve giriş düzlemindeki komşuluk ilişkilendirilmesini gerçekleştirerek, genel haritalandırma işlemini yapar.

4.1 Uygulamada Ġzlenmesi Gereken Ana Adımlar

Seçilmiş olan yapay sinir ağı modeli, elde edilecek sonuçlarda kritik bir etkiye sahiptir. Uygulamada kullanılacak olan ağ modelini gerçekleştirmek istediğimiz işlemin amacına uyacak şekilde belirlemeliyiz. Çeşitli çalışmalardan elde edilen sonuçlara dayanarak, sinir ağı modelinin kompleksliliğini belirleyen ve başta kararlaştırılan serbest parametreler (ağırlıklar v.s.) problemin yapısına ve kullanılacak eğitici örneklerin sayısına uygun seçilmelidir. Ağ çok fazla kompleks olduğu takdirde, eğitim setini çok iyi öğrenecek, fakat genelleme işlemi zayıf olacaktır. İyi bir genelleme yapabilmek için yapının kompleksliliği de iyi belirlenmelidir.

Yapay sinir ağı uygulamalarında göz önünde bulundurulması gereken faktörler şunlardır:

 Verilerin düzenlenmesi.

 Ağ yapısının dizayn edilmesi .

 Verilen problem için ağı eğitmek .

4.2 Yapay Sinir Ağlarının Genel Yapısı

Ağ modelinin belirli bir uygulama için yapılandırılmasında işlem elemanları, diğer adıyla nöronlar belirli bir şekilde düzenlenmelidir. Genel olarak bazı yapısal ünitelerin oluşturulmasında nöronlar birbirleriyle bağlı şekildedir ve çizgisel bir sırada dizilidir. Bu çizgisel şekilde dizilmiş nöronların oluşturduğu ünitelere katman denilmektedir. En çok kullanılan ağ modelleri çok katmalı modellerdir. Şekil 4.2‟ de üç katmanlı nöronları tam olarak birleştirilmiş bir ağ modeli görülmektedir. Bu katmanlar giriş katmanı, ara (gizli) katman ve çıkış katmanıdır [7-9].

Şekil 4.2 Üç katmanlı tam birleştirilmiş yapay sinir ağı

GiriĢ katmanı : Bu katman dışarıdan gelen bilginin ağa girmesini sağlar. Giriş katmanı kendi çıkışını ara katmana giriş olarak göndermektedir. Giriş katmanındaki nöronların sayısı, belirli bir problemi karakterize etmek için yeterli olan giriş değerlerinin sayısıdır. ÇıkıĢ katmanı : Çıkış katmanı, giriş katmanına girilen giriş sinyaline uygun olarak bir çıkış üretir. Çıkış katmanı nöronları, kendi giriş değerlerini ara katmandan elde ederler. Bu katmanda gerekli olan nöronların sayısı, tanımlanan problem için gerekli olan çıkışa eşittir. GiriĢ katmanı Ara ( gizli ) katman Çıkış katmanı Yapay nöron bağlantılar

Ara (gizli) katman : Bu katman, giriş ve çıkış katmanları arasında yer alır. Buradaki nöronlar, çıkış katmanı ve giriş katmanındaki nöronlara veya başka bir ara katman varsa oradaki nöronlara bağlı olmak zorundadır. Kesinlikle dış çevre ile doğrudan bağlantıları yoktur. Ne dışarıdan doğrudan giriş sinyali alabilir, ne de dışarıya doğrudan çıkış sinyali üretebilir. Ara katmanlar genellikle sinir ağı problemlerinde yer alır. Bunun nedeni, problemin çözümü için giriş ve çıkış katmanının yeterli olmayışıdır. Ara katman, ağın problem için kendi sembol setini yapılandırdığı katmandır.

4.3 Yapay Nörondaki Komponentler 4.3.1 Ağırlık Faktörleri

Nöronlar genel olarak sürekli giriş alırlar. Her girişin kendi bir ağırlık değeri vardır. Bu ağırlıklar giriş vektörünün işlem sırasındaki nöronlar üzerinde göstereceği etkiyi belirler. Biyolojik nöronların çeşitlilik gösteren sinaptik kuvvetleriyle aynı fonksiyonu sergilemektedirler. Bu şekilde bazı giriş değerleri diğerlerine göre daha önemli olup nöronlar üzerinde çıkış cevabını üretmekte daha etkilidir.

Ağırlıklar değiştirilebilir katsayılar olup yapay nörona gelen giriş sinyalinin şiddetini belirlerler. Bunları, giriş nöronlarına gelen değerlerin ara katmandaki nöronlara bağlanma kuvvetinin bir ölçüsü olarak değerlendirebiliriz. Bu kuvvetler çeşitli eğitim setlerinden elde edilen cevaba göre ve oluşturulmuş olan ağın öğrenme kuralına göre modifiye edilirler.

4.3.2 ÇıkıĢ Fonksiyonu

Her işlem elemanının tek bir çıkış üretmesine izin verilir. Bu aynı biyolojik nöronlarda olduğu gibi, bir çok girişe karşı sadece tek bir çıkış olmasıdır. Bazı ağ topolojilerinde işlem elemanları arasındaki komşuluğa göre transfer sonuçları modifiye edilmektedir. İşlem elemanları en kuvvetli hale gelene kadar birbirleriyle kıyaslanmaya devam edeceklerdir. Çıkış fonksiyonu elde edilen değerleri lineer ya da non-lineer ilişkilendirme yapacak şekilde belirlenebilmektedir. Belli bir katmandaki nöronlara lineer bir fonksiyon uygulanırken diğer bir katmanda non-lineer ilişkilendirme yapacak fonksiyon kullanılabilir. Uygulamanın çeşidine göre fonksiyon seçimi doğru yapılmalıdır.

4.3.3 Hata Fonksiyonu ve Geri Besleme Değeri

Öğrenme ağlarının çoğunda çıkış cevabı ile arzu edilen çıkış cevabı arasındaki fark hesaplanır. Bu hata daha sonra hata fonksiyonu tarafından ağ yapısının içine transfer edilir. En temel ağ yapıları bu hatayı direkt olarak kullanırken, bazıları karesini alır, bazıları da bu hatayı kendi amaçları doğrultusunda düzenler. Yapay sinir ağının bu hatası daha sonra diğer bir elemanın öğrenme fonksiyonuna geri beslenir. Bu besleme genel olarak bir önceki katmana yapılır. Öğrenme fonksiyonu bu geri besleme değerini ölçeklendirerek, bir sonraki öğrenme döngüsünde kullanılacak olan ağırlıkları modifiye etmede kullanır.

4.3.4 Öğrenme Fonksiyonu

Öğrenme fonksiyonunun amacı, her işlem elemanının girişindeki bağlantı ağırlıklarını kullanılan algoritmaya göre modifiye etmektir. Giriş bağlantı ağırlıklarının değiştirilmesindeki amaç istenilen sonuçlara ulaşılabilmedeki başarının arttırılmasıdır. 4.4 Yapay Sinir Ağlarında Öğrenme

4.4.1 Denetlenen Öğrenme

Denetlenen öğrenmede sinir ağının gerçek çıkış değeri arzu edilen çıkış değeri ile kıyaslanmaktadır. Başlangıçta rastgele olarak belirlenmiş olan ağırlıklar, bir sonraki iterasyon veya döngüde arzu edilen çıkış ile, elde edilen çıkışın birbirlerine yaklaşmaları için (çıkışın daha az hata ile elde edilmesi için) sinir ağı tarafından modifiye edilir. Öğrenme methodu işlem elemanlarının hatalarını minimize etmeye çalışmaktadır. Bu genel hata azaltma işlemi, ağ belli bir doğruluğa ulaşılıncaya kadar başlangıçta verilen ağırlık vektörlerinin sürekli olarak modifiye edilmesiyle devam eder.

Kullanışlı bir hale gelinceye kadar yapay sinir ağı eğitime tabi tutulmalıdır. Ağın eğitimi, girişlerin ve istenilen çıkışların içerildiği bir eğitim setinin yardımıyla gerçekleştirilir. Kullanıcının tanımladığı başarım seviyesine ulaşıldığı anda eğitim süreci tamamlanmış olur. Belli çıkışlar sonucunda beklenen sonucun üretilmesi neticesinde ağ istenilen statik doğruluğa ulaşmış olur. Bu beklediğimiz performans seviyesidir.

Eğitim setlerinin geniş olması ve çok çeşitli veriler içermesi ağın, özellikleri öğrenme ve bunlar arasındaki ilişkiyi algılama açısından önemlidir. Eğitim aşamasının sonunda öğrenmenin ne kadar başarılı olduğu, ağın daha önce karşılaşmadığı veriler kullanılarak test edilmesi sonucunda görülebilir.

4.4.2 Denetlenmeyen Öğrenme

Denetlenmeyen öğrenme veya kendini denetleyen öğrenme de diyebileceğimiz bu yöntem, kendi kendini organize eden sistemler, radyal temelli fonksiyon ve genelleştirilmiş regresyon yaklaşımlarında kullanılmaktadır. Bir çok durum için çözümü sağlayabildiği kanıtlanmıştır.

Denetlenmeyen sinir ağları ağırlıklarını modifiye etmek için hiç bir dış etki kullanmazlar. Bunun yanısıra kendi başarımını kendi içinde denetleyebilir. Bu sinir ağı giriş sinyalindeki uyum ve eğime bakarak ağın fonksiyonunda adaptosyonlar yapar. Yanlış veya doğruluğu bilinmeden ağ kendini organize etmek için bazı bilgilere sahip olmalıdır. Bu bilgi ağ topolojisi ve öğrenme kuralına bağlıdır.

4.5 Öğrenme Kuralı

Yapay sinir ağlarının öğrenme kuralı, çeşitli kontrol faktörlerine bağlıdır. Yakınsama oranını seçerken bir çok nokta göz önünde bulundurulmalıdır. Yavaş öğrenme oranı sistemi yeterli derecede eğitmek için daha çok süre demektir. Hızlı öğrenme oranlarında ağ, ayrımları (sınıflandırmayı) yeteri kadar doğru biçimde yapmayabilir.

Genel olarak, ağ yapısının kompleksliliği, boyutu, parametre seçimi, mimarisi, öğrenme kuralının tipi ve istenilen doğruluk gibi çeşitli faktörler ağın ne kadar süre ile eğitileceğini belirleyen faktörleri oluşturmaktadır.

4.6 Radyal Temelli Fonksiyon Ağları (RBF)

Radyal temelli fonksiyon ağı tasarımı çok boyutlu uzayda eğri uydurma yaklaşımıdır ve bu nedenle RBF‟in eğitimi, çok boyutlu uzayda eğitim verilerine en uygun yüzeyi bulma problemine dönüşür. RBF‟in genellemesi eğitim sırasında bulunan çok boyutlu yüzeyin kullanılmasına eşdeğerdir. Radyal temelli fonksiyonlar sayısal analizde çok değişkenli

problemlerin çözümünde kullanılmış ve daha sonra yapay sinir ağlarında kullanılmaya başlanmıştır. RBF‟ in yapısı ileri beslemeli yapay sinir ağlarına benzer olarak giriş katmanı, ara katman ve çıkış katmanından oluşur. Giriş katmanından ara katmana dönüşüm radyal tabanlı aktivasyon fonksiyonları ile doğrusal olmayan sabit bir dönüşümdür. Ara katmandan çıkış katmanına ise uyarlamalı ve doğrusal bir dönüşüm gerçekleştirilir [10].

RBF‟de uyarlanabilecek sabit parametreler; merkez vektörleri, radyal fonksiyonların genişliği ve çıkış katman ağırlıklarıdır. Çıkış katmanı doğrusal olduğundan ağırlıklar, eğim düşme ya da doğrusal en iyileme yöntemleri ile kolayca bulunabilir. RBF‟nin performansı merkez vektörlerin genişliğinde yapılan uyarlamalarla iyileştirilebilir. Merkez vektörleri eğim düşme yöntemine göre eğiticili öğrenme algoritması ile uyarlanarak, dik en küçük kareler yöntemi ile, ya da kendiliğinden düzenlemeli yöntem ile giriş örneklerinden öbekleme yapılarak belirlenebilir [11].

4.7 GenelleĢtirilmiĢ Regresyon Ağları (GRNN)

Genelleştirilmiş Regresyonlu Ağlar, radyal tabanlı ağların genellikle fonksiyon yaklaştırma problemleri için kullanılmakta olan özel bir halidir. Bu ağlar, belirli sayıda ara katman nöronu ile önemli ölçüde iyi başarı sağlayarak sürekli fonksiyona yaklaşımı gerçekleştirirler. Çok katmanlı ağlardaki gibi sürekli bir eğitime ihtiyaç duymamaktadırlar. Giriş ve çıkış arasında eğitim setinden elde ettiği ilişkiyle herhangi sıradan bir fonksiyona yaklaşabilir. Anlaşılacağı üzere, eğitim kümesinin boyutları büyüdükçe yaklaşımdaki hata oranı sıfıra yakınsar. GRNN, standart teknikler gibi sürekli değişkenler üzerinde yargıya varılabilmesi için de kullanılır. Temelinde standart bir istatistiksel yöntem olan Kernel yaklaşımını kullanmaktadır. Bu tanıma göre, bağımlı bir y değişkeninin bağımsız bir x değişkenine göre regresyonu, verilen x girişleri ve eğitim kümesine göre y için en çok olasılığa sahip değere yaklaşır. Yaklaşım yöntemi ortalama karesel hatayı en düşük değere yaklaştıracak şekilde belirlenir. Bu yöntem, belirli bir eğitim kümesinde giriş ve çıkışlar için bileşik olasılık yoğunluk fonksiyonunun da tahmini için kullanılmaktadır. Ağırlık vektörleri eğitilmez, eğitim setinden belirlenen hedef değerler ağırlık matrisi olarak atanır [12].

4.8 Ġleri Beslemeli Geriye Yayılım (Backpropagation) Algoritması

İleri beslemeli ağların bir türü olan geriye yayılım algoritması yapay sinir ağı uygulamalarında en çok kullanılan yöntemlerden biridir. Bu methodun en önemli özelliği çıkışta bulduğu hatayı ağ boyunca geri yayarak her nörondaki hatayı hesaplamasıdır. Bu yöntemde kullanılan formüller aşağıdaki gösterilmiştir [13].

Ara katmandaki ve çıkış katmanındaki nöronların hesaplanması

(4.1)

f : çıkış fonksiyonu

j i

Benzer Belgeler