doÇ. dr. seral ÖzŞen konya-2015 - selcuk.edu.tr°stemlere_gİrİs2.pdf · 1. yapay zeka...

142
DOÇ. DR. SERAL ÖZŞEN KONYA - 2015 9.10.2017 1

Upload: others

Post on 16-Sep-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

DOÇ. DR. SERAL ÖZŞENKONYA-2015

9.10.2017 1

Page 2: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi2. Kural-tabanlı sistemler3. Bulanık uzman sistemler4. Sınıflama, öğrenme ve kümeleme kavramları5. Yapay Sinir Ağları6. Evrimsel hesaplama

KONULAR

9.10.2017 2

Page 3: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Zeka:

- Birinin bir şeyi anlama ve öğrenme yeteneği Yapay Zeka:

-İnsan zekası gerektiren problemlerin çözümünü makinelerin yapabilmesiAlan Turing (kariyer:1930, Enigma)

Makineler zeka testini geçebilir mi?: Turing testi

1. Yapay Zeka Kavramına Giriş, tarihçe ve gelişimi

9.10.2017 3

Page 4: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Depolama: 1018 , işlem yapma: 1015

9.10.2017 4

Page 5: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

1. Yapay Zekanın «KARANLIK» zamanları (1943-56)Warren McCulloch (Felsefe ve Tıp)ve Walter Pitts (matematikçi): Yapay Nöron modeli (on- off)

9.10.2017 5

Page 6: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

John von Neumann (Turing arkadaşı-matematikçi)-nükleer bomba projesi-EDVAC (Electronic Discrete Variable

Aotomatic Computer) proje danışmanı (ilk kayıtlı program içeren makinelerden)

Dartmouth Workshop-1956 (Martin Minsky ve Claude Shannon): ArtificialIntelligence

9.10.2017 6

Page 7: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

2. Yapay Zeka Beklentileri (1956- 1960’ların sonu) John McCarthy (Dartmouth workshop katılımcısı):

-LISP-Advice Taker (1958): ilk bilgi tabanlı sistem

Frank Rosenblatt (1962): Perceptron yakınsama teoremi

Lotfi Zadeh (1965): Fuzzy sets…..Genel Problem çözücüler, zayıf metodlar.

9.10.2017 7

Page 8: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

3. Gerçekleşmeyen hayaller, gerçeğin etkisi (1960 sonları- 1970’lerin başları ) Dezavantajlar:Genel metodlar tanımlandıÇözülmeye çalışılan problemler çok

geniş bir alanda ve çok zordu İngiliz hükümeti maddi desteği azalttı

9.10.2017 8

Page 9: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

4. Teknoloji gelişimi- başarının anahtarı (1970 başları- 1980’lerin ortaları ) İşlem yapabilecek hızlı programlara ihtiyaç vardı DENDRAL(1963): kimyasal analizi (NASA): kütle

spectrogram’ımın belirlenmesi- uzman deneyimi , ilk başarılı bilgi-tabanlı sistem (knowledge-based system), bilgi mühendisliği temeli

MYCIN (1976): tıbbi teşhis sistemi (enfeksiyonlu kan hastalıkları teşhisi), kural tabanlı uzman sistem

PROSPECTOR (1983): mineral araştırma. Kural tabanlı sistem + anlamlı ağ yapısı (semantic network)

Kısıtlı algoritmalar, problem-tabanlı, performansları çok iyi değil, oluşturulmaları çok uzun yıllar almış, ..vs

9.10.2017 9

Page 10: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

5. Sinir Ağlarının Yeniden Doğuşu (1980 ortaları ve sonrası) YSA’nın oluşması için teorik altyapı:

1960’ların sonları- YSA gelişimi: 1980 ortaları (teknoloji!!!!!, 1969’da Minsky ve Papert tek katmanlı perceptronların matematiksel zayıflığını gösterdi- heves kalmadı)

Grossberg, 1980: adaptif rezonans teorisi (Self-organized-maps için alt yapı)

Hopfield, 1982: Hopfield ağları Kohonen, 1982: Self-organized-maps Barto, Sutton ve Anderson, 1983: takviyeli

öğrenme- kontrol Rumelhart ve McClelland, 1986: GERİ

YAYILIMLI ÖĞRENME ve çok katmanlı perseptronlar (Bryson ve Ho, 1969)

Broomhead ve Lowe, 1988: layeredfeedforward networks with radial basisfunctions

9.10.2017 10

Page 11: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

6. Evrimsel Hesaplama, ya da yaparak öğrenme (1970’lerin başları ve sonrası)Doğal seleksiyon ve genetikGenetik algoritmalar, evrimsel stratejiler ve genetik

programlama John Holland, 1975: genetik algoritma kavramı:

kromozomların binary kodlanması, seçme, çaprazlama ve mutasyon

…. ve diğerleri

9.10.2017 11

Page 12: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

7. Bilgi Mühendisliği (1980 sonları-günümüz)YSA: symbolic reasoning sistemlerine göre daha iyi

uyum sağlıyor fakat kara kutu (açıklama yok), eğitme uzun olabiliyor, yeniden eğitme farklı sonuçlara yol açabiliyor

Ön-bilgi az ise (knowledge-poor situations) performans iyi.

Klasik uzman sistemler:uzmana bağlı kalması, uzmanın bilgilerini her zaman iyi bir kural ile ifade edememesi, ..vs. Çözüm: büyük veri havuzundaki gizli bilgili çıkaran YSA ile kurallar için gerekli olan bilginin elde edilmesi, Bulanık mantık, hibridsistemler

9.10.2017 12

Page 13: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Trafik lambası,

EĞER kırmızı İSE bekle.IF traffic light is red THEN wait.

(IF-THEN yapısı, KURAL). IF: koşul

THEN: durum ya da aksiyon Kurallar ile ilişkiler (EĞER Yakıt deposu boş

ise araba ölüdür), tavsiyeler (EĞER hava bulutlu ise şemsiye al), direktifler (EĞER yakıt deposu boş ise DOLDUR), stratejiler (EĞER araba çalışmıyor ise yakıt deposunu kontrol et ), sezgiler (EĞER numune sıvı, ph>6 ve sirke gibi kokuyorsa numune asetik asit olabilir) anlatılabilir.

2. Kural-Tabanlı Sistemler

9.10.2017 13

Page 14: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Uzman Sistem Bileşenleri

9.10.2017 14

Page 15: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Kural-tabanlı uzman sistem yapısı

If-then kurallarından hangilerinin alınacağını belirler, çıkarım yapılır

Uzman sistemin sonuçlara nasıl ulaştığını ve neden bir gerçeğe ihtiyaç duyulduğunu açıklamasını sağlar

9.10.2017 15

Page 16: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Yüksek-kaliteli performans (hız ikinci planda ama çok önemli) temel kurallar, sezgisel kurallar Açıklayıcılık Sembolik çıkarımsama Belirli bir işlem sırası yok, tam olmayan çıkarımsama yapılır,

tam olmayan, belirsiz ve bulanık varilerle uğraşılır. Uzman hata yapabilir Geleneksel programlar & uzman sistemler ???

-tam veriler, kesin ve doğru sonuçlar-uzman sistemlerde bilgi ve işlenmesi ayrılmış durumda

(modüler, değiştirilebilir ve anlaşılır yapı)

Uzman sistemin temel karakteristikleri

9.10.2017 16

Page 17: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

IF-THEN kuralları: domain Facts: data Çıkarım makinesi, veritabanındaki gerçekler ile bilgi

tabanındaki her kuralı karşılaştırır. Eşitleme varsa: FİRED

İleri ve geri zincirleme çıkarım teknikleri

Ateşlenen kurallar gerçekler setini yenileyebilir.

Çıkarım zincirleri (Inference chains):

If kısmı ile gerçeklerin eşleşmesi

9.10.2017 17

Page 18: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Zincirleme çıkarım teknikleri, örnek:Veritabanı: A, B, C, D ve E gerçekleriBilgi tabanı:

Kural 1: IF Y is true AND D is trueTHEN Z is true

Kural 2: IF X is true AND B is true AND E is trueTHEN Y is true

Kural 3: IF A is trueTHEN X is true

9.10.2017 18

Page 19: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Önceki örnek: ileri zincirleme.

Kural 1: Y & D → ZKural 2: X & B & E → YKural 3: A → X

iki yeni kural ekleyelim: Kural 4: C → LKural 5: L & M→ N

İleri zincirleme: data-driven method Bilinen veriden başlar,

her seferinde en yukardaki kural işleme tabi tutulur, her kural 1 kere işleme alınır

Devam edildiğinde M ve N de eklenecek

9.10.2017 19

Page 20: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Geri zincirleme: goal-driven method Hedef (goal) vardır.

Bu hedefe ulaşmak için diğer kurallar sorgulanır, sorgulama esnasında ara-hedefler (sub-goals) oluşturulabilinir.

İleri zincirlemede aynı sonuç için 4 kural ateşlenirken, geri zincirlemede 3 kural ateşlendi.

Eğer uzman önce belli bilgilere ihtiyaç duyup ona göre yeni kurallar oluşturacak ise ileri zincirleme. Bir hipotez çözüm üretip onu ispatlamak için yeni kural ve gerçeklere ihtiyaç duyacaksa, geri zincirleme kullanılmalıdır.

İleri ve geri zincirleme kombine olarak ta kullanılabilir. Fakat genellikle geri zincirleme kullanılır.

9.10.2017 20

Page 21: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Conflict resolution (çatışma çözümü):

bilinen bir döngüde bir gerçek için birden fazla kuralın ateşlenebileceği kurallar içinden bir kuralı seçme yöntemine denir. Önleme yöntemleri:-kuralları öncelik sırasına göre dizme-en spesifik kuralı seç (spesifik kural genel olandan daha fazla bilgi içerir)-veritabanına en son eklenen veriyi kullanan kuralı seç

9.10.2017 21

Page 22: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Kural sayısı arttığında uzman tüm kuralları görüp yorum yapamayabilir:

sistemi bilgi hakkındaki bilgi ile donatmalıyız. Metaknowledge: bilginin bilgisi (knowledge about

knowledge). Ortam bilgisini kullanmak ve kontrol etmek için gerekli olan bilgi-Metarule. Domain-independent.Metarule-1: Uzmandan gelen kurallar, acemiye göre önceliklidirMetarule-2:İnsan hayatının kurtarılması ile ilgili kurallar Güç sistemi elemanlarındaki fazla yükü temizleme ile ilgili kurallardan daha önceliklidir.Mearule-3:Dersi dinlemek ile ilgili kurallar ders metaryli kurallarına göre önceliklidir.

9.10.2017 22

Page 23: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Avantajları: Doğal bilgi gösterimiDüzenli bir yapı (IF-

THEN yapısı) Bilgi ile bilginin

işlendiği kısımlar ayrı (modüler ve adaptif)

Eksik ve kesin olmayan bilgileri de işleyebilmesi

Kural tabanlı sistemleri avantaj ve dezavantajları:

Dezavantajları: Kurallar arasında net

olmayan ilişkilerin var olması. Bireysel kurallar tüm stratejiyi nasıl etkiliyor?

Etkin olmayan arama stratejisi: zaman tasarrufu ve real-time uygulamalarda eksiklik

Öğrenme eksikliği. Deneyimden öğrenmezler: uzman söyler.

9.10.2017 23

Page 24: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Uzmn tarafından sağlanan bilgi: «güç transformatörü

hafif bir şekilde yüklendiğinde bu yükü sürekli tutabilirim». İnsan: anlar. Bilgisayar: ???

Bulanık mantık, bulanık olan bir mantık değildir, bulanıklığı açıklamak için geliştirilmiş bir mantıktır.

Temeli: Tüm nesne ve olgular derecelere sahiptir (Motor gerçekten ÇOK ISINDI, elektrikli arabalar ÇOK HIZLI DEĞİL, İstanbul GÜZEL bir şehir, …vb)

Geleneksel mantık: keskin sınırlar (Elektrikli arabanın menzili 300 km’den az ise KISA, 300 km’den fazla ise UZUN )

9.10.2017 24

3. Bulanık Uzman Sistemler

Page 25: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

1930, Jan Lukasiwwicz: Çok değerli mantık. Uzun, eski ve sıcak kavramları üzerinde keskin mantık yerine çok değerli mantık kullanmış. Olasılık değerleri (olabilirlik değerleri) atanmış. Örneğin 181 cm uzunluğundaki adam: 0.86 değeri atanmış. (Uzun olma olasılığı yüksek)

….. 1965, Lotfi Zadeh: Fuzzy Sets Theory Neden Bulanık Mantık?

9.10.2017 25

Page 26: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık Setler: Set kavramı bir çok elemanı içeren bir grup olarak

kullanılabilir: Araba derken bir çok arabanın oluşturduğu bir seti ifade ediyoruz. Bir araba derken de bu set içindeki bir arabadan bahsediyoruz.

X: bir set, x: bir eleman. x ya X’e dahildir (x Є X) ya da değildir. (belirsiz durumları açıklayamaz)

Örnek: UZUN adam örneğiKlasik mantık: Adam uzun mu? (evet ya da hayır), 180 cm sınırı.Bulanık mantık: Adam ne kadar uzun? (üyelik bilgisi. Adam 0.82 üyelikle uzun gibi)

9.10.2017 26

Page 27: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

«oldukça kısa», «kısa», «ortalama» ve «oldukça uzun» setleri

Yatay eksen: «universe of discourse»: seçilen bir değişkene uygulanabilecek tüm değerlerin bulundupuaralık

Dikey eksen: üyelik değeri

9.10.2017 27

Page 28: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık set: bulanık sınırları olan setX: universe of discourse (değer evreni), x: elemanlar.Kesin mantık: A seti, A’nın karakteristik fonksiyonu

ile ifade edilir.

Bulanık mantık: A seti, µA(x) üyelik fonksiyonu ile ifade edilir. (0-1 aralığında sürekli değerler alabilir)

9.10.2017 28

Page 29: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bilgisayarda Bulanık set nasıl ifade edilir? Öncelikle üyelik fonksiyonu belirlenmelidir. (Uzmanlara

danışılabilir, son yıllarda: YSA) Uzun adam örneği: Üç set: kısa, orta uzun. Bulanık mantık: 184 cm: orta setinin uzun üyesi (0.1 üyelik değeri ile) fakat uzun setinin de üyesi (0.4 üyelik değeri ile)

9.10.2017 29

-X={x1, x2, x3, x4, x5 } : referans süper set. (Universe of discourse)-A: subset of XA={x2, x3}Burada A şu şekilde de tanımlanabilir:A={(x1,0), (x2,1), (x3,1), (x4,0),(x5,0)}. ({(xi, µi(x)} şeklinde tanımlanmış)Buradaki soru şudur: µA(x) sadece 0, 1 şeklinde iki değerden birini mi alacaktır yoksa 0-1 aralığında herhangi bir değer mi alacaktır?

Page 30: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık subset’lerin gösterimi şu şekilde yapılır:A={(x1, µA(x1)}, {(x2, µA(x2)},…{(xn, µA(xn)}Veya (genellikle)A={(µA(x1)/x1}, {(µA(x2)/x2},…{(µA(xn)/xn}Üyelik fonksiyonları: sigmaid, gaussian, pi → iyi gösterim fakat hesapsal yük.Pratikte: Lineer üyelik fonksiyonları (hesapsal kolaylık)

Uzun adam örneğinde «uzun adam» seti bir «fit vektör» ile şu şekilde ifade edilebilir:Uzun adam=(0/180, 0.5/185, 1/190) veyaUzun adam=(0/180, 1/190)Benzer şekilde:Kısa adam=(1/160, 0.5/165, 0/170)Kısa adam=(1/160, 0/170)Ortalama adam=(0/165, 1/175, 0/185)

9.10.2017 30

Page 31: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Dilsel değerler ve sınırlar «Ahmet uzun bir adamdır»: Ahmet: dilsel değişken,

uzun: dilsel değer.

Sınırlar (hedges): bulanık setlerin şeklini düzenlerler. Çok (very), biraz (somewhat), oldukça (quite), daha çok yada daha az (more, less), hafifçe (slightly) gibi sıfatlar içerirler. Yüklemleri, sıfatları, zamirleri ve hatta tüm cümleyi değiştirebilirler.

* çok amaçlı değiştiriciler: çok, oldukça, çok çok fazla,…gibi*gerçekle ilişkili olanlar: oldukça doğru, çoğunlukla yanlış,…gibi* olasılıklar: olabilir, çok olabilirliği yok,…gibi*miktar belirteçleri: çoğu, bir kaç, çok az,…gibi*olabilirlikler: hemen hemen imkansız ve ya oldukça olası,…gibi

9.10.2017 31

Page 32: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sınırlar insan düşünmesini taklit etmeyi kolaylaştırır. Önceki örnekteki setler verysıfatını kullanarak yeniden düzenlenmiştir.

9.10.2017 32

Pratik uygulamalarda Sıkça kullanılan sınırlar (hedges): Very: Extremely: Very Very: More ya da Less: Indeed:

Page 33: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık Setler Üzerindeki İşlemler:Complement (tersini alma)-klasik set teorisi: set’e dahil olmayanlar neler?-bulanık set teorisi: elemanların set’e dahil olmama oranları nelerdir?µ¬A(x)=1-µA(x)Uzun adam=(0/180, 0.25/182.5, 0.5/185, 0.75/187.5, 1/190)Uzun olmayan adam=(1/180, 0.75/182.5, 0.5/185,0.25/187.5, 0/190)

Containment (içerme)-klasik set teorisi: hangi setler hangi diğer setleri içerir?-bulanık set teorisi: hangi setler diğer setlere dahildir?(very tall man ⊂ tall man)

9.10.2017 33

Page 34: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Intersection (Kesişme)-klasik set teorisi: hangi elemanlar her iki sete de dahildir?-bulanık set teorisi: elemanların ne kadarı her iki sette vardır?Şişman ve uzun (klasik mantık: kesişimde yer alması için hem şişman hem de uzun)A ve B bulanık setleri (X değer evreninde) var.

µA∩B(x)=min[µA(x), µB(x)]= µA(x)∩µB(x)Örnek:Uzun adam=(0/165, 0/175, 0/180, 0.25/182.5, 0.5/185,1/190)Ortalama adam=(0/165, 1/175, 0.5/180,0.25/182.5, 0/185, 0/190) İseUzun adam ∩ Ortalama adam= (0/165, 0/175, 0/180, 0.25/182.5, 0/185, 0/190)

9.10.2017 34

Page 35: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Union (Birleşim)-Klasik set teorisi: herhangi bir sete dahil olan elemanlar hangileridir?-Bulanık set teorisi: Elemanların ne kadarı herhangi bir sete dahillerdir?A ve B bulanık setleri (X değer evreninde) var. µA∪B(x)=max[µA(x), µB(x)]= µA(x)∪µB(x)Örnek:Uzun adam=(0/165, 0/175, 0/180, 0.25/182.5, 0.5/185,1/190)Ortalama adam=(0/165, 1/175, 0.5/180,0.25/182.5, 0/185, 0/190) İseUzun adam ∪Ortalama adam= (0/165, 1/175, 0.5/180, 0.25/182.5, 0.5/185, 1/190)

9.10.2017 35

NOT: klasik teoride olduğu gibi,-değişme özelliği,A ∪ B= B ∪ A-birleşme özelliği,A ∪ (B ∪ C)= (A ∪ B) ∪ C-dağılma özelliği,A ∪ (B ∩ C)= (A ∪ B) ∩ (A ∪ C)-denklik özelliği,A ∪ A=A,-birim uzay,A ∪ Ø= A, A∩Ø=Ø-değilleme,¬¬A=A-De morgan kuralı:¬(A ∩ B)=¬A ∪ ¬B

Page 36: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık Kurallar: IF x is A

THEN y is B

x,y: dilsel değişkenlerA,B: dilsel değerler

Klasik kurallar ve Bulanık kurallar arasındaki fark:Klasik kurallar: Bulanık Kurallar:IF speed is >100 IF speed is FASTTHEN stopping_distance is long THEN stopping distance is long

IF speed is <40 IF speed is slowTHEN stopping_distance is short THEN stopping distance is short

9.10.2017 36

Page 37: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık kurallarla sonuç oluşturma: (Fuzzy reasoning)-koşulu değerlendirme (IF kısmı)-olguyu gerçekleştirme (THEN kısmı)

Klasik mantık: koşul doğru ise (1) gerçekleştir Bulanık mantık: koşul belli dereceye kadar doğru ise

gerçekleştir (üyeliği >0.8 ise)

9.10.2017 37

Page 38: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Kural: (Ağırlık tahmin modeli)IF height is tallTHEN weight is heavyBu şekildeki çıkarımsama: monotonic selection------------------------------------------------------------------IF kısmı birden fazla parçadan oluşursa:IF project_duration is longAND project_staffing is largeAND peoject_funding is inadequateTHEN risk is high: tüm parçaların üyeliği ayrı ayrı değerlendirilir ve bulanık set işlemleri gerçekleştirilir (AND: ∪, OR: ∩) --------------------------------------------------------------------THEN kısmı birden fazla parçadan oluşursa:IF temperature is highTHEN hot_water is reduced; cold water is increased:tüm parçalar eşit derecede etkilenir.

9.10.2017 38

Page 39: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık Çıkarımsama (Fuzzy Inference) Bulanık set teorisini kullanarak verilen giriş

değerlerinden çıkış oluşturma

1. Mamdani-Style Inference:En sık kullaılan yöntem (1975, Ebrahim Mamdami)Dört adım: Giriş verilerinin bulanıklaştırılması (fuzzification) Kural değerlendirme Kurak çıkışlarının toplanması geri-bulanıklaştırma (De-fuzzyfication)

9.10.2017 39

Page 40: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

9.10.2017 40

Page 41: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

9.10.2017 41

Bulanık Çıkarımsama (FuzzyInference) belirli giriş değerleri için (x1

ve y1) hangi setlere hangi üyelikle dahil oldukları hesaplanır.

Kural değerlendirme:Kural 1: IF x is A3OR y is B1THEN z is C1Normalde:µA ∪B=max(µA(x), µB(x))İle hesaplanması gerekiyordu. Fakat bazen aşağıdaki gibi de OR işleci hesaplanabiliyor (MATLAB’de böyle yapılıyor):µA ∪B=probor(µA(x), µB(x))= µA(x)+ µB(x)-µA(x) x µB(x)

Benzer şekilde AND işleci:µA ∩B=prod(µA(x), µB(x))= µA(x) x µB(x)

Page 42: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Kural çıkışlarının toplanması:

-clipped (örnekteki yapılan)-scaled

9.10.2017 42

Page 43: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Geri-bulanıklaştırma (Defuzzification)Bir çok yöntem ama en yaygını: centroid tekniği (kütle merkezi (alanları eşit olarak ikiye bölen çizgi))

Centre of Gravity (COG)-kütle merkezi:

𝐶𝐶𝐶𝐶𝐶𝐶 = ∫𝑎𝑎𝑏𝑏 𝜇𝜇𝐴𝐴 𝑥𝑥 𝑥𝑥𝑥𝑥𝑥𝑥

∫𝑎𝑎𝑏𝑏 𝜇𝜇𝐴𝐴 𝑥𝑥 𝑥𝑥𝑥𝑥

𝐶𝐶𝐶𝐶𝐶𝐶 = ∑𝑥𝑥=𝑎𝑎𝑏𝑏 𝜇𝜇𝐴𝐴 𝑥𝑥 𝑥𝑥∑𝑥𝑥=𝑎𝑎𝑏𝑏 𝜇𝜇𝐴𝐴 𝑥𝑥

9.10.2017 43

Page 44: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

2. Sugeno-style inference:Mamdami yöntemi:İki boyutlu bir şekil üzerinden integral alarak centroid bulmamızı istiyor: hesapsalolarak etkin değil.Sugeno, mamdami ile aynı sadece kural sonucu değişik. IF x is AAND y is BTHEN z is f(x,y)Burada f(x,y), matematiksel bir fonksiyondur.

9.10.2017 44

Page 45: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sonuç hesabı:WA(Weighted Average-Ağırlıklı ortalama):

𝑊𝑊𝑊𝑊 =𝜇𝜇 𝑘𝑘𝑘 ∗ 𝑘𝑘𝑘 + 𝜇𝜇 𝑘𝑘2 ∗ 𝑘𝑘2 + 𝜇𝜇 𝑘𝑘3 ∗ 𝑘𝑘3

𝜇𝜇 𝑘𝑘𝑘 + 𝜇𝜇 𝑘𝑘2 + 𝜇𝜇 𝑘𝑘3

𝑊𝑊𝑊𝑊 = 0.1∗20+0.2∗50+0.5∗800.1+0.2+0.5

= 65

9.10.2017 45

Page 46: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bulanık bir uzman sistemin tasarımı:1) Problemi belirle ve dilsel değerleri tanımla2) Dilsel değerler ve çıkışla ilgili bulanık setleri tanımla3) Bulanık kuralları oluştur4) Bulanık çıkarımsama yapabilmek için bulanık setleri

ve kuralları kodla5) Sistemi değerlendir ve ayar yap

9.10.2017 46

Page 47: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

ÖRNEK:Kişinin boyuna ve kilosuna göre yapması gereken egzersiz miktarının belirlenmesi.

9.10.2017 47

Page 48: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Veri madenciliği uygulamaları aşağıdaki iki kategoriden birinde uygulanmaktadır: 1. Eldeki verilerle tanımlanan bir sistemin modelini

üreten, tanımsal veri madenciliği,2. Mevcuttaki veriye dayalı olarak daha önceden

karşılaşılmamış, yeni bilgileri üreten tahminsel veri madenciliği.

9.10.2017 48

4. Sınıflama, Kümeleme ve Öğrenme Kavramları

Page 49: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

ÖRNEK:

Bölüm-1 49

giriş çıkışSİSTEM

giriş çıkış

R1

R2

Çıkış=giriş/(R1+R2)*R2

giriş çıkış?

Page 50: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Veri madenciliği görevleri: Sınıflama (Classification) Regresyon (regression) Kümeleme (Clustering) Özetleme(Summarization) Bağımlılık modellemesi (Dependency Modelling) Değişim ve sapma tespiti (Change and Deviation

Detection)

Bölüm-1 50

4. Sınıflama, Kümeleme ve Öğrenme Kavramları

Page 51: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Problemin tanımlanması

Verilerin toplanması

Önişleme

Model tahmini

Modelin yorumlanması & sonuçların çıkarsanması

Bölüm-1 51

Page 52: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Veri gösterimi:

Bölüm-1 52

Örnekler

özellikler

SİSTEM

XBağımlı değişken

YBağımlı değişken

ZBağımsız değişken

Page 53: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Verinin kalitesi:• veri doğru olmalı• veri tam olmalı• veri tutarlı olmalı• Veri kendi tipinde kaydedilmiş olmalı (sayısal

tipli bir veri ise sayısal değerli olması,..vs.)• Veri gereksiz yere büyük olmamalı• Veri zaman faktörü ile tutarlı olmalı• Veri iyi anlaşılır olmalı• Veri yorumlama farklarına imkan verecek

bulanıklıkta olmamalı Bölüm-1 53

4. Sınıflama, Kümeleme ve Öğrenme Kavramları

Page 54: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sınıflama

Örnek: bir iş için uygun işçi bulmak

Bölüm-3 54

başarılı

başarısız

Page 55: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

sınıflama

Örnek: klimanın otomatik artışı - azalması

Bölüm-3 55

Klima

Ortam sıcaklığı

İstenen derece

Pencerelerin durumu

Nem

Çıkış değerleri (0.5 derece artır ya da azalt)

Page 56: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

sınıflama

Örnek: hastalık sınıflama

56

Page 57: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

kümeleme

57

Page 58: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

kümeleme

Bölüm-3 58

Page 59: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Tahmin (regresyon)

Örnek: reklam harcamalarına bağlı gelecek öğrenci sayısının modeli

Bölüm-3 59

Page 60: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Tahmin (regresyon)

Bölüm-3 60

Page 61: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Tahmin (regresyon)

Tahmin problemlerinin farklı çözümleri olabilir

Bölüm-3 61

Page 62: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Öğrenme teknikleri

Makine Öğrenmesi yöntemleri verinin yapısınagöre ikiye ayrılır. Danısmanlı (supervised) Öğrenme: Veri,etkiye tepki prensibiyle çalısan sistemlerdenalınır ve giris-çıkıs düzeninde organize edilir. Danısmansız (unsupervised) Öğrenme: Sınıfbilgisi olmayan veya verilmeyen veri içerisindekigrupları kesfetmeyi hedefler.

Bölüm-3 62

Page 63: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Danişmanli öğrenme

Bölüm-3 63

Page 64: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Danışmanlı öğrenme

Bölüm-3 64

Page 65: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Danışmansız öğrenme:

Danışmansız öğrenmede elde bulunan veriler için onlara karşılık gelen çıkışlar önceden bilinmez. Örneğin klima örneğinde ortam sıcaklığı, nem,..vs. gibi giriş verileri elimizde vardır fakat her bir giriş verisine karşılık klimanın derecesinin artırılması ya da azaltılmasını söyleyen çıkış verisi yoktur.

Bölüm-3 65

Page 66: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Danışmansız öğrenme:

Örneğin: (bir sınıflama problemi var ise)Danışmanlı öğrenme Danışmansız öğrenme

Bölüm-3 66

Page 67: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Danışmansız öğrenme

Uygulamalar, otomatik olarak haber sınıflandırma (örneğin

news.google.com) benzer haberleri aynı kümelere koyup aynı

başlanğıçtan kullanıcılara sunmak Sosyal ağlar analizi; facebookta ilişki grafikler vb Pazar analizi; müşterilerin tercihleri açıklamaDoğal veriler anlama; ekonomi, bioloji, vb

67

Page 68: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Eğitme ve test kavramları EĞİTME İŞLEMİ

Bölüm-3 68

Model (y=ax+exp(bx))

Eğitme verileri

Sistem çıkışı

Asıl çıkışlar

Hata hesaplama

Page 69: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Eğitme ve test kavramları

TEST İŞLEMİ

Bölüm-3 69

EğitilmişModel

(y=3x+exp(2x))test verileri

Sistem çıkışı

Asıl çıkışlar

Hata hesaplama

Sistemin performansı

Page 71: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Perceptron

Perceptronlar, son derece sınırlı olmalarına karşın en eskisinir ağlarından biridir.

Perceptron, bir sinir hücresinin birden fazla girdiyi alarak birçıktı üretmesi prensibine dayanır.

Basit bir perceptron yapısı

Page 72: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Basit Algılayıcı Öğrenme Yapısı (Kuralı)

Adım1: Ağa, girdi seti ve ona karşılık beklenen çıktı gösterilir(X,B).

Adım2: Perceptrona gelen Net girdi hesaplanır.

Adım3: Perceptron çıkışı hesaplanır.

Page 73: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ağın, beklenen çıktısı 0 iken Net girdi eşik değerinin üzerindeise ağırlık değerleri azaltılmaktadır.

Ağın, beklenen çıktısı 1 iken Net girdi eşik değerinin altında iseağırlık değerleri arttırılmaktadır.

Adım4: Bütün girdi setindeki örnekler için doğru sınıflandırmayapılıncaya kadar ilk üç adımdaki işlemler tekrarlanır.

Page 74: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Örnek

Page 75: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 76: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 77: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 78: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 79: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 80: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler
Page 81: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Perceptron Yapısı

x1x2xn

w1…wn Gövde(Soma)

Çıktı Vektörü[Sinaps]

y

Hard-Lim aktivasyon foksiyonug()=İf Σ(wi.xi)>0 then 1 else 0

Ağırlık Vektörü = WHer girişin ağırlıkları atanıyor

Çıktı Vektörü başka katmanları besleyebilir

Wn =Wn + LR*Xn*E

Tek katmanlı perceptronlar sadece doğrusal problemlerde

kullanılır

+ + - - - - - - - - - - - -+ + + + + - - - - - - -+ + + + + + + + - - -

Bias=1

Page 82: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Terimler

Epoch : Olası girdiler için ağırlıkların güncellenme sayısına denir.Error: Çıktı değeriyle bizim fonksiyondan beklediğimiz değer arasındaki farktır.

Örneğin, eğer biz çıktı olarak 0 bekleyip de 1 aldığımızda hata (error) değeri -1‘ dir.

Target Value, T : Perceptrondan öğrenmesini beklediğimiz değerdir. Örneğin, eğer AND fonksiyonuna [1,1] girdisini verirsek bekleyeceğimiz sonuç 1 ‘dir. Output , O : Perceptron’un verdiği çıktıdır.Xi : Neuron’ a verilen girdi Wi : Xi inci girdinin ağırlık değeriLR : Learning rate. Bir perceptron’un hedefe varması için gereken adım büyüklüğü.

Page 83: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Öğrenme Algoritması

Girdilere göre çıktıyı hesaplaError = T – OIf |Error| > 0 then

Wi_yeni değer = Wi_eski değer + LR * Xi * ErrorEnd If

Page 84: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

ÖrneklerX1

X2

OutputEşik1

01

(0,0)

(1,1)(1,0)

X1

X2(0,1)

X1 X2

Bias + W1*X1 + W2 *X2 Output Target

1 1 0+1*1 + 1*1 = 2 1 1

1 0 0 + 1*1 + 1*0 = 1 1 00 1 0 + 1*0 + 1*1 = 1 1 00 0 0 + 1* 0 + 1* 0 = 0 0 1

• Net parametre değerleri(bias, W1, W2) = 0, 1, 1)

Page 85: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Perceptronlar XOR problemi gibi doğrusalolarak sınıflandırılamayan problemleriçözümünde başarısızdır.

Page 86: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çok Katmanlı Perceptron (MLP)

86

Page 87: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

XOR problemini çözmek için yapılan çalışmalar sonucu çokkatmanlı algılayıcı modeli geliştirilmiştir. Rumelhart vearkadaşları tarafından geliştirilen bu modele hata yaymamodeli veya geriye yayılım modeli(back propogation model) dedenilmektedir.

Bunu Özellikle sınıflandırma, tanıma ve genelleme yapmayıgerektiren problemler için çok önemli bir çözüm aracıdır. Bumodel “Delta Öğrenme Kuralı” denilen bir öğrenmeyöntemini kullanmaktadır. Bu kural aslında ADALINE ve basitalgılayıcı modelinin öğrenme kurallarının geliştirilmiş birşeklidir.

87

Page 88: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çok Katmanlı Ağ Modelinin Yapısı

AraKatman

Girdi Katmanı

Çıktı Katmanı

Eşik Değeri

Eşik Değeri

G1

G2

G3

Ç1

Ç2

Ç3

88

Page 89: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Girdi Katmanı: Dış dünyadan gelen girdileri alarak arakatmana gönderir. Bu katmanda bilgi işleme olmaz. Gelenher bilgi geldiği gibi bir sonraki katmana gider. Her proseselemanın sadece bir tane girdisi ve bir tane çıktısı vardır.Yani, girdi katmanındaki her proses elemanı bir sonrakikatmanda bulunan proses elemanlarının hepsine bağlanır.

Ara Katmanı: Ara katmanlar girdi katmanından gelen bilgileriişleyerek bir sonraki katmana gönderir. Çok katmanlı birağda birden fazla ara katman ve her katmanda birden fazlaproses elemanı bulunabilir.

89

Page 90: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çıkış Katmanı: Ara katmandan gelen bilgileri işleyerek ağagirdi katmanından verilen girdilere karşılık ağın ürettiğiçıkışları belirleyerek dış dünyaya gönderir.

Bir çıktı katmanında birden fazla proses elemanı olabilir. Herproses elemanı bir önceki katmanda bulunan bütün proseselemanlarına bağlıdır. Her proses elemanının bir çıktısıvardır.

90

Temel amacı ağın beklenilen çıktısı ile ürettiğiçıktı arasındaki hatayı en aza indirmektir. Bunuhatayı ağa yayarak gerçekleştirdiği için bu ağahata yayma ağı da denmektedir.

Page 91: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çok katmanlı ağ öğretmenli öğrenme stratejisini kullanır.Ağa, hem örnekler hem de örneklerden elde edilmesigereken çıktılar verilmektedir.

Sistem, kendisine gösterilen örneklerden genellemeleryaparak problem uzayını temsil eden bir çözüm uzayıüretmektedir. Daha sonra gösterilen benzer örnekler için buçözüm uzayı sonuçlar ve çözümler üretebilmektedir.

91

Page 92: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çok Katmanlı Ağ Hücresi

Girdi Nöron n : net giriş toplamıa : çıkışΣ : Toplam fonksiyonu.f : Aktivasyon fonksiyonu.

•Sigmoid•Tanh•Lineer

92

Page 93: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bir çok giriş için genellikle bir nöron yeterli olmayabilir. Paralelişlem yapan birden fazla nörona ihtiyaç duyulduğunda katmankavramı devreye girmektedir. S tane nöronun tek bir katmanıŞekil’de gösterilmiştir. Burada her giriş bir nörona bağlıdır.

93

Page 94: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Çok Katmanlı Ağın Öğrenme Kuralı

Çok katmanlı ağın öğrenme kuralı en küçük kareleryöntemine dayalı “Delta Öğrenme Kuralı”’nıngenelleştirilmiş halidir. Bu yüzden “Genelleştirilmiş DeltaKuralı” olarak da isimlendirilmektedir.

Ağın öğrenebilmesi için eğitim seti adı verilen veörneklerden oluşan bir sete ihtiyaç vardır. Bu set içinde herörnek için ağın hem girdiler hem de o girdiler için ağınüretmesi gereken çıktılar belirlenmiştir.

94

Page 95: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

“Genelleştirilmiş Delta Kuralı” iki aşamadan oluşur.

• İleri doğru hesaplama(Feed Forward)

• Geri doğru hesaplama (Back Propogation)

95

Page 96: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

I) İleri Doğru Hesaplama

Bu safhada bilgi işleme eğitim setindeki bir örneğin GirdiKatmanından ağa gösterilmesi ile başlar. Gelen girdiler hiçbir değişiklik olmadan ara katmana gönderilir.

Girdi katmanındaki k. Proses elemanının çıktısı Çki şu şekilde

belirlenir:

Çki = Gk

96

Page 97: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

AraKatman

Girdi Katmanı

Çıktı Katmanı

Eşik Değeri

Eşik Değeri

G1

G2

Gk

Ç1

Ç2

Ç3

.

.

.

ÇKi

ÇK1

ÇK2

97

ÇK3

1

2

3

i

Page 98: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ara katmandaki her proses elemanı girdi katmanındakibütün proses elemanlarından gelen bilgileri bağlantıağırlıklarının (A1,A2,....) etkisi ile alır. Önce ara katmandakiproses elemanlarına gelen net girdi (NETj

a) şu formülkullanılarak hesaplanır:

NETja=∑Akj Çk

i

k=1

n

Burada Akj k. girdi elemanını j. ara katman elemanınabağlayan bağlantının ağırlık değerini göstermektedir. J. arakatman elemanının çıktısı ise bu net girdinin aktivasyonfonksiyonundan geçirilmesiyle hesaplanır.

98

Page 99: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

AraKatman

Girdi Katmanı

Çıktı Katmanı

Eşik Değeri

Eşik Değeri

G1

G2

Gk

Ç1

Ç2

Ç3

.

.

.

wA1j

wA2j

wAkj

NETja=∑Akj Çk

i

k=1

n

1

2

3

j

99

Page 100: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sigmoid fonksiyonu kullanılması halinde çıktı:

Çja=

1

1+e-(NETja+βj

a)

Burada βj , ara katmanda bulunan j. elemana bağlanan eşikdeğer elemanının ağırlığını göstermektedir. Bu eşik değerünitesinin çıktısı sabit olup 1’e eşittir. Eğitim sırasında ağ budeğeri kendisi belirlemektedir.

100

Page 101: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

AraKatman

Girdi Katmanı

Çıktı Katmanı

Eşik Değeri

Eşik Değeri

G1

G2

Gk

Ç1

Ç2

Ç3

.

.

.

wA1j

wA2j

wAkj

1

2

3

j

wβj

Çja=

1

1+e-(NETja+βj

a)101

Page 102: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ara katmanın bütün proses elemanları ve çıktı katmanınınproses elemanlarının çıktıları aynı şekilde kendilerine gelenNET girdinin hesaplanması ve sigmoid fonksiyonundangeçirilmesi sonucu belirlenirler. Çıktı katmanından çıkandeğerler bulununca ağın ileri doğru hesaplama işlemitamamlanmış olur.

102

Page 103: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

II) Geriye Doğru Hesaplama

Ağa sunulan girdi için ağın ürettiği çıktı ağın beklenençıktıları ile karşılaştırılır. Bunların arasındaki fark hata olarakkabul edilir. Amaç bu hatanın düşürülmesidir.

Bu hata, ağın ağırlık değerlerine dağıtılarak bir sonrakiiterasyonda hatanın azaltılması sağlanır. Çıktı katmanındakim. Proses elemanı için oluşan hata Em ;

Em =Bm- Çm

103

Page 104: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Em =Bm- Çm

Yukarıdaki hata, bir proses elemanı için oluşan hatadır. Çıktıkatmanı için oluşan toplam hatayı (TH) bulmak için bütünhataların toplanması gerekir.

TH=1/2(∑Em2)

Toplam hatayı enazlamak için bu hatanın kendisine nedenolan proses elemanlarına dağıtılması gerekmektedir.

104

Page 105: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ağın ağırlıklarını değiştirmek için 2 durum söz konusudur:

• Ara katman ile çıktı katmanı arasındaki ağırlıklarındeğiştirilmesi

• Ara katmanlar arası veya ara katman girdi katmanıarasındaki ağırlıkların değiştirilmesi

105

Page 106: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ara Katman ile Çıktı Katmanı Arasındaki Ağırlıkların Değiştirilmesi

Ara katmandaki j. Proses elemanı çıktı katmanındaki m.Proses elemanına bağlayan bağlantının ağırlığındaki değişimmiktarına ∆Aa denirse; herhangi bir t zamanında ağırlığındeğişim miktarı şöyle hesaplanır:

∆Ajma(t)=λδmÇj

a + α ∆Ajma(t-1)

Burada λ öğrenme katsayısını, α momentum katsayısınıgöstermektedir.

106

Page 107: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Momentum katsayısı ağın öğrenmesi esnasında yerel biroptimum noktaya takılıp kalmaması için ağırlık değişimdeğerinin belirli bir oranda bir sonraki değişime eklenmesinisağlar.

∆Ajma(t)=λδmÇj

a + α ∆Ajma(t-1)

Yine yukarıdaki formül dikkate alındığında δm ise m. çıktıünitesinin hatasını göstermektedir.

δm= f’(NET)Em

107

Page 108: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Değişim miktarı hesaplandıktan sonra ağırlıkların t.iterasyondaki yeni değerleri:

Ajma(t) = Ajm

a(t-1) + ∆ Ajma(t)

f’(NET) aktivasyon fonksiyonunun türevidir. Sigmoidfonksiyonun kullanılması durumunda ;

δm= Çm(1-Çm) Em

108

Page 109: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Benzer şekilde eşik değer ünitesinin de ağırlıklarınıdeğiştirmek gerekmektedir. Çıktı katmanında bulunan proseselemanlarının eşik değer ağırlıkları βç ile gösterilirse; buünitenin çıktısı sabit ve 1 olması nedeni ile değişim miktarı:

∆βmç(t) = λ δm + α ∆ βm

ç(t-1)

βmç(t) = βm

ç(t-1) + ∆ βmç(t)

109

Page 110: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Ara Katmanlar Arası veya Ara Katman Girdi Katmanı Arasındaki Ağırlıkların

Değiştirilmesi

Ara katman ile çıktı katman arasındaki ağırlıklarındeğişiminde her ağırlık için sadece çıktı katmanındaki birproses elemanının hatası dikkate alınmıştır. Oysaki buhataların oluşmasında girdi katmanı ve ara katmanarasındaki ağırlıkların payı vardır.

110

Page 111: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Girdi katmanı ile ara katman arasındaki ağırlıkların değişimi∆Ai ile gösterilirse değişim miktarı:

∆Akji(t)=λ δj

a Çki + α∆Akj

i(t-1)

Yine burdaki hata terimi δa şöyle hesaplanacaktır:

δja=f’(NET)∑δmAjm

a

m

111

Page 112: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Aktivasyon fonksiyonu olarak sigmoid fonksiyonunkullanılması durumunda ;

δja= Çj

a(1- Çja)∑δmAjm

am

Ağırlıkların yeni değerleri ;

Akji(t)= Akj

i(t-1) + ∆Akji(t)

112

Page 113: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Benzer şekilde eşik değer ünitesinin de ağırlıklarınıdeğiştirmek gerekmektedir. Ara katman eşik değer ağırlıklarıβa ile gösterilirse değişim miktarı ;

∆βja(t)=λδj

a + α ∆βja(t-1)

βja(t)=βj

a(t-1) + ∆ βja(t)

Böylece ağın ağırlıklarının hepsi değiştirilmiş olacaktır. Biriterasyon hem ileri hem de geriye doğru hesaplamalarıyapılarak tamamlanmış olcaktır.

113

Page 114: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

XOR Problemi

XOR problemini çözerken kullanılacak YSA’da hücrelerinaktivasyon fonksiyonu 2 şekilde seçilerek çözüm getirilmeyeçalışılmıştır :

• Step Fonksiyon ile• Sigmoid Fonksiyon kullanarak

114

Page 115: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Step Fonksiyon ile Çözüm

a4 = w1 * o1 + w5 * o3 + w4 * o2

a4 = -1 * 0 + 2 * 0 + (-1 * 0) = 0

O4 = 0

Çıktı

a3 = w2 * o1 + w3 * o2

Aktivasyon

a3 = 1 * 0+ 1* 0 = 0

Eşik değeri, bütün hücreler için 0.02 olarak seçilmiştir.115

Page 116: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sigmoid Fonksiyon Seçilmesi Durumunda

Sigmoid fonksiyon 0 ve 1 gibi değerler alır.

116

Page 117: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Adım 1. Ağırlıkların başlangıç değerlerinin verilmesi– Ağırlıklar verilirken genel olarak küçük değerler seçilir.

Adım 2. Çıkışların hesaplanması– Ara katmandaki oj gibi bir hücrenin çıkışı aşağıdaki

sigmoid fonksiyon ile hesaplanır.

oj = f ( ∑ wjioi - θj )( ∑ wjioi - θj )-α1 + e

1=

♦ wji = weight of input i to neuron j

♦α is a constant

♦θj =node threshold

♦F=sigmoid function

117

Page 118: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Adım 3. Ağırlıkların ayarlanması

– Hata Gradyeni (Error gradient) hesaplanır.• Çıktı nöronları içinδj = oj (1 – oj)(dj – oj)• Ara katmandaki nöronlar için

aşağıdaki şekilde hesaplanır.δj = oj (1 – oj) ∑ δ kwkj

δ k : neuron k’daki (gizli katmana bağlı olan) hata gradyenidj : istenilen çıktı (desired output), oj : esas çıktı (actual output)

– Ağırlıkların değişimi aşağıdaki gibi hesaplanır.• ∆wji = ηδj oi η : öğrenme hızı (0< η <1)

– Değişimler varolan ağırlıklara ilave edilir.wji (t+1) = wji(t) + ∆wji

118

Page 119: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Bu kısa hatırlatmadan sonra XOR problemimize dönersek;

Başlangıç ağırlık değerlerimiz aşağıdaki gibi random olarak verilir.

12

3

4

0.02

0.03

- 0.020.01

0.02

119

Page 120: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

İlk durumumuz o3=1 ,o4=1 ve α ve θ değerleri de sırasıyla 1 ve 0olsun.Ayrıca n öğrenme hızı da 0.3 olsun Bu durumda ;

O2=1 + e –(1x0.01 + 1x0.02)

1= 0.678

12

3

4

0.02-0.018

0.03

- 0.020.01-0.010165

0.02

1

1O3=1 + e –[0.678x(-0.02) + 1x0.02 + 1x0.03)

1 = 0.509

o2 ,o3’ün çıktıları yukarıdaki gibi hesaplanır. O1’ün çıktısı istenilenşekilde değildir. Bu durumda ağırlıkların yeniden hesaplanmasınagidilir.

δ1 = 0.509(1-0.509)(0-0.509) = -0.127∆w13 = 0.3(-0.127) x 1 = -0.038,w13 = 0.02 – 0.038 = -0.018

δ2 = 0.678(1-0.678)(-0.127)(-0.02) = 0.00055∆w23 = 0.3 (0.00055) x 1 = 0.000165,w23 = 0.01 + 0.000165 = -0.010165

( ∑ wjioi - θj )-α1 + e

1 Sigmoid fonk.

Ağırlıklarındeğişimi

120

Page 121: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

δ1 = 0.509(1-0.509)(0-0.509) = -0.127∆w14 = 0.3(-0.127) x 1 = -0.038,w14 = 0.03 – 0.038 = -0.008

δ2 = 0.678(1-0.678)(-0.127)(-0.02) = 0.00055∆w24 = 0.3 (0.00055) x 1 = 0.000165,w24 = 0.02 + 0.000165 = -0.020165

12

3

4

-0.018

0.03-0.008

- 0.02

0.02-0.020165

1

1

δ1 = 0.509(1-0.509)(0-0.509) = -0.127∆w12 = 0.3(-0.127) x 0.678 = -0.0258318,w12 = - 0.02 – 0.0258318 = -0.0458318

12

3

4

- 0.02-0.0458318

1

1

-0.010165

-0.018

-0.010165

-0.020165

-0.008

Değişik örnekler gösterilerek ağ, yukarıdaki gibi eğitilir.

121

Page 122: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

Sonuçta aşağıdaki ağırlıklara ulaşıldığında ağ öğrenmesinidurdurur.

12

3

4

4.98

4.98

- 11.30

5.62

5.60

Sonuçağırlıklar

Sonuçta :O3=1,O4=0 için 0.01’lik bir hata payı ile

O2=0.9964 O1=0.9999

Değerleri elde edilir.

122

Page 123: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

IRIS sınıflama problemi: YSA (MATLAB)

9.10.2017 123

Uygulama

Page 124: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

124

Genetik Algoritmanın Tanımı Genetik algoritma, doğadaki evrim mekanizmasını örnek alan bir arama

metodudur ve bir veri grubundan özel bir veriyi bulmak için kullanılır.

Genetik algoritmalar doğada geçerli olan en iyinin yaşaması kuralınadayanarak sürekli iyileşen çözümler üretir.

Bunun için kullandığı operatörler; uygunluk fonksiyonu (fitness) : toplumdaki her kromozomun ne kadar

iyi olduğu bulmayı amaçlayan fonksiyondur. Bu fonksiyon GA nınbeynini oluşturmaktadır.

yeniden kopyalama (recombination) : yeni çözümler üretmek içinçaprazlama (crossover) işlemi yapılır ve bu eşleme uygunlukfonksiyonuna göre yapılır.

değiştirme (mutation) : sadece bir çözüm üzerinde yapılan işlemdir.

5. Evrimsel HesaplamaGENETİK ALGORİTMA (GA)

Page 125: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

9.10.2017 125

5. Evrimsel HesaplamaGENETİK ALGORİTMA (GA)

Page 126: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

126

Kromozomun şifrelenmesi

1. İkili kodlama

Bu yöntem ilk GA uygulamalarında kullanıldığı için hala en çokkullanılan yöntemlerdir. Her kromozom, 0 ve 1 lerden oluşanbit dizisidir ve ikili diziyle ifade edilir. Bu dizideki her bit,çözümün bir özelliğini taşır. Dizinin tümü ise bir sayıyakarşılık gelir.

Kromozom A: 101110010110Kromozom 2: 010110100000

Page 127: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

127

Kromozomun şifrelenmesi (Devam..)

2. Permütasyon kodlama

Bu kodlama Gezgin Satıcı Problemi ve iş sıralama problemlerigibi sıralam problemlerinde kullanılır. Burada her kromozombir numaralar dizisidir.

Kromozom A: 35127604Kromozom B: 01562347

Page 128: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

128

Gen takası (Çaprazlama) ve Mutasyon

1. İkili kodlanmış kromozom

- A) Tek noktalı gen takası. Kromozom-1 : 11011|00100110110 Kromozom-2 : 11011|11000011110 Çocuk-1 : 1101111000011110 Çocuk-2 : 1101100100110110

- B) Çift noktalı gen takası. Kromozom-1 : 11011|00100|110110 Kromozom-2 : 11011|11000|011110 Çocuk-1 : 1101111000110110 Çocuk-2 : 1101100100011110

Page 129: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

129

Gen takası (Çaprazlama) ve Mutasyon (Devam..)

- C) Tek biçimli (uniform) gen takası. Kromozom-1 : 11011001 Kromozom-2 : 00011110 Çocuk-1 : 10011010 Çocuk-2 : 01011101

Mutasyon işlemi : Mutasyon işlemi, problemin probleminpopulasyondaki çözümlerin yerel optimuma düşmesini engellemekiçin kullanılır. Mutasyon yeni üretilen çocuk kromozomu rasgeledeğiştirir.

Çocuk-1(orijinal) : 11011001 Çocuk-2 : 11111001

Page 130: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

130

Gen takası (Çaprazlama) ve Mutasyon (Devam..)

2. Permütasyon kodlanmış kromozom

Çaprazlama: Kromozom-1 : 123456789 Kromozom-2 : 453689721 Çocuk-1 : 123489721 Çocuk-2 : 453656789

Mutasyon: İkitane rasgele gen seçilir ve bunların yerideğiştirilir.

Çocuk-1(orijinal) : 123456789 Çocuk-2 : 183456289

Page 131: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

131

Kromozom Seçimi 1. Rulet tekeri seçimi

Bu yöntemde seçilme işlemi bireylerin(kromozomların) uygunluk değerine göreyapılmaktadır. Fakat uygunluk değeri enbüyük olanın seçileceği garanti edilmez,yalnız seçilme şansı daha fazla olacaktır.

Bu yöntemde bütün uygunluk değerleribir tabloya yazılır ve toplanır. Uygunlukdeğeri toplama bölünerek bireylerin[0,1] aralığında seçilme olasılıklarıbelirlenir.

Rulet tekerleği seçimi çözümlerinuygunluk değerlerinin pozitif olmasıgerekir.

Page 132: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

132

Kromozom Seçimi (Devam..) 2. Sıralama seçimi

Rulet tekeri seçimi, uygunluklar çok farklıysa problemlere yolaçar. (Örneğin, en iyi kromozomun uygunluğu %90 ise diğerkromozomlar çok az seçilme şansına sahip olacaktır.)

Sıralama seçimi önce populasyonu sıralamakta ve ardından herkromozomun bu sıralamada uygunluğu aranmaktadır. En kötüsü 1uygunlukta, ikinci kötüsü 2 uygunlukta vb., en iyisi ise Nuygunlukta olacaktır.

Böylelikle bütün kromozomlara seçilme şansı verilir. Fakat buyöntemde en iyi kromozomlar, diğerlerinden daha farklıolmadığından çözüme yaklaşma yavaş olacaktır.

Page 133: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

133

Kromozom Seçimi (Devam..) 3. Sabit durum seçimi

Bu yönteme göre ebeveyinlerin seçimi için kromozomların büyükparçaları bir sonraki jenerasyona taşınmaktadır.

Her nesilde yeni bir birey (çocuk) oluşturmak için birkaçkromozom seçilir (büyük uygunlukta iyi olanlar).

Az uygunlukta kötü olan kromozomlar atılır ve yeni çocukkromozomlar yerine getirilir. Geri kalan kromozomlardeğiştirilmeden yeni nesile aktarılır.

Page 134: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

134

Genetik Algoritmaların Çalışma Prensibi Adım 1: Olası çözümlerin kodlandığı bir çözüm grubu oluşturulur

(çözüm grubu (population), çözümlerin kodları (string) da kromozomolarak adlandırılır).

Adım 2: Her kromozomun ne kadar iyi olduğu bulunur (fitnessfunction).

Adım 3: Bu kromozomlar eşlenerek (mating), yeniden kopyalama(recombination) ve değiştirme (crossover) operatörleri uygulanır. Busayede yeni bir toplum oluşturulur.

Adım 4: Yeni kromozomlara yer açmak için eski kromozomlarortadan kaldırılır.

Adım 5: Tüm kromozomların uygunlukları tekrar hesaplanır. Adım 6: İşlemler tekrarlanarak verilmiş zaman içerisinde daha iyi

olan yeni nesillerin oluşturulması gerçekleştirilir (3. adıma gidilir). Adım 7: O ana kadar hesaplanma sırasında en iyi kromozom

bulunduğunda istenen sonuç elde edilmiş olur.

Page 135: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

135

GA’nın Performansını Etkileyen Nedenler Kromozom sayısı: Kromozom sayısını arttırmak çalışma zamanını

arttırırken, azaltmak da kromozom çeşitliliğini yok eder.

Mutasyon Oranı: Kromozomlar birbirine benzemeye başladığında halaçözüm noktalarının uzağında bulunuyorsa mutasyon işlemi GA’nınsıkıştığı yerden kurtulmak için tek yoludur. Ancak yüksek bir değervermek GA’ın kararlı bir noktaya ulaşmasını engelleyecektir.

Kaç Noktalı Çaprazlama Yapılacağı: Normal olarak çaprazlama teknoktada gerçekleştirilmekle beraber yapılan araştırmalar bazıproblemlerde çok noktalı çaprazlamanın çok yararlı olduğunugöstermiştir.

Çaprazlamanın sonucu elde edilen bireylerin nasıl değerlendirileceği:Elde edilen iki bireyin birden kullanılıp kullanılamayacağı bazenönemli olmaktadır.

Page 136: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

136

Nesillerin birbirinden ayrık olup olmadığı: Normal olarak hernesil tümüyle bir önceki nesle bağlı olarak yaratılır. Bazıdurumlarda yeni nesli eski nesille birlikte yeni neslin o ana kadarelde edilen bireyleri ile yaratmak yararlı olabilir.

Parametre kodlanmasının nasıl yapıldığı: Kodlananın nasıl yapıldığıen önemli noktalardan biridir. Örnek vermek gerekirse kimizaman bir parametrenin doğrusal yada logaritmik kodlanmasıGA’nın performansında önemli bir farka yol açabilir.

Kodlama gösteriminin nasıl yapıldığı: Kodlamanın nasıl olduğuyeterince açık olmamakla beraber GA’nın performansını etkileyenbir noktadır. İkilik düzen, kayan nokta aritmetiği ya da gray koduile gösterim en yaygın yöntemlerdir.

Başarı değerlendirmesinin nasıl yapıldığı: Akıllıca yazılmamış birdeğerlendirme işlevi, çalışma zamanını uzatabileceği gibi çözümehiçbir zaman ulaşmamasına da neden olabilir.

Page 137: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

137

GA’ nın Uygulama Alanları Optimizasyon: Sayısal optimizasyon ve kombinetoral optimizasyon

problemleri olan devre tasarımı, doğrusal olmayan denklem sistemlerininçözümünde ve fabrika-üretim planlamasında kullanılır.

Otomatik Programlama (automatic programming): Bilgisayar programlarıyardımıyla network sıralamasında (sorting), ders programı hazırlanmasındakullanılır.

Makine öğrenmesi (machine learning): Robot sensorlerinde, yapay sinirağlarında, VLSI yonga tasarımı ve protein yapısal analizinde kullanır.

Ekonomi (economics): Ekonomik modellerin geliştirilmesinde ve işlemesindekullanılır.

İmmün sistemler (Immune systems): Çok-gen’li ailelerin evrimi esnasında vedoğal immün sistem modellerinde kullanılır.

Topluluk genetiği (population genetics): Evrim ile ilgili sorulara cevapbulmada kullanılır.

Evrim ve öğrenme (evolution and learning): Fertlerin öğrenmesini ve türlerinevrilmesinde kullanılır.

Sosyal sistemler (social systems): Sosyal sistemlerin analizinde kullanılır.

Page 138: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

138

Örnek: Fonksiyon MaksimizasyonuProblem : f(x)=x², x∈[0, 31] şeklinde verilen bir fonksiyonun.Amaç : Verilen aralıkta fonksiyonun maksimizasyonu.

Adım 1: x’in 0 ve 1'lerden oluşan 2 tabanındaki gösterilimiyapılmaktadır

0 : “00000” 31 : “11111” olacaktır.

Adım 2: Toplumun birey sayısı n:4 olarak seçilmiştir. Toplumuoluşturan dört birey, her biri 5 bit uzunluğunda birer kromozomlatemsil edildiği için toplam 20 kere yazı tura atmak suretiylebelirlenmiştir.

Birey 1: 01101, x = 13 , x² = 169Birey 2: 11000, x = 24 , x² = 576Birey 3: 01000, x = 8 , x² = 64Birey 4: 10011, x = 19 , x² = 361

Page 139: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

139

Adım 3: Belirlenen bireyler için f(x)=x² ile uygunluk değerlerinihesaplanır. Dört bireyin toplam uygunluk değerleri;

169 + 576 + 64 + 361 = 1170

Her bir bireyin rulet tekerleğinde kaplayacağı alan;

Birey 1: 169 / 1170 = 0.14 : %14Birey 2: 576 / 1170 = 0.49 : %49Birey 3: 64 / 1170 = 0.06 : %6Birey 4: 361 / 1170 = 0.31 : %31

Bu değerler, rulet tekerleğinin her çevrilişinde hangi olasılıkla hangibireyin seçileceğini belirtir.

Page 140: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

140

Adım 4: Toplumda ki birey sayısının sabit kaldığıvarsayıldığından, rulet tekerleği 4 kere çevrilerek çiftleşmehavuzu oluşturulur.

Birey 1 : 1 kereBirey 2 : 2 kereBirey 3 : 0 kereBirey 4 : 1 kere

Elde edilen çiftleşme havuzu şu şekildedir;

Aday 1 : 01101 (Birey 1)Aday 2 : 11000 (Birey 2)Aday 3 : 11000 (Birey 2)Aday 4 : 10011 (Birey 4)

Page 141: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

141

Adım 5: Çiftleşme havuzu belirlendikten sonra iki aşamalıçaprazlama uygulanır.

İlk aşamada adaylar çiftleşmek üzere rasgele olarakeşlenirler. Rasgele eşleştirme sonucunda ( Aday 1, Aday 2) ve(Aday 3, Aday 4) ikili grupları oluşturulur.

İkinci aşamada her ikili grup için birer kere zar atılarakçaprazlaşmanın oluşacağı nokta belirlenir. Zar atılarak 1. Grupiçin k=4 ve 2. Grup içinde k=2 olarak belirlenmiştir.

Çiftleşme grubu 1: (k=4)Aday 1 : 0110/1 oluşan Birey 1 : 01100Aday 2 : 1100/0 oluşan Birey 2 : 11001

Çiftleşme grubu 2 : (k=2)Aday 3 : 11/000 oluşan Birey 3 : 11011Aday 4 : 10/011 oluşan Birey 4 : 10000

Page 142: DOÇ. DR. SERAL ÖZŞEN KONYA-2015 - selcuk.edu.tr°STEMLERE_GİRİS2.pdf · 1. Yapay Zeka Kavramına giriş, tarihçe ve gelişimi 2. Kural-tabanlı sistemler 3. Bulanık uzman sistemler

142

Adım 6: Son aşama olan mutasyon işlemi bitler düzeyinde uygulanır.Birey 3’ün 2 numaralı bitinde mutasyon işlemi tapılmaktadır.Oluşan Birey 3 : 11011Mutasyon sonucu oluşan Birey 3 : 10011

Bu adımın tamamlanmasıyla bir sonraki kuşağı oluşturacak toplumunbireyleri belirlenmiş olur. Yeni toplum şu şekildedir;

Birey 1 : 01100, x=12, x²=144Birey 2 : 11001, x=25, x²=625Birey 3 : 10011, x=19, x²=361Birey 4 : 10000, x=16, x²=256

Bu örnekte tek bir iterasyon yapılmış ve başlangıç toplumundan birsonraki kuşak oluşturulmuştur ancak genetik algoritmanınçalışmasının tam olarak gözlenebilmesi için tek bir iterasyon yeterlideğildir.