makine öğrenmesi sınıflandırma(öğrenmeli öğrenme) yöntemlerinin weka ortamında...
DESCRIPTION
machine learning algorithm(support learning) with wekaTRANSCRIPT
T.C.
BILECIK SEYH EDEBALI ÜNIVERSITESI
MÜHENDISLIK FAKÜLTESI
BILGISAYAR MÜHENDISLIGI
Makine Ögrenme Yöntemlerinin Arastırılması ve Uygulanması
MUSTAFA KÖSTEK
Proje 1
12 Haziran 2014
BILECIK
T.C.
BILECIK SEYH EDEBALI ÜNIVERSITESI
MÜHENDISLIK FAKÜLTESI
BILGISAYAR MÜHENDISLIGI
Makine Ögrenme Yöntemlerinin Arastırılması ve Uygulanması
MUSTAFA KÖSTEK
Proje 1
12 Haziran 2014
BILECIK
ÖZET
Projenin Amacı
Makine ögrenme yöntemleri adı altında çesitli algoritmaların ögrenilmesi ve ilgili simü-
lasyon programı aracılıgıyla uygun algoritmanın kullanılması ve sonuçların analiz edil-
mesi.
Projenin Kapsamı
Makine ögrenme yöntemleri ve kullanım alanları ele almaktadır.Öncelikle konumuz da-
hilindeki sınıflandırma yöntemlerine deginilecek sonra ise ilgili simulator programı ara-
cılıgıyla ilgili veriler islenip,proje çıktısı analiz edilecektir.
Sonuçlar
Simulator ortamında makine ögrenme yöntemleri uygulanarak yöntemlerin verdigi ce-
vapların kıyaslanmıstır.
ii
ABSTRACT
Project Objective
Under the name of machine learning methods to learn a variety of algorithms and related
simulation programs through the use of appropriate algorithms and analysis of results.
Scope of Project
Machine learning methods and uses are discussed.First, the issues will be referred to
the methods of classification within our respective related data is processed through the
simulator program, project outcomes will be analyzed.
Results
Simulator environment by applying methods of machine learning methods in the compa-
rison of the answers.
iii
TESEKKÜR
Bu projenin basından sonuna kadar hazırlanmasında emegi bulunan ve beni bu konuya
yönlendiren saygıdeger hocam ve danısmanım Sayın Emre Dandil’e tüm katkılarından
ve hiç eksiltmedigi desteginden dolayı tesekkür ederim.
Mustafa Köstek
12 Haziran 2014
iv
Içindekiler
ÖZET ii
ABSTRACT iii
TESEKKÜR iv
SEKIL LISTESI viii
TABLO LISTESI ix
1 GIRIS 1
1.1 Makine ögrenmesi nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Makine ögrenmesi algoritmaları . . . . . . . . . . . . . . . . . . . . . . 1
2 Ögrenmeli Ögrenme(Classification) 2
2.1 Sınıflandırma geçerliligi . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.1 Rasgele örnekleme . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.2 K Parçalı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.3 Birini hariç tut . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Egri uydurma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 Karar agaçları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.4 Bayes teoremi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4.1 Naive bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4.2 Bayes agları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5 YSA(Yapay sinir agları) . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5.1 Çok katmanlı algılayıcılar . . . . . . . . . . . . . . . . . . . . . 18
2.5.2 Radyal tabanlı sinir agları . . . . . . . . . . . . . . . . . . . . . . 18
2.6 Destek vektör makinesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3 Ögrenmesiz Ögrenme(Clustering) 22
3.1 Bölünmeli yöntemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.1.1 k-komsu(k-means) . . . . . . . . . . . . . . . . . . . . . . . . . 24
v
3.1.2 K-medoids demetleme yöntemi . . . . . . . . . . . . . . . . . . . 26
3.2 Hiyerarsik yöntemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3 Yogunluk tabanlı yöntemler . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.1 DBSCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4 Model tabanlı demetleme yöntemleri . . . . . . . . . . . . . . . . . . . . 31
3.4.1 EM algoritması . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4 Iliskili(Associate) 33
4.1 Appriori(iliskilendirme) . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5 Weka 35
5.1 Ortam tanıtımı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.2 Veri alınması . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2.1 Kullanacagımız yöntemler . . . . . . . . . . . . . . . . . . . . . 37
5.3 Kullanılan yöntemlerin cevap açıklamaları . . . . . . . . . . . . . . . . . 39
5.4 Görsel komponentlerle isleme . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.1 Nereden yapılır? . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.2 Yükleme(loader) Durumu . . . . . . . . . . . . . . . . . . . . . 41
5.4.3 Kayıt ediciler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4.4 Filtreler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4.5 Sınıflayıcılar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4.6 Demetleyiciler . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.4.7 Iliskilendirmeler . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.4.8 Konvertör komponentler . . . . . . . . . . . . . . . . . . . . . . 43
5.4.9 Görsel komponentler . . . . . . . . . . . . . . . . . . . . . . . . 43
SONUÇLAR 47
KAYNAKLAR 56
ÖZGEÇMIS 57
vi
Sekil Listesi
1 Bir dogru olarak temsil edilen veri kümesi . . . . . . . . . . . . . . . . . 3
2 Agaç sınıflandırma yöntemi . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Seri sekilde yollar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4 Ayrılmıs sekildeki yollar . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5 Birlesen yollar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
6 Bayes aglarında söz konusu dört durum) . . . . . . . . . . . . . . . . . . 13
7 Yapay sinir ag katmanları(perseptronlar) . . . . . . . . . . . . . . . . . . 14
8 Yapay sinir agının yaklasımı . . . . . . . . . . . . . . . . . . . . . . . . 15
9 Ysa’nın ögrenme sekli . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
10 Ysa’nın aktivasyon fonksiyonu . . . . . . . . . . . . . . . . . . . . . . . 16
11 Radyal tabanlı nöron . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
12 Radyal tabanlı fonksiyon . . . . . . . . . . . . . . . . . . . . . . . . . . 19
13 Radyal tabanlı ag topolojisi . . . . . . . . . . . . . . . . . . . . . . . . . 20
14 Destek vektör makinesi ile ayırma . . . . . . . . . . . . . . . . . . . . . 20
15 Lineer olarak ayrılamayan verilerin sınıflandırılması . . . . . . . . . . . . 22
16 Waikato üniversitesi tarafından gelistirilmis bir makine ögrenme simülas-
yonu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
17 Seçilen veri kümesinin önislemeye tabi tutulması için gereken form ekranı 36
18 Weka’da arff dosya formatının veri yapısı,veriler . . . . . . . . . . . . . . 37
19 Weka’da veri ön isleme ekranı . . . . . . . . . . . . . . . . . . . . . . . 38
20 Sol alttaki çekbaksların seçilerek ilgili istatistiklerin gösterilmesi . . . . . 38
21 Wekada ögrenmeli ögrenmede pratik yöntemleri . . . . . . . . . . . . . . 39
22 Weka’da knowledge flow butonu . . . . . . . . . . . . . . . . . . . . . . 41
23 Data Source sekmesi içerigi . . . . . . . . . . . . . . . . . . . . . . . . . 41
24 Data Sink sekmesi içerigi . . . . . . . . . . . . . . . . . . . . . . . . . . 42
25 Filtreler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
26 Data Classifier sekmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
27 Data Clusterer sekmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
28 Data Associate sekmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
vii
29 Data Evaluation sekmesi . . . . . . . . . . . . . . . . . . . . . . . . . . 43
30 Data Visualization sekmesi . . . . . . . . . . . . . . . . . . . . . . . . . 44
31 J48 karar agacından olusan bir sistem . . . . . . . . . . . . . . . . . . . . 45
32 Bayes ögrenmesini iliskin sistem . . . . . . . . . . . . . . . . . . . . . . 45
33 Ögrenmesiz ögrenme yöntemi olan k-means kullanımı . . . . . . . . . . 46
34 ÇKA’lı bir simulasyon arayüzü . . . . . . . . . . . . . . . . . . . . . . . 46
35 Agaç sınıflandırma metodu kullanarak verilerin islenmesi . . . . . . . . . 47
36 Wekada j48 agaç metodu ile karar agacının görüntülenmesi . . . . . . . . 48
37 Ilgili veri kümesinin karar agacı . . . . . . . . . . . . . . . . . . . . . . 48
38 Destek vektör makinesi(bu programdaki adıyla "smo") yöntemi kullanıla-
rak veri isleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
39 Destek vektör makinesi için ilgili çekirdegin seçimi . . . . . . . . . . . . 49
40 Lineer regression yöntemi kullanılarak ilgili verilerin dogruya uydurul-
ması . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
41 Çok katmanlı algılayıcı yöntemi kullanılarak veri isleme . . . . . . . . . 51
42 Iris’e ait olan verilerin mla ile islenmesi . . . . . . . . . . . . . . . . . . 51
43 Mla yönteminde katmanların gösterilmesi . . . . . . . . . . . . . . . . . 52
44 Mla’da islenen verinin algılayıcı katmanları . . . . . . . . . . . . . . . . 52
45 Bayes yöntemi ile veri islenmesi . . . . . . . . . . . . . . . . . . . . . . 53
46 Iris’e ait verilerin bayes ile islenmesi . . . . . . . . . . . . . . . . . . . . 53
47 Naive bayes yöntemi ile islenmesi . . . . . . . . . . . . . . . . . . . . . 54
48 Iris’e ait verilerin naive bayes yöntemi ile islenmesi . . . . . . . . . . . . 54
49 Ögrenme yöntemi olan k-means ile sınıflandırma . . . . . . . . . . . . . 55
50 Veri setinin büyüklügü,sınıflandırılacak olan alanın kaç farklı tipi oldugu,alanların
sayısına göre sınıflandırma algoritmalarının basarımı . . . . . . . . . . . 55
viii
Tablo Listesi
1 m ve uzun,orta,kısa niceliklerinden olusan veriler . . . . . . . . . . . . . 4
2 Örnek veri setimiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Gün,havadurumu,sicaklik,nem,rüzgar ve oynama durumu ile ilgili veri
kümesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Hava durumuna iliskin alanların kosullu olasılıkları . . . . . . . . . . . . 9
5 Ve kapısının giris ve çıkısları . . . . . . . . . . . . . . . . . . . . . . . . 14
6 Nesne ve o nesneye ait olan nicelikler(ögrenmesiz ögrenme) . . . . . . . 25
ix
1 GIRIS
1.1 Makine ögrenmesi nedir?
Çok büyük miktarlardaki verinin elle islenmesi ve analizinin yapılması mümkün degildir.
Amaç geçmisteki verileri kullanarak gelecek için tahminlerde bulunmaktır. Bu problem-
leri çözmek için Makine Ögrenmesi (machine learning) yöntemleri gelistirilmistir. Ma-
kine ögrenmesi yöntemleri, geçmisteki veriyi kullanarak yeni veri için en uygun modeli
bulmaya çalısır. Verinin incelenip, içerisinden ise yarayan bilginin çıkarılmasına [1]’e
göre da Veri Madenciligi (data mining) adı verilir.
1.2 Makine ögrenmesi algoritmaları
Farklı uygulamaların, analizlerden farklı beklentileri olmaktadır.Makine ögrenmesi me-
totlarını bu beklentilere göre sınıflandırmak mümkündür.
Amaç: Bir niteligin degerini diger nitelikleri kullanarak belirlemek...
• verinin dagılımına göre bir model bulunur. bulunan model, basarımı belirlendikten
sonra niteligin gelecekteki ya da bilinmeyen degerini tahmin etmek için kullanılır.
• model basarımı: dogru sınıflandırılmıs sınama kümesi örneklerinin oranı
Veri madenciligi uygulamasında:
• ayrık nitelik degerlerini tahmin etmek: sınıflandırma
• sürekli nitelik degerlerini tahmin etmek: öngörü
Gözetimli (Supervised) sınıflandırma = sınıflandırma
• Sınıfların sayısı ve hangi nesnenin hangi sınıfta oldugu biliniyor.
Gözetimsiz (Unsupervised) sınıflandırma = demetleme (clustering)
• Hangi nesnenin hangi sınıfta oldugu bilinmiyor. Genelde sınıf sayısı bilinmiyor.
1
2 Ögrenmeli Ögrenme(Classification)
2.1 Sınıflandırma geçerliligi
Veriye dayalı olarak egitim yapılmasının temel amacı [12]’ya göre egitilen sistemin ben-
zer konuda hiç bilinmeyen bir örnege mantıklı bir cevap üretebilmesidir. Eldeki sınırlı
veri kullanılarak sistemin hem egitilmesi hem de basarısının tarafsız bir sekilde ölçülebil-
mesi gerekmektedir. Bunun için çapraz geçerlik (cross validation) adıyla anılan yöntemler
kullanılmalıdır. Çapraz Geçerlilik bu temel prensibe dayanarak önerilmis birkaç geçer-
lik yöntemi vardır. Ama hepsinde temel mantık aynıdır. Sistemin basarısını ölçebilmek
için mevcut veri kümesi ikiye bölünür. Birisi egitim için (train set) digeri de sistemin hiç
görmedigi olası örnekleri temsilen (test set) kullanılır. Sistem, seçilen egitim algoritması
ile egitim kümesini ögrenir. Egitilen sistemin basarısı daha sonra test kümesi üzerinde
hesaplanır.
2.1.1 Rasgele örnekleme
Rasgele örneklemede kümeler rasgele seçilir. Optimum basarı için birkaç kez tekrarlanır.
Çapraz geçerlik içerisinde en yüksek basarıyı saglayan yöntemdir.
2.1.2 K Parçalı
K parçalıda veri, K adet kümeye ayrılır. Birisi test kümesi için ve diger K-1 küme birles-
tirilip egitim kümesi için seçilir. Bu islem kümeler degistirilerek K kez tekrarlanır. Genel
basarı için K adet basarı degerinin ortalaması alınır.
2.1.3 Birini hariç tut
Birini hariç tut yöntemi ile K parçalı geçerlik yöntemleri çok benzerdir. N adet örnek
içeren veri kümesi için kullanılan birini hariç tut yöntemi K=N için K parçalı çapraz
geçerlik gibi uygulanır.
2
2.2 Egri uydurma
[4]’daki kaynaklardan alınan bilgiler geçmis verilere ait sınıflar yerine sürekli bilginin
yer aldıgı problemlerdir. x ekseni hava sıcaklıgını, y ekseni de deniz suyu sıcaklıgını gös-
termektedir. Bizden istenen hava sıcaklıgına baglı olarak deniz suyu sıcaklıgının tahmin
edilmesidir.Sekil 1’de giris ile çıkıs arasındaki fonksiyonun egrisi bulunmustur.
Sekil 1: Bir dogru olarak temsil edilen veri kümesi
w0 + · · ·+ wny >= 0 (1)
peki ya bu dogruyu makine nasıl çiziyor?
θ(x) = θ1 · x+ θ2 (2)
Ifade 2 alınıp ifade 3’e fonksiyonu parametre olarak gönderilir. 3’de en küçük degeri veren
2 fonksiyonunu kabul eder.
H(θ) =1
2 ·m
m∑i=1
(θ(xi)− yi)2 (3)
• Regresyon 1 nolu ifadeye göre en az hata yapan wi leri bulmaya çalısır.
• Basit bir model
• Yeterince esnek degil
3
2.3 Karar agaçları
Böl ve yönet stratejisi Nasıl bölecegiz ?
Ürettikleri kurallar anlasılır.
Tablo 1: m ve uzun,orta,kısa niceliklerinden olusan veriler1,73 orta1,59 kısa1,98 uzun1,78 orta1,65 orta1,72 orta1,69 orta
Sekil 2: Agaç sınıflandırma yöntemi
Yukarıda Tablo 1 te görüldügü gibi bir veri kümesinin karar agacı Sekil 2 deki gibi ola-
caktır. Karar dügümleri ve yapraklardan olusan hiyerarsik bir yapı.
Karar Agaçları Olusturma
• [6]’deki verilere göre tüm veri kümesiyle baslanır.
• Bir özelligin bir degerine göre veri kümesi iki alt kümeye bölünür. Bölmede kulla-
nılan özellikler ve degerler karar dügüme yerlestirilir.
4
• Her alt küme için aynı prosedür, her alt kümede sadece tek bir sınıfa ait örnekler
kalıncaya kadar uygulanır.
Karar Dügümleri Nasıl Bulunur ?
• Karar dügümlerinde yer alan özelligin ve esik degerinin belirlenmesinde genel ola-
rak entropi kavramı kullanılır.
[5]’den her bir özelligin Bilgi Kazancı (information gain) hesaplanır. Negatif ve
pozitif örneklerden olusan bir S kümesi olsun.
S kümesinin Entropy’si hesaplanırken 4’deki ifade kullanılır.
f(s) = −p.logp − q.logq (4)
S kümesinde 14 örnek olsun: 9 pozitif ve 5 negatif ise,
f(s) = −(9/14).log9/14 − (5/14).log5/14 = 0.94
4 nolu denklem yardımıyla seçilen iki alan ile 5 nolu bilgi kazancı formülü hesaplanır.
Gain(s, a) = f(s)−∑
vεV alues(a)
|sv||s|
.f(sv) (5)
• Egitim verisi her bir özelligin her bir degeri için ikiye bölünür. Olusan iki alt kü-
menin entropileri toplanır. En düsük entropi toplamına sahip olan özellik ve degeri
karar dügümüne yerlestirilir.
Örnek:
2 nolu tablodaki örneklerde piknige gitmenin hangi özelligin en baskın oldugunu bulalım.
Tablo 2: Örnek veri setimizHava Nem Rüzgar Su sıcaklıgı Piknige gidelim
günesli normal güçlü ılık evetgünesli yüksek güçlü ılık evet
yagmurlu yüksek güçlü ılık hayırgünesli yüksek güçlü soguk evet
5
Piknige gidildimi?
gitme olasılıgı 3/4,gitmeme olasılıgı 1/4
f(piknik) = −(3/4) ∗ log0.752 − (1/4) ∗ log0.252 = 0.811
ile piknik ile her bir olayın kosullu olasılıgı ile alınarak,
• 0,811 piknige gitme olayının entropisi
• 0,75 havanın günesli olma olasılıgı
• 0 hava günesli iken piknige gidilmeme oranı
• 1 havanın günesli iken piknige gidilmesi
• 0,25 havanın yagmurlu olma oranı
• 0 hava yagmurlu iken piknige gidilme oranı
• 1 hava yagmurlu iken piknige gidilmeme oranı
Gain(piknik, hava) = 0.811− (0.75)(−1 ∗ log12 − 0)− (0.25)(0− 1 ∗ log12) = 0.811
aynı sekilde
Gain(piknik, nem) = 0.811−(0.25)(−1∗log12−0)−(0.75)(−0.67∗log0.672 −0.33∗log0.332 ) = 0.1225
Gain(piknik, ruzgar) = 0.811− 1(−0.75 ∗ log0.752 )− (0.25)(log0.252 − 0.33) = 0
Gain(piknik, susicaklik) = 0.811−(0.75)(−0.67∗log0.672 −0.33∗log0.332 )−1(−1∗log12) = 0.1225
Bu islemler sonucunda bilgi kazancı en büyük olan hava etkeni oldugundan karar dügü-
münde en tepede hava etmeni bulunacaktır piknige gidilme olayı için.
Karar Agaçlarıyla Sınıflandırma
• En tepedeki kök karar dügümünden basla.
6
• Bir yapraga gelinceye kadar karar dügümlerindeki yönlendirmelere göre dallarda
ilerle (Karar dügümlerinde tek bir özelligin adı ve bir esik degeri yer alır. O dü-
güme gelen verinin hangi dala gidecegine verinin o dügümdeki özelliginin esik
degerinden büyük ya da küçük olmasına göre karar verilir)
• Verinin sınıfı, yapragın temsil ettigi sınıf olarak belirle.
2.4 Bayes teoremi
Bir olayın meydana gelmesinde birden fazla etkenin olması kosulunda [3]’den alınan-
lardan, olayın hangi etkenin etkinligi ile ortaya çıktıgını gösteren teorem 6 denklemi ile
verilmistir.
p(h|d) = p(d|h)p(h)p(d)
(6)
p(h)=h olayının önsel olasılıgı
p(d)=d egitim verisinin önsel olasılıgı
p(d|h)=h olayı verildiginde d nin kosullu olasılıgı
p(h|d)=d egitim verisi verildiginde h nin kosullu olasılıgı
2.4.1 Naive bayes
Istatistiksel bir sınıflandırıcıdır. Istatistikteki bayes teoremine dayanır[3]. Örneklerin hangi
sınıfa hangi olasılıkla ait olduklarını öngörür. Basit bir yöntemdir. Ögrenme zamanı yok-
tur, yani sınıflandırmadan önce bir baslangıç zamanı gerekmez. Her sınıflandırma için
tüm veri kümesini isler. Elimizde sınıfı belli olmayan bir örüntü olsun. Bu durumda
x = [x(1), x(2), · · · , x(L)]T ∈ RL (7)
sınıfı belli olmayan örüntünün L-boyutlu nicelik vektörü 7 ifadesi selinde olacak. Spam
e-posta örneginden gidecek olursak spam olup olmadıgını bilmedigimiz yeni bir e-posta
sınıfı belli olmayan örüntüdür. Yine Si x’in atanacagı sınıf ise;
7
Bayes karar teorisine göre x sınıf Si’ya aittir eger P (x|Si) > P (x|Sj),∀j 6= i di-
ger bir ifade ile P (x|Si)P (Si) > P (x|Sj)P (Sj),∀j 6= i dir. Verilen bir x’in (x =
[x(1), x(2), · · · , x(L)]T ∈ RL) sınıf Si’ye ait olup olmadıgına karar vermek için kullanı-
lan yukarıda formüle edilen Bayes karar teoreminde istatistik olarak bagımsızlık önerme-
sinden yararlanılırsa bu tip sınıflandırmaya Naive bayes sınıflandırılması denir.Matematiksel
bir ifadeyle P (x|Si)P (Si) > P (x|Sj)P (Sj),∀j 6= i ifadesindeki P (x|Si) terimi yeniden
gibi yazılırsa 8 nolu ifade elde edilir.
P (x|Si) ≈L∏k=1
P (xk|Si) (8)
böylece Bayes karar teoremi 9 nolu ifade seklini alır. Bayes karar teorisine göre x sınıf
Si’ya aittir eger
P (x|Si)L∏k=1
P (xk|Si) > P (x|Sj)L∏k=1
P (xk|Sj) (9)
P (Si) ve P (Sj) i ve j sınıflarının öncel olasılıklarıdır. Elde olan veri kümesinden de-
gerleri kolayca hesaplanabilir. Naive bayes sınıflandırıcının kullanım alanı her nekadar
kısıtlı gözüksede yüksek boyutlu uzayda ve yeterli sayıda veriyle x’in (nicelik kümesi)
bilesenlerinin istatistik olarak bagımsız olması kosulu esnetilerek basarılı sonuçlar elde
edilebilinir.
Tablo 3: Gün,havadurumu,sicaklik,nem,rüzgar ve oynama durumu ile ilgili veri kümesiGün havadurumu sicaklikderecesi nemoranı ruzgar oynamadurumud1 günes sıcak yuksek zayıf hayırd2 günes sıcak yuksek siddetli hayırd3 bulut sıcak yuksek zayıf evetd4 yagmur ılık yuksek zayıf evetd5 yagmur serin normal zayıf evetd6 yagmur serin normal siddetli hayırd7 bulutlu serin normal siddetli evetd8 günesli ılık yuksek zayıf hayırd9 günesli serin normal zayıf evet
d10 yagmur ılık normal zayıf evetd11 günes ılık normal siddetli evetd12 bulut ılık yuksek siddetli evetd13 bulut sıcak normal zayıf evetd14 yagmur ılık yuksek siddetli hayır
Tablo 3 de gerekli islemler yapilarak Tablo 4 elde edilir.
8
Tablo 4: Hava durumuna iliskin alanların kosullu olasılıklarıhavadurumu
p(gunes|evet)=2/5 p(gunes|hayır)=3/5p(bulut|evet)=4/4 p(bulut|hayır)=0
p(yagmur|evet)=3/5 p(yagmur|hayır)=2/5sıcaklık
p(sıcak|evet)=2/4 p(sıcak|hayır)=3/4p(ılık|evet)=4/6 p(ılık|hayır)=2/6
p(serin|evet)=3/4 p(serin|hayır)=1/4nemoranı
p(yuksek|evet)=3/7 p(yuksek|hayır)=4/7p(normal|evet)=6/7 p(normal|hayır)=1/7
Ruzgarp(siddetli|evet)=3/6 p(siddetli|hayır)=3/6p(zayıf|evet)=6/8 p(zayıf|hayır)=2/8
Bu asamadan sonra kosullu olasılıklar hesap edilecektir.
p(evet)=9/14
p(hayır)=5/15
Yeni örnek X =<yagmur,sıcak,yüksek,zayıf>
P(evet|X)=?
P(yagmurlu|evet)·P(sıcak|evet)·P(yüksek|evet)·P(zayıf|evet)·P(evet)
3/5·2/4·3/7·6/8·9/14 =0.062
P(hayır|X) = ?
P(yagmurlu|hayır)·P(sıcak|hayır)·P(yüksek|hayır)·P(zayıf|hayır)·P (hayır)
2/5·2/4·4/7·2/8·5/14 =0.01
P(evet|X)>P(hayir|X) oldugundan örnek X’in sınıfı evet olarak öngörülür.
Kullanım Alanları
Metin sınıflandırma, konusmacı tanıma sistemleri sifre kontrolü uygulamaları ,orta veya
genis egitim kümesinin mevcut,orta veya genis egitim kümesinin mevcut olması duru-
munda ,örnekleri tanımlayan nitelikler, sınıflandırmadan bagımsız olarak verildiginde.
Avantaj ve Dezavantajları
Avantajları: Kolay uygulanabilirlik, üstün performans çogu durumda iyi sonuçlar
Dezavantajları: Varsayım,sınıf bilgisi verildiginde nitelikler bagımsız gerçek hayatta de-
9
giskenler birbirine bagımlı degiskenler arası iliski modellenemiyor, test verisinin uzun
islem zamanıdır.
Çözüm: Bayes agları
2.4.2 Bayes agları
[13]’de sunumlardan bayesçi aglarda dügümler (nodes) rastlantı degiskenlerini,dügümler
arasındaki baglar(edges) ise rastlantı degiskenleri arasındaki olasılıksal bagımlılık du-
rumlarını gösterir.Bayes agları yönlü dönüssüz grafik(Drected acyclic graph DAG) olarak
bilinen bir grafiksel model yapısına sahiptir. Bu aglar kesin olmayan uzman görüslerinin
sisteme girmesini saglayan önemli bir yöntemdir.Bayes kuralındaki gibi kosullu olasılık-
ları yine kullanılacaktır.DAG yapısı dügümler kümesi ve yönlendirilmis baglar kümesi
olmak üzere iki kümeden olusur.Dügümler rastlantı degiskenlerini temsil eder,daire bi-
çiminde gösterilir.Baglar ise degiskenleri arasındaki dogrudan baglımlılıkları belirtir ve
dügümler arasında çizili oklarla gösterilir.xi ve xj agdaki iki dugum olmak üzere ,xi dü-
gümünden xj dügümüne dogru çizilen bir bag karsılık geldikleri degiskenler degiskenler
arasındaki istatistiksel bagımlılıgın bir göstergesidir.xi dügümünden xj dügümünün ebe-
veyni ,xj dügümünün ise xi dügümünün çocugu oldugu söylenebilir.Ayrıca ,agdaki bir
dügümden çıkan dügüme gelen yol uzerinden yer alan dügümler kümesine "soy dügüm-
ler",bir dügüme gelen yol üzerinde yer alan dügümler kümesi ise "ata dügümler" olarak
tanımlanmıstır. X,y,z, rastlantı degiskenleri tanım kümeleri sırasıyla ux, uy, uz bu rast-
lantı degiskenlerinin çok degiskenli olasılık fonksiyonu Pxyz bu degiskenlerin aldıgı tüm
x ∈ ux, y ∈ uy, z ∈ uz degerleri için Px,y,zx, y, z = Px|zx|z · Py|zy|z · Pzz yazılabili-
yorsa z bilindigine göre ,x ve y nin kosullu bagımsız oldugu söylenir ve x⊥y|z biçiminde
yazılır.x⊥y|z ise Py|zy|z > 0 esitsizliklerinin saglayan x ∈ Ux, y ∈ Uy, z ∈ Uz tüm
degerleri için Px|y,zx|y, z = Px|z · x|z yazılabilir. Grafın agların niceliklerini olarak ta-
nımlanan parametrelerin belirlenmesi gerekir.Bu parametreler agdaki her bir dügüme ait
kosullu olasılıklar,yalnızca kendi ebeveynleri baglı olarak tanımlanır.Bu tablolarda ebe-
veynlerin aldıgı degerleri alma olasılıkları yer alır.Bu tablolara kosullu olasılık tablosu
denir.Bayes aglarında ,bir X = x1, ..., xn rastlantı degiskenleri kümesine iliskin çok de-
giskenli olasılık dagılımını temsil eden bir DAG tır.Ag G ve Q olmak üzere iki bilesenden
10
olusur.BN=GQ biçiminde gösterilir.Ilk bilesen G,dügümlerin x1, ..., xn rastlantı degisken-
lerini arasındakı dogrudan bagımlılık ları verecektir.Bayes aglarının ikinci bileseni Q, ag-
daki parametrelerin kümesini gösterir.Bu parametreler,bayesçi agdaki her bir x,rastlantı
degiskenine iliskin kosullu olasılık dagılımlarıdır.Bir xi rastlantı degiskeni için kosullu
olasılık dagılımı ,xi nin G deki ebeveynlerinin kümesi πi,olmak üzere Qxi|πi = Pbnxi|πibiçiminde tanımlanır.Bir rastlantı degiskeninin verilen bayesçi agda bir ebeveyni yoksa
bu rastlantı degiskeni için kosullu olasılık dagılımı ,marjinal olasılık dagılımına karsılık
gelir.Her bir degiskene ait marjinal yada kosullu olasılık dagılımları genel olarak "yerel
olasılıklar dagılımı" olarak adlandırılır.Bu parametrelerden bayes ag yapısından yararla-
nılarak x = x1, x2, · · ·xn için tek bir çok degiskenli olasılık dagılımı tanımlanır ve bu
dagılım asagıdaki esitlikten yararlanılarak elde edilir.Çok degiskenli olasılık dagılımının
bu esitligi denklem 10 ile ifade edilir bu kural "zincir kuralı" olarak adlandırılır.
Qx1,··· ,xn ,n∏i=1
xi|πi,n∏i=1
Qxi|n (10)
Bir bayesçi aga yeni bilgi girildiginde agdaki degiskenlerin bagımsızlık durumuna d-
ayrılık özeliginden yaraklanılarak karar verilir.Nedensel bir agda yer alan iki degisken
a ve b olmak üzere bu degiskenler arasında tüm yolları kesen bir c degiskeni varsa ve a
ile b arasında Sekil 3’deki gibi dizisel sekilde,
Sekil 3: Seri sekilde yollar
yada serilen bag varsa ve C nin durumu biliniyorsa yada a ile b arasında birlesen bag varsa
ve c yada c nin soy dügümleri hakkında herhangi bir bilgi yoksa aile b degiskenlerinin
Sekil 4’teki gibi "d-ayrı"olur.
11
Sekil 4: Ayrılmıs sekildeki yollar
a ile b d ayrı degil se "d baglı " olarak adlandırılır ve Sekil 5 gibi sematize edilir.
Sekil 5: Birlesen yollar
Bayesçi aglarda çıkarsamalar ilgilenilen degiskenlerin marjinal dagılımları hesaplana-
rak(iliskisiz degiskenler üzerinden çok degiskenli olasılık dagılımının toplamı alınarak)
yapılır.Bayesçi aglarda çıkarsamalar en genel anlamda iki sekilde gerçeklesir.Bunlardan
ilkinde ,bir dügüme ebeveyn dügümleri vasıtasıyla baglı olan bilgi dügümlerinden yarala-
nılarak gerçeklestirilir.Bu hesaplama yöntemi "yukarıdan asagıya çıkarsama" olarak ad-
landırılır.Diger çıkarsama yönteminde ise bir dügüme çocuk dügümleri vasıtasıyla baglı
olan bilgi dügümlerine dayanır.Bu yöntem "asagıdan yukarıya çıkarsama" olarak adlan-
dırılır. Ag yapısının ögrenilmesi ,parametrelerin ögrenilmesinden daha zor bir problem-
dir.Ayrıca gizli dügümler yada kayıp veri gibi kısmi gözlenebilirlik durumu söz konusu
oldugunda baska zorluklarda ortaya çıkar.Genellikle,farklı ögrenme yöntemlerinin öne-
rildigi Sekil 6’daki gibi dört farklı ögrenme durumu söz konusudur.
12
Sekil 6: Bayes aglarında söz konusu dört durum)
Bayesci ag yapısının ögrenilmesinde verilen bir D = x1, x2, ..., xn ögrenme veri kumesi
için em uygun «B» bayesçi agının bulunması amaçlanır.Bunun için de genellikle bir skor
fonksiyonundan yararlanılır.Bu skor fonksiyonlarından en sık kullanılanları :
bayesci skor fonksiyonu ve en kucuk tanım uzunlugu ilkesine dayalı bir fonksiyonu de-
nir.Ekt ilkesi veriyi özetlemeye dayalı olarak ögrenmeyi gerçeklestirir.Bu ilkede amaç,orjinal
verinin en kısa tanımını yapabilmektedir.b = (G|θ) bir bayesci ag ve D=x1, x2, · · · , xnögrenme veri kumesi olsun.D verildiginde B agına iliskin ekt skor fonksiyonu denklem
11 ile formulize edilmistir.
ektB|D =logN
2|B| − LL(B|D) (11)
|B| agdaki parametre sayısıdır.LL(B|D) ise bilindiginde B’nin logaritmik olabilirlik fonsi-
yonudur.
LL(B|D) =N∑i=1
logPBxi bir bayesçi ag sınıflandırıcısı C sınıf degiskeni x1, x2, · · · , xndiger degiskenler olmak üzere X = (x1, x2, · · · , xn) olasılıgını modelleyen bayesçi ag B
olsun.Bu sınıflandırıcı B üzerinden PB = (c|x1, x2, · · · , xn) sonsal olasılıgını maksimum
yapan C sınıflarını belirler.
argmaxPBc C|X1, X2, · · · , Xn Literaturde,sınıflandırma için kullanılan Bayes ag yapısını
belirleyen bir çok farklı yaklasım mevcuttur.
a. Tree augmented naive(tan) bayes sınıflandırıcısı
b. Bayes naive augmented(ban)
c. Bayesian multinet
13
d. Genel bayesçi ag
2.5 YSA(Yapay sinir agları)
Insan beynindeki sinir hücrelerinin islevini modelleyen yapı [2]’den alınanlara göre;
• Sekil 7 deki gibi birbiri ile baglantılı katmanlardan olusur.
Sekil 7: Yapay sinir ag katmanları(perseptronlar)
• Katmanlar hücrelerden olusur.
• Katmanlar arasında iletim
• Ileti katmanlar arasındaki bagın agırlıgına ve her hücrenin degerine baglı olarak
degisebilir.
Tablo 5 de verildigi gibi girisler ve beklenen çıkıları belirtilmistir.Sekil 8 ve Sekil 9 de
karakutu yaklasımı,girisler ile agırlıkları sematize edilmistir.
Tablo 5: Ve kapısının giris ve çıkıslarıbirincil ikincil netice
0 0 00 1 01 0 01 1 1
14
Sekil 8: Yapay sinir agının yaklasımı
Sekil 9: Ysa’nın ögrenme sekli
netice = I(0.5 ∗ birincil + 0.5 ∗ ikincil − t > 0) (12)
I(z) =
0 z > 0 ise
1 diger(13)
• Birbiri ile baglantılı nöronlar ve agırlıklar
• Denklem 14 teki gibi çıkıs nöronu kendisine gelen girisleri agırlıklı olarak topluyor
• 12 nolu ifadede çıkıs nöronu bir esik degeri ile karsılastırılıyor
netice = I(∑i
wiXi− t), netice = sign(∑i
wiXi− t) (14)
15
Sekil 10: Ysa’nın aktivasyon fonksiyonu
• Sekil 10 de bir aktivasyon fonksiyonu sematize edilmistir.
• Yapay sinir agını ögrenme: agırlıkları ögrenme
Yapay Sinir Agı ile Ögrenme
• Yapay sinir agı olusturma giris verisini modelleme
• Gizli katman sayısını, gizli katmanlardaki nöron sayısını belirleme
• Yapay sinir agını egitme
• Sinir agını küçültme
• Sonucu yorumlama
Yapay Sinir Agını Olusturma
• Giris nöron sayısı
• Ögrenme kümesindeki verilerin nitelik sayısı
• Gizli nöron sayısı ögrenme sırasında ayarlanır
• Çıkıs nöron sayısı sınıf sayısı
Yapay Sinir Agını Egitme
16
• Amaç: Veri kümesindeki örneklerin hepsini dogru sınıflandıracak agırlıkları belir-
lemek
• Agırlıklara rasgele degerler ata ögrenme kümesindeki giris degerlerini teker teker
sinir agına uygula
• Çıkısı hesapla
• Hata degerini hesapla
• Agırlıkları hata fonksiyonunu en küçültecek sekilde düzelt
∑i
(Yi − f(wi, Xi))2 (15)
Denklem 15 ile hata degeri hesaplanır.
Yapay Sinir Agını Küçültme
• Tam baglı agın anlasılması çok güç
• n giris nöron, h gizli nöron, m çıkıs nöronu h(m+n) agırlık
• Küçültme: agırlıklardan bazıları sınıflandırma sonucunu etkilemeyecek sekilde si-
linir.
Avantaj dezavantajları
• Dogru sınıflandırma oranı genelde yüksek
• Kararlı ögrenme kümesinde hata oldugu durumda da çalısıyor
• Çıkıs ayrık, sürekli ya da ayrık veya sürekli degiskenlerden olusan bir vektör olabi-
lir
• Ögrenme süresi uzun
• Ögrenilen fonksiyonun anlasılması zor
17
2.5.1 Çok katmanlı algılayıcılar
Algılayıcı ve Adaline yöntemleri dogrusal olmayan çözümler üretemedigi için hem mi-
mari hem de egitim algoritması açısından iyilestirilmis Çok Katmanlı Algılayıcı (MLP)
agı önerilmistir. Mimari açıdan dogrusal olmayan aktivasyon fonksiyonuna sahip birçok
nöronun birbirine hiyerarsik olarak baglandıgı bir yapıya sahip olan MLP, Algılayıcı ve
Adaline yöntemlerinin avantajları yanı sıra geri-yayılım adındaki ögrenme sistemini kul-
lanmaktadır.
aktivasyon fonksiyonu
Genel kavram olarak aktivasyon fonksiyonu, bir degiskeni farklı bir boyuta tasıyan dog-
rusal veya dogrusal olmayan bir fonksiyondur. Türevinin kolay alınabilmesi egitim hızını
arttırır. Sıklıkla kullanılan üç aktivasyon fonksiyonu vardır; Sigmoid,Hiperbolik Tanjant
ve Adım Basamak.
s(net) =1
1 + e−net(16)
s(net) =
1 net >= 0 ise
−1 net < 0(17)
s(net) =1− e−2net
1 + e2net(18)
Denklem 16 sigmoid fonksiyonunu,denklem 17 birim basamak,denklem 18’de hiperbolik
tanjant fonsiyonunu belirtmektedir.
2.5.2 Radyal tabanlı sinir agları
Radyal tabanlı aglar, duyarlı almaç bölgelerinin oldugu giris tabakası, radyal tabanlı nö-
ronları, Sekil 11, içeren gizli tabaka ve çogunlukla dogrusal aktivasyon fonksiyonlu nö-
ronlardan ibaret çıkıs tabakasından olusur.Radyal tabanlı aglar, geriyayılım algoritmalı
ileri beslemeli aglardan daha fazla nöron kullanımına ihtiyaç duyabilirse de egitim süresi
çok daha kısadır. Yogun egitim verisiyle daha iyi sonuçlar verir.[11]’dan alınan verilerden
yaralanılmıstır.
18
Sekil 11: Radyal tabanlı nöron
Radyal tabanlı transfer fonksiyonunun net girisi, agırlık vektörü, w, ile giris vektörü, p’nin
vektörel uzaklıgının bias terimi ile çarpımıdır. w ile p arasındaki uzaklık azaldıkça transfer
fonksiyonunun çıkısı artar ve uzaklık sıfırken çıkıs maksimum degeri 1’e ulasır. w ile p
arasındaki uzaklık arttıkça çıkıs sıfıra gider.
Sekil 12: Radyal tabanlı fonksiyon
Sekil 12 de radyal tabanlı fonksiyon ve radyal tabanlı bir agın topolojisi Sekil 13’de gös-
terilmstir.
19
Sekil 13: Radyal tabanlı ag topolojisi
2.6 Destek vektör makinesi
SVM, Vladimir Vapnik ve Alexey Chernovenkis tarafından istatistiksel ögrenme teorisi
kullanarak türetilmis [7]’den alınan kaynaklara göre.Sınıfları birbirinden ayıran özel bir
çizginin (hyperplane) nin bulunmasını amaçlar. Bu çizgi iki sınıfa en uzak olan çizgidir.
Egitim verileri kullanılarak hyperplane bulunduktan sonra, test verileri sınırın hangi tara-
fında kalmıssa o sınıfa dahil edilir.Sekil 14 de verildigi gibi lineer olarak ayrılması sag-
lanır.Sequential Mimimal Optimization, SMO (Ardısık minimal optimizasyon metodu)
olarakta adı geçmektedir.
Sekil 14: Destek vektör makinesi ile ayırma
Lineer olarak ayrılamayan örneklerde veriler daha yüksek boyutlu baska bir uzaya tasınır
ve sınıflandırma o uzayda yapılır. Asagıdaki sekilde örnekler lineer olarak ayrılamaz iken,
Sekil 15 de üç boyutlu uzayda denklem 19 ile ayrılabilmektedir.
20
x21, x22, (2 · x1 · x2)0.5 (19)
Peki nasıl ayrılıyor?
• SVM’de,lineer olmayan özellikler için "kernel" (çekirdek) terimi kullanılır,K(xi, xj)
sembol ile gösterilir
• Kerneller kullanarak, SVM lineer olmayan sınıflandırma için kullanılabilir
• SVM problemi, bu sekilde yazılabilir (dual sekli adlandırılan ifade 20 ve ifade 21
ve 22 da ise durumları gösterilmistir);
max∑
ai −1
2
∑aiajyiyj(xi · xj) (20)
∑aiyi = 0 (21)
0 ≤ aiyi ≤ C (22)
• Ifade 20’nin en sagındaki parametre skalar oldugundan dolayı xi · xj = K(xi, xj)
yazacagız.
• 4 farklı çekirdek opsiyonu vardır.
1. K(xi, xj) = e−(xi − xj)2
2σ2 en çok kullanılan,
2. K(xi, xj) = (xi · yj)d homojen polinom kerneli,
3. K(xi, xj) = (1 + xi · yj)d homojen olmayan polinom kerneli,
4. K(xi, xj) = tanh(c+ k · xi · yj) homojen polinom kerneli,
21
Sekil 15: Lineer olarak ayrılamayan verilerin sınıflandırılması
3 Ögrenmesiz Ögrenme(Clustering)
• [8]’daki verilerden kümeleme algoritmaları egiticisiz ögrenme metotlarıdır.
• Örneklere ait sınıf bilgisini kullanmazlar.
• Temelde verileri en iyi temsil edecek vektörleri bulmaya çalısırlar.
• Verileri temsil eden vektörler bulunduktan sonra artık tüm veriler bu yeni vektör-
lerle kodlanabilirler ve farklı bilgi sayısı azalır.
• Bu nedenle birçok sıkıstırma algoritmasının temelinde kümeleme algoritmaları yer
almaktadır.
Elimizde tek boyutlu 10 örnek içeren bir verimiz olsun.
12 15 13 87 4 5 9 67 1 2
Bu 10 farklı veriyi 3 farklı veri ile temsil etmek istersek
12 12 12 77 3 3 3 77 3 3
seklinde ifade ederiz. Gerçek degerler ile temsil edilen degerler arasındaki farkı minimum
yapmaya çalısır.
Yukarıdaki örnek için 3 küme olusmustur.
12-15-13 örnekleri 1. kümede
87-67 örnekleri 2. kümede
4-5-1-2-9 örnekleri 3. kümede yer almaktadır.
• Ölçeklenebilirlik
22
• Farklı tipteki niteliklerden olusan nesneleri demetleme
• Farklı sekillerdeki demetleri olusturabilme
• En az sayıda giris parametresi gereksinimi
• Hatalı veriler ve aykırılıklardan en az etkilenme
• Model olusturma sırasında örneklerin sırasından etkilenmeme
• Çok boyutlu veriler üzerinde çalısma
• Kullanıcıların kısıtlarını göz önünde bulundurma
• Sonucun yorumlanabilir ve anlasılabilir olması
Iyi Demetleme
Iyi demetleme yöntemiyle elde edilen demetlerin özellikleri;
• aynı demet içindeki nesneler arası benzerlik fazla , farklı demetlerde bulunan nes-
neler arası benzerlik az
• Olusan demetlerin kalitesi seçilen benzerlik ölçütüne ve bu ölçütün gerçeklenme-
sine baglı
• Uzaklık Benzerlik nesnelerin nitelik tipine göre degisir
• Nesneler arası benzerlik: s(i, j)
• Nesneler arası uzaklık: d(i, j) = 1− s(i, j)
• Iyi bir demetleme yöntemi veri içinde gizlenmis örüntüleri bulabilmeli
• Veriyi gruplama için uygun demetleme kriteri bulunmalı
• demetleme = aynı demetteki nesneler arası benzerligi en büyüten, farklı demetler-
deki nesneler arası benzerligi en küçülten fonksiyon
• Demetleme sonucunun kalitesi seçilen demetlerin sekline ve temsil edilme yönte-
mine baglı
23
Peki temel demetleme yalasımları nelerdir?
1. Bölünmeli yöntemler: Veriyi bölerek, her grubu belirlenmis bir kritere göre deger-
lendirir
2. Hiyerarsik yöntemler: Veri kümelerini (ya da nesneleri) önceden belirlenmis bir
kritere göre hiyerarsik olarak ayırır
3. Yogunluk tabanlı yöntemler: Nesnelerin yogunluguna göre demetleri olusturur
4. Model tabanlı yöntemler: Her demetin bir modele uydugu varsayılır. Amaç bu mo-
dellere uyan verileri gruplamak
3.1 Bölünmeli yöntemler
Amaç: n nesneden olusan bir veri kümesini (D), k, (k ≤ n) demete ayırmak ayrılan her
demette en az bir nesne bulunmalı ayrıca her nesne sadece bir demette bulunmalı
Yöntem:Demetleme kriterini en büyütücek sekilde D veri kümesi k gruba ayırma
• Global çözüm: Mümkün olan tüm gruplamaları yaparak en iyisini seçme (NP kar-
masık)
• Sezgisel çözüm: k-means ve k-medoids
k-means 1: Her demet kendi merkezi ile temsil edilir
k-medoids2: Her demet, demette bulunan bir nesne ile temsil edilir
3.1.1 k-komsu(k-means)
Egiticisiz bir yöntem olan K-Mean Clustering, eldeki verileri özelliklerine göre hiçbir
sınıf bilgisi olmadan K sayıda kümeye gruplama islemidir. Gruplama, ilgili cluster’ın
centroid (merkez) degeri ile veri setindeki her objenin/nesnenin arasındaki farkın kareleri
toplamının minimumu alınarak gerçeklestirilir. Objelerin sınıflandırılması islemi gerçek-
lestikten sonra her bir sınıfa veya kümeye ilgili etiketin verilmesi uzman bir kisi tarafından
1 MacQueen tarafından 67 yılında bulunmustur.2PAM (Partition around medoids) (Kaufman & Rousseeuw’87)
24
yapılır [4]’daki verilere göre.
Örnek:
Egitim setinizde 4 adet objenin oldugu ve her bir objenin iki özellige sahip oldugunu var-
sayalım.
Tablo 6: Nesne ve o nesneye ait olan nicelikler(ögrenmesiz ögrenme)Nesne Ozelik1(Agırlık indeksi(X)) Ozellik2(Y)pH
medicinea 1 1medicineb 2 1medicinec 4 3medicined 5 4
Öncelikle bilinmesi gereken objelerin kaç kümeye ayrılacagıdır (bu örnek Tablo 6 için 2
olsun, Cluster 1 ve Cluster 2). Esas problem ise bu ilaç objelerinin hangisinin Cluster 1,
hangisinin Cluster 2’ye ait oldugudur.
• Öncelikle cluster (küme) sayısına karar verilir (k)
• Herbir cluster’ın centroid/merkez noktası belirlenir
• Baslangıç centroid’leri olarak veri setinden rasgele k nokta seçilebilir veya
• Veriler sıralanarak her k ve k’nın katlarında yer alan degerler centroid noktaları
olarak alınabilir
• Daha sonra K-means algoritmasında, cluster’lar içerisinde yer alan objeler hare-
ketsiz kalıncaya kadar yani yer degistirmeyinceye kadar üç asamadan olusan islem
tekrarlanır
• Centroid noktalarına karar verilir
• Her objenin centroid noktalarına olan uzaklıkları hesaplanır
• Her obje minimum uzaklıgı sahip oldugu cluster’a atanır
K-means demetleme çesitleri
25
• K-Means demetlemeye baslamadan önce yapılanlar
Veri kümesini örnekleyerek hiyerarsik demetleme yap. Olusan k demetin orta-
lamasını baslangıç için merkez nokta seç
Baslangıçta k’dan fazla merkez nokta seç. Daha sonra bunlar arasından k tane
seç.
• K-Means demetleme islemi sonrasında yapılanlar
Küçük demetleri en yakın baska demetlere dahil et
En büyük toplam karesel hataya sahip olan demeti böl
Merkez noktaları birbirine en yakın demetleri birlestir
Toplam karesel hatada en az artısa neden olacak iki demeti birlestir
K-Means demetleme algoritmasının özellikleri
• Gerçeklemesi kolay
• Karmasıklıgı diger demetleme yöntemlerine göre az
• K-Means algoritması bazı durumlarda iyi sonuç vermeyebilir
Veri grupları farklı boyutlarda ise
Veri gruplarının yogunlukları farklı ise
Veri gruplarının sekli küresel degilse
Veri içinde aykırılıklar varsa
3.1.2 K-medoids demetleme yöntemi
Her demeti temsil etmek için demet içinde orta nokta olan nesne seçilir.
• 1, 3, 5, 7, 9 ortalama:5
• 1, 3, 5, 7, 1009 ortalama=205
• 1, 3, 5, 7, 1009 orta nokta=5
26
Medoids demetleme yöntemi
PAM (Partitioning Araound Medoids 1987)
• Baslangıçta k adet nesne demetleri temsil etmek üzere rasgele seçilir xik
• Kalan nesneler en yakın merkez nesnenin bulundugu demete dahil edilir
• Merkez nesne olmayan rasgele bir nesne seçilir xrk
• xrk merkez nesne olursa toplam karesel hatanın ne kadar degistigi bulunur
• 23 nolu denklem Tcik > 0 ise xrk merkez nesne olarak atanır
• Demetlerde degisiklik olusmayana kadar Merkez nesne olmayan rasgele bir nesne
seçilir xrk islemi gerçeklenir.
nk=k demeti içindeki nesne sayısı xjk=k demeti içindeki j. nesne
Tcik =nk∑j=1
(xik − xjk)2 −nk∑j=1
(xrk − xjk)2 (23)
Özellikler
• Küçük veri kümeleri için iyi sonuç verebilir, ancak büyük veri kümeleri için uygun
degildir [14]’deki verilere göre.
3.2 Hiyerarsik yöntemler
Demet sayısının belirlenmesine gerek yok ancak sonlanma kriteri belirlenmesi gereki-
yor.Asagıdan yukarıya agglomerative,yukarıdan asagıya divisive denir.
• AGNES (AGglomerative NESting):
Kaufmann ve Rousseeuw tarafından 1990 yılında önerilmistir.
Birinci adımda her nesne bir demet olusturur.
Aralarında en az uzaklık bulunan demetler her adımda birlestirilir.
Bütün nesneler tek bir demet içinde kalana kadar yada istenen sayıda demet
elde edene kadar birlestirme islemi devam eder.
27
• DIANA (DIvisive ANAlysis):
Kaufmann ve Rousseeuw tarafından 1990 yılında önerilmistir.
AGNES’in yaptıgı islemlerin tersini yapar.
En sonunda her nesne bir demet olusturur.
Her nesne ayrı bir demet olusturana ya da istenilendemet sayısı elde edene
kadar ayrılma islemi devam eder.
Hiyerarsik demetleme
• Dendogram: Demetler hiyerarsik olarak agaç yapısı seklinde görüntülenebilir
• Ara dügümler çocuk dügümlerdeki demetlerin birlesmesiyle elde edilir
Kök: bütün nesnelerden olusan tek demet
Yapraklar: bir nesneden olusan demetler
• Dendogram istenen seviyede kesilerek demetler elde edilir
Asagıdan yukarıya demetleme
• Algoritma
Uzaklık matrisini hesapla
Her nesne bir demet
Tekrarla
En yakın iki demeti birlestir
Uzaklık matrisini yeniden hesapla
Sonlanma: Tek bir demet kalana kadar
• Uzaklık matrisini hesaplarken farklı yöntemler farklı demetleme sonuçlarına neden
olurlar
Hiyerarsik demetleme yöntemlerinin özellikleri
• Demetleme kriteri yok
28
• Demet sayılarının belirlenmesine gerek yok
• Aykırılıklardan ve hatalı verilerden etkilenir
• Farklı boyuttaki demetleri olusturmak problemli olabilir
• Yer karmasıklıgı - O(n2)
• Zaman karmasıklıgı - O(n2logn) ve n : nesne sayısı
3.3 Yogunluk tabanlı yöntemler
• Demetleme nesnelerin yogunluguna göre yapılır.
• Baslıca özellikleri:
Rastgele sekillerde demetler üretilebilir.
Aykırı nesnelerden etkilenmez.
Algoritmanın son bulması için yogunluk parametresinin verilmesi gerekir.
• Baslıca yogunluk tabanlı yöntemler:
DBSCAN: Ester, et al. (KDD’96)
OPTICS: Ankerst, et al (SIGMOD’99).
DENCLUE: Hinneburg & D. Keim (KDD’98)
CLIQUE: Agrawal, et al. (SIGMOD’98)
3.3.1 DBSCAN
• Iki parametre:
Eps: En büyük komsuluk yarıçapı
MinPts: Eps yarıçaplı komsuluk bölgesinde bulunan en az nesne sayısı
• Neps(p) : q ∈ D|d(p, q) ≤ Eps
29
• Dogrudan erisilebilir nesne: Eps ve MinPts kosulları altında bir q nesnesinin dog-
rudan erisilebilir bir p nesnesi su sartları saglar:
p ∈ Neps(q)
q nesnesinin çekirdek nesne kosulunu saglaması Neps(q) ≥MinPts
• Erisilebilir nesne:
Eps ve MinPts kosulları altında q nesnesinin erisilebilir bir p nesnesi olması
için:
p1, p2, · · · , pn nesne zinciri olması
p1 = q, pn = p
pi nesnesinin dogrudan erisilebilir nesnesi:pi+1
• Yogunluk baglantılı Nesne:
Eps ve MinPts kosulları altında q nesnesinin yogunluk baglantılı nesnesi p su
kosulları saglar:
p ve q nesneleri Eps ve MinPts kosulları altında bir o nesnesinin erisilebilir
nesnesidir.
Yogunluk tabanlı yöntemlerin özellikleri
• Veri tabanındaki her nesnenin Eps yarıçaplı komsuluk bölgesi arastırılır.
• Bu bölgede MinPts’den daha fazla nesne bulunan p nesnesi çekirdek nesne olacak
sekilde demetler olusturulur.
• Çekirdek nesnelerin dogrudan erisilebilir nesneleri bulunur.
• Yogunluk baglantılı demetler birlestirilir.
• Hiçbir yeni nesne bir demete eklenmezse islem sona erer.
• Yer karmasıklıgı - O(n)
• Zaman karmasıklıgı - O(n log n) n: nesne sayısı
30
3.4 Model tabanlı demetleme yöntemleri
• Veri kümesi için öngörülen matematiksel model en uygun hale getiriliyor.
• Verinin genel olarak belli olasılık dagılımlarının karısımından geldigi kabul edilir.
• Model tabanlı demetleme yöntemi
Modelin yapısının belirlenmesi
Modelin parametrelerinin belirlenmesi
• Örnek EM (Expectation Maximization) Algoritması
• Demetlemede amaç gizli degiskenleri bulmak: sınıf bilgisi
• Gizli degiskenler veri üzerinde bir olasılık fonksiyonu ile matematiksel olarak ifade
edilebilen bir olasılıksal dagılımdır
• Örnek: Satılan dijital kameraların sınıfı
Profesyonel veya amatör (C1 ve C2)
• Her sınıf için iki olasılık yogunluk fonsiyonu: f1 ve f2
• Olasılıksal karısım modelleri gözlenen verinin farklı olasılık dagılımları ile temsil
edilen demetlerin örnekleri oldugunu varsayar
• Gözlenen verideki her örnek birbirinden bagımsız
Istatistiksel olarak:
• K nesneden olusan bir veri kümesi D = x1, x2, · · · , xK
∀xi(i ∈ [1, · · ·K]) nesnesi θ parametre kümesiyle tanımlanan bir olasılık dagı-
lımından olusturulur.
Olasılık dagılımının, cj ∈ C = c1, c2, · · · , cG seklinde G adet bileseni vardır.
∀θg, g ∈ [1, ..., G] parametre kümesi g bileseninin olasılık dagılımını belirleyen,θ
kümesinin ayrısık bir alt kümesidir.
Herhangi bir xi nesnesi öncelikle, p(cg|θ) = τg, (∑
G τg = 1) olacak sekilde
31
bilesen katsayısına (ya da bilesenin seçilme olasılıgına) göre bir bilesene atanır.
Bu bilesen p(xi|cg; θg) olasılık dagılımına göre xi degiskenini olusturur.
Böylece bir xi nesnesinin bu model için olasılıgı bütün bilesenlerin olasılıkla-
rının toplamı denklem 24 ve 25 ile ifade edilebilir:
p(xi, θ) =G∑g=1
p(cg|θ)p(xi|cg; θg) (24)
p(xi, θ) =G∑g=1
τgp(xi|cg; θg) (25)
• Model parametrelerinin belirlenmesi
Maximum Likelihood (ML) yaklasımı denklem 26’deki gibidir.
`ML(θ1, · · · , θG; τ1, · · · , τG|D) =K∏i=1
G∑g=1
τgp(xi|cg, θg) (26)
Maximum aposteriori (MAP) yaklasımı 27 deki gibi olacaktır.
`MAP (θ1, · · · , θG; τ1, · · · , τG|D) =K∏i=1
G∑g=1
τgp(xi|cg, θg)p(θ)D
(27)
Uygulamada her ikisinin logaritması 28 ve 29 ile ifade edilebilir.
L(θ1, · · · , θG; τ1, · · · , τG|D) =K∑i=1
lnG∑g=1
τgp(xi|cg, θg) (28)
L(θ1, · · · , θG; τ1, · · · , τG|D) =K∑i=1
lnG∑g=1
τgp(xi|cg, θg) + lnp(θ) (29)
3.4.1 EM algoritması
• Veri kümesi: D = x1, x2, · · · , xK
• Gizli degiskenler H = z1, z2, · · · , zk (her nesnenin hangi demete dahil oldugu bil-
gisi)
32
zj = xj, y1j, y2j, · · · , yGjxj verisi ci demetinde ise yij = 1
• Verinin eksik oldugu durumda, tam verinin beklenen degeri 30 nolu denklem ile
hesaplanır.
Q(θ, θ′) = E(Lc(D,H|θ)|D, θ′) =K∑i=1
G∑g=1
p(Cg|xi)[ln p(xi|cg) + ln τg] (30)
E ve M adımları
• Iki adım arasında yinelemeli
• E adımı: θ’ parametrelerine dayanarak eksik veri için en iyi olası kestirimler
• M adımı: Eksik veri atandıgında yeni parametrelere iliskin kestirimler
• EM Algoritmasının adımları:
θ’ için baslangıç degerleri atama
(E) Expectation: Q(θ|θ′) hesaplanması
(M) Maximization: argmaxQ(θ|θ′)
Normal dagılım için EM algoritması
• xj verisi ci demetinde ise yij = 1 degilse yij = 0
• E adımı: p(ci, xj, θl) = p(yij = 1, θl) =p(xj|ci, µli, σli)p(ci)∑G
g=1 P (cg)p(xj|cg, µli, σli)≡ hij
• Normal dagılım için:P (xj|ci, µi, σ) =1
(2π)d/2σdexp−(xj − µi)2
2σ2
• M adımında ise p(ci) =
∑j hij
Kve µl+1
i =
∑j hijxj∑j hij
ayrıca σl+1i =
∑j hij(xj − µli)(xj − µli)T∑
j hij
4 Iliskili(Associate)
4.1 Appriori(iliskilendirme)
Bir süpermarkette, x ürününü alan müsterilerin yüzde 80’i y ürününü de alıyorsa, x ürü-
nünü alıp, y ürününü almayan müsteriler, y ürününün potansiyel müsterileridir. Müsterile-
33
rin sepet bilgilerinin bulundugu bir veri tabanında potansiyel y müsterilerini bulma islemi
türündeki problemler iliski belirme yöntemleri ile çözülür.[9]
• Sepet analizi
• Raf düzenlemesi
• Promosyonlar
34
Makine ögrenme simulatörü
Piyasada bu alanda birden çok program mevcuttur.Biz hem kolay bulunması ve de kolay
anlasılır arayüzü nedeniyle weka’yı kullanacagız.Programın arayüzü Sekil 16 da gösteril-
mistir.
5 Weka
[7]’e göre Weka’nın açılımı Waikato Environment for Knowledge Learning.Bu program
Yeni Zelanda’nın Waikato üniversitesi tarafından gelistirilmistir.Weka programı ile veri-
leri önisleme,sınıflandırma,demetleme gibi islemleri data tipine göre isliyebiliyoruz.
5.1 Ortam tanıtımı
Explorer:Bu sekme veri ön isleme secilen özelige ait istatistiklerin görüntülenmesini sag-
layan forma götüren sekmedir.
Knowledge Flow:Sürükle bırak mantıgına göre belirli komponentlerle yapılan islemlerin
yapılmasını saglayan forma götürür.
Sekil 16: Waikato üniversitesi tarafından gelistirilmis bir makine ögrenme simülasyonu
35
Yukarıdaki formda explorer sekmesi tıklandıgında Sekil 17 daki form açılır.Bu asamadan
sonra formun üst kısmındaki butonlarla asıl isimiz.Yukarıda sözü geçen perprocess,classify,cluster
vb. dügmeler.
Sekil 17: Seçilen veri kümesinin önislemeye tabi tutulması için gereken form ekranı
5.2 Veri alınması
Open file sekmesini tıklatıp ilgili kaynak kodumuz csv,arff yada ilgili veritabanı baglantısı
aracılıgıyla dataları çekebiliyoruz.Ancak biz farklı yollara girmeyip arff dosya formatında
bahsedersek,Sekil 18 deki gibi olmalıdır.
Yani javadaki class’ın ismi ile dosyanın adının aynı olması gibi iliskilendirilebilir.alanlar:
@relation ’dosyaismi’
@attribute degiskenadi dizitipidegiskenleri
36
Sekil 18: Weka’da arff dosya formatının veri yapısı,veriler
yada
@attribute degiskenadi (numeric,real,vb..)
@data
sonra ilgili veriler girdigimiz alan kadar girilip alt satırda kayıtlar devam edilir.
Ilgili .arff dosyamızı Open file butonuyla açtıktan sonra Filter sekmesinin altında iliskili
dosyanın adı kaç tane örneklemesinin oldugu kaç adet sütun alanının oldugu bilgileri
Sekil 19 de,sag üstteki kısımda sol alttaki seçilmis olan alana göre istatistiki verileri herbir
alanından kaç adet veri oldugu bilgisi string grid komponentine yazılmıs hemen altındaki
chart grafiginde ise secilen alanla ilgili görsel istatiski kullanıcıya Sekil 20 de göstermistir.
5.2.1 Kullanacagımız yöntemler
Kullanılan yöntemlere geçmeden önce Sekil 21 deki gibi sınıflandırma geçerliligi buton-
ları vardır. use training set çekbaksını tiklersek bütün datayı pratik olarak alacaktır.Daha
sonra test yapmak istedigimizde aynı duzene sahip bir formatta bir dosya olusturarak
supplied test set çekbaksı aracılıgla test ederiz.
37
Sekil 19: Weka’da veri ön isleme ekranı
Sekil 20: Sol alttaki çekbaksların seçilerek ilgili istatistiklerin gösterilmesi
38
cross validation
çekbaksı tiklendiginde ise veri,textbakstaki sayi k olursa k adet kümeye ayrılır. Birisi test
kümesi için ve diger K-1 küme birlestirilip egitim kümesi için seçilir. Bu islem kümeler
degistirilerek K kez tekrarlanır. Genel basarı için K adet basarı degerinin ortalaması alınır.
Sekil 21: Wekada ögrenmeli ögrenmede pratik yöntemleri
Percentage split
çekbaksı tiklendiginde ise yüzde olarak kısmını egitimde kalan kısmını ise test asama-
sında kullanır.
5.3 Kullanılan yöntemlerin cevap açıklamaları
Correctly classified instances=Sinifi dogru belirlenen sayisi(datanın)
incorrectly classified instances=Sinifi yanlis belirlene sayisi(saglıksız veri)
mean absolute error=tam hata degeri
root mean squared error=gerçel hatanın karesi
Relative absolute error =göreceli tam hata
Root relative absolute error =göreceli tam hatanın karekökü
total number of instances =toplam örnekleme sayisi
tp rate=dogru sınıflandırılmıs örnek sayisinin tümüne oranı
fp rate=yanlıs sınıflandırılmıs örnek sayisinin tümüne oranı
39
precision=pozitif dogruların bütün pozitiflere oranı
recall=pozitif dogruların pozitif dogrularla negatif yanlısların toplamına oranı
accuracy=(dogruların tümüne oranı)
düzensizlik matrisia b
2 1 a=0
5 3 b=1
• Burada 2 a da dogru örneklenen sayisi
• Burada 3 b de dogru örneklenen sayisi
• 5 ise b olarak verilen ancak a da olan
• 1 a da verilen ancak b de sınıflandırılmıstır.
5.4 Görsel komponentlerle isleme
5.4.1 Nereden yapılır?
Weka arayüzü ana menüden knowledge flow butonu tıklanarak Sekil 22’ deki gibi.
40
Sekil 22: Weka’da knowledge flow butonu
5.4.2 Yükleme(loader) Durumu
Gelen arayüzden DataSource sekmesi yardımıyla Sekil 23’deki gibi butonlar gelecek-
tir.Bu sekmeler yardımıyla bundan sonraki asama olan alan seçme islemi gerçeklenecek-
tir.Genelde arff loader kompanenti kullanıyoruz.
Sekil 23: Data Source sekmesi içerigi
41
5.4.3 Kayıt ediciler
Bu sekme ile biz hedef dosyada farklılıkları kayıt edebiliyoruz.Bu sekmenin içeriginde
Sekil 24’de oldugu gibi komponentler bulunur.
Sekil 24: Data Sink sekmesi içerigi
5.4.4 Filtreler
Filtre sekmesi Sekil 25’deki ögrenmeli ve ögrenmesiz olmak üzere iki tiptir.
Sekil 25: Filtreler
5.4.5 Sınıflayıcılar
Ögrenmeli ögrenme yöntemlerinin algoritmaları içerir,veriyi loader dan sınıf atamaları ve
seçilmesi yapıldıktan sonra egitim ve test verileri’ni gönderecek olan komponente oradan
da söz konusu algoritma ile islenecek daha sonra ise sınıflanırma yada demetleme dö-
nüstürücüsüne ilgili parametreleri aktaracaktır ayrıca bayes ve agaç uygulamalarında da
görsel sekmeden grafik komponentine aktarılarak graf ve karar agacının yapısı görüntü-
lenebilir.Sekil 26 deki gibi komponentler mevcuttur.
Sekil 26: Data Classifier sekmesi
42
5.4.6 Demetleyiciler
Ögrenmesiz ögrenme yöntemlerinin ögrenmeli de oldugu gibi Sekil 27’deki simgeler tıkla
bırak yaparak kullanıyoruz.
Sekil 27: Data Clusterer sekmesi
5.4.7 Iliskilendirmeler
Veri madenciliginin önemli bir kolu olan iliskilerin kesfini saglayan ayrıca iliskilendirme
komponentleri Sekil 28’deki gibi tanımlanmıstır.
Sekil 28: Data Associate sekmesi
5.4.8 Konvertör komponentler
Bu elemanlar ise arff loader çekilen verilerin alanlarının tanınması,sınıflandırılacak olan
özeligi seçme ayrıca sınıflandırma yapıldıktan sonra ilgili metottan dönecek olan hata ve
sınıflandırma detaylarını parametre olarak alır olarak alır ve ilgili komponentlere gön-
derir,bu yönüyle binevi aktarma görevi üstlenmistir.Bu komponentler Sekil 29’deki gibi
tanımlanmıstır.
Sekil 29: Data Evaluation sekmesi
5.4.9 Görsel komponentler
Yüklenen verilen görsel olarak incelenmesinin yanı sıra ögrenme algortimalarında dö-
nen parametrelerin(esik degeri,hata vb.) görüntülenmesi saglayan komponentleri barındı-
43
rır.Görüntüsü Sekil 30’deki gibidir.
Sekil 30: Data Visualization sekmesi
Birkaç örnek yapalım
Sekil 31’da oldugu gibi öncelikle arff loader simgesi ,sonra ise class assigner simgesi
eklendi sonra ise çapraz dogrulama ,graph viewer,j48,graph viewer,classifier perfor-
mance evaluator,text viewer,model performance chart komponentlerini ekliyoruz.Bu
siralama su an önemli degil ancak baglantıları açısında sıralı olarak eklememiz sekilsel
olarak anlamamıza yardımcı olacaktır. arff loader simgesini sol klikle dosyayı yüklüyo-
ruz sonra sag klikleyip dataset seçip class assigner’a baglıyoruz.Aynı sekilde class As-
signer simgesinin sag klikleyip datasetini cross validation fold maker simgesine gönde-
riyoruz.Bu asamadan sonra aynı sekilde cross validation fold maker simgesi sag tıklanıp
egitim ve test okları j48 simgesine yönlendiriyoruz.J48’in aynı sekilde sag klikleyip graph
seçip graph viewer simgesiyle birlestiriyoz.J48 den devam edersek sag tıklayıp batch clas-
sifiers özeligini secip classifier performance evaluator simgesine yönlendiriyoruz bu kom-
ponentten de visualizable error parametresini mdel performace chart ’a sonuç verileri olan
text dosyalarını ise text viewer’a gönderip anlasılabilir sonuçları analiz edilir.Peki islem
nasıl baslatılır?
Söyle arff loader simgesinin üzerine gelinip sqg tıklatılıp start loading sekmesi tıklan-
dıgında islem baslatılmıs olunacak ve analiz yapmak için son uçlardaki komponentlerin
üzerine sag tıklantılıp show result ya da bu bir chart ise show cart secenegi seçilerek
sonuçlar incelenebilir.
44
Sekil 31: J48 karar agacından olusan bir sistem
Aynı sekilde Sekil 32’de buna benzer bir örnek yalnızca burada bir nüans farkı class value
picker kompenenti mevcut bu eleman ise bizim veriyi hangi alana göre sınıflandırılaca-
gına olanak saglayan opsiyondur.
Sekil 32: Bayes ögrenmesini iliskin sistem
Sekil 33’de gösterilen örnekte ise ögrenmesiz ögrenen bir sistem tasarlanmıstır bu sis-
tem yukarıdaki örneklerden pek farklı degildir ancak söz konusu bu durumda yine bir
farklılık gözümüze çarpacaktır,o da classifier performance evalutor yerine clusterer
performance evalutor yani anlasılacaga üzere sınıflandırma ile demetleme metotlarının
islemesi biribirinden farklı oldugu için farklı bir konvertör kullanmamızdır.
45
Sekil 33: Ögrenmesiz ögrenme yöntemi olan k-means kullanımı
Asagıdaki Sekil 34’de gösterilen sistemde ise bir çok katmalı algılayıcı tabanlı bir sistem
gösterilmistir.
Sekil 34: ÇKA’lı bir simulasyon arayüzü
46
SONUÇLAR
Sekil 35 de tree algoritması kullanılarak veriler islenmesi sonra Sekil 36 deki gibi ilgili
butonlar aracılıgıyla veri kümesindeki agaç yapısı çizdirilmistir.Son olarak Sekil 37 te ise
agaç yapısı gösterilmistir.
Sekil 35: Agaç sınıflandırma metodu kullanarak verilerin islenmesi
47
Sekil 36: Wekada j48 agaç metodu ile karar agacının görüntülenmesi
Sekil 37: Ilgili veri kümesinin karar agacı
Sekil 38 de ise destek vektör makinesi kullanılarak verinin islenmesi sonuçları ayrıca
Sekil 39 de ise makinenin hangi çekirdegi kullanarak gerçekleyecegi gösterilmektedir.
48
Sekil 38: Destek vektör makinesi(bu programdaki adıyla "smo") yöntemi kullanılarak veriisleme
Sekil 39: Destek vektör makinesi için ilgili çekirdegin seçimi
49
Altta bulunan Sekil 40 de ise lineer regression yöntemi kullanılarak veriler islenmistir.
Sekil 40: Lineer regression yöntemi kullanılarak ilgili verilerin dogruya uydurulması
Sekil 41,42 de ise Ysa adi altında çka algoritması kullanılarak isleme,ve Sekil 43,44 de ki
gibi katmanlar görüntülenmistir.
50
Sekil 41: Çok katmanlı algılayıcı yöntemi kullanılarak veri isleme
Sekil 42: Iris’e ait olan verilerin mla ile islenmesi
51
Sekil 43: Mla yönteminde katmanların gösterilmesi
Sekil 44: Mla’da islenen verinin algılayıcı katmanları
52
futbol.arff,iris.arff veri kümelerinin Sekil 45 ve Sekil 46 de ise naive bayes, kullanılarak
ve ise Sekil 47 ve Sekil 48 de bayes agları ile islenmistir.
Sekil 45: Bayes yöntemi ile veri islenmesi
Sekil 46: Iris’e ait verilerin bayes ile islenmesi
53
Sekil 47: Naive bayes yöntemi ile islenmesi
Sekil 48: Iris’e ait verilerin naive bayes yöntemi ile islenmesi
Ögrenmesiz ögrenme yöntemi olan k-means ile veri sınıflandırması Sekil 49 deki gibi
gerceklenmistir.
54
Sekil 49: Ögrenme yöntemi olan k-means ile sınıflandırma
Son olarak birden çok olan sınıflama algoritmalarının veri tipinin büyüklügü,verideki
alanların çoklugu verisetinin lineer olarak sınıflandırılıp sınıflandırılamadıgı,veride yan-
lıs sınıflandırmaların olması gibi ölçütlere baglı olarak Sekil 50’deki gibi sınıflandırma
tipleri seçilebilir.
Sekil 50: Veri setinin büyüklügü,sınıflandırılacak olan alanın kaç farklı tipi ol-dugu,alanların sayısına göre sınıflandırma algoritmalarının basarımı
55
Kaynaklar
[1] http://tr.wikipedia.org/wiki/Veri_madenciligi
[2] Öztemel, E., 2006, Yapay Sinir Agları, Papatya Yayıncılık, Istanbul
[3] http://www.ninova.itu.edu.tr/EgitimDetay.aspx?eId=195
[4] Dr.Banu Diri’a ait kaynaklardan alınmıstır.
[5] http://dms.irb.hr/tutorial/tut_dtrees.php
[6] O. T. Yıldız, E. Alpaydın, Univariate and Multivariate Decision Trees, Tainn 2000
[7] http://www.kernel-machines.org/
[8] Doç. Dr. Sule Gündüz Ögüdücü’e ait kaynaktan alınmıstır.
[9] An Introduction to the WEKA Data Mining System
[10] http://sourceforge.net/projects/weka/files/
documentation/3.7.x/WekaManual-3-7-11.pdf/download?
use_mirror=garr&download=
[11] http://okulsel.net/docs/index-23863.html?page=4
[12] Yrd.Doç.Dr Umut Orhan’a ait kaynaklardan alınmıstır.
[13] www.slideshare.com
[14] CLARA (Kaufmann & Rousseeuw, 1990)& CLARANS (Ng & Han, 1994)
56
ÖZGEÇMIS
KISISEL BILGILER
Adı Soyadı :Mustafa Köstek
Uyrugu : T.C
Dogum Yeri ve Tarihi: Çayıralan 09/05/1993
Adres : Balıkesir
——-
Telefon : 5549935366
e-mail : [email protected]
EGITIM DURUMU
Lisans Ögrenimi : Bilecik Seyh Edebali Üniverstesi, Bilecik
Bitirme Yılı : 2015
Lise : T.C Balıkesir Edremit Anadolu Lisesi
IS DENEYIMLERI
Yıl :
Kurum : ——-
Stajlar : Izsu stajyer
ILGI ALANLARI
YABANCI DILLER : Ingilizce
57