• Tidak ada hasil yang ditemukan

LANDASAN TEOR

4. Pembobotan Term

2.4. K-Nearest Neighbor (K-NN)

2.4.1. Konsep K-Nearest Neighbor (K-NN)

Algoritma K-Nea rest Neighbor (K-NN) adalah sebuah metode melakukan klasifikasi terhadap objek berdasarkan data pembelajaran jaraknya paling dekat dengan objek tersebut. K-NN termasuk algoritma supervised learning dimana hasil dari query instance yang baru diklasifikasikan berdasarkan mayoritas dari kategori pada K-NN, kemudian kelas yang paling banyak muncul yang akan menjadi kelas hasil klasifikasi.

Tujuan dari algoritma ini adalah mengklasifikasikan obyek berdasarkan atribut dan

training sample. Clasifier tidak menggunakan apapun untuk dicocokkan dan hanya berdasarkan pada memori. Diberikan titik query, akan ditemukan sejumlah k obyek atau (titik

training) yang paling dekat dengan titik query. Klasifikasi menggunakan voting terbanyak diantara klasifikasi dari k obyek. Algoritma K-Nearest Neighbor (K-NN) menggunakan klasifikasi ketetanggaan sebagai nilai prediksi dari query instance yang baru.

Algoritma metode K-Nearest Neighbor (K-NN) sangat sederhana, bekerja berdasarkan jarak terpendek dari query insta nce ke tr a i ning sa mple

untuk menentukan K-NN. Tr a ining sa mple diproyeksikan ke ruang berdimensi banyak, dimana masing-masing dimensi merepresentasikan fitur dari data. Ruang ini dibagi menjadi bagian-bagian berdasarkan klasifikasi tra ining sa mple. Sebuah titik pada ruang ini ditandai jika merupakan klasifikasi yang paling banyak ditemukan pada k buah tetangga terdekat dari titik tersebut. Metode pencarian jarak, ada dua jenis yaitu metode Cosine Similarity atau

Euclidean Distance yaitu perhitungan jarak terdekat. Perhitungan jarak terdekat dibutuhkan untuk menentukan jumlah kemiripan yang dihitung dari kemiripan kemunculan teks yang dimiliki suatu paragraf. Setelah itu kemunculan teks yang sedang diujikan dibandingkan terhadap masing-masing sample data asli. Ada dua metode untuk menghitung jarak antar tetangga yaitu metode Euclidean Distance dan Cosine Similarity yang direpresentasikan sebagai berikut : (Guo et al, 2001)

dimana matriks D(a,b) adalah jarak skalar dari kedua vektor a dan b dari matriks dengan ukuran d dimensi.

Satuan jarak yang digunakan Euclidian, jenis dari metode ini, jika dilihat dari nilai N- nya ada dua macam yaitu (Darujati, 2010):

1. 1-NN

Pengklasifikasian dilakukan pada 1 label data terdekat, algoritmanya sebagai berikut : - Menghitung jarak antara data baru ke setiap pelabelan data

- Menentukan 1 pelabelan data yang mempunyai jarak paling minimal - Klasifikasi data baru ke dalam pelabelan data tersebut

. 2. k-NN

Pengklasifikasian dilakukan dengan menentukan nilai pada k label data terdekat, dengan syarat nilai k >1, algoritmanya sebagai berikut :

- Menghitung jarak antara data baru ke setiap pelabelan data

- Menentukan k pelabelan data yang mempunyai jarak paling minimal - Klasifikasi data baru ke dalam pelabelan data yang mayoritas.

Cosine simila rity adalah penentuan kesesuaian dokumen dengan query untuk pegukuran antara vektor dokumen (D) dengan vektor query (Q). Persamaan yang digunakan (Darujati, 2010):

sim(Q,D)=cos(Q, D) = ………...(19)

|D| =

|Q| =

Dimana Q adalah dokumen uji, D dokumen training, dan adalah nilai bobot yang telah

diberikan pada setiap term pada dokumen.

Pada fase training, algoritma ini hanya melakukan penyimpanan vektor-vektor fitur dan klasifikasi data training sample. Pada fase klasifikasi, fitur-fitur yang sama dihitung untuk testing data (yang klasifikasinya tidak diketahui). Jarak dari vektor baru yang ini terhadap seluruh vektor training sample dihitung dan sejumlah k buah yang paling dekat diambil. Titik yang baru klasifikasinya diprediksikan termasuk pada klasifikasi terbanyak dari titik-titik tersebut. Sebagai contoh, untuk mengestimasi p(x) dari ntraining sample dapat memusatkan pada sebuah sel disekitar x dan membiarkannya tumbuh hingga meliputi k samples. Samples tersebut adalah K-NN dari x. Jika densitasnya tinggi di dekat x, maka sel

akan berukuran relatif kecil yang berarti memiliki resolusi yang baik. Jika densitas rendah, sel akan tumbuh lebih besar, tetapi akan berhenti setelah memasuki wilayah yang memiliki densitas tinggi. Pada Gambar 2.5 dan 2.6 ditampilkan estimasi densitas satu dimensi dan dua dimensi dengan K-NN

Gambar 2.5. Delapan titik dalam satu dimensi dan estimasi densitas K-NN dengan k= 3 dan k= 5 (Darujati, 2010)

Gambar 2.6. K-NN mengestimasi densitas dua dimensi dengan k= 5 (Darujati, 2010)

Nilai k yang terbaik untuk algoritma ini tergantung pada data. Secara umum, nilai k

yang tinggi akan mengurangi efek noise pada klasifikasi, tetapi membuat batasan antara setiap klasifikasi menjadi semakin kabur. Nilai k yang bagus dapat dipilih dengan optimasi parameter, misalnya dengan menggunakan cross-validation. Kasus khusus dimana klasifikasi diprediksikan berdasarkan training data yang paling dekat (dengan kata lain, k = 1) disebut algoritma nea rest neighbor. Ketepatan algoritma K-NN sangat dipengaruhi oleh ada atau tidaknya fitur-fitur yang tidak relevan atau jika bobot fitur tersebut tidak setara dengan relevansinya terhadap klasifikasi.

2.4.2. Algoritma K-NN untuk Menganalisis Dokumen Web

Berikut ini adalah langkah-langkah menghitung K-Nearest Neighbors pada dokumen :

1. Tentukan paremeter k sebagai jumlah tetangga terdekat, dalam sistem ini digunakan k=1, sehingga jika ada tetangga terdekat, itu yang akan digunakan sebagai nilai prediksi. 2. Hitung jarak antara data yang masuk dan semua sampel latih yang sudah ada. Pada

penelitian ini jenis jarak terdekat yang digunakan yaitu cosine similarity pada persamaan (19).

3. Mengurutkan objek-objek tersebut ke dalam kelompok yang mempunyai jarak terkecil. 4. Mengumpulkan kategori Y (klasifikasi nearest neighbor).

5. Dengan menggunakan kategori mayoritas, maka dapat diprediksikan nilai query instance

yang telah dihitung, kemudian tentukan jarak tetangga terdekat yang akan digunakan sebagai nilai prediksi dari data berikutnya. (Zee-Jing & Hsien-Wu, 2004)

2.4.3. Kelebihan K-Nearest Neighbor (K-NN)

Kelebihan dari metode K-Nearest Neighbor ini adalah sebagai berikut (Gorunescu, 2011): 1. Lebih efektif di data training yang besar

2. Dapat menghasilkan data yang lebih akurat

3. Metode yang baik dalam hal ruang pencarian, misalnya, kelas tidak harus linear dipisahkan.

4. Sangat cocok terhadap training data yang noise.

2.4.4. Kelemahan K-Nearest Neighbor (K-NN)

Kekurangan dari metode K-Nearest Neighbor ini adalah perlu ditentukan nilai k yang paling optimal yang menyatakan jumlah tetangga terdekat. (Gorunescu, 2011)

Dokumen terkait