Professional Documents
Culture Documents
IleriAlgoritmaAnalizi 5.hafta YapaySinirAglari
IleriAlgoritmaAnalizi 5.hafta YapaySinirAglari
com
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
YSA lar bir ok hcreden meydana gelir ve bu hcreler e zamanl olarak alarak karmak ilevleri yerine getirir.
Dier bir deile karmak ilevler bir ok hcrenin e zamanl almas ile meydana getirilir. Sre ierisinde bu
hcrelerden her hangi biri ilevini yitirse dahi sistem gvenli bir ekilde almasna devam edebilir.
Eitim esnasnda kullanlan nmerik bilgilerden, problemin genel zellikleri elde etmesi ve bylelikle eitim
srasnda kullanlmayan girdiler iin de, anlaml yantlar retebilmesidir.
Yap zerinde dalm belli tipteki non-lineer alt birimler, non lineer problemlerin de zmn mmkn
klmaktadr.
YSA'lar makina renmesi gerekletirebilirler. Yapay sinir alarnn temel ilevi zaten bilgisayarn renmesini
salamaktr. Olaylar renerek benzer olaylar karsnda mantkl kararlar verebilirler.
Bilgi ileme yntemleri geleneksel programlamadan farkldr. Bu nedenle geleneksel programlamann getirdii bir
ok olumsuzluk ortadan kaldrlabilir
Bilgiler an tamamnda saklanr. Geleneksel programlamada olduu gibi bilgiler veri tabanlar yada dosyalarda belli
bir dzende tutulmaz, an tamamna yaylarak deerler ile llen a balantlarnda saklanmaktadr. Hcrelerden
bazlarnn ilevini yitirmesi, anlaml bilginin kaybolmasna neden olmaz.
Datk bellee sahiptirler. YSA'larda bilgi aa dalm bir ekilde tutulur. Hcrelerin balant ve arlk dereceleri,
an bilgisini gsterir. Bu nedenle tek bir balantnn kendi bana anlam yoktur.
rnekleri kullanarak renirler. YSA'nn renebilmesi iin rneklerin belirlenmesi, bu rneklerin aa gsterilerek
istenen ktlara gre an eitilmesi gerekmektedir. An baars, seilen rnekler ile doru orantldr, aa olay
btn ynleri ile gsterilemezse a yanl ktlar retebilir.
Daha nce grlmemi rnekler hakknda bilgi retebilirler. YSA'lar eitimleri srasnda kendilerine verilen
rneklerden genellemeler karrlar ve bu genellemeler ile yeni rnekler hakknda bilgi retebilirler.
Alglamaya ynelik olaylarda kullanlabilirler. YSA'larn en baarl olduklar alanlar, alglamaya ynelik uygulama
alanlardr. Bu alanlarda baarlar kantlanmtr.
rnt (pattern) ilikilendirme ve snflandrma yapabilirler. YSA'lar kendilerine rnekler halinde verilen rntleri
kendisi veya dierleri ile ilikilendirebilir. Ayrca kendisine verilen rneklerin kmelenmesi ile, bir sonraki verinin
hangi kmeye dahil olacann karar verilmesi konusunda kullanlabilirler.
rnt tamamlama yapabilirler. Aa eksik bilgileri ieren rntler verildiinde eksik bilgilerin tamamlanmas
konusunda baarldrlar.
Kendi kendine renebilme ve organize etme yetenekleri vardr. YSA'lar online olarak renebilirler ve kendi
kendilerini eitebilirler.
14. Eksik bilgi ile alabilmektedirler. Geleneksel sistemlerin aksine YSA'lar eitildikten sonra veriler eksik bilgi ierse
dahi, kt retebilirler. Bu durum bir performans kayb yaratmaz, performans kayb eksik bilginin nemine baldr.
Burada bilgilerin nem dereceleri eitim srasnda renilir.
15. Hata tleransna sahiptirler. YSA'larn eksik bilgilerle alabilmeleri ve baz hcreleri bozulsa dahi alabilmeleri,
onlar hatalara kar tleransl yapar.
16. Dereceli bozulma (Graceful degradation) gsterirler. Bir a, zaman ierisinde yava ve greceli bir bozulmaya urar.
Alar problemin ortaya kt anda hemen bozulmazlar.
1.2. YSA'larn Dezevantajlar
YSA'larn, pek ok avantajn yannda baz dezavantajlar da vardr. Belli bal dezavantajlar;
1.
2.
3.
4.
5.
6.
Donanm bamldr. YSA'larn en nemli sorunu donanm baml olmalardr. YSA'larn en nemli zellikleri ve var
olu nedenlerinden birisi olan paralel ilem yapabilme yetenei, paralel alan ilemciler ile performans gsterir.
Uygun a yapsnn belirlenmesinde belli bir kural yoktur. YSA'larda probleme uygun a yapsnn belirlenmesi iin
gelitirilmi bir kural yoktur. Uygun a yaps deneyim ve deneme yanlma yolu ile belirlenmektedir.
An parametre deerlerinin belirlenmesinde de belli bir kural yoktur. YSA'larda renme katsays, hcre says,
katman says gibi parametrelerin belirlenmesinde belirli bir kural yoktur. Bu deerlerin belirlenmesi iin belirli bir
standart olmamakla birlikte her problem iin farkl bir yaklam sz konusu olabilmektedir.
renilecek problemin aa gsterimi nemli bir problemdir. YSA'lar nmerik bilgiler ile alabilmektedirler.
Problemler YSA'lara tantlmadan nce nmerik deerlere evrilmek zorundadrlar. Burada belirlenecek gsterim
mekanizmas an performansn dorudan etkileyecektir. Bu da kullancnn yeteneine baldr.
An eitiminin ne zaman bitirilmesi gerektiine ilikin belli bir yntem yoktur. An rnekler zerindeki hatasnn
belirli bir deerin altna indirilmesi eitimin tamamland anlamna gelmektedir. Burada optimum neticeler veren
bir mekanizma henz yoktur ve YSA ile ilgili aratrmalarn nemli bir kolunu oluturmaktadr.
An davranlar aklanamamaktadr. Bu sorun YSA'larn en nemli sorunudur. YSA bir probleme zm rettii
zaman, bunun neden ve nasl olduuna ilikin bir ipucu vermez. Bu durum aa olan gveni azaltc bir unsurdur.
Nisbeten hzldr.
Deneyimden yararlanr.
rnein satran oynayan bir yapay sinir a yapt hamlenin iyi veya kt olduunu anlk olarak ayrt edememesine ramen
yine de hamleyi yapar. Eer oyun sonuna geldiinde program oyunu kazandysa yapt hamlelerin iyi olduunu
varsayacaktr ve bundan sonraki oyunlarnda benzer hamleleri iyi olarak deerlendirerek oynayacaktr.
renme Zamanna Gre Yapay Sinir Alar
Yapay sinir alar renme zamanna gre de statik ve dinamik renme olarak ikiye ayrlr.
Statik renme: Statik renme kuralyla alan yapay sinir alar kullanmadan nce eitilmektedir. Eitim
tamamlandktan sonra a istenilen ekilde kullanlabilinir. Ancak bu kullanm srasnda an zerindeki arlklarda herhangi
bir deiiklik olmaz.
Dinamik renme: Dinamik renme kural ise yapay sinir alarnn alt sre boyunca renmesini ngrerek
tasarlanmtr. Yapay sinir eitim aamas bittikten sonra da daha sonraki kullanmlarnda klarn onaylanmasna gre
arlklarn deitirerek almaya devam eder.
2. YSA'nn Yaps
2.1. Biyolojik Sinir Hcresinin Yaps
Bir insann beyninde yaklak olarak 10 milyar sinir hcresi ve bu nronlarn birbirleriyle yapt balant saysnn ise 60
trilyon olduu tahmin edilmektedir. Bu sinirler girdi bilgilerini duyu organlarndan alrlar. Daha sonra alc (tayc) sinirler
bu sinyalleri ileyip bir sonraki sinire aktararak sinyalin merkezi sinir sistemine kadar ulamasn salar. Merkezi sinir sistemi
bu sinyalleri alp yorumladktan sonra tepki sinyallerini retir. Bu sinyaller de tepkilerin oluaca organlara tepki sinirleri
vastasyla iletilir. Bu sayede duyu organlarndan gelen bilgilere kar tepki organlarna uygun iaretler sinir sistemi
vastasyla yollanr.
Yapay sinir alar biyolojik sinir alarnn modellemesi olduu iin, ncelikle biyolojik sinir sisteminin yapsna bakmak
gerekir. Biyolojik sinir sisteminin temel yap ta olan nronlarn yaps drt ana blmden olumaktadr; dendrit, akson,
ekirdek ve balantlar. Dendritlerin sinir hcresinin ucunda bulunan ve aa kk grnmne sahip bir yapya sahiptir.
Dendritlerin grevi bal olduu dier nronlardan veya duyu organlarndan gelen sinyalleri ekirdee iletmektir. ekirdek
dendrit tarafndan gelen sinyalleri bir araya toplayarak ve aksona iletir. Toplanan bu sinyaller akson tarafndan ilenerek
nronun dier ucunda bulunan balantlara gnderilir. Balantlar ise yeni retilen sinyalleri dier nronlara iletir.
Girdiler
Arlklar
Toplama Fonksiyonu (Birletirme Fonksiyonu)
Aktivasyon fonksiyonu
ktlar
X1
X2
W1
W2
Net =
F(x) = Y
W3
X3
ekil 2. Yapay Sinir Hcresinin yaps.
Girdiler: Girdiler nronlara gelen verilerdir. Girdiler yapay sinir hcresine bir dier hcreden gelebilecei gibi direk olarak
d dnyadan da gelebilir. Bu girdilerden gelen veriler biyolojik sinir hcrelerinde olduu gibi toplanmak zere nron
ekirdeine gnderilir.
Arlklar: Yapay sinir hcresine gelen bilgiler girdiler zerinden ekirdee ulamadan nce geldikleri balantlarn arlyla
arplarak ekirdee iletilir. Bu sayede girdilerin retilecek kt zerindeki etkisi ayarlanabilinmektedir. Bu arlklarn
deerleri pozitif, negatif veya sfr olabilir. Arl sfr olan girdilerin kt zerinde herhangi bir etkisi olmamaktadr.
Toplama Fonksiyonu (Birletirme Fonksiyonu): Toplama fonksiyonu bir yapay sinir hcresine arlklarla arplarak gelen
girdileri toplayarak o hcrenin net girdisini hesaplayan bir fonksiyondur.
Baz durumlarda gelen girdilerin deeri dikkate alnrken baz durumlarda ise gelen girdilerin says nemli olabilmektedir.
Bir problem iin en uygun toplama fonksiyonu belirlenirken gelitirilmi bir yntem yoktur. Genellikle deneme yanlma
yoluyla toplama fonksiyonu belirlenmektedir. Bazen her hcrenin toplama fonksiyonunun ayn olmas gerekmez. Bu
konulara karar vermek tasarmcya aittir.
Net =
arpm
Net =
Maksimum
Net = Max(Xi*Wi)
Minimum
Net = Min(Xi*Wi)
ounluk
Net =
Kumilatif Toplam
Net =Net(eski) +
Aktivasyon Fonksiyonu: Bu fonksiyon hcreye gelen net girdiyi ileyerek hcrenin bu girdiye karlk retecei kty
belirler. Aktivasyon fonksiyonu genellikle dorusal olmayan bir fonksiyon seilir. Yapay sinir alarnn bir zellii olan
dorusal olmama aktivasyon fonksiyonlarnn dorusal olmama zelliinden gelmektedir. Aktivasyon fonksiyonu
seilirken dikkat edilmesi gereken bir dier nokta ise fonksiyonun trevinin kolay hesaplanabilir olmasdr. Geri beslemeli
alarda aktivasyon fonksiyonunun trevi de kullanld iin hesaplamann yavalamamas iin trevi kolay hesaplanr bir
fonksiyon seilir. Gnmzde en yaygn olarak kullanlan ok katmanl alglayc modelinde genel olarak aktivasyon
fonksiyonu olarak Sigmoid fonksiyonu kullanlr.
F(NET)=A* NET
(A sabit bir say)
Adm (Step)
Aktivasyon
Fonksiyonu
F(Net)=
Sigmoid
Aktivasyon
Fonksiyonu
F(Net)=
Tanjant
Hiperbolik
Aktivasyon
Fonksiyonu
1 if Net>Eik Deer
0 if Net<=Eik Deer
1
-Net
1+e
Net
e
F(Net)=
Eik Deer
Fonksiyonu
-Net
+e
Net
-Net
-e
0 if Net<=0
F(Net)=
Sins
Aktivasyon
Fonksiyonu
F(Net) = Sin(Net)
Hcrenin kts: Aktivasyon fonksiyonundan kan deer hcrenin kt deeri olmaktadr. Bu deer ister yapay sinir ann
kts olarak d dnyaya verilir isterse tekrardan an iinde kullanlabilir. Her hcrenin birden fazla girdisi olmasna ramen
bir tek kts olmaktadr. Bu kt istenilen sayda hcreye balanabilir.
2.3. Yapay Sinir Ann Yaps
Yapay sinir alar yapay sinir hcrelerinin birbirine balanmasyla oluan yaplardr. Yapay sinir alar ana katmanda
incelenir; Giri Katman, Ara (Gizli) Katmanlar ve k Katman.
5. renme setinden rneklerin seilmesi ve aa gsterilmesi: An renmeye balamas ve renme kuralna uygun
olarak arlklar deitirmesi iin aa rnekler belirli bir dzenee gre gsterilir.
6. renme srasnda ileri hesaplamalarn yaplmas: Sunulan girdi iin an kt deerleri hesaplanr.
7. Gerekleen ktnn beklenen kt ile karlatrlmas: An rettii hata deerleri bu admda hesaplanr.
8. Arlklarn deitirilmesi: Geri hesaplama yntemi uygulanarak retilen hatann azalmas iin arlklarn deitirilmesi
yaplr.
9. renmenin tamamlanmas: leri beslemeli sinir a renmeyi tamamlayncaya, yani gerekleen ile beklenen ktlar
arasndaki hatalar kabul edilir dzeye ininceye kadar devam eder.
An kendisine gsterilen girdi rnei iin beklenen kty retmesini salayacak arlk deerleri balangta rastgele
atanmakta ve aa rnekler gsterildike arlklar deitirilerek istenen deerlere ulamas salanmaktadr. stenen arlk
deerlerinin ne olduu bilinmemektedir. Bu nedenle YSA nn davranlarn yorumlamak ve aklamak mmkn olmaz.
Baz durumlarda an takld yer hata dzeyinin stnde kalabilir. Bu durumda an olay renmesi iin baz deiiklikler
yaplarak yeniden eitilmesi gerekir. Bunlar; Balang deerlerinde deiiklik yaplabilir. A topolojisinde deiiklikler
yaplabilir. An parametrelerinde deiiklikler yaplabilir. Aa sunulan verilerin gsterimi ve rneklerin formlasyonu
deitirilerek yeni rnek seti oluturulabilir. renme setindeki rneklerin says artrlabilir veya azaltlabilir.
leri beslemeli sinir ann yerel sonulara taklp kalmamas iin momentum katsays gelitirilmitir. Alarn eitilmesinde
dier nemli bir sorun ise renme sresinin ok uzun olmasdr. Arlk deerleri balangta byk deerler olmas
durumunda an lokal sonulara dmesi ve bir lokal sonutan dierine sramasna sebep olmaktadr. Eer arlklar kk
aralkta seilirse o zaman da arlklarn doru deerleri bulmas uzun zamanlar almaktadr. Baz problemlerin zm
sadece 200 iterasyon srerken bazlar 5-10 milyon iterasyon srmektedir.
An renmesinin gsterilmesinin en gzel yolu hata grafiini izmektir. Her iterasyonda oluan hatann grafii izilirse
hatann zaman iinde dt gzlenebilir. Belirli bir iterasyondan sonra hatann daha fazla azalmayaca grlr. Bu an
renmesinin durduu ve daha iyi bir sonu bulunamayaca anlamna gelir. Eer elde edilen zm kabul edilemez ise o
zaman a yerel bir zme taklm demektir.
Katsaylarn Belirlenmesi
leri beslemeli sinir anda balantlarn arlk deerlerinin balangta belirlenmesi an performansn yakndan
ilgilendirmektedir. Genel olarak arlklar belirli aralklarda atanmaktadr. Bu aralk eer byk tutulursa yerel zmler
arasnda srekli dolat kk olmas durumunda ise renmenin ge gerekletii grlmtr. Bu deerlerin atanmas
iin henz standart bir yntem yoktur. Tecrbeler 0.1 ile 1.0 arasndaki deerlerin baarl sonular rettiini
gstermektedir. Fakat bu tamamen renilmesi istenen problemin niteliine baldr.
Balang deerleri kadar renme ve momentum katsaylarnn belirlenmesi de an renme performans ile yakndan
ilgilidir. renme katsays arlklarn deiim miktarn belirlemektedir. Eer byk deerler seilirse o zaman yerel
zmler arasnda an dolamas ve osilasyon yaamas sz konusu olmaktadr. Kk deerler seilmesi ise renme
zamann artrmaktadr. Tecrbeler genellikle 0.2-0.4 arasndaki deerlerin kullanldn gstermitir. Baz uygulamalar
renme katsaysnn 0.6 deerini ald zaman en baarl sonular verdii gstermitir. Bu durum tamamen probleme
baldr.
Benzer ekilde momentum katsays da renmenin performansn etkiler. Momentum katsays bir nceki iterasyondaki
deiimin belirli bir orannn yeni deiim miktarna eklenmesidir. Bu zellikle yerel zmlere taklan alarn srama ile
daha iyi sonular bulmasn salamak amacyla ile nerilmitir. Bu deerlerin kk olmas yerel zmlerden kurtulmay
zorlatrabilir. ok byk deerler ise zme ulamada sorunlar yaatabilir. Tecrbeler momentum katsaysnn 0.6-0.8
arasnda seilmesinin uygun olacan gstermitir. Problemin niteliine gre kullancnn almasnda fayda vardr.
4. rnek Problem
Xor Problemini YSA ile zen bir program yaznz ve zm admlarn gsteriniz.
A11
NET1
A41
A12
A31
NET3
A21
A51
NET2
A61
A2 2
A32
Eik deeri 12
Eik deeri 1
1
A4-1= 0,164732
A1-2= 0,570345
A6-1= -0,993423
zm
G1=0
1 G1 1 0
G2=0
G3=1
2 G2 2 0 3 G3 3 1
kinci katman olan ara katmana giri deerlerini hesaplamak iin giri katmanndan gelen k deerleri ile arlk deerlerin
arpmlarn toplayarak buluruz. Aada iki ara katmann giri deerleri hesaplanmtr.
A11
A21
A31
NET1
3
NET1 i * Ai NET1 1 * A1 2 * A2 3 * A3
i 1
3
NET1 0 * 0,129952 0 * (0,923123) 1 * 0,341232 0,341232
A1 2
NET2
A2 2
A3 2
NET2 i * Ai NET2 1 * A1 2 * A2 3 * A3
i 1
NET1
4 F NET1
NET 2
1
1
0,584490
NET1
0341232
1 e
1 e
5 F NET1
1
1
0,471226
NET2
0 ,115223
1 e
1 e
6 G6 6 1
nc katman olan kt katmannn giri deeri ara katmann giri deerinin hesaplanmas ile ayndr. kt katmannn giri
deerini hesaplayalm;
A41
NET3
A51
5
A61
NET3 i * Ai NET3 4 * A4 5 * A5 6 * A6
i 4
1
NET3 0,584490
* 0,164732 0,471226* 0,752621 1* (0,993423) 0,542484
NET3
7 F NET3
1
1
0,367610
NET3
1 e542484
1 e
Em 0 367610 0,367610
An hatas beklediimizden byk olduundan imdi geriye doru hesaplama yntemi kullananlm;
NET3
m 7 1 7 * Em
m 0,367610* (1 0,367610) * (0,367610) 0,085459
Ajm t * m * jm * Ajm t 1
A41 t * m * 4 * A t 1 0,5 * (0,085459) * 0,584490 0,8 * 0
= -0,024875
Arlklardaki bu deiimlerden sonra ara katman ile kt katman arasndaki arlklar hesaplayalm (A4-1,A5-1,A6-1);
Ak t Ak t 1 Ak t
ja aj (1 aj ) m Aajm (t 1)
m
4a 4a (1 4a ) m A4a1 (t 1)
1
5a 5a (1 5a ) 5 A5a1 (t 1)
1
Ajm t * m * jm * Ajm t 1
A11 t 0,5 * (0,003419) * 0 0,8 * 0 0
A12 t 0,5 * (0,003419) * 0 0,8 * 0 0
A21 t 0,5 * (0,016026) * 0 0,8 * 0 0
A22 t 0,5 * (0,016026) * 0 0,8 * 0 0
A31 t 0,5 * (0,003419) *1 0,8 * 0 0,0017095
A32 t 0,5 * (0,016026) *1 0,8 * 0 0,0080132
Girdi katman ile Ara katman arasndaki arlklar;
Ak t Ak t 1 Ak t
A11 0,129952 0 0,129952
A12 0,570345 0 0,570345
A21 (0,923123) 0 0,923123
A22 (0,328932) 0 0,328932
A31 0,341232 (0,0017095) 0,3395225
NET1
0,139757
0,570345
0,3395225
-0,923123
-0,328932
0,732486
-1,036153
NET2
-0,1072098
NET3
devler
YSA kullanarak resim eklinde verilen tm rakamlar saysal dntren bir algoritma gelitiriniz. Resmin boyutlar her trl
olabilir.
pucu: ncelikle genel bir program yazlp, okunan resimler bykse leklenip, an istedii boyutlara drlmelidir.
Proje Konusu