30.09.2017

Yapay Sinir Ağlarının Yararları ve Sakıncaları

Günümüzde sürekli olarak gündemde olan yapay zeka konusunda büyük bir tedirginlik hakim. Neler yapabiliriz yapay zeka teknolojisi ile gibi bir soru aklımıza geldiğinde bu sorunun cevabının herşeyi olması gerçektende ürkütücü. Bundan dolayı bu konu ile ilgili ülkeler arası birbirlerini uyarma son dönemde haberlerde sıkça gördüğümüz bir durum haline geldi. Peki bir de maddeler halinde yapay sinir ağlarının yararları ve sakıncalarını inceleyelim.

Yapay sinir ağlarının en büyük üstünlükleri, öğrenme kabiliyeti olması ve farklı öğrenme algoritmaları ile öğrenme metodolojisini değiştirebilmemizdir. Sakıncaları arasında ise, yapılan işin analiz edilememesi ve öğrenebilme algoritmalarının sonucunda makinenin öğrenememe riski yapay sinir ağlarında kritik noktadır.

Yapay sinir ağlarının yararları:

  • Girilen bilgiler veri tabanında değil, ağın tamamında yer alır ve bu şekilde saklanır. Bundan dolayı hiçbir zaman veri kaybı sorun teşkil etmez. Verinin kaybolması durumunda ağın yapısı veya öğrenme yeteneğini kaybetmezler.
  • Ağ yapısı içerisinde eksik bilgi olması halinde bile ağ bir çıktı üretir. Eksik bilgiden kaynaklı öğrenme özelliğini kaybetmez.
  • Ağ topolojisi içerisinde tanımlanan hücreler içerisinden bir veya birkaç hücrenin çalışmama durumu ağın genel yapısını etkilemez. Öğrenme sürecine devam eder ve karşı bir çıktı üretir.
  • Öğrenme sürecini tamamlayan sinirsel ağ benzer bir olay karşısında daha önceden öğrenmiş olduğu özellikleri kullanabilir. Benzer durumlarda doğru sonuçlar üretebilir.
  • Sayısal gücünün yüksek olmasından kaynaklı bir veya birden fazla işlemi aynı anda yapabilme yetisine sahiptirler.

Yapay sinir ağlarının sakıncaları:

  • Yapay sinir ağları öğrenebilme yetisine ve veri işleme gibi özellikleri kullanılan donanıma bağlıdır. Yapılan işlemin gücü ve hızı kullanılan donanım ile paraleldir.
  • Yapay sinir ağlarının en önemli sorunu ağın davranışlarının açıklanamamasıdır. Öğrenme sürecini analiz edebilmek mümkün değildir. Öğrenme sürecini tamamlasa bile bu öğrenme sürecinden sonraki verdiği doğru cevapları neye göre verdiği bilinemez.
  • Ağın eğitim süresi bir dezavantajdır. Çünkü ağın bir problemi kavrama ve öğrenme süresinin ne kadar süreceğini daha öncesinden bilemeyiz.
  • Yapay sinir ağları entegrasyon anlamında zorluklar oluşturur. Farklı sistemlerle entegre olması tahmin edilenden daha zordur.

25.09.2017

Yapay Sinir Ağlarının Genel Kullanım ve Uygulama Alanları

Günümüzde yapay sinir ağları hızla gelişmektedir. Sadece tek bir alana hizmet etmeyen yapay sinir ağları birçok alanda geliştirilmeye devam etmektedir. Yapay sinir ağları ileri beslemeli ağlar ve geri beslemeli ağlar olmak üzere iki temel üzerine konumlandırılmıştır. Özellikleri arasında bilgiyi sınıflama ve bilgiyi yorumlama gibi problem çözümlerinde kullanılmak üzere odaklandırılmıştır.

Kullanımı ilk olarak tekrarı olan işler arasında olsa da, zaman ilerledikçe bilgiye anlam katmak ve var olan bilgiden sonuç çıkarmak şu an gelinen son durumdur.

Yapay sinir ağlarının genel anlamda kullanıldığı alanlara bakmamız gerekirse;
  • Sistem modelleme
  • Ses tanıma
  • Parmak izi tanıma
  • Meteoroloji yorumlama
  • Denetim
  • Kalp fonksiyonları izleme, tanıma yorumlama gibi fizyolojik işaretler

Bu maddeler şu an günlük hayatımızda var olan fakat bizim farkına bile varmadığımız maddeler. Yapay sinir ağları bu maddeler dışında da her türlü bilgiyi okuma, tanıma ve yorumlama yetisine sahiptir. İş hayatı, ileride ele alacağımız bankacılık ve finans, endüstri ve eğitim gibi alanlarda bulanık veya var olan basit yöntemler ile çözülemeyen problemlerin çözümünde ya da doğrusal olmayan her türlü sistemde rahatlıkla uygulanabilmektedir.

Yapay sinir ağların uygulama alanlarını ele almamız gerekirse, birçoğunda aşağıdaki maddelerden herhangi birine girdiğini görebiliriz.
  • Öngörü
  • Sınıflandırma
  • Veri kavramlaştırması
  • Veri birleştirmesi
  • Veri süzülmesi

Her bir uygulama ağında farklı türde sorular mevcuttur ve çözümü tek bir sınıflandırma üzerinden gitmek doğru olmaz. Bundan dolayı farklı türde olan sorunları çözmek için üst tarafta sıraladığım maddelerden bir veya birden fazla alana dokunmaktadır. Tüm uygulama alanlarını ele aldığımız zaman en çok ileri beslemeli geri yayılımlı ağ en çok kullanılan ağ yapısıdır.

Uygulama alanlarını ele aldığımızda sinir ağları endüstriyel uygulamalar için kullanılmaktadır. Endüstriyel alanda daha çok kalitenin geliştirilmesinde daha yaygın olarak kullanılmaktadır.

Yapay sinir ağları dil işleme üzerine çok büyük araştırmalar süregelmektedir. Günümüzde Google firması translate.google.com üzerinde yapay zeka teknolojisi kullanmaya başladığını duyurdu ve çeviri olarak büyük bir oranda artış sağlamıştır. Metni çevirme, otomatik dili algılayıp çevirme, sesle kumanda edebilme ve doğal dil işlemleri hızla ilerlemeye devam etmektedir.

Ulaştırma ve havacılık uygulamaları alanında da faaliyet göstermektedir. Birçok araba firması yapay zeka ile fren sistemi denetimi, mühendislikten kaynaklı hataları tespit etme ve çözümleme, süspansiyon sistemlerinde kullanılmaya başlamıştır. Araştırmalar neticesinde umut verici sonuçlar elde edildiğini başta Ford firması olmak üzere birçok üretici firması tarafından dile getirilmiştir. Aynı zamanda NASA’da uzay mekiği yolculuklarında manevra denetimi için yapay sinir ağları çalışmaları yapılmaya devam etmektedir.

Finans, borsa ve kredi kartı uygulamalarında da kullanılmaktadır. Araştırılmaya devam eden projeler banka işlemleri, kredi kartı şirketleri ve ticari borç kuruluşlarının kararlarında, tüm bu süreçlerin öğrenilmesi ve istatistiksel eğilimlerin olması gerekmektedir.

Bir diğer uygulama alanı tıp ve biomedikal alanlar üzerindedir. Bu alan yapay zekanın ilk denenen ve başarılı şekilde sonuçlar almasına neden olan uygulama alanıdır. Özellikle hastaların ilaçlara karşı tepkilerini incelemede ve kanser hastalıklarında yapay sinir ağları kullanılmaktadır.

Son olarak iletişim sanayi uygulama alanlarında da araştırmalar ve kullanımlar başlamıştır. Telefon hatlarının güncellenmesi ve hatlarda olabilecek yankıların giderilmesi gibi temel sorunlar üzerinde kullanılmaya başlamıştır. Veri sıkıştırma işlerinde de yapay sinir ağları ile çözümler üretme süreci halen devam etmektedir.

19.09.2017

Yapay Sinir Ağlarında Öğrenme

Yapay sinir sistemlerinde öğrenme en basit hali ile dışarıdan bilgi girişi giriş katmanına aktarılır, girişi yapılan datalar işlenir ve aktivasyon fonksiyonundan geçirilerek bir veya daha fazla çıkış üretilir. Sistemden çıkan sonuç ile beklenen sonuç karşılaştırılır. Aradaki fark oransal olarak daha önceden belirlenen orandan büyük ise, bu işlem değişen algoritma ile tekrar sağlanır. Bu süreç belirlenen hata oranını yakalayana kadar devam eder. Algoritma üzerindeki değişikler çoğunlukla var olan ağın ağırlıkları üzerinden yapılır. Ağırlıklar üzerinde oynanarak aktivasyon fonksiyonu daha efektif bir şekilde kullanılması sağlanmak istenir. Yaşanılan duruma göre oynanan ağırlıklar sonucunda gelinmesi istediğimiz sonuca ulaşma evresine yapay sinir ağlarında öğrenme adını veririz.

Beklediğimiz sonuca ağırlıkların oynanması ile ulaştıktan sonra, bir sonraki aşamada dış dünyadan edindiğimiz dataların değişimi izlemektedir. Giriş katmanına verilen data değiştirilir ve önceki datadan farklı bir data deseni ile tekrar ağırlıkların doğruluğu hesaplanır. Belirlenen hata oranı bir başka data deseni verildiği zamanda tutuyorsa makinanın istemiş olduğumuz kuralı öğrendiği anlamına gelir.

Bir ağın öğrenme sürecini maddeler halinde ele alırsak;
  1. Sisteme girilmesini istediğimiz verilerin toplanması gerekmektedir. Veriler sisteme tek tek girilerek ağın problemi öğrenmesi sağlanır. Ağ dışarıdan almış olduğumuz verilerle öğrenmesini tamamladıktan sonra birde test datası oluştururuz. Bu test datası ile ağın ne kadar öğrenip öğrenemediğini test etmemize yarar.
  2. Ağın topolojik yapısı belirlenir. İstenilen sonuca göre uyarlanır. Giriş, gizli katmanlar, çıkış katmanları belirlenir, bu katmanlar arasında hücrelerin ne kadar olacağı bu aşamada belirlenir.
  3. Ağın öğrenme katsayısını toplama ve aktivasyon fonksiyonları, momentum katsayısı, ağırlıkların doğru belirlenmesi gibi parametrelere bağlıdır.
  4. Ağırlıklar başlangıç aşamasında tahmin edilen şekilde verilir. Ağın öğrenmeye başlaması ile ağırlıkların sonuca göre güncellenmesi evresi de başlar.
  5. Ağın ağırlık katsayılarını belirlemek adına test verileri ağın giriş katmanına verilir. Bu sayede ağırlık katsayıları oluşan sonuçlara göre sürekli güncellenir.
  6. Geri hesaplama metodu ile hatanın azaltılması için ağırlıklar güncellenir.
  7. Beklenen sonuç ile çıkan sonuç arasındaki oran istenilen orana yakın olduğu zaman ağın öğrenmesi tamamlanmış olarak kabul edilir.
  8. Öğrenme sürecini tamamlayan ağ yapısına bu sefer dış dünyadan daha farklı veri setleri verilir. Yeni verilen veri setlerinde de ağırlık güncellemesi gerekmez ise ağ yapısı öğrenme sürecini tam anlamı ile tamamlamış kabul edilir.

Ağa sunulan girdiler için istenen çıktının üretilmesi için belirlenen ağırlık değerleri ilk seferde rastgele verilir. Ağın öğrenme sürecine başlaması ile bu ağırlık değerleri üzerinde sürekli bir güncelleme gerekir.

Ağın öğrenme sürecinde beklenen hata payı hiç yakalanmayabilir. Bu durum ile karşılaşıldığı zaman ağırlık katsayılarından çok ağın topolojisi, katman mimarisi veya ağa sunulan verilere bakılması gerekir. Altyapıda bir değişiklik yapmak bu durumlarda daha doğru olacaktır.

Dış dünyadan aldığımız verileri ağ yapısında giriş katmanına veririz ve çıkan çıktıda ağın öğrenmiş olduğunu bekleriz. Öğrenme süreci tamamlanana kadar güncellemeler yapar, ağ yapısından en verimli sonucu almayı amaçlarız. Bir yapay sinir ağ yapısının temelde üç tane öğrenme algoritması vardır. Bunlar; danışmanlı, danışmansız ve takviyeli öğrenmedir.

1.     Danışmanlı Öğrenme

Bu tip öğrenme sürecinde herhangi bir şekilde öğretenin bulunması gerekmektedir. Var olan probleme ait girdiler ile beraber çıktı değerlerinin de ağ yapısına verilmesi gerekir. Girdi-çıktı karşılıkların tutarlı olabilmesi için modelde bulunan ağırlıklar katsayıları buna göre güncellenmelidir. En uygun değer bulunana kadar ağırlıklar girdi-çıktı verileri baz alınarak güncellenir.

2.     Danışmansız Öğrenme

Bu öğrenme yönteminde çıktı değerleri sisteme verilmez, sadece dış dünyadan alınan girdi verileri ağ yapısına aktarılır. Ağ yapısından verilen girdileri birbirine yakınlığı baz alınarak sınıflandırması beklenir. Ağırlıklar bu sınıflandırmayı yapabilecek şekilde güncellenir. Ağ yapısı yapması gereken sınıflandırmayı verilen ağırlık katsayılarından anlar. Güncelleme tamamlandığında ağ yapısının öğrenmesi de tamamlanmış sayılır.

3.     Takviyeli Öğrenme

Bu öğrenme yöntemi çok kullanılmamakla beraber bir öğretici takviyeli öğrenme yönteminde de yoktur. Danışmanlı öğrenme ile kıyaslanırsa bu öğrenme metodolojisinde sisteme çok detay verilmemektedir. Girilen bilgiler karşısında çıkan çıktıya bakılarak, ağ yapısına çıkardığı sonucun doğru veya yanlış ya da iyi veya kötü olduğu söylenir. Verilen bu bilgiyi ağın kullanıp tekrar öğrenmesi amaçlanmaktadır.

17.09.2017

İleri ve Geri Beslemeli Ağlar

İleri Beslemeli Ağlar

İleri beslemeli ağlar katmanlara ayrılmıştır. Giriş katmanından çıkış katmanına doğru tek bir yönde ilerler. Tek bir katman içerisinde bağlantı bulunmaz. Daima bir sonraki katman ile bağlantısı vardır. Bir katman üzerindeki çıkış bir sonraki katman için giriştir.

Katmanlar halinde incelemeye gerek duyulursa, giriş katmanı dış dünyadan gelen bilgileri alır ve doğrudan gizli(ara) katmana iletir. İşlemler bu katman veya katmanlar arasında gerçekleşir. Gizli katman bir veya birden daha fazla olabilir. Bu sayı problemin yapısı ile doğrudan alakalıdır ve bu durum öncesinde kurmuş olduğumuz ağ topolojisine bağlıdır. Ara katman işlediği bilgiyi çıkış katmanına iletir. Çıkış katmanı da dış dünyaya çıktı ve çıktıları iletir.

Dikkat edilmesi gereken bir başka husus da bir katman diğer katmanın bütün prosesleri bağlantı halindedir. Bilgileri eksiksiz olarak tüm proseslere iletir.

Çıkış katmanı dış dünyaya bilgiyi iletir. Genel olarak delta öğrenme kuralı kullanılır. İleri beslemeli ağlar genelde genelleme, sınıflandırma ve tanıma gibi problemler için kullanılır.

Geri Beslemeli Ağlar

Geri beslemeli ağlar genellikle danışmansız öğrenme kurallarında kullanılır. Çıkış katmanı ve gizli katmanlardaki çıkışların, bir önceki katmanlara geri beslendiği ağ yapısıdır (Bir önceki yazımda paylaşmış olduğum şekilde detaylı olarak gösterdim).Geri besleme genelde geri bildirim için kullanılır.

Geri beslemeli ağlar tahmin uygulamaları için kullanılır. Dinamik hafıza yapısına sahiptirler. Bunun nedeni olarak çıkış, hem o andaki girişleri hem de önceki girişleri birlikte tutmasından kaynaklıdır.

Geri beslemeli ağlar mimarisinden kaynaklı olarak doğrusal olmayan dinamik bir yeteneğe sahiptir.  Bu ağ yapılarında genelde beklenen çıktı ile ağ yapısından çıkan çıktı karşılaştırılır. Aradaki fark hatadır. Bu hatayı aza indirgemek için bu mimari kullanılır.

Ufak bir karşılaştırma yapmak gerekirse; ileri beslemeli ağlar "hataların karelerinin toplamı" en küçük sonuca yönelik ağırlık kümelerini bulmaya yöneliktir.

15.09.2017

Çok Katmanlı Sinir Ağları

Tek katmanlı sinir ağları ile sadece doğrusal olan problemler çözülebilmekteydi. Doğrusal olmayan herhangi bir problemi çözmek mümkün değildi. Bu problem çözme yeteneğinden dolayı yapay zeka konusu yıllar boyu askıya alınsa bile, sonrasında bu soruna ileriki zamanlarda çözüm getirilmiştir.

ÇKA, genellikle öğrenme yönteminde delta kuralını kullanmaktadır. Bu kuralda girilen girdiler üzerinde en doğru çıktıyı elde etmek temel amaçtır. En doğru çıktı için bir girdinin ve sonrasında bir çıktının olmasının yeterli olmadığı açıktır. Bundan dolayı ara katmanların kullanılması ile hata payını en aza indirgemek amaçlanmıştır. Öncesinden hazırlanan eğitim seti giriş katmanına aktarılır, bu girdiler ara katman veya katmanlar tarafından işlenir ve çıkış katmanından girişi yapılan ağın sonucu gönderilir. Kullanılan öğrenme algoritmasında amaç beklenen çıktı ile çıkan çıktı arasındaki farkı en aza indirgemek üzerinedir.
Geri Beslemeli Çok Katmanlı Ağ Yapısı, Kabalcı, 2015

Yukarıdaki şekilde de görüldüğü üzere çok katmanlı sinir ağ yapıları giriş(girdi) katmanı, çıkış(çıktı) katmanı ve giriş ve çıkış katmanı arasında ara bağlantılar sağlayan gizli(ara) katman veya katmanlardan oluşur.

Giriş katmanı dış dünyadan topladığımız bilgileri verdiğimiz katmandır. Bu katman gelen tüm bilgileri gizli katmana gönderir. Giriş katmanlarında bilgi işleme yapısı bulunmamaktadır. Sadece bilgilerin girişi kabul edilir ve girilen bilgiler gizli katmana aktarımından sorumludur. Gizli katmandaki tüm hücrelerin hepsiyle bağlantısı mevcuttur.

Gizli katman, giriş katmanından gelen bilgileri işleyerek çıkış katmanına gönderir. Gelen bilgileri işleme bu katman tarafından yapılır. Katmanların içinde birden fazla proses elemanı bulunabilir. Her proses elemanı bir sonraki katmanın proses elemanlarına eksiksiz olarak bağlanmak zorundadır.

Çıkış katmanı, ara katmandan gelen işlenmiş olan veriyi çıktı olarak dış dünyaya sunar. Çıkış katmanında da birden fazla proses elemanı bulunabilir. Her proses elemanı bir çıktı üretir. Bundan dolayı çıkış katmanındaki proses elemanları dış dünyada ulaşmak istediğin veriyle paralel bağlantısı vardır.

Bu tür ağ yapılarında ileride değineceğim yapay sinir ağlarından öğrenme yöntemlerinden biri olan danışmanlı öğrenme yöntemi kullanılmaktadır. Bu öğrenme kuralında ağın çıktısı ileri yönde hesaplama ile bulunur. Tahmin edilen çıktı ile çıktı katmanından çıkan çıktılar karşılaştırılır. Hata oranı beklentinin üzerinde ise, geriye doğru hesaplama ile algoritmada kullanılan ağırlıklar güncellenir ve tekrar veriler girdi katmanına gönderilir.

Maddeler haline çok katmanlı bir ağ yapısının çalışma prensibini ele almak gerekirse;

  1. Örneklerin toplanması: Ağın çözmesini istediğimiz olayla ilgili verilerin bir araya getirilmesi. Ne kadar çok benzer durum verilerini bir araya getirir sisteme iletirsek, alacağımız sonuçtaki hata oranı o kadar düşük olacaktır.
  2. Ağın algoritmasının belirlenmesi: Topolojik yapının doğru belirlenmesi istenilen çıktı ve sistemin doğru öğrenmesi için önemlidir.
  3. Öğrenme parametrelerinin belirlenmesi: Bu kısımda teknik hesaplamalar devreye girmektedir. Öğrenme katsayısı, toplama/aktivasyon fonksiyonlarının belirlenmesi gibi hesaplamalar yapılmaktadır.
  4. Ağırlık değerlerinin belirlenmesi
  5. Seçilen örnek verilerin giriş katmanına iletilmesi
  6. İleri yönde hesaplama
  7. İstenilen çıktı ile çıkış katmanının vermiş olduğu çıktının karşılaştırılması ve farkın nedeni olan hatanın tespit edilmesi
  8. Hata kabul edilebilir oranda değil ise, geriye doğru hesaplama ile ağırlık değerlerinin tekrar hesaplanması
  9. Hata oranı istenilen düzeye inmiş ise prosesin sonlanması; aksi durumda ağırlıkların yeni değerleri ile ağa tekrar gönderilmesi gerekir. (Not: Bu maddede aksi durum olursa 5.maddeden tekrar işlemlerin başlaması gerekmektedir.)

13.09.2017

Tek Katmanlı Sinir Ağları

Tek katmanlı sinir ağları sadece girdi ve çıktıdan oluşmaktadır. Ara katman bulunmamaktadır. Kompleks problemlere cevap verebilme yeteneğine sahip değillerdir. 

Perception, Rosentblatt tarafından 1960’lı yıllarda sıradan makinelerin çözemediği problemleri çözebilen “yeni tür bilgisayar” olarak ifade edildi. Perception’lar problem çözme konusunda oldukça sınırlıdırlar. Perception yönteminde eşik değeri mantığı önemli faktörlerden biridir. Eşik değeri problemin karakteristiğine göre belirlenir ve bu değer yardımıyla Perception modeli iyi sınıflandırma yapabilmektedir.

Perception Örneği
Perception modelinde girişlerden (a1,a2,...,an) gelen değerler ağırlıklar (w1,w2,…,wn) ile çarpılarak toplama fonksiyonunda toplanır. Bu toplamın değer eşik değeri ile karşılaştırılır. Eşik değerinden büyük çıkarsa sonuç1, diğer durumlarda -1 olarak belirlenir. Bu durumdan ötürü sonuç sadece iki farklı sınıf üzerinden değerlendirilmektedir.

12.09.2017

Yapay Zeka'da Katmanlar Arası Bağlantılar

Ağ mimarisinde sinirler katmanlarda bulunmaktadır. Girdi katmanına gelen girdiler dış dünya verileri olduğu gibi çıktı katmanından çıkan çıktılarda yine dış dünyayı oluşturur. Eğer çok katmanlı bir yapı var ise, girdi ve çıktı katmanları arasında bir veya daha fazla gizli katman bulunur. Ara katman sayısı ağın en iyi çalışabilmesi için gereken sayı ne ise o sayıda olmalıdır. Bu yapılan işin kompleksliğine bağlı olarak değişir. Çok ara katman yapılması bağlantılar arasında çok fazla varyasyonun olmasından kaynaklı ağda genelleşme sorunu ortaya çıkar.

Katmanlar arası farklı bağlantılar mevcuttur. Dört ana başlıkta bağlantı çeşitlerini toplayabiliriz.
Tam bağlantı: İlk katmandaki her sinir ikinci katmandaki her sinire bağlıdır.
Kısmi bağlantı: Katmandaki sinir sonraki katmandaki her sinir ile bağlantılı olmaması durumudur.
İleri besleme: Katmandaki sinirler çıkışlarını sonraki katmandaki sinirlere gönderip geri bir giriş almazlar. Tek yönlü bir yapı mevcuttur.
Çift yönlü: Katmandaki sinirlerin çıkışlarını bir önceli katmandaki hücrelere taşıyan bir yapı var ise çift yönlü bir bağlantı söz konusudur.

10.09.2017

Yapay Sinir Ağı Modeli

Sadece girdi ve çıktı katmanı bulunan ağlar karmaşık problemlere cevap verebilme yeteneğine sahip değildir. Karmaşık problem çözümleri için gizli katman(ara katman) şarttır. Aşağıdaki şekilde tek gizli katmana sahip üç katmanlı bir yapay sinir ağı görülmektedir.

Çok Katmanlı Yapay Sinir Ağ Yapısı 

Örnekte bir tane gizli katman bulunmaktadır. Yapay sinir ağ yapısında birden daha fazla gizli katman olabilir. Bir katmandaki her sinir, bir sonraki katmanın bütün sinirlerine bağlıdır.

Girdi katmanından alınan girdiler, girdi katmanı ve gizli katman arasında bulunan bağlantı ağırlıkları ile çarpılır ve gizli katmana iletilir. Gizli katmana gelen girişler toplanır ve gizli katmana iletilir. Yine aynı şekilde gizli katman ile çıktı katmanı arasındaki bağlantılar çarpılarak ve eşik değer üzerine ilave edilerek çıktı katmanına iletilir. Şekilde de görüldüğü gibi tek yönlü bir iletişim vardır.

6.09.2017

Yapay Sinir Ağının Ana Öğeleri

YSA(Yapay Sinir Ağı), birbirine bağlı çok sayıda işlem elemanlarından oluşmaktadır. Genellikle paralel işleyen yapıları mevcuttur. Biyolojik sinir hücrelerine benzer bir yapısı vardır. Yapay nöronlar aralarında bağlantı kurarak ağı meydana getirirler. İnsan beyninde öğrenme işlemi aksonlar sayesinde gerçekleşir. İnsan beyni yeni aksonlar üreterek; aksonları uyararak veya mevcut aksonların güçlerini değiştirerek öğrenir.

Biyolojik sinir ağlarının sinir hücreleri gibi YSA’ların da sinir hücreleri vardır. Buna proses elemanı denir. Her bir proses elemanı 5 temel elemandan oluşur.
  • Girişler
  • Ağırlıklar
  • Toplama Fonksiyonu
  • Aktivasyon Fonksiyonu
  • Çıkış

Basit Yapay Sinir Ağının Yapısı

Girişler A ile gösterilmektedir. Bu girişlerin her biri ağırlık olan W ile çarpılır. Basit bir şekilde anlatmak gerekirse, elde edilen bilgi eşik değeri ile toplanır ve sonucu oluşturmak için Aktivasyon Fonksiyonu ile işlem yapılır. Bu işlemler sonucunda y çıktısı alınır. Tüm sinirsel ağların yapısı bu temele dayanarak oluşturulur. YSA’nın öğrenme yeteneği ağırlıkların süreli olarak güncellenip ayarlanması ile doğru orantılıdır.

1.     Girişler
Girişler (A1,A2,…,AN) dış dünyadan veya başka bir hücreden almış olduğu bilgiyi sinire getirir. Bir sinir genelde birçok yerden girdileri alır. Bu girdiler toplanmak üzere nöron çekirdeğine gönderilir.

2.     Ağırlıklar
Ağırlıklar (W1,W2,…,WN) yapay sinir tarafından alınan girişlerin ağırlıklarını belirleyen katsayılardır. Her bir giriş kendine ait bir katsayıya sahiptir. Bu katsayı yapay hücreye gelen bilginin önemini ve hücre üzerindeki etkisini gösterir.

Ağırlıkların değeri pozitif, negatif veya sıfır olabilir. Bir girişin katsayısının yüksek olması o girişin yapay sinire daha güçlü bağlanması, küçük olması ise zayıf bağlanması anlamına gelmektedir.

3.     Toplama Fonksiyonu
Toplama Fonksiyonu aynı zamanda Toplama İşlevi olarak da adlandırılabilir. Sinirde her bir ağırlığın ait olduğu girişlerle çarpımının toplamlarını eşik değeri ile toplanarak o hücrenin net girdisini hesaplayan bir fonksiyondur. Bazı durumlarda bu toplama işlemi en az(min), en çok(max), çoğunluk hesaplama veya kümülatif toplama gibi karmaşık işlemlerde olabilir.

4.     Aktivasyon Fonksiyonu
Aktivasyon Fonksiyonu aynı zamanda Etkinlik İşlevi olarak da adlandırılabilir. Toplama fonksiyonu tarafından hücreye gönderilen net bilgiyi işleyerek hücrenin bu girdiye karşılık üreteceği çıktıyı belirleyen fonksiyondur. F(Etkinlik) olarak gösterebiliriz. Kullanım amacı, zaman söz konusu olduğunda toplama işlevinin çıkışının değişmesine izin vermektedir.

5.     Çıkış
Çıkış y=f(Etkinlik), aktivasyon fonksiyonu sonucunun dış dünyaya ya da diğer sinirlere gönderildiği yerdir. Bir siniri sadece bir çıkışı vardır. Bir sinirin çıktısı başka bir sinirin girişi olabilir.

Daha iyi konuyu canlandırmak adına tüm bu YSA alt elemanlarını biyolojik sinir ağı ile karşılaştırmamız gerekirse;

Biyolojik Sinir Ağı
Yapay Sinir Ağı
Sinir Sistemi
Sinirsel Hesaplama Sistemi
Sinir
Düğüm(İşlem Elemanı)
Sinaps
Ağırlık
Dendrit
Toplama Fonksiyonu
Hücre Gövdesi
Aktivasyon Fonksiyonu
Akson
Çıkış
Biyolojik ve yapay sinir ağının karşılaştırılması

4.09.2017

Yapay Sinir Ağları

Yapay sinir ağlarının temeli sayısal bilgisayarlara dayanmaktadır. Sayısal bilgisayarlar ilk olarak Matematik işlemlerinde kullanılmıştır. Sonrasında metin, sembol, ses ve resim işlemeyi de kapsayacak şekilde geniş bir uygulama alanı bulmuştur. Aşağıdaki şekilde bir sayısal bilgisayarın işlevsel özelliğinin şekli görülmektedir. Sayısal bilgisayarların temeli Von-Neumann Makinesinin temeline dayanmaktadır.

Von - Neumann Makinesi
Makine bilgi işleme konusunda basit sayılabilecek tüm işlemleri yapabilen makinelerden sonra insan bilgi işleme yapısı yeni araştırma konusu olmuştur. Bu araştırma sürecinde makine bilgi işleme ile insan bilgi işlem süreçlerini makineler veya bilgisayarlar üzerinden birleştirmektir. Bu durum üzerine yoğunlaşan bilim insanları insan beyninin yapısı ile ilgili birçok araştırma yapmıştır. Bu araştırmalar hem sinirsel hem de sinirsel - psikolojik deneyler üzerine konumlandırılmıştır.

Yapay Sinir Ağları (YSA), insan beynini modelleyerek taklit etme tekniklerinden biridir. YSA’nın yapıları alışık olduğumuz geleneksel yöntemlere sahip sayısal bilgisayar yapılarından farklı olarak ağırlıklı bağlantılar aracılığıyla birbirine bağlanan ve her biri kendi belleğine sahip işlem elemanlarından oluşan hem paralel hem de dağıtılmış bilgi işleme yapılarına sahiptir.

YSA'nın en önemli özelliklerinden biri kendi kendine öğrenme özelliğine sahip olmasıdır. Bunun yanında ezberleme ve bilgiler arasında ilişkiler oluşturma yeteneği de vardır.

Bir sonraki yazıda yapay sinir ağlarının öğelerini inceleyeğiz.