Matlab ile yapılmış yapay sinir ağı örnekleri paylaşmaya devam ediyoruz. Bu örnekte 1.dereceden 3 bilinmeyenli bir denklemin yapay sinir ağları ile çözümü yer almaktadır.
Matlab'da yapa zeka (artificial intelligence) uygulamalarına yönelik bir çok hazır araç yer almaktadır. Bu matlab araçları Deep Learning Toolbox, Reinforcement Learning Toolbox, Deep Learning HDL Toolbox, Text Analytics Toolbox, Predictive Maintenance Toolbox şeklinde sıralanabilir. (Araçlara ait daha sonra ayrıntılı bir paylaşım yapmayı planlıyorum). Ancak bu çalışmada mantıksal kapılara yönelik YSA uygulamalarında da olduğu gibi Matlab toolbox'ları veya hazır fonksiyonları kullanılmadı, sonuca döngüler ile ulaşıldı.
Yapay sinir ağlarına ait matlab örneğimiz için elimizde 1.dereceden 3 bilinmeyenli bir y=2x1+3x2+4x3+5 denklemi var. Bu denklemi önce en küçük kareler yöntemi (least squares method) ile çözüp Matlab'da ekran çıktısını göreceğiz. Daha sonra ise gradyan metodu ile aynı işlemi yapacağız.
1- y=2x1+3x2+4x3+5 denkleminin en küçük kareler metodu ile çözümünde kullanılacak Matlab kodu aşağıdaki gibidir:
clear all
clf
for k=1:50
x1(k)=sin(2*k*pi/10);
x2(k)=cos(2*k*pi/20);
x3(k)=sin(2*k*pi/15);
x4(k)=5
d(k)=2*x1(k)+3*x2(k)+4*x3(k)+x4(k);
end
x=[x1;x2;x3;x4];
for i=1:4
for j=1:4
R(i,j)=0
p(i)=0
end
end
for i=1:4
for j=1:4
for k=1:50
R(i,j)=R(i,j)+x(i,k)*x(j,k)
end
end
end
for i=1:4
for k=1:50
p(i)=x(i,k)*d(k)+p(i);
end
end
p=p/50
R=R./50
w=p*inv(R)
y=w*x;
plot(d,'k+')
hold on
plot(y,'k')
2- y=2x1+3x2+4x3+5 denkleminin gradyan metodu ile çözümünde kullanılacak Matlab kodu aşağıdaki gibidir:
clear all
w=rand(1,3);
b=rand;
alf=0.01;
N=50;
for i=1:10
k=0;
for t=0:N
k=k+1;
x1(k)=sin(t*pi/15);
x2(k)=sin(t*pi/25);
x3(k)=sin(t*pi/10);
y(k)=2*x1(k)+3*x2(k)+4*x3(k)+5;
x(:,k)=[x1(k);x2(k);x3(k)];
ysa(k)=w*x(:,k)+b;
e(k)=y(k)-ysa(k);
end
dw=e*x';
db=sum(e);
w=w+alf*dw;
b=b+alf*db;
end
t=0:N;
plot(t,y,t,ysa)
Şekil 1. Gradyan Metodu Matlab YSA Çıktısı
NOT : Sitede, yapay sinir ağı, yapay sinir ağları nelerdir, derin öğrenme nedir, deep learning nedir, bulanık mantık nedir, fuzzy logic nedir, yapay sinir ağları uygulamaları, makine öğrenmesi, yapay sinir ağı algoritmaları, makine öğrenmesi ve derin öğrenme, regresyon, machine learning nedir, matlab, matlab örnekleri, matlab machine learning gibi soruların cevaplarına yönelik içerikler yer almaktadır. 'Yapay sinir ağı’, ‘yapay sinir ağları nedir’, ‘derin öğrenme nedir’, ‘deep learning nedir’, ’bulanık mantık nedir’, ‘fuzzy logic nedir’, ‘yapay sinir ağları uygulamaları’, ‘makine öğrenmesi’, ‘yapay sinir ağı algoritmaları’, ‘makine öğrenmesi ve derin öğrenme’, regresyon, ‘machine learning nedir’, matlab, ‘matlab örnekleri’, ‘matlab machine learning’, 'artificial neural network','ysa ile denklem çözümü', 'ysa 2 bilinmeyenli denklem', 'yapay sinir ağları 3 bilinmeyenli denklem', 'and kapısı ve ysa', 'and gate ysa', 've kapısı matlab', 'and gate ve kapısı', 'or kapısı ve ysa', 'or gate ysa', 'veya kapısı matlab', 'or gate veya kapısı', 'xor kapısı ve ysa', 'xor gate ysa', 'özel veya kapısı matlab', 'xor gate özel veya kapısı'
--->>> YSA ile XOR Kapısı Problem Çözümü için TIKLAYINIZ <<<---
--->>> Matlab'da Analitik Yöntem & Euler Metodu karşılaştırması için TIKLAYINIZ <<<---
--->>> YSA ile AND Gate Matlab Çözümü için TIKLAYINIZ <<<---