NEURAL NETWORK TOOLBOX VE UYGULAMALARI MATLAB NEURAL NETWORK TOOLBOX VE UYGULAMALARI
Yapay Sinir Ağları Yapay sinir ağları insan beyin hücresini (nöron) taklit etmeye çalışan matematiksel bir modeldir.
Yapay Sinir Ağları Avantajlı yönleri Doğrusallık özelliği Paralel işlem yapabilme Öğrenebilme yeteneği Genelleme yapabilme Uygulanabilirlik Hata toleransı Donanım ve hız Analiz ve tasarım kolaylığı
Yapay Sinir Ağları Bazı kullanım alanları Arıza analizi Tıp alanı Askeri teknoloji Haberleşme Üretim, fabrika yönetimi Otomatik kontrol Otomotiv Uçak,Uzay teknolojisi Finans sektörü Robotik Konuşma ve ses yorumlama Karakter, resim tanıma Güvenlik
Yapay Sinir Ağları Yapay hücre modeli Yapay sinir hücreleri, YSA’nın çalışmasına esas teşkil eden en küçük bilgi işleme birimidir
Yapay Sinir Ağları Yapay hücre modeli P: Giriş vektörü W: Ağırlık matrisi n: Net giriş toplamı, a: Hücrenin çıkışı f(.): Aktivasyon fonksiyonu
Yapay Sinir Ağları Aktivasyon fonksiyonları Hard-limit (eşik) aktivasyon fonksiyonu
Yapay Sinir Ağları Aktivasyon fonksiyonları Sigmoid aktivasyon fonksiyonu Pureline (Doğrusal) aktivasyon fonksiyonu
Yapay Sinir Ağları Aktivasyon fonksiyonları Radial tabanlı (gauss) aktivasyon fonksiyonu Hiperbolik tanjant (Tanh) aktivasyon fonksiyonu
Yapay Sinir Ağları Yapay sinir hücresinin matematiksel model örneği Çalıştır
Yapay Sinir Ağları Yapay Sinir Ağları Yapay sinir ağları hücrelerin bir birleri ile çeşitli şekillerde bağlanmalarından oluşur.
Yapay Sinir Ağları Yapay Sinir Ağı Modelleri İleri sürümlü sinir ağları Multi Layer Perceptron (MLP) Radial-Basis Network (RBF) Self-Organizing map (SOM) Geri beslemeli sinir ağları Recurrent (Geri beslemeli) ağlar
Yapay Sinir Ağları Multi Layer Perceptrons İleri sürümlü yapay sinir ağlarıdır. Bir giriş katmanı, bir veya daha fazla saklı katman ve bir çıkış katmanından oluşur Giriş katmanındaki bilgiler, her hücre tek tek işlenerek ağın çıkışına iletilir. Sınıflandırma, karakter tanıma, fonksiyon hesaplama… gibi çok yaygın kullanım alanına sahiptir. 2-4-1 düzenine sahip bir MLP
Yapay Sinir Ağları Multi Layer Perceptrons – İleri yönde veri akışı i.Hücre için net giriş toplamı i.Hücrenin çıkışı
Yapay Sinir Ağları Literatürde en çok kullanılan yöntemdir. Multi Layer Perceptrons – Hata geriye yayma (Backpropagation) yöntemi ile parametre Güncelleme Literatürde en çok kullanılan yöntemdir. Dayandığı yöntem; bir maliyet fonksiyonunun zaman içerisinde, ağ parametrelerinin uyarlanması ile azaltılmasıdır. Ağın çıkışı ile istenen değer arasındaki fark, eğim düşümü yöntemi yardımı ile her bir hücrenin ağırlıklarının güncellenmesi için parametre olarak kullanılır.
Yapay Sinir Ağları Multi Layer Perceptrons – Hata geriye yayma (Backpropagation) yöntemi ile parametre güncelleme
Yapay Sinir Ağları Multi Layer Perceptrons – Hata geriye yayma (Backpropagation) yöntemi ile parametre güncelleme : Ağın (k+1)’inci katmanındaki i’ıncı hücrenin j’inci girişine bağlı olan ağırlık : Ağın (k+1)’inci katmanındaki i’ıncı hücrenin net giriş toplamı : Ağın (k+1)’inci katmanındaki i’ıncı hücrenin çıkışı : Ağın (k+2)’inci katmanındaki h’ıncı hücrenin i’inci girişine bağlı olan ağırlık : Ağın (k+2)’inci katmanındaki h’ıncı hücrenin net giriş toplamı : Ağın (k+2)’inci katmanındaki h’ıncı hücrenin çıkışı (ağın çıkışı) : Ağın h’ıncı çıkışı için istenen çıkış değeri : Maliyet fonksiyonu
Yapay Sinir Ağları Multi Layer Perceptrons – Hata geriye yayma (Backpropagation) yöntemi ile parametre güncelleme Ağın girişine veri uygulanıp ileri yayımlandıktan sonra maliyet fonksiyonu hesaplanır: Daha sonra bu maliyet fonksiyonu kullanılarak her hücre için delta değerleri Hesaplanır. Eğer çıkış hücresi hesaplanıyorsa delta formülü:
Yapay Sinir Ağları Eğer hücre saklı katman hücresi ise hesaplama : Multi Layer Perceptrons – Hata geriye yayma (Backpropagation) yöntemi ile parametre güncelleme Eğer hücre saklı katman hücresi ise hesaplama :
Yapay Sinir Ağları Multi Layer Perceptrons – Sinüs ve karakter tanıma örnekleri Sinus.m -> Sinüs örneğinde 0 ile 360 arasında otuz adet açı ile eğitimi yapılan 1-24-1 yapıya sahip MLP ağı, sinüs fonksiyonunu taklit ediyor. Mlp_fonksiyon_yaklasimi.exe -> Delphi ile yapılmış MLP yapısını kullanan görsel bir ysa demo programı Karakter.m -> Matlab’da karakter tanıma programı.
Neural Network Toolbox Neural Network Toolbox komutları NEWFF : Yeni bir Feed-Forward sinir ağı oluşturur. TRAIN : Sinir ağının eğitimini yapar. SIM : Sinir ağını simüle eder. INIT : Sinir ağını sıfırlar. GENSIM : Sinir ağını simulink’e aktarır.
Neural Network Toolbox NEWFF fonksiyonunun kullanımı net = newff(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF) PR : Rx2 matris Girişler içindeki maksimum ve minimum değerler Si : i. Katmandaki nöron sayısı TFi : i. Katmandaki nöronların transfer fonksiyonları (logsig, tansig, hardlim ….) BTF : Geriyansıtma eğitim cinsi (traınlm, traınbfg, traınrp, traıngd … )
Neural Network Toolbox TRAIN fonksiyonunun kullanımı [net,tr] = train(NET,P,T) net : Eğitim yapılmış olan ağ (çıkış ağı) tr : Eğitim kayıtı NET : Eğitimi yapılacak olan ağ P : Eğitim örnekleri T : Eğitimdeki hedefler
Neural Network Toolbox SIM fonksiyonunun kullanımı y = sim(net,P) y : Simülasyon çıkışları net : Simüle edilecek olan ağ (çıkış ağı) P : Test girişleri
Neural Network Toolbox Neural Network Toolbox komutları ile yapılan örnekler: Nn2.m -> y=sin(x) fonksiyonunu taklit eden yapay sinir ağı örneği Nn3.m -> y=sin(x)^2-sin(x) fonksiyonunu taklit eden yapay sinir ağı örneği karakter.m -> Bu örnekte önce harfler yapay sinir ağına tanıtılıyor daha sonra bozuk harfler yapay sinir ağına uygulanarak ağın harfleri tanıması test ediliyor.
Neural Network Toolbox Sinüs fonksiyonu için yapay sinir ağı örneği : (NN2.M doyası) N=10; P=linspace(0,360,N); T=sin(P*pi/180); x=P/360; net = newff(minmax(x),[5 1],{'tansig' 'purelin'}); net.trainParam.epochs = 50; net = train(net,x,T);
Neural Network Toolbox Sinüs fonksiyonu için yapay sinir ağı örneği(devam): test=sim(net,[0:2:360]/360); plot(0:2:360,test,'r:') hold on; plot(0:2:360,sin([0:2:360]*pi/180)); title('Sinus ve YSA''da Sinus Grafiği'); grid on; xlabel('Açı Derece'); ylabel('YSA''da Sinus +/ Sinus -'); figure(3); plot(0:2:360,abs(test-sin([0:2:360]*pi/180))); title('Hata');
Yapay Sinir Ağları Neural Network Toolbox Arabirimi Bu ara birim yardımı ile yapay sinir ağı istenilen şekilde görsel olarak tanıtılır, eğitilir, test edilir. İstenirse sonuç workspace’e aktarılablir.
Neural Network ile Sistem tanımlama Yapay Sinir Ağları Neural Network ile Sistem tanımlama
Neural Network ile Ön çıkartımlı Sistem Kontrolü Yapay Sinir Ağları Neural Network ile Ön çıkartımlı Sistem Kontrolü
Neural Network ile Sistem tanımlama ve kontrol örneği Yapay Sinir Ağları Neural Network ile Sistem tanımlama ve kontrol örneği