K Nearest Neighbor Summary

5
K Nearest Neighbor Klasifikasi Tidak seperti Rocchio, k Nearest Neighbor atau kNN menentukan penentuan batas secara lokal. Untuk 1NN kita memberi masing-masing dokumen ke kelas tetangga terdekatnya. Untuk kNN kita menempatkan setiap dokumen ke kelas mayoritas dari nilai k terdekatnya dimana k adalah sebuah parameter. Maka, kita asumsikan sebuah dokumen percobaan d memiliki label yang sama dengan dokumen latihan yang ditempatkan di wilayah lokal di sekitar d. Keputusan batasan pada 1NN menggabungkan segmen-segmen dari Voronoi tessellation seperti yang ditunjukkan oleh Gambar 14.6. Voronoi tessellation dari kumpulan objek didekomposisikan menjadi Voronoi cells, dimana setiap objek cell terdiri dari semua poin yang berada dekat dengan objek tersebut daripada objek lain. Pada kasus ini, objek adalah dokumen. Voronoi tessellation mempartisi plane menjadi convex polygon dimana sebuah convex polygon adalah sebuah regional cembung dalam bidang dua dimensi yang dibatasi oleh garis. Secara umum, k N di kNN, anggap region untuk setiap set k tetangga terdekat adalah sama. Maka sekali lagi convex polygon dan bidang dipartisi menjadi convex polygon, dengan setiap himpunan k n tetangga terdekat adalah invariant. 1NN tidaklah terlalu kuat. Keputusan pengklasifikasian setiap dokumen bergantung pada kelas dari sebuah dokumen latihan, yang mana mungkin saja memiliki label yang salah. kNN untuk k > 1 menjadi semakin kuat. Ia menempatkan dokumen ke kelas mayoritas dimana nilai k mereka sangat berdekatan. Ada beberapa versi permasalahan probalitas dari algoritma kNN klasifikasi ini. Kita bisa mengestimasi probabilitas dari keanggotaan di kelas c sesuati proporsi k terdekat dari c. Gambar 14.6 memberi contoh untuk k=3. Parameter k pada kNN seringkali dipilih berdasarkan pengalaman atau pengetahuan mengenai masalah pengklasifikasian terkait. k = 3 dan k = 5 adalah pilihan yang paling umum, tetapi nilai yang jauh lebih besar, antara 50 dan 100 pun sering digunakan. Sebuah cara alternatif untuk mengatur parameter adalah dengan memilih k yang memberikan hasil terbaik pada himpunan latihan.

Transcript of K Nearest Neighbor Summary

Page 1: K Nearest Neighbor Summary

K Nearest Neighbor

KlasifikasiTidak seperti Rocchio, k Nearest Neighbor atau kNN menentukan penentuan batas secara lokal. Untuk 1NN kita memberi masing-masing dokumen ke kelas tetangga terdekatnya. Untuk kNN kita menempatkan setiap dokumen ke kelas mayoritas dari nilai k terdekatnya dimana k adalah sebuah parameter. Maka, kita asumsikan sebuah dokumen percobaan d memiliki label yang sama dengan dokumen latihan yang ditempatkan di wilayah lokal di sekitar d.

Keputusan batasan pada 1NN menggabungkan segmen-segmen dari Voronoi tessellation seperti yang ditunjukkan oleh Gambar 14.6. Voronoi tessellation dari kumpulan objek didekomposisikan menjadi Voronoi cells, dimana setiap objek cell terdiri dari semua poin yang berada dekat dengan objek tersebut daripada objek lain. Pada kasus ini, objek adalah dokumen. Voronoi tessellation mempartisi plane menjadi convex polygon dimana sebuah convex polygon adalah sebuah regional cembung dalam bidang dua dimensi yang dibatasi oleh garis.

Secara umum, k N di kNN, anggap region untuk setiap set k tetangga terdekat adalah sama. Maka sekali lagi convex polygon dan bidang dipartisi menjadi convex polygon, dengan setiap himpunan k n tetangga terdekat adalah invariant.

1NN tidaklah terlalu kuat. Keputusan pengklasifikasian setiap dokumen bergantung pada kelas dari sebuah dokumen latihan, yang mana mungkin saja memiliki label yang salah. kNN untuk k > 1 menjadi semakin kuat. Ia menempatkan dokumen ke kelas mayoritas dimana nilai k mereka sangat berdekatan.

Ada beberapa versi permasalahan probalitas dari algoritma kNN klasifikasi ini. Kita bisa mengestimasi probabilitas dari keanggotaan di kelas c sesuati proporsi k terdekat dari c. Gambar 14.6 memberi contoh untuk k=3.

Parameter k pada kNN seringkali dipilih berdasarkan pengalaman atau pengetahuan mengenai masalah pengklasifikasian terkait. k = 3 dan k = 5 adalah pilihan yang paling umum, tetapi nilai yang jauh lebih besar, antara 50 dan 100 pun sering digunakan. Sebuah cara alternatif untuk mengatur parameter adalah dengan memilih k yang memberikan hasil terbaik pada himpunan latihan.

Kita juga dapat memberikan bobot ‘votes’ pada k terdekat dengan nilai persamaan kosinus mereka. Pembobotan dengan menggunakan persamaan seringkali lebih akurat dibandingkan voting. Sebagai contoh, apabila dua kelas memiliki nomor tetangga yang sama, maka kelas dengan persamaan lebih yang akan menang.

Kompleksitas Waktu dan Optimalitas kNNTabel 14.3 menunjukkan kompleksitas waktu kNN. kNN memiki sifat yang sedikit berbeda dari kebanyakan algoritma pengklasifikasian.

DefinisiK Nearest Neighbor (kNN) adalah suatu metode klasifikasi terhadap sekumpulan data berdasarkan pembelajaran data yang sudah terklasifikasikan sebelumnya. kNN termasuk dalam algoritma supervised learning. Tujuan dari algoritma ini adalah mengklasifikasi objek baru berdasarkan atribut dan data latihan. Pengklasifikasian tidak menggunakan model apapun untuk dicocokkan dan hanya

piudt, 16/04/14,
Translated from e-book
Page 2: K Nearest Neighbor Summary

berdasarkan pada memori. Diberikan titik latih, akan ditemukan sejumlah k objek (titik latih) yang paling dekat dengan titik uji. Klasifikasi menggunakan voting terbanyak di antara klasifikasi dari k objek.

Algoritma kNN1. Menentukan parameter k (jumlah tetangga terdekat)2. Menghitung kuadrat jarak Euclidan objek terhadap data latihan yang diberikan

D (P ,Q )=√∑i=1

n

( pi−qi)2

Dimana P dan Q adalah titik pada ruang vektor n dimensi, sedangkan pi dan qi adalah besaran skalar untuk dimensi ke-i dalam ruang vektor n dimensi.

3. Mengurutkan hasil nomor 2 secara ascending4. Mengumpulkan kategori Y (kalsifikasi nearest neighbor berdasarkan nilai k)5. Dengan menggunakan kategori nearest neighbor yang paling mayoritas maka dapat

diprediksikan kategori objek.

Kelebihan kNN1. Tangguh menghadapi data latihan yang noisy dan efeketif apabila data latihannya besar

Kelemahan kNN1. kNN perlu menentukan nilai dari parameter k (jumlah tetangga terdekat)2. Pembelajaran berdasarkan jarak tidak jelas mengenai jenis jarak apa yang harus digunakan

dan atribut mana yang harus digunakan untuk mendapatkan hasil yang terbaik3. Biaya komputasi cukup tinggi karena diperlukan perhitungan jarak dari tiap sample uji pada

keseluruhan data latih

Contoh Soal1. Terdapat beberapa data yang berasal dari survei kuesioner tentang klasifikasi kualitas kertas

tissue apakah baik atau jelek, dengan object training menggunakan dua atribut yaitu daya tahan terhadap asam dan kekuatan.

X1 = Daya tahan asam(detik)

X2 = Kekuatan(Kg/m2)

Y = Klasifikasi

8 4 Baik4 5 Jelek4 6 Jelek7 7 Baik5 6 Jelek6 5 Baik

Akan diproduksi kembai kertas tissue dengan atribut X1=7 dan X2=4 tanpa harus mengeluarkan biaya untuk melakukan survei, maka dapat diklasifikasikan kertas tissue tersebut termasuk yang baik atau jelek.

X1 = Daya tahan asam X2 = Kekuatan Square distance to query

Page 3: K Nearest Neighbor Summary

(detik) (Kg/m2) distance (7, 4)8 4 (8-7)2 + (4-4)2 = 14 5 (4-7)2 + (5-4)2 = 104 6 (4-7)2 + (6-4)2 = 137 7 (7-7)2 + (7-4)2 = 95 6 (5-7)2 + (6-4)2 = 86 5 (6-7)2 + (5-4)2 = 2

X1 = Daya tahan asam

(detik)

X2 = Kekuatan(Kg/m2)

Square distance to query distance (7,4)

Jarak terkecil

Apakah termsuk nearest

neighbor (K)

Y = kategori nearest

neighbor

8 4 (8-7)2 + (4-4)2 = 1 1 Ya Baik4 5 (4-7)2 + (5-4)2 = 10 5 Tidak -4 6 (4-7)2 + (6-4)2 = 13 6 Tidak -7 7 (7-7)2 + (7-4)2 = 9 4 Ya Baik5 6 (5-7)2 + (6-4)2 = 8 3 Ya Jelek6 5 (6-7)2 + (5-4)2 = 2 2 Ya Baik

2. Tentukan class dari test data dengan nilai atribut (50, 3, 40)

X1 = Takaran saji(gr)

X2 = Jumlah saji perkemasan

X3 = Energi total Y = Klasifikasi

40 5 60 Jelek50 8 40 Bagus50 7 30 Jelek70 4 60 Bagus80 4 80 Bagus60 6 60 Bagus

X1 = Takaran saji(gr)

X2 = Jumlah saji

perkemasan

X3 = Energi total

Square distance to query distance(50, 3, 40)

40 5 60 (40-50)2 + (5-3)2 + (60-40)2 = 50450 8 40 (50-50)2 + (8-3)2 + (40-40)2 = 2550 7 30 (50-50)2 + (7-3)2 + (30-40)2 = 11670 4 60 (70-50)2 + (4-3)2 + (60-40)2 = 80180 4 80 (80-50)2 + (4-3)2 + (80-40)2 = 250160 6 60 (60-50)2 + (6-3)2 + (60-40)2 = 509

X1 = Takaran

saji(gr)

X2 = Jumlah saji

perkemasan

X3 = Energi total

Square distance to query distance

(50, 3, 40)

Jarak terkecil

Apakah termsuk nearest

neighbor (K)

Y = kategori nearest

neighbor

40 5 60 (40-50)2 + (5-3)2 + (60-40)2 = 504

3 Ya Jelek

50 8 40 (50-50)2 + (8-3)2 + 1 Ya Bagus

Page 4: K Nearest Neighbor Summary

(40-40)2 = 2550 7 30 (50-50)2 + (7-3)2 +

(30-40)2 = 1162 Ya Jelek

70 4 60 (70-50)2 + (4-3)2 + (60-40)2 = 801

5 Tidak -

80 4 80 (80-50)2 + (4-3)2 + (80-40)2 = 2501

6 Tidak -

60 6 60 (60-50)2 + (6-3)2 + (60-40)2 = 509

4 Ya Bagus