Yapay Sinir Ağları (Artificial Neural Networks)

Benzer belgeler
Yapay Sinir Ağları. (Artificial Neural Networks) DOÇ. DR. ERSAN KABALCI

Zeki Optimizasyon Teknikleri

YAPAY SİNİR AĞLARI. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

İlk Yapay Sinir Ağları. Dr. Hidayet Takçı

Yapay Sinir Ağlarına Giriş. Dr. Hidayet Takçı

Yapay Sinir Ağları. (Artificial Neural Networks) DOÇ. DR. ERSAN KABALCI E S N E K H E S A P L A M A Y Ö N T E M L E R İ - II

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUARI

Çok Katmanlı Algılayıcı (Multilayer Perceptron) DOÇ. DR. ERSAN KABALCI

Esnek Hesaplamaya Giriş

NÖRAL SİSTEMLERE GİRİŞ. Ders Notu

BSM-767 MAKİNE ÖĞRENMESİ. Doğrusal Ayırıcılar (Linear Discriminants)

Çok katmanlı ileri sürümlü YSA da standart geri yayıyım ve momentum geri yayılım algoritmalarının karşılaştırılması. (Eğitim/Hata geri yayılım)

Beynin Anatomik Açıdan İncelenmesi ve Beyin Sisteminin İşleyişi

Suleyman TOSUN

Makine Öğrenmesi 6. hafta

ROBOTLARIN YAPAY SİNİR AĞLARI KULLANILARAK DENETİMİ.

İLERİ ALGORİTMA ANALİZİ-5 YAPAY SİNİR AĞLARI

Dr.Eyyüp GÜLBANDILAR Dr.Eyyüp GÜLBANDILAR

YAPAY SİNİR AĞLARI YÖNTEMİ İLE PAFTALARININ SAYISALLAŞTIRILMASI ARTIFICIAL NEURAL NETWORKS METHOD FOR MAP DIGITIZATION

İnsan beyni, birbiri ile karmaşık ilişkiler içinde bulunan nöron hücreleri kitlesidir. Tüm aktivitelerimizi kontrol eder, yaradılışın en görkemli ve

Yıldız Teknik Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Bölümü. Şekil Tanıma Final Projesi. Selçuk BAŞAK

BAŞKENT ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ BENZER SÜREÇLERDE ÜRETİLEN ÜRÜNLER İÇİN YAPAY ZEKA İLE ZAMAN TAHMİNİ SONER ŞÜKRÜ ALTIN

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Ders 1- Yapay Zekâya Giriş. Erhan AKDOĞAN, Ph.D.

Özörgütlemeli Öğrenme (SOM) A. Cumhur KINACI

Geriye Yayılım ve Levenberg Marquardt Algoritmalarının YSA Eğitimlerindeki Başarımlarının Dinamik Sistemler Üzerindeki Başarımı. Mehmet Ali Çavuşlu

WEB SAYFALARINA İLİŞKİN YAPAY SİNİR AĞLARI İLE SINIFLANDIRMA YÖNTEMİ

Web Madenciliği (Web Mining)

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Giriş.

İş Zekası. Hafta 6 Kestirimci Modelleme Teknikleri. Yrd. Doç. Dr. H. İbrahim CEBECİ

Web Madenciliği (Web Mining)

ÇİMENTO BASMA DAYANIMI TAHMİNİ İÇİN YAPAY SİNİR AĞI MODELİ

DİNLENİM MEMBRAN POTANSİYELİ. Prof. Dr. Taner Dağcı Ege Üniversitesi Tıp Fakültesi Fizyoloji Ab. D.

T.C. KIRIKKALE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ YAPAY SİNİR AĞLARI. Doç.Dr. Necaattin BARIŞÇI FİNAL PROJESİ

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Ders 3- Yapay Sinir Ağları. Erhan AKDOĞAN, Ph.D.

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

Zeki Optimizasyon Teknikleri

ESTIMATION OF EFFLUENT PARAMETERS AND EFFICIENCY FOR ADAPAZARI URBAN WASTEWATER TREATMENT PLANT BY ARTIFICIAL NEURAL NETWORK

etme çabalarının en son ürünlerinden bir tanesi yapay sinir ağları (YSA) teknolojisidir.

Çok Katmanlı Algılayıcılar. Dr. Hidayet Takçı

Otomatik Doküman Sınıflandırma

Otomatik Doküman Sınıflandırma

BİLİŞSEL NÖROBİLİM BİLGİ İŞLEME SÜREÇ VE YAKLAŞIMLARI

TC. GAZİ ÜNİVERSİTESİ SOSYAL BİLİMLER ENSTİTÜSÜ İŞLETME ANABİLİM DALI ÜRETİM YÖNETİMİ BİLİM DALI

Yapay Sinir Ağları GİRİŞ

EN BÜYÜK YER İVMESİNİN TAHMİNİNDE YAPAY SİNİR AĞLARININ KULLANIMI

Yrd. Doç. Dr. A. Burak İNNER

ÖZEL EGE LİSESİ ORTAÖĞRETİM ÖĞRENCİLERİNİN SINAV PERFORMANSI MODELLEMESİNDE YAPAY SİNİR AĞLARI KULLANIMI

Yapay Sinir Ağları ile Web İçeriklerini Sınıflandırma. Yazarlar: Esra Nergis Güven, Hakan Onur ve Şeref Sağıroğlu. Sunan : Esra Nergis Güven

PARÇACIK SÜRÜ OPTİMİZASYONU BMÜ-579 METASEZGİSEL YÖNTEMLER YRD. DOÇ. DR. İLHAN AYDIN

2.1 Bir Sınıfı Örneklerinden Öğrenme Vapnik-Chervonenkis (VC) Boyutu Olası Yaklaşık Doğru Öğrenme... 21

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data)

BÖCEKLERDE SİNİR YAPILARI

GÖRSEL YAZILIM GELİŞTİRME ORTAMI İLE BERABER BİR YAPAY SİNİR AĞI KÜTÜPHANESİ TASARIMI VE GERÇEKLEŞTİRİMİ

Yapay Sinir Ağları ve Yüksek Enerji Fiziği Uygulamaları

MAK 210 SAYISAL ANALİZ

YAPAY ZEKA VE DERİN ÖĞRENMENİN GÜNÜMÜZDEKİ UYGULAMA ALANLARI

Concept Learning. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ. Yapay Zeka - Kavram Öğrenme

Rastgele Süreçler. Rastgele süreç konsepti (Ensemble) Örnek Fonksiyonlar. deney. Zaman (sürekli veya kesikli) Ensemble.

İç Basınç Altında İnce Cidarlı Kabukların Yapay Sinir Ağları ile Çözümü

Yapay Zeka ya giris. Yapay sinir aglari ve bulanik mantik. Uzay CETIN. Université Pierre Marie Curie (Paris VI),

Kısıtsız Optimizasyon OPTİMİZASYON Kısıtsız Optimizasyon

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Makine Öğrenmesi. Erhan AKDOĞAN, Ph.D.

MIT OpenCourseWare Ekonomide İstatistiksel Yöntemlere Giriş Bahar 2009

CBS ve Coğrafi Hesaplama

Hava Kirliliğine Neden Olan PM10 ve SO 2 Maddesinin Yapay Sinir Ağı Kullanılarak Tahmininin Yapılması ve Hata Oranının Hesaplanması

Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü

KÜTAHYA İLİNİN YAPAY SİNİR AĞLARI KULLANILARAK ELEKTRİK PUANT YÜK TAHMİNİ

Yöneylem Araştırması II

İSTATİSTİKSEL DARALTICI (SHRINKAGE) MODEL VE UYGULAMALARI * A Statistical Shrinkage Model And Its Applications*

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

Analitik Hiyerarşi Prosesi (AHP) Yrd.Doç.Dr. Sabahattin Kerem AYTULUN

YÜKSEK LİSANS TEZİ T.C. GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANABİLİM DALI

İSTATİKSEL NORMALİZASYON TEKNİKLERİNİN YAPAY SİNİR AĞIN PERFORMANSINA ETKİSİ

EME Sistem Simülasyonu. Giriş. Olasılık Dağılımı. Rassal Degiskenler

Görüntü Sınıflandırma

METASEZGİSEL YÖNTEMLER

SAYISAL ÇÖZÜMLEME. Sayısal Çözümleme

YZM 3217 YAPAY ZEKA DERS#10: KÜMELEME

İleri Diferansiyel Denklemler

ÇATI DÖŞEMESİNDE MEYDANA GELEN YOĞUŞMA VE BUHARLAŞMA KÜTLELERİNİN YAPAY SİNİR AĞLARI İLE TAHMİN EDİLMESİ

Yapay Sinir Ağları İçin Net Platformunda Görsel Bir Eğitim Yazılımının Geliştirilmesi

SİMPLEKS ALGORİTMASI! ESASLARI!

Fiziksel Sistemlerin Matematik Modeli. Prof. Neil A.Duffie University of Wisconsin-Madison ÇEVİRİ Doç. Dr. Hüseyin BULGURCU 2012

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

T.C. SELÇUK ÜNĐVERSĐTESĐ FEN BĐLĐMLERĐ ENSTĐTÜSÜ

Fizyoloji PSİ 123 Hafta Haft 6 a

Şekil 1.1 Genliği kuvantalanmamış sürekli zamanlı işaret. İşaretin genliği sürekli değerler alır. Buna analog işaret de denir.

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ISK116 - Bölüm 1. Grup Teknolojisi

MEMM4043 metallerin yeniden kazanımı

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

Yapay Sinir Ağları ve Tahmin Modellemesi Üzerine Bir Uygulama

17 İNSAN FİZYOLOJİSİ SİNİR SİSTEMİ-1 Nöron- Glia- Nöron Çeşitleri

Yapay Sinir Ağları Kullanılarak Santrifüj Pompalarda Performans Tayini. Sinan Ardıç YÜKSEKLĠSANSTEZĠ. Makine Mühendisliği Anabilim Dalı

T.C. BALIKESİR ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MATEMATİK ANABİLİM DALI PORTFÖY OPTİMİZASYONU

YÖNEYLEM ARAŞTIRMASI - III

ELEKTROMANYETIK ALAN TEORISI

Tedarik Zinciri Yönetiminde Yapay Zeka Teknikler

SÜREKLĠ OLASILIK DAĞILIMLARI

MAK 210 SAYISAL ANALİZ

Transkript:

Yapay Sinir Ağları (Artificial Neural Networks)

Yapay Sinir Ağları (Artificial Neural Networks) Yapay Sinir Ağları (YSA) genelde doğrusal olmayanolaylarımodellememetodudur. Bir kuralı veya algoritması olmayan problemlerin çözümünde kullanılan sistemlerdir. Yapay Sinir Ağları proses elemanları ve bağlantılardan oluşur. Verilen girdi setine karşılık çıktı seti verir. En temel görevi: Öğrenme yolu ile ilk kez karşılaşılan problemler karşısında yeni bilgiler türetmektir.

Yapay Sinir Ağları (Artificial Neural Networks) Yapay Sinir Ağları ile başından itibaren doğrusal olmayan modelleri oluşturmak için geliştirilmiştir. Genel durumda, doğrusal olmayan modellerin parametrelerini bulmak son derecede zordur, ama YSA lar için verimli algoritmalar geliştirilmiştir. YSA bugünkü en güçlü ve en esnek makine öğrenme yaklaşımıdır.

Yapay Sinir Ağları (Artificial Neural Networks) Yapay sinir ağları, insan beyninin özelliklerinden olan öğrenme yolu ile yeni bilgiler türetebilme, yeni bilgiler oluşturabilme ve keşfedebilme gibi yetenekleri herhangi bir yardım almadan otomatik olarak gerçekleştirmek amacı ile geliştirilmişlerdir.

Yapay Sinir Ağları (Artificial Neural Networks) YSA Özellikleri : Doğrusal olmama, Öğrenme, Genelleme, Uyarlanabilirlik, Hata toleransı, Donanım ve hız, Analiz ve tasarım kolaylığı

YSA Uygulama Alanları : Yapay Sinir Ağları (Artificial Neural Networks) Endüstriyel uygulamalar Finans uygulamaları Askeri ve Savunma uygulamaları Tıp ve Sağlık uygulamaları Mühendislik uygulamaları Robotbilim Görüntü İşleme

YSA uygulamaları : konuşma tanıma karakter tanıma yapay görme robot navigasyonu otomatik sürme vb. Yapay Sinir Ağları (Artificial Neural Networks)

Yapay Sinir Ağları (Artificial Neural Networks) Yapay Sinir Ağları Eğiticili Öğrenme metodunu kullanır (Supervised Learning)

Yapay Sinir Ağları (Artificial Neural Networks) YSA nin tarihi 1960 yıllarda başladı. YSA başlangıcı beyin bilimindeki gelişmelere bağlıydı. Beyin, bizim bilişsel işlevlerimiz için temel araçtır (biliş, düşünme, soyut düşünme, duygu) Beyin, özel biyolojik nöron hücrelerinden oluşmuştur. Beyindeki nöronlar yüksek derecede birbirlerine bağlıdır. Temel elektriksel seviyede, nöronlar lineer toplama cihazlarıdır.

Biyolojik Sinir Hücresi (Nöron) Sinir Hücreleri (nöron), sinir sisteminin temel işlem elemanıdır. Nöronun axon, dentrite, synapse ve soma olma üzere dört önemli bölümü bulunmaktadır. İnsan beyninde yaklaşık 10 milyar sinir hücresi ve 60 trilyon synapse bulunmaktadır. Dendritler : alıcılar Soma : nöron hücresi gövdesi (giriş sinyalleri toplanır) Axonlar : verici Synapse : iletim noktası

Biyolojik Sinir Hücresi (Nöron) Biyolojik nöronlarda birçok giriş (dendritler) ve bir çıkış (axson) mevcuttur. Dentritlerin görevi hücreye girdilerin sağlanmasıdır. Axon ise nöron çıktısını göndermeye yarayan uzantıdır. Bir hücrenin tek bir axon uzantısı bulunur. Ancak bu axon uzantıdan çıkan çok sayıda uzantı ve bunların ucunda synapstik bağlantılar bulunur.

Biyolojik Sinir Hücresi (Nöron) Synapslar, sinir hücrelerindeki axonlarının, diğer sinir hücreleri ve/veya onların dentriteleri üzerinde sonlanan özelleşmiş bağlantı noktalarıdır. Bu bağlantı noktalarının görevi axondaki elektriksel iletinin diğer hücrelere aktarılmasıdır. Bu bağlantı noktalarında iletiler elektro-kimyasal süreçlerle diğer hücrelere geçirilir. Synapslar bağlandıkları dentrite veya nöronda bölgesel olarak elektrik kuvvetini pozitif veya negatif yönde etkileyebilme yeteneğine sahiptirler. Böylelikle bir nöronun diğerini etkileyebilmesi söz konusu olmaktadır.

Biyolojik Sinir Hücresi (Nöron) Bir nöron, diğer nörondan synapslar aracılığıyla elektriksel sinyallerini alıp dendritlere iletir ve soma üzerinde gelen girdilerin ağırlıklı toplamını yapar. Bir çıktının olup olmayacağı veya çıktının elektriksel olarak yoğunluğu, synapsların etkileri sonucu hücreye gelen tüm girdilerin, toplam değeri tarafından belirlenmektedir.

Biyolojik Sinir Hücresi (Nöron) Somaya gelen girdilerin ağırlıklı toplamı axon üzerinde çıktı oluşturacak değere ulaştığında, bu değere "eşik değer" adı verilmektedir ve nöron ateşlendi (fired) olarak ifade edilmektedir. Toplam sinyaline göre, aksonda çıkış olarak ikili elektriksel sinyal oluşturulabilir. Bu sinyal diğer nöronlara girdi olarak uygulanıp orada ikinci sinyali oluşturabilir. Bu şekilde girdiler nöron tarafından değerlendirilerek çıktıya dönüştürülmüş olur.

Biyolojik Sinir Hücresi (Nöron) Çalışma Şekli Nöron, diğer nöronlardan gelen uyarıları (elektriksel sinyaller) snapsları üzerinden dentritlerine alır. Bu sırada gelen sinyaller snapslar tarafından güçlendirilir ya da zayıflatılır. Dentritler sinyalleri hücre gövdesine iletirler. Hücre gövdesi gelen sinyalleri birbirlerini kuvvetlendirme ve zayıflatma etkilerine göre işler. Eğer sonuçta sinyaller birbirlerini yeteri kadar kuvvetlendirerek bir eşik değerini aşabilirlerse, axsona sinyal gönderilir ve nöron aktif hale getirilir. Aksi halde, axsona sinyal gönderilmez ve nöron pasif durumda kalır.

YSA temel elemanı yapay nöron: McCullogh-Pitts model

YSA temel elemanı yapay nöron x 1 Ağırlıklar x 2 Girişler W 1 W 2 Toplama fonksiyonu (net) Σ Aktivasyon Fonksiyonu f(net) net f(net)=çıkış W n W 0 x n bias x 0 = +1 Özel sabit ek giriş genellikle bias denir. Çıktının sıfır olmasını engellemek için +1 yada -1 değeri verilir.

YSA temel elemanı yapay nöron Girişler Ağırlıklar Toplama fonksiyonu Aktivasyon fonksiyonu Çıkış

YSA temel elemanı yapay nöron Girişler : Yapay sinir hücresine (nöron) dışarıdan verilen bilgilerdir. x = [x 0 x 1 x 2 x 3. x n ] t

YSA temel elemanı yapay nöron Ağırlıklar : Yapay sinir hücreleri (nöronlar) arasındaki bağlantıların sayısal değeridir. Bir nöron un üzerine gelen bilginin değerini ve hücre üzerindeki etkisini gösterir. w = [ w 0 w 1 w 2 w 3.. w n ] t

YSA temel elemanı yapay nöron Toplama fonksiyonu (net): Nörona gelen net girdinin hesaplanmasını sağlayan fonksiyondur. En yaygın kullanım şekli her girdi değerinin kendi ağırlığıyla çarpılarak toplanmasıdır. net = (w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 )+. (w n.x n )

YSA temel elemanı yapay nöron Aktivasyon fonksiyonu (f(net)) : Bu fonksiyon nörona gelen net girdinin işlenmesiyle nöronun bu girdiye karşılık üretileceği çıktıyı belirlemesini sağlar.

Aktivasyon Fonksiyonları Yapay nöron modellerinde, çeşitli tipte aktivasyon fonksiyonları kullanılabilir. Aktivasyon fonksiyonları sabit parametreli yada uyarlanabilir parametreli seçilebilir.

Aktivasyon Fonksiyonları Unipolar step f(net) 1 f(net) = 1 eğer net > θ = 0 eğer net < θ 0 θ net Bipolar step 1 f(net) f(net) = 1 eğer net > θ = -1 eğer net < θ 0 θ net 1 Step Fonksiyonlar

Aktivasyon Fonksiyonları Sigmoid f(net) 1 1 f(net) = -------------------- 1 + exp (-λ.net) 0 net Tanjant Hiperbolik Sigmoid f(net) 1 net 0 1 2 f(net) = -------------------- - 1 1 + exp (-λ.net) λ diklik veya eğim katsayısıdır. Genelde 1 alınır.

Aktivasyon Fonksiyonları

En Yaygın Kullanılan Aktivasyon Fonksiyonları

YSA temel elemanı yapay nöron: Çıkış: Çıkış = f(net) = f((w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 )+. (w n.x n ))

Basit Algılayıcı (Basic Perceptron) Basit Algılayıcılar (Perceptrons), son derece sınırlı olmalarına karşın en eski sinir ağlarından biridir. Basit Algılayıcı (Perceptron), bir yapay sinir hücresinin birden fazla girdiyi alarak bir çıktı üretmesi prensibine dayanır.

Basit Algılayıcı (Basic Perceptron) x 1 Ağırlıklar W 1 x 2 Girişler W 2 Σ f(net)=çıkış x n W n w 0 x 0 =+1 Basit Algılayıcı (Perceptron) / McCulloch-Pitts yapısı

Basit Algılayıcı (Basic Perceptron) Nörona verilen girdi x = [x 0 x 1 x 2 x 3 x n ] Ağırlık değerleri w = [ w 0 w 1 w 2 w 3 w n ] olmak üzere; Her nöron 2 temel hesaplama gerçekleştirir: Ağırlıklandırılmış girişlerin toplamı; nn net = xx ii 00 ii ww ii = (w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 ) + (w n.x n ) = Aktivasyon fonksiyonunun uygulanması; f(net) = Çıkış nn f(net) = f ( xx ii 00 ii ww ii ) = f((w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 ) + (w n.x n )) =

Basit Algılayıcı Öğrenme Modeli-1 1. Ağa girdi seti ve ona karşılık gelen beklenen çıktılar gösterilir. 2. Ağırlık değerleri başlangıçta rasgele verilir. 3. Nöron ünitesine gelen net girdi hesaplanır. 4. Nöron ünitesinin çıktısı hesaplanır. 5. Beklenen çıktı ile gerçekleşen çıktı aynı ise ağırlıklar değişmez. Eğer beklenen çıktı ile gerçekleşen çıktı farklı ise nöron ünitesine etki eden bütün ağırlıklar değiştirilir. Eğer çıkış beklenenden büyükse azaltılır, küçükse artırılır.

Basit Algılayıcı Öğrenme Modeli-1 Ağırlıklar rasgele atanır ve beklenen çıktı ile oluşan çıktıya göre ağırlıklar hesaplanır. Eğer, ağ çıkışı=f(net) = d ise ağırlıklar değiştirilmez. Eğer, ağ çıkışı=f(net) d ve f(net)<d ise ağırlıklar artırılır. w i (t+1) = w(t) + η.x i Eğer, ağ çıkışı=f(net) d ve f(net)>d ise ağırlıklar azaltılır. w i (t+1) = w(t) - η.x i d: beklenen çıktı (önceden bilinen) η : öğrenme katsayısı (0 < η <= 1)

Basit Algılayıcı Öğrenme Modeli Basit Algılayıcı Öğrenme Modelinin bir diğer hesaplama yöntemi de şu şekilde ifade edilebilir. Yöntem olarak ikisi de aynıdır.

Basit Algılayıcı Öğrenme Modeli-2 (x) x 1 w 1 (w) x 2 w 2 bias x 0 = +1 Σ w 0 net neuron çıkış = f(net) x n w n hata (d f(net) (d) eğitmen Öğrenme oranı (η) nn net = (w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 )+ (w n.x n ) = xx ii 00 ii ww ii = Çıkış = f(net) = f(w t x) = f(w 0.x 0 + w 1 x 1 +...+ w n x n ) Ağırlık adaptasyonu w i = η(d-f(net))x i δ = (d-f(net)) w i = ηδx i Yeni ağırlık w i (t+1) = w i (t) + w i

Basit Algılayıcı Öğrenme Modeli-2 1)Küçük değerli pozitif bir öğrenme katsayısı seçilir (0 < η <= 1) 2)Ağırlık değerleri w başlangıçta rastgele küçük değerler (0, 1 aralığında veya -1, +1 aralığında) olarak verilir. 3)Ağa eğitim vektörü (girişler) verilir ve yapay nöron ünitesinin çıktısı hesaplanır. Beklenen çıktı ile ağ çıkışı değeri aynı ise ağırlıklar değişmez. 4)Eğer beklenen çıktı ile gerçekleşen ağ çıkış değeri farklı ise yapay nöron a etki eden bütün ağırlıklar değiştirilir. w i (t+1) = w i (t) + η (d f(net)) x i = w i (t) + η δ x i Ağ hatası istenen düzeye ininceye kadar adımlar tekrarlanır. Adaline doğrusal ayrılabilir örüntüler için sonlu adımda eğitilebilir. Eğitim adım sayısı (k), öğrenme oranı (η) ve giriş dizisine bağlıdır. w k+1 = w k + η ( d k f(net) k ) x k

Basit Algılayıcı (Basic Perceptron) Basit algılayıcı (Perceptron) doğrusal bir fonksiyonla iki parçaya bölünebilen problemleri çözebilir. Bu problemler örneğin AND, OR, NOT fonksiyonları olabilir.

Doğrusal ayrılabilir (Linearly Separable) Doğrusal ayrılabilir Doğrusal ayrılamaz Sınıf Ayıracı : w o + w 1 x 1 + w 2 x 2 = 0 şeklinde tanımlanır.

Doğrusal ayrılabilir (Linearly Separable) Sınıf Ayıracı : w o + w 1 x 1 + w 2 x 2 + θ = 0 şeklinde tanımlanır. x 1 = -(w 2 x 2 + w o )/w 1 x 2 = -(w 1 x 1 + w o )/w 2 ( f (X) = WX = 0 ) durumunda iki sınıf birbirinden ayrılmış olur. AMA w 0, w 1, w 2, için uygun değerleri bilmiyoruz. Amaç bu değerleri tespit edip sınıf ayıracı doğrusunun pozisyonunu her iki sınıfı en iyi ayıracak şekilde belirlemektir.

Doğrusal Ayrılabilir /Doğrusal Ayrılamaz Sistemler Doğrusal olarak ayrılabilir sistemlerde doğrusal olan (türevi alınamayan) transfer fonksiyonları (step, sign, vs) kullanılır. Doğrusal olarak ayrılamayan sistemlerde doğrusal olmayan (türevi alınabilen) transfer fonksiyonları (sigmoid, tangent hiperbolic vs.) kullanılır.

Perceptron-ÖRNEK-1 Girişler x 2 x 1 W 2 W 1 Σ f(net)=çıkış Eğitim seti x1 x2 Sınıf (d) 1 1 1 2-2 0-1 -1.5 0 w 0 x 0 =+1-2 -1 0-2 1 1 1.5-0.5 1 Başlangıç değerleri : Ağırlıklar : w 0 = 0, w 1 = 1, w 2 = 0.5 Öğrenme oranı : η = 0.2 Kullanılacak aktivasyon fonksiyonu f(net) f(net) = 1 eğer net > 0 = 0 eğer net < 0 1 0 net Step

Perceptron-ÖRNEK-1 w 0 + w 1 x 1 + w 2 x 2 = 0 eşitliğini sağlayan w 0, w 1, w 2 değerlerinin bulunması gerekir.

Perceptron-ÖRNEK-1 1. iterasyon x 1 = 1, x 2 = 1 d=1 w 0 =0, w 1 =1, w 2 = 0.5 η=0.2 net= w 0 + w 1 x 1 + w 2 x 2 + = 0 + 1*1 + 0.5*1 = 1.5 net > 0 çıkış=f(net)=1 = d olduğundan ağırlıklar değiştirilmez.

Perceptron-ÖRNEK-1 2. iterasyon x 1 = 2, x 2 = -2 d=0 w 0 =0, w 1 =1, w 2 = 0.5 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 + = 0 + 1*2 + 0.5*(-2) = 1 net > 0 olduğundan çıkış=f(net)=1 (çıkış=1) (d=0) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. (çıkış=1) > (d=0) olduğundan ağırlıklar azaltılmalı. w 0 yeni = w 0 eski - η *b = 0 0.2*1 = -0.2 W 1 yeni = w 1 eski - η *x 1 = 1 0.2*2 = 0.6 W 2 yeni = w 2 eski - η *x 2 = 0.5 0.2*(-2) = 0.9

Perceptron-ÖRNEK-1 2. İterasyon (diğer hesaplama yöntemi ile) x 1 = 2, x 2 = -2 d=0 w 0 =0, w 1 =1, w 2 = 0.5 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 + = 0 + 1*2 + 0.5*(-2) = 1 net > 0 olduğundan çıkış=f(net)=1 (çıkış=1) (d=0) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. w i (t+1) = w i (t) + η (d f(net)) x i = wi(t) + η δ x i w 0 yeni = w 0 eski + η*(d-f(net))*b = 0 + 0.2*(0-1)*1 = -0.2 W 1 yeni = w 1 eski + η*(d-f(net))*x 1 = 1 + 0.2*(0-1)*2 = 0.6 W 2 yeni = w 2 eski + η*(d-f(net))*x 2 = 0.5 + 0.2*(0-1)*(-2) = 0.9

Perceptron-ÖRNEK-1 3. iterasyon x 1 = -1, x 2 = -1.5 d=0 w 0 =-0.2, w 1 =0.6, w 2 = 0.9 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (-0.2) + (0.6)*(-1) + 0.9*(-1.5) + = - 2.15 net<0 bu yüzden çıkış=f(net)= 0 (çıkış=0) = (d =0) Beklenen çıkışla ağ çıkışı eşit olduğu için ağırlıklar değiştirilmez.

Perceptron-ÖRNEK-1 4. iterasyon x 1 = -2, x 2 = -1 d=0 w 0 =-0.2, w 1 =0.6, w 2 = 0.9 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (-0.2) + 0.6*(-2) + 0.9*(-1) = -2.3 net < 0 bu yüzden çıkış=f(net)=0 (çıkış=0) = (d =0) Beklenen çıkışla ağ çıkışı eşit olduğu için ağırlıklar değiştirilmez.

Perceptron-ÖRNEK-1 5. iterasyon x 1 = -2, x 2 = 1 d=1 w 0 =-0.2, w 1 =0.6, w 2 = 0.9 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (-0.2) + 0.6*(-2) + 0.9*1 = -0.5 net < 0 bu yüzden çıkış=f(net)=0 (çıkış=0) (d =1) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. (çıkış=0) < (d=1) olduğundan ağırlıklar artırılmalı. w 0 yeni = w 0 eski + η *b = (-0.2) + 0.2*1 = 0 W 1 yeni = w 1 eski + η *x 1 = 0.6 + 0.2*(-2) = 0.2 W 2 yeni = w 2 eski + η *x 2 = 0.9 + 0.2*(1) = 1.1

Perceptron-ÖRNEK-1 5. iterasyon (diğer hesaplama yöntemi ile) x 1 = -2, x 2 = 1 d=1 w 0 =-0.2, w 1 =0.6, w 2 = 0.9 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (-0.2) + 0.6*(-2) + 0.9*1 = -0.5 net < 0 bu yüzden çıkış=f(net)=0 (çıkış=0) (d =1) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. w i (t+1) = w i (t) + η (d f(net)) x i = wi(t) + η δ x i w 0 yeni = w 0 eski + η*(d-f(net))*b = (-0.2) + 0.2*(1-0)*1 = 0 W 1 yeni = w 1 eski + η*(d-f(net))*x 1 = 0.6 + 0.2*(1-0)*(-2) = 0.2 W 2 yeni = w 2 eski + η*(d-f(net))*x 2 = 0.9 + 0.2*(1-0)*1 = 1.1

Perceptron-ÖRNEK-1 6. iterasyon x 1 = 1.5, x 2 = -0.5 d=1 w 0 =0, w 1 =0.2, w 2 = 1.1 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (0) + 0.2*(1.5) + 1.1*(-0.5) = -0.25 net < 0 bu yüzden çıkış=f(net)=0 (çıkış=0) (d =1) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. (çıkış=0)<(d=1) olduğundan ağırlıklar artırılmalı. w 0 yeni = w 0 eski + η *b = (0) + 0.2*1 = 0.2 W 1 yeni = w 1 eski + η *x 1 = 0.2 + 0.2*(1.5) = 0.5 W 2 yeni = w 2 eski + η *x 2 = 1.1 + 0.2*(-0.5) = 1

Perceptron-ÖRNEK-1 6. iterasyon (diğer hesaplama yöntemi ile) x 1 = 1.5, x 2 = -0.5 d=1 w 0 =0, w 1 =0.2, w 2 = 1.1 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (0) + 0.2*(1.5) + 1.1*(-0.5) = -0.25 net < 0 bu yüzden çıkış=f(net)=0 (çıkış=0) (d =1) Beklenen çıkışla ağ çıkışı eşit olmadığı için ağırlıklar değiştirilmeli. w i (t+1) = w i (t) + η (d f(net)) x i = wi(t) + η δ x i w 0 yeni = w 0 eski + η*(d-f(net))*b = 0 + 0.2*(1-0)*1 = 0.2 W 1 yeni = w 1 eski + η*(d-f(net))*x 1 = 0.2 + 0.2*(1-0)*(1.5) = 0.5 W 2 yeni = w 2 eski + η*(d-f(net))*x 2 = 1.1 + 0.2*(1-0)*(-0.5) = 1

Perceptron-ÖRNEK-1 7. iterasyon 1 epoch tamamlanmıştır. (tüm örneklerin ağa girdi olarak verilip tekrar ilk örneğe dönüldüğü durum epoch olarak adlandırılır) Tekrar 1. örnek ağa girdi olarak verilir. x 1 = 1, x 2 = 1 d=1 w 0 = 0.2, w 1 = 0.5, w 2 = 1 η =0.2 net= w 0 + w 1 x 1 + w 2 x 2 = (0.2) + 0.5*(1) + 1*(1) = 1.7 net > 0 bu yüzden çıkış=f(net)=1 (çıkış=1) = (d =1) Beklenen çıkışla ağ çıkışı eşit olduğu için ağırlıklar değiştirilmez. Bu şekilde tüm örnekler için ağ çıkışı ve beklenen çıkışlar eşit olana kadar iterasyonlara devam edilir, bu durum gerçekleşirse ağ öğrenmeyi tamamlamış olur.

Perceptron-ÖRNEK-2 Öğrenme katsayısı η = 1 ve başlangıç ağırlıklarının hepsi sıfır alınacaktır. Bias: +1 Unipolar doğrusal aktivasyon fonksiyonu kullanılacaktır. (θ = 0) (eğer net > 0, çıkış: 1 değilse çıkış: 0) Eğitim Seti 0 0 1 -> 0 1 1 1 -> 1 1 0 1 -> 1 0 1 1 -> 0 Girişler Hedef Ağırlık Vektorü Net Çıkış W 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 3 1 0 0 0 0 0 1 1 1 0 1 1 1 1 3 1 0-1 -1-1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1 0 1 1 1 1 0 0 0 1 1 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0

Perceptron-ÖDEV Öğrenme katsayısı η = 0.1 ve başlangıç ağırlıkları w 1 = [ -0.8 0.5 0.5 ] t şeklinde ise AND, OR, NAND ve NOR boolean fonksiyonları için ayrı ayrı Perceptron öğrenme sürecini gerçekleştiriniz. Bipolar doğrusal aktivasyon fonksiyonu kullanılacaktır. (θ = 0) x1 W2=0.5 W1=0.5 Σ O f(net) 1 0 θ f(net) = 1 eğer net > θ = -1 eğer net < θ net x2 W0 = -0.8 1 X0=1

Basit Algılayıcı (Basic Perceptron) Basit algılayıcı modelinin en büyük problemi doğrusal olmayan problemlerin çözülmesinde başarılı olmamasıdır. Basit algılayıcı modelinin diğer problemi ise ağın her iterasyonda ağırlıklarını değiştirdikçe öğrendiklerini unutması olasılığıdır. Bir girdi seti ağırlıkları artırdıkça diğeri azaltmaktadır. Bu sorun çoğunlukla zaman içerisinde ağırlıkların bulunması ile çözülebilmektedir. Fakat eğitim zamanının uzamasına neden olmaktadır.

Tek katmanlı algılayıcı (Single layer perceptron) Tek katmanlı bir ağda birçok algılayıcıyı bir araya getirmek hiçbir şeyi değiştirmez. Hepsi bağımsız olarak öğreniyorlar. (Öyleyse XOR hala öğrenilemez.) Ancak, çıktı olarak 0 / 1'den daha fazlasını alabiliriz. İstediğimiz sayıda çıkış alabiliriz. Giriş katmanı Çıkış katmanı

ADALINE (Adaptive Linear Element) ADALINE (Adaptive Linear Element) 1960 yılında Widrow ve Marcian Hoff tarafından geliştirilen, en küçük ortalamalı kare (Least Mean Square, LMS) yöntemiyle eğim azaltmayı hedefleyen öğrenme algoritmasıdır. Karesel hatalar toplamının minimum olmasına dayanır. LMS algoritması, ortalama karesel hatayı (Mean Square Error, MSE) en aza indirmeyi sağlar.

ADALINE (Adaptive Linear Element) Adaline modeli birçok isimle de anılır The adaline rule

ADALINE (Adaptive Linear Element) ADALINE yapısı ile Perceptron birbirine benzerdir. Aradaki fark öğrenme kuralındadır. Tek fark basit algılayıcıda(perceptron) hata hesaplanırken aktivasyon fonksiyonun çıkışı ile beklenen hedef farkı alınırken ADALINE için aktivasyon fonksiyonunun girişi olan net değeri ile beklenen hedef farkı hesaplanır.

ADALINE (Adaptive Linear Element) Perceptron ve ADALINE genel olarak tek bir nörondan oluşan ağlardır. Hem ADALINE ağı hem de PERCEPTRON aynı sınırlamaya sahiptirler: sadece doğrusal olarak ayrılabilir problemleri çözebilirler.

ADALINE (Adaptive Linear Element) ADALINE Öğrenme kuralı Delta öğrenme kuralının özel bir durumu olarak düşünülebilir. Öğrenme kuralında, beklenen ağ çıkış değeri (d k ) ve nöronun aktivasyon değeri net k =w T x k arasındaki karesel hatayı en aza indirdiğinden, kullanılan nöronların aktivasyon fonksiyonundan bağımsızdır. Öğrenme kuralında, beklenen ağ çıkışı ile nöronun net değeri arasındaki hata oranı hesaplanır ve ona göre hatayı en azlayacak şekilde ağırlıklar değiştirilir.

ADALINE (Adaptive Linear Element) x 1 x 2 w k1 w k2 w T x... k Buradaki lineer fonksiyon sadece net değerinin kimlik fonksiyonudur. Girişi ile çıkışı aynıdır. y k = w T k x x n w kn Adaline (Adaptive Linear Element) Widrow [1960] Amaç: y = x = k w T k d k

ADALINE (Adaptive Linear Element)

Hata beklenen çıktı ile ağ çıktısı arasındaki farktır. δ = k d k δ: hata d: beklenen çıktı o: ağ çıktısı Toplam hata ise; Mean Square Error MSE = w R k = 1 T x T ( w x d k k k 2 ) Ortalama Karesel Hata (Mean Square Error) k: eğitim örnek sayısı Toplam hata istenen düzeye ininceye kadar epoch lar tekrarlanır. Amaç yapay sinir ağı için karesel hatayı en aza indirgemektir.

Adaline Öğrenme Algoritması Adaline, minimal hataya yol açan ağırlık vektörünü belirlemek için Gradient Descent kullanır. Gradient Descent, ağ hatası olan E'yi en aza indirmek istiyorsak, ağırlıkları (w) güncellememiz gerektiğini söyler. Ağ hatası : E = R k = 1 T ( w x d k k 2 ) Ağırlık güncelleme : w j E w j - η w Şimdi bu türevi hesaplayalım j E w j?

Adaline Öğrenme Algoritması = = R k k T k j j d w w E 1 2 ) ( x w = = R k k T k j k T k d w d 1 ) ( ) ( 2 x w x w = = R k k T j k w δ 1 2 x w k T k d k δ x w = = = = R k m i ki i j k x w w δ 1 1 2 = = R k δ k x kj 1 2 = + R k kj k j j x δ η w w 1 2

Adaline Öğrenme Algoritması Ağırlıkların güncellenmesi j j j w E η w w - = = R k kj k j x δ w E 1 2 = + R k kj k j j x δ η w w 1 2 Sıklıkla 2'yi ihmal ederiz (yani öğrenme oranını yarıya indiririz) = + R k kj k j j x δ η w w 1 = = R k kj k j x δ η 1 w j j w j w w +

Adaline Öğrenme Algoritması (x) x 1 w 1 (w) x 2 w 2 bias x 0 = +1 Σ w 0 net neuron çıkış = o x n w n hata (d - net) (d) eğitmen Öğrenme oranı (η) nn net = (w 0.x 0 )+(w 1.x 1 )+(w 2.x 2 )+ (w n.x n ) = xx ii 00 ii ww ii = Çıkış = f(net) = f(w t x) = f(w 0.x 0 + w 1 x 1 +...+ w n x n ) Ağırlık adaptasyonu w i = η(d-net)x i = ηδx i Yeni ağırlık w i (t+1) = w i (t) + w i

Adaline Öğrenme Algoritması 1)Küçük değerli pozitif bir öğrenme katsayısı seçilir (0 < η <= 1) 2)Ağırlık değerleri w başlangıçta rastgele küçük değerler (0, 1 aralığında veya -1, +1 aralığında) olarak verilir. 3)Ağa eğitim vektörü (girişler) verilir ve yapay nöron ünitesinin çıktısı hesaplanır. Beklenen çıktı ile ağ çıkışı değeri aynı ise ağırlıklar değişmez. 4)Eğer beklenen çıktı ile gerçekleşen ağ çıkış değeri farklı ise yapay nöron a etki eden bütün ağırlıklar değiştirilir. w i (t+1) = w i (t) + η (d - net) x i = w i (t) + η δ x i Ağ hatası istenen düzeye ininceye kadar adımlar tekrarlanır. Adaline doğrusal ayrılabilir örüntüler için sonlu adımda eğitilebilir. Eğitim adım sayısı (k), öğrenme oranı (η) ve giriş dizisine bağlıdır. w k+1 = w k + η ( d k - o k ) x k

ADALINE-ÖDEV-1 Öğrenme katsayısı η = 0.1 Bipolar doğrusal aktivasyon fonksiyonu θ = 0 alınabilir. f(net) 1 1 0 θ f(net) = 1 eğer net > θ = -1 eğer net < θ net

ADALINE-ÖDEV-2 Öğrenme katsayısı η = 0.1 ve başlangıç ağırlıkları w 1 = [ 0.5 1-1 0 ] t şeklinde ise aşağıda verilen eğitim veri seti göz önüne alındığında, 1 epoch için Adaline öğrenme sürecini gerçekleştiriniz. Bipolar doğrusal aktivasyon fonksiyonu kullanılacaktır. (θ = 0) Eğitim Veri Seti aşağıdaki gibidir. x1 x2 x3 Sınıf (d) 1 0-1 -1-2 1.5 1-1 0-0.5 0.5 1

ADALINE-ÖDEV-2 x 1 W 1 =1 net, aktivasyon x 2 x 3 W 2 =-1 W 3 =0 çıkış W 0 =0.5 X 0 = +1 f(net) 1 0 1 θ f(net) = 1 eğer net > θ = -1 eğer net < θ net