K Nearest Neighbour Classification Using Python (Part 1)

PUSPITA PUTRI NABILAH
2 min readJul 22, 2021

--

Assalamualaikum teman-teman! :)

Pada kesempatan ini saya akan membahas tentang K-Nearest Neighbour menggunakan R Studio. Namun, sebelum kita praktik akan lebih baik mengetahui dasar dari K-Nearest Neighbour itu sendiri. Yuk langsung saja~

Apa itu K-Nearest Neighbour?

Algoritma K-Nearest Neighbour atau lebih dikenal dengan k-NN adalah sebuah metode untuk melakukan klasifikasi terhadap objek yang berdasarkan dari data pembelajaran yang jaraknya paling dekat dengan objek tersebut. k-NN merupakan algoritma supervised learning dimana hasil dari query instance yang baru diklasifikan berdasarkan mayoritas dari kategori pada algoritma k-NN. Dimana kelas yang paling banyak muncul yang nantinya akan menjadi kelas hasil dari klasifikasi.

Kedekatan didefinisikan dalam jarak metrik, seperti jarak Euclidean yang data dicari dengan rumus berikut

rumus jarak euclidean

Oke untuk lebih mudah memahami k-NN, diberikan ilustrasi sebagai berikut

Misalnya ada sebuah rumah yang berada tepat di tengah perbatasan antara Kota Bekasi dan Kabupaten Bekasi, sehingga pemerintah kesulitan untuk menentukan apakah rumah tersebut termasuk kedalam wilayah Kota Bekasi atau Kabupaten Bekasi. Maka, kita bisa menentukannya dengan menggunakan Algoritma k-NN, yaitu dengan melibatkan jarak antara rumah tersebut dengan rumah-rumah yang ada disekitarnya (tetangganya).

Pertama, kita harus menentukan jumlah tetangga yg akan kita perhitungkan (k), misalnya ditentukan 3 tetangga terdekat (k = 3).

Kedua, hitung jarak setiap tetangga terhadap rumah tersebut, lalu urutkan hasilnya berdasarkan jarak, mulai dari yang terkecil ke yang terbesar.

Ketiga, ambil 3 (k) tetangga yg paling dekat, lalu kita lihat masing-masing dari tetangga tersebut apakah termasuk kedalam wilayah Kota atau Kabupaten. Ada 2 kemungkinan:

  • Bila dari 3 tetangga tersebut terdapat ada 2 rumah yg termasuk kedalam wilayah Kota Bekasi, maka rumah tersebut termasuk kedalam wilayah Kota Bekasi.
  • Sebaliknya, bila dari 3 tetangga tersebut terdapat 2 rumah yg termasuk kedalam wilayah Kabupaten Bekasi, maka rumah tersebut termasuk kedalam wilayah Kabupaten Bekasi.

Catatan

Dalam menentukan nilai k, bila jumlah klasifikasi genap maka sebaiknya kita gunakan nilai k ganjil, dan begitu pula sebaliknya bila jumlah klasifikasi kita ganjil maka sebaiknya gunakan nilai k genap, karena jika tidak begitu, ada kemungkinan kita tidak akan mendapatkan jawaban.

Oke, sekian pembahasan dasar untuk algoritma k-NN, untuk langkah praktiknya lanjut ke Part 2 yaa.

--

--