1 / 31

Nearest Neighbor

Nearest Neighbor. Sistem Berbasis Fuzzy Materi 4. Eko Prasetyo Teknik Informatika Universitas Muhammadiyah Gresik 2012. Konsep Klasifikasi.

armen
Télécharger la présentation

Nearest Neighbor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Nearest Neighbor SistemBerbasis Fuzzy Materi 4 Eko Prasetyo TeknikInformatika UniversitasMuhammadiyah Gresik 2012

  2. KonsepKlasifikasi • Klasifikasimerupakansuatupekerjaan yang melakukanpenilaianterhadapsuatuobyek data untukmasukdalamsuatukelastertentudarisejumlahkelas yang tersedia. • Adaduapekerjaanutama yang dilakukan: • Pembangunan model sebagai prototype untukdisimpansebagaimemori, • Menggunakan model tersebutuntukmelakukanpengenalan/ klasifikasi/prediksipadasuatuobyek data lain untukdinilaibahwaobyek data tersebutmasukpadakelasmanadalam model yang sudahdisimpannya. • Contoh, pengklasifikasianjenishewan • dimanahewanmempunyaisejumlahatributsehinggadariatributtersebutdapatdiketahuijikaadahewanbarumakabisadiketahuihewantersebutmasukdalamkelas yang manasesuaidengankelas yang sudahdipelajari/diketahui.

  3. KonsepKlasifikasi • Klasifikasiadalahpekerjaan yang melakukanpelatihan/ pembelajaranterhadapfungsi target f yang memetakansetiap set atribut (fitur) xkesatudarisejumlah label kelasy yang tersedia. • Pekerjaanpelatihanakanmenghasilkansuatu model yang kemudiandisimpansebagaimemori. • Model dalamklasifikasimempunyaiarti yang samadengan black box, • Suatu model yang menerimamasukankemudianmampumelakukanpemikiranterhadapmasukantersebutdanmemberikanjawabansebagaikeluarandarihasilpemikirannya. Algoritmapelatihan yang sudahdikembangkanolehparapenelitiseperti: K-Nearest Neighbor, Artificial Neural Network, Support Vector Machine, dsb.

  4. MetodePembelajaran (Pelatihan) • Eager Learning • Secaraeksplisitmendeskripsikanfungsi target padasemuabagian training set (data latih). • Instance-based Learning • Learning = Menyimpansemua training instances • Prediksi = Menggunakanfungsitujuan (model) padainstansibaru (data uji) • Disebutjuga “Lazy” learning.

  5. MetodePembelajaran • Eager Learning • Misal: ANN, SVM, Decision Tree, Bayesian, dsb. Any random movement =>It’s a mouse I saw a mouse!

  6. MetodePembelajaran • Lazy Learning • Misal: K-NN, Fuzzy K-NN, Fuzzy K-NNC, Weighted Regression, Case-based reasoning, dsb. Its very similar to a Desktop!!

  7. K-Nearest Neighbor (K-NN)

  8. K-Nearest Neighbor • Algoritma yang melakukanklasifikasiberdasarkankedekatanlokasi (jarak) suatu data dengan data yang lain. • Prinsipsederhana yang diadopsiolehalgoritma K-NN adalah: “Jikasuatuhewanberjalansepertibebek, bersuarakwek-kweksepertibebek, danpenampilannyasepertibebek, makahewanitumungkinbebek”. • Padaalgoritma K-NN, data berdimensiq, dapatdihitungjarakdari data tersebutke data yang lain, • Nilaijarakini yang digunakansebagainilaikedekatan/kemiripanantara data ujidengan data latih.

  9. K-Nearest Neighbor 1 tetanggaterdekat (1-NN) 2 tetanggaterdekat (2-NN) 3 tetanggaterdekat (3-NN) 7 tetanggaterdekat (7-NN)

  10. Algoritma K-NN • z = (x’,y’), adalah data ujidenganvektor x’ dan label kelas y’ yang belumdiketahui • Hitungjarak d(x’,x), jarakdiantara data uji z kesetiapvektor data latih, simpandalam D • PilihDz D, yaitu K tetanggaterdekatdari z

  11. Contoh Data latih Data ujiadalah data (3,4), fitur X=3, Y=4. Akandilakukanprediksi, masukdalamkelas yang manakah seharusnya ? Gunakanjarak Euclidean !

  12. Prediksidengan K-NN Jarak data uji (3,4) ke 17 data latih

  13. Prediksidengan K-NN Untuk K=1 Data latih yang terdekatadalah data nomor 9 (4,4) dengankelas 1, maka data uji (3,4) diprediksimasukkelas 1. Untuk K=3 Data latih yang terdekatadalah data nomor 9 (4,4) dengankelas 1, data nomor 7 (2,3) dan data nomor 4 (3,2) dengankelas 0, karenakelas 1 berjumlah 1 dankelas 0 berjumlah 2 (lebihbanyakkelas 0 daripadakelas 1) maka data uji (3,4) diprediksimasukkelas 0. Untuk K=7 Data latih yang terdekatadalah data nomor 8 (5,3), 9 (4,4), 14 (4,6) dengankelas 1, data nomor 4 (3,2), 6 (1,3), 7 (2,3), dan 11 (1,5) dengankelas 0, karenakelas 1 berjumlah 3 dankelas 0 berjumlah 4 (lebihbanyakkelas 0 daripadakelas 1) maka data uji (3,4) diprediksimasukkelas 0.

  14. Evaluasi K-NN • Algoritma yang menggunakanseluruh data latihuntukmelakukanprosesklasifikasi (complete storage). • Mengakibatkanuntuk data dalamjumlah yang sangatbesar, prosesprediksimenjadisangat lama. • Tidakmembedakansetiapfiturdengansuatubobot • Pada ANN (Artificial Neural Network) yang berusahamenekanfitur yang tidakpunyakontribusiterhadapklasifikasimenjadi 0 padabagianbobot, • NN tidakadabobotuntukmasing-masingfitur. • Menyimpansebagianatausemua data danhampirtidakadaprosespelatihan, • maka K-NN sangatcepatdalamproses training (karenamemangtidakada) tetapisangatlambatdalamprosesprediksi. • Hal yang rumitadalahmenentukannilai K yang paling sesuai • K-NN padaprinsipnyamemilihtetanggaterdekat, • Parameter jarakjugapentinguntukdipertimbangkansesuaidengankasusdatanya. Euclidean sangatcocokuntukmenggunakanjarakterdekat (lurus) antaradua data, tetapi Manhattan sangatrobustuntukmendeteksi outlier dalam data.

  15. Fuzzy K-Nearest Neighbor (FK-NN)

  16. Fuzzy K-NN • K-NN melakukanprediksisecarategaspadaujiberdasarkanperbandingan K tetanggaterdekat. • Fuzzy K-Nearest Neighbor (FK-NN) diperkenalkanoleh Keller et al (1985) denganmengembangkan K-NN yang digabungkandenganteori fuzzy dalammemberikandefinisipemberian label kelaspada data uji yang diprediksi. • Padateori fuzzy, sebuah data mempunyainilaikeanggotaanpadasetiapkelas, • yang artinyasebuah data bisadimilikiolehkelas yang berbedadengannilaiderajatkeanggotaandalam interval [0,1]. • Teorihimpunan fuzzy men-generalisasiteori K-NN klasikdenganmendefinisikannilaikeanggotaansebuah data padamasing-masingkelas.

  17. Nilaikeanggotaan u(x,ci) adalahnilaikeanggotaan data xkekelasci Kadalahjumlahtetanggaterdekat yang digunakan u(xk,ci) adalahnilaikeanggotaan data tetanggadalamKtetanggapadakelasci, nilainya 1 jika data latihxkmilikkelasciatau 0 jikabukanmilikkelasci d(x, xk) adalahjarakdari data xke data xkdalamKtetanggaterdekat m adalahbobotpangkat (weight exponent) yang besarnya m > 1 • Nilaikeanggotaansuatu data padakelassangatdipengaruhiolehjarak data ituketetanggaterdekatnya, • semakindekatketetangganyamakasemakinbesarnilaikeanggotaan data tersebutpadakelastetangganya, begitu pula sebaliknya. • Jaraktersebutdiukurdengan N dimensi (fitur) data

  18. Jarak yang digunakan N adalahdimensi (jumlahfitur) data. Untuk p adalahpenentujarak yang digunakan, jika p=1 makajarak yang digunakanadalah Manhattan, jika p=2 makajarak yang digunakanadalah Euclidean, jika p=makajarak yang digunakanadalahChebyshev. Meskipun FK-NN menggunakannilaikeanggotaanuntukmenyatakankeanggotaan data padasetiapkelas, tetapiuntukmemberikankeluaranakhir, FK-NN tetapharusmemberikankelasakhirhasilprediksi, untukkeperluanini, FK-NN memilihkelasdengannilaikeanggotaanterbesarpada data tersebut

  19. Algoritma FK-NN • Normalisasikan data menggunakannilaiterbesardanterkecil data padasetiapfitur. • Cari K tetanggaterdekatuntuk data uji x menggunakanpersamaan: • Hitungnilaikeanggotaan u(x, ci) menggunakanpersamaandibawahiniuntuksetiapi, dimana 1 i C. • Ambilnilaiterbesar c=u(x, ci) untuksemua 1 i C. • Berikan label kelas c ke data uji x.

  20. Data latih Contoh Data ujiadalah data (3,4), fitur X=3, Y=4. Akandilakukanprediksi, masukdalamkelas yang manakahseharusnya ? Gunakan w=2, danjarak Euclidean !

  21. Prediksidengan K-NN Jarak data uji (3,4) ke 17 data latih

  22. Untuk K=1 Data uji (3,4) diprediksimasukkelas 1. Untuk K=3 Data uji (3,4) diprediksimasukkelas 1. Untuk K=7 Data uji (3,4) diprediksimasukkelas 1.

  23. Fuzzy K-Nearest Neighbor in every Class (FK-NNC)

  24. Framework FK-NNC • DiperkenalkanolehPrasetyo (2012). • FK-NNC menggunakansejumlah K tetanggaterdekatpadasetiapkelasdarisebuah data uji, bukan K tetanggaterdekatsepertipada K-NN dan FK-NN. • FK-NNC menggunakan FK-NN sebagai basis kerangkakerja, dimanasebuah data ujimempunyainilaikeanggotaanpadasetiapkelasdalam interval [0.1]. • Jumlahnilaikeanggotaansebuah data padasemuakelassamadengan 1 Tanda dot hitam (solid) adalah data uji Tigatetanggadikelas + dantigatetanggadikelas x

  25. Framework FK-NNC – Cont’d • Jarakdata ujixikesemua K tetanggadarisetiapkelaske-jdijumlahkan, formula yang digunakan: • Nilaimdisinimerupakanpangkatbobot (weight exponent) sepertipada FK-NN, nilaim > 1. • akumulasijarak data ujixikesetiapkelasdigabungkan, disimbolkanD, formula yang digunakan: • Untukmendapatkannilaikeanggotaan data ujixipadasetiapkelaske-j (adaCkelas), menggunakan formula: • Untukmenentukankelashasilprediksi data ujixi, dipilihkelasdengannilaikeanggotaanterbesardari data xi. Formula yang digunakan: (4) (5) (6) (7)

  26. Algoritma FK-NNC • Cari K tetanggaterdekatpadasetiapkelas, menggunakan formula • HitungS sebagaiakumulasijarak K tetanggapadasetiapkelas, menggunakan formula (4) • Hitung J sebagaiakumulasisemuajarakdari CK tetangga, menggunakan formula (5) • Hitung u sebagainilaikeanggotaan data padasetiapkelas, menggunakan formula (6) • Pilihnilaikeanggotaanterbesarmenggunakan formula (7), kelasdengannilaikeanggotaanterbesarmenjadikelashasilprediksiuntuk data ujitersebut.

  27. Data latih Contoh Data ujiadalah data (3,4), fitur X=3, Y=4. Akandilakukanprediksi, masukdalamkelas yang manakahseharusnya ? Gunakan w=2, danjarak Euclidean !

  28. Prediksidengan K-NN Jarak data uji (3,4) ke 17 data latih Setelahdiurutkan

  29. Perhitunganjarak FK-NNC pada data set Buatan

  30. Hasilperitungannilaikeanggotaanpadakeduakelassebagaiberikut: Untuk K=1: , Karenau1 > u0, maka data ujidiprediksimasukkekelas 1 Untuk K=3: , Karenau1 > u0, maka data ujidiprediksimasukkekelas 1 Untuk K=5: , Karenau1 > u0, maka data ujidiprediksimasukkekelas 1 Untuk K=7: , Karenau1 > u0, maka data ujidiprediksimasukkekelas 1

  31. ANY QUESTIONS ?

More Related