Naive Bayes Sınıflandırma Uygulaması

  • Published on
    04-Jul-2015

  • View
    1.633

  • Download
    3

Embed Size (px)

DESCRIPTION

Veri Madencilii yksek lisans dersi iin hazrlam olduum projenin sunumudur.

Transcript

  • 1. Naive Bayes Snflandrma Uygulamas H a r u n ETN10280161 Fen Bilimleri Enstits

2. Naive Bayes Snflandrma Uygulamas GR VE VER N LEME 3. Naive Bayes Snflandrma Uygulamas Veri seti olarak http://kdd.ics.uci.edu/summary.task.type.html (Summary of Task Files by Type) Sayfasndaki Forest Cover Type veri seti kullanld. Yine ayn sitenin veri setiyle ilgili sayfasnda belirtildii zere snflama almas orman rt trn belirleme zerine yapld. Veri setinde 55 nitelik ve 581012 rnek bulunmakta. Hesaplama kolayl asndan nitelik says veri setinin alnd internet sayfasndaki talimatlara uygun olarak azaltld. 4. Naive Bayes Snflandrma Uygulamas 11-15 (Wilderness area) ve 15-55 (Soil type) aralklarndaki nitelikler internet sayfasnda verilen aklamalara uygun olarak iki ayr nitelik olarak birletirildi. Bylece yeni veri setinin nitelik says 13 oldu. rnek says da azaltlarak 100000 rneklik yeni bir veri seti oluturuldu. 5. Naive Bayes Snflandrma Uygulamas GELTRME ORTAMI VEUYGULAMA 6. Naive Bayes Snflandrma Uygulamas Gelitirme dili olarak Java tercih edildi. Gelitirme ortam olarak ise NetBeans DE tercih edildi. Javann tercih edilmesinin sebebi gelitiriciye salad kolaylklar (Nesne ynelimli vb.) ve oklu platform destei ayrca NetBeans ve Javann ak kaynak lisansl olmasdr. Burada snflamay yapan temel snflara ve metotlara yer verilecektir. 7. Naive Bayes Snflandrma Uygulamas Siniflayici Soyut Snf Gelitirilen uygulamann en nemli iki snfndan ilki olan Snflayc soyut snf, snflama ilemini yapacak olan dier snflar iin genel bir arayz salamaktadr. Bu snf ierisindeki ilk metot olan int ArgMax (Vector girdi) metodu Object trnde veri vektr almakta ve bu vektr iindeki deerlerin say olarak en bynn indeks numarasn int trnde dndrmektedir. 8. Naive Bayes Snflandrma Uygulamas Dier bir metot KosulluSec(DefaultTableModel ornekler, int col, Object kosul) metodudur. Bu metot ise kendisine parametre almakta ve Object trnde bir Vector dndrmektedir. Bu metot kendi ierisinde btn eitim rneklerini dolaacak ekilde dng kurmakta ve kendisine gelen kosul parametresini alarak kategori kolonunda bu kosul deerine karlk gelen satrdaki int trndeki col parametresiyle verilmi kolondaki veriyi alarak Object trnde veri alan bir vektre eklemektedir. Dnen deer ise bu eklemeler sonucu oluan nihai vektrdr. 9. Naive Bayes Snflandrma Uygulamas Sonraki snf ise soyut prototipi verilmi olan ModeliEit(DefaultTableModel egitimSeti) metodudur. Dier metot Sinifla(Object[] veri) ise Object trnde bir veri dizisi alarak geriye String trnde snflama sonucunu dndrr. Test() metodu ise herhangi bir parametre almadan Snfla() metodunu kullanarak test verileri zerinden uygulamann baarm testini gerekletirir ve sonucu yzde cinsinden double olarak dndrr. 10. Naive Bayes Snflandrma Uygulamas NaiveBayes Snf NaiveBayes(Object[] kategoriler, int sinifKolonu, DefaultTableModel dagilimlar): Snfn ilklendirme metodu olan NaiveBayes metodu parametre almakta. Bu parametrelerin ilki olan kategoriler parametresi Object trnde bir nesne dizisidir. Bu diziye snflama yaplacak kategori etiketleri alnr. 11. Naive Bayes Snflandrma Uygulamas kinci parametre olan int trndeki sinifKolonu parametresi ile hangi nitelik kolonunun snflama nitelii olarak kullanlaca belirtilir. nc parametre olan dagilimlar parametresi ise niteliklerin minimum, maksimum, ortalama, varyans gibi dalm zelliklerini tablo yapsnda metoda sunmaktadr. 12. Naive Bayes Snflandrma Uygulamas ModeliEgit(DefaultTableModel table): Snflayc soyut snfndan alnan bu metot ilk parametresi olan tablo yapsndaki table parametresi ile veri setini almaktadr. nt trndeki ToplamOrnekSay deikeni veri setindeki toplam rnek saysn tutmaktadr. Sonraki deiken olan int trndeki EgitimOrnekSay deikeni ise kullanc arayznden alnan EgitimSetiOrani deikeni ile ToplamOrnekSay deikeninin arplarak yzdesinin alnmas sonucu elde edilen eitim amal kullanlacak veri setinin rnek saysn belirtir. 13. Naive Bayes Snflandrma Uygulamas DataSet, Siniflayici snfndan gelen Hashtable yapsnda bir deikendir. Burada sz konusu durum sralamaktan ziyade bir anahtarla ulamak olduundan hashtable kullanm uygun grlmtr. SinifDagilimlari deikeni ise snflarn nitelikler bazndaki ortalama ve varyanslarn tablo eklinde tutmakta. Gauss dalm hesaplama aamasnda bu tablodan faydalanld. Daha sonra bu deikeni DataSet hashtable ierisine alarak snf iindeki dier metotlarda kullanlmas saland. 14. Naive Bayes Snflandrma Uygulamas Sinifla(Object[] ornek): Bu metot Object trndeki ornek dizisine bir veri rnei almaktadr. Object trndeki kosulluolslar vektr ve Object trndeki siniflar deikenleri koullu olaslklar ve snflar tutmak amacyla oluturuldu. 15. Naive Bayes Snflandrma Uygulamas Ardndan kategori (snf) says kadar dngye girilerek ncelikle snf dalmlar tablosundan ele alnacak snfn olasl pc deikenine alnd. Daha sonra snf dalmlar tablosunun stun says kadar dng oluturularak snf dalmlar tablosundan her bir snfn ortalama ve varyanlar ve ilgili rnein her nitelii iin ortalama (pxort) ve varyans (pxvar) deikenine alnd. 16. Naive Bayes Snflandrma Uygulamas Daha sonra px deikenine verinin olasl ve sonuc deikenine ise bayes forml ile hesaplanan deer verildi. Bu sonular kosullulslar vektrne, zerinde ilem yaplan snf ise siniflar vektrne eklendi. 17. Naive Bayes Snflandrma Uygulamas Dnglerin bitiminden sonra ise ArgMax metodu ile kosulluolslar vektrndeki maksimum deerin indeksini alnarak siniflar vektrne verildi. siniflar vektrnde ilgili indekse karlk gelen snf bayes String deikeni iierisine alnarak metoda dn deeri olarak verildi. 18. Naive Bayes Snflandrma Uygulamas SONULAR 19. Naive Bayes Snflandrma Uygulamas Weka yazlm yardmyla yaplan snflama sonular gelitirilen uygulama ile karlatrld. 20. Naive Bayes Snflandrma UygulamasWEKAGELTRLEN UYGULAMANitelik Says: 55Nitelik Says: 13Snf Says: 7 Snf Says: 7Ayrl: %80Ayrl: %801 Toplam rnek Says: 100000 Toplam rnek Says: 100000Doru Snflanan rnek Says = 14661 Doru Snflanan rnek Says=6022Test rnek Says = 19988 Test rnek Says=20000Doruluk Yzdesi: % 73.349Doruluk Yzdesi: % 30.11 21. Naive Bayes Snflandrma Uygulamas WEKAGELTRLEN UYGULAMANitelik Says: 55 Nitelik Says: 13Snf Says: 7Snf Says: 7Ayrl: %70 Ayrl: %70Toplam rnek Says: 100000Toplam rnek Says: 1000002 Doru Snflanan rnek Says= 21929 Doru Snflanan rnek Says=13949Test rnek Says= 29982 Test rnek Says=30000Doruluk Yzdesi: % 73.140 Doruluk Yzdesi: % 46.497 22. Naive Bayes Snflandrma UygulamasWEKA GELTRLEN UYGULAMANitelik Says: 55 Nitelik Says: 13Snf Says: 7Snf Says: 7Ayrl: %66 Ayrl: %66Toplam rnek Says: 100000Toplam rnek Says: 1000003 Doru Snflanan rnek Says= 24826 Doru Snflanan rnek Says=16794Test rnek Says= 33980 Test rnek Says=34000Model Baarm: 73.060 Model Baarm: 49.394 23. TEEKKRLER