Machine Learning: K-nearest Neighbors

Machine Learning: K-nearest Neighbors

Catatan penting : Jika Anda benar-benar awam tentang apa itu Python, silakan klik artikel saya ini. Jika Anda awam tentang R, silakan klik artikel ini.

Kali ini kita akan belajar bersama tentang teknik klasifikasi yang lain yaitu K-nearest neighbors (k-NN). Jika diartikan ke dalam bahasa Indonesia, artinya adalah tetangga terdekat sebanyak K buah. Pasti sudah bisa ditebak, bahwa langkah pertama kita nanti harus menentukan jumlah K nya terlebih dahulu, mirip dengan K-means clustering. Perlu diperhatikan bahwa K yang dimaksud berbeda dengan K-Means Clustering yang merupakan salah satu teknik clustering.

Untuk bisa memahami konsep k-NN secara mudah, mari kita lihat ilustrasi di bawah ini:

Ilustrasi k-NN sebelum dan sesudah.

Pada gambar di atas dapat dilihat bahwa kita sudah memiliki data yang dibagi ke dalam dua kelompok, misal keputusan pelanggan untuk beli/tidak. Kemudian kita mendapatkan 1 data tambahan. Pertanyaannya, ia masuk ke kelompok biru atau merah? Melalui k-NN ternyata ia masuk ke dalam kelompok biru. Bagaimana caranya?

Berikut adalah langkah-langkah k-NN:

  1. Tentukan jumlah kelompok neighbors (K) nya. Umumnya adalah 5.
  2. Ambil data K terdekat (K neighbors) dari data terbaru (umumnya 5 buah K) berdasarkan jarak euclidean antar keduanya.
  3. Dari K-neighbors ini, hitung berapa banyak data poin yang masuk di masing-masing kategori.
  4. Masukkan data baru ini ke dalam kelompok yang memiliki jumlah K-neighbors terbanyak.

Bisa dilihat pada ilustrasi di bawah ini:

Ilustrasi metode k-NN. Lingkaran awal adalah k-NN dengan K=5, sementara lingkaran luar adalah k-NN dengan K=10.

Melalui gambar di atas, kita bisa tahu bahwa penentuan jumlah K, berpengaruh terhadap pengambilan keputusan. Jika K=5 maka ia masuk kelompok biru, dan jika K=10, ia masuk kelompok merah.

Perlu diingat, untuk mencari K terdekat yang dilihat adalah jarak euclideannya. Seperti ini formulanya:

Ilustrasi euclidean distance.

Dengan mengambil 5 data poin terdekat melalui jarak euclideannya untuk kasus kita di atas tadi, maka ilustrasinya akan tampak sebagai berikut:

Ilustrasi k-NN dengan mencari 5 titik dengan jarak euclidean terdekat.

Melalui 5 data ini dapat dilihat bahwa jumlah biru lebih banyak dari jumlah data merah, sehingga data baru ini masuk ke dalam kelompok biru.

Mudah bukan? Sekarang saatnya kita membahas aplikasi k-NN untuk memecahkan persoalan yang nyata.

Untuk melanjutkan membaca silakan klik halaman berikutnya di bawah ini.

Pages: 1 2 3

Subscribe
Notify of
guest

1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Kimebmen Simbolon
Kimebmen Simbolon
4 years ago

Halo pak.
Saya mau bertanya, untuk di python bagaimana kita mengetahui UserID orang2 yang ada di zona hijau dan merah yang digunakan sebagai daftar orang2 yang akan diberikan penawaran produk? Terimakasih.