Mengenal K-nearest Neighbor dan Pengaplikasiannya
K-nearest neighbor adalah salah satu algoritma yang paling sederhana dan banyak digunakan. Titik data akan diklasifikasikan berdasarkan kesamaan kelompok tertentu dari titik data lain yang berdekatan. Sehingga, algoritma ini akan memberikan hasil yang kompetitif. Bagaimana contoh penggunaan dan penjelasan lainnya mengenai K-nearest neighbor ini? Simak penjelasannya di bawah ini!
Apa Itu K-Nearest Neighbor?
Dikenal juga dengan singkatan KNN, K-nearest neighbor merupakan algoritma yang digunakan untuk mengidentifikasi adanya persamaan antara data baru dan lama. Kemudian, algoritma satu ini akan memasukkan data baru tersebut dalam kategori yang paling mirip dengan kategori yang telah ada sebelumnya. Dengan kata lain, K-nearest neighbor menyimpan seluruh data lama dan mengklasifikasikan data point baru berdasarkan kemiripan.
Contoh Aplikasi K-Nearest Neighbor
Contoh aplikasi K-nearest neighbor yang paling mudah adalah kumpulan data untuk iklan jaringan sosial. Dataset yang ada di sana berisi rincian pengguna suatu situs jejaring sosial. Akan tercatat apakah seorang pengguna membeli suatu produk dengan meng-klik iklan di situs berdasarkan gaji, usia, atau jenis kelamin mereka.
Dari dataset yang ada tersebut, Anda bisa menjadikannya variabel independen dan dependen. Setelah itu, Anda juga bisa melakukan split uji data pada dataset. Lalu, ada sejumlah parameter yang digunakan dalam pembuatan model K-nearest neighbor yang diatur dalam lima titik.
Cara Kerja K-Nearest Neighbor
Berikut ini adalah langkah-langkah kerja K-nearest neighbor yang bisa Anda lakukan:
- Pilih nomor K neighbor atau terdekat.
- Hitung jarak Euclidean dari jumlah K terdekat.
- Ambil K terdekat ini sesuai dengan jarak Euclidean yang dihitung.
- Di antara K terdekat ini, hitunglah jumlah titik data dalam setiap kategori.
- Tetapkan titik data baru ke dalam kategori yang jumlah tetangganya maksimum.
- Model yang Anda buat sudah siap.
K-Nearest Neighbor regression
K-nearest neighbor regression adalah ketika Anda mempunyai bilangan real sebagai output-nya. Contohnya, Anda bisa memakai data tabel perkiraan berat badan seseorang berdasarkan tinggi badannya. Data yang dipakai dalam analisis algoritma regresi akan terlihat mirip dengan data yang ditunjukkan dalam tabel. Ada variabel independen dan variabel dependen. Tinggi badan adalah variabel independen, sedangkan berat badan adalah variabel dependen.
Cara Menentukan nilai K pada Algoritma K-Nearest Neighbor
Untuk menentukan nilai K yang benar, Anda bisa menjalankan algoritma K-nearest neighbor regression beberapa kali dengan memakai nilai K yang berbeda-beda. Hal ini bertujuan untuk mengurangi jumlah kesalahan yang Anda temui, sambil mempertahankan algoritma untuk memprediksi dengan akurat ketika data diberikan. Langkah-langkahnya adalah sebagai berikut:
- Pertama, Anda bisa menurunkan nilai K menjadi 1. Bisa diprediksi bahwa pada tahap ini, nilai menjadi kurang stabil. Bayangkan jika K=1 dan Anda memiliki titik kueri yang dikelilingi beberapa warna sama dan satu warna yang berbeda. Namun, warna berbeda tersebut adalah yang terdekat. Jadi, karena K=1, maka titik kueri adalah warna yang berbeda tersebut.
- Kedua, kalau Anda menaikkan nilai K, prediksi yang dilakukan bisa lebih stabil karena ada suara mayoritas. Maka, lebih memungkinkan bagi Anda membuat prediksi yang lebih akurat. Ketika Anda mengambil suara terbanyak, Anda biasanya akan membuat K dengan angka ganjil.
Kapan Harus Menggunakan Algoritma K-Nearest Neighbor?
Algoritma K-nearest neighbor bisa digunakan ketika Anda memiliki titik data baru, misalnya X1. Anda perlu menentukan titik data baru ini akan diletakkan dalam kategori apa. Untuk mengatasi permasalahan ini, penggunaan algoritma K-nearest neighbor bisa dengan mudah mengidentifikasinya. Setiap dataset atau variabel yang tercatat akan dipisahkan berdasarkan kategorinya masing-masing.
Kelebihan K-Nearest Neighbor
Kelebihan K-nearest neighbor adalah algoritmanya yang sederhana dan mudah diimplementasikan. Selanjutnya, Anda tidak perlu membangun model, membuat beberapa parameter, atau membuat asumsi tambahan. Terakhir, algoritma K-nearest neighbor ini sangat serbaguna. Anda bisa menggunakannya untuk membuat klasifikasi, regresi, dan pencarian data.
Kelemahan K-nearest neighbor
Namun, algoritma K-nearest neighbor ini juga memiliki kelemahan. Algoritmanya bisa menjadi lebih lambat secara signifikan karena jumlah contoh atau prediksi variabel independennya meningkat. Selain itu, K-nearest neighbor juga selalu memerlukan penentuan nilai K yang mungkin kompleks untuk beberapa kasus. Biaya komputasinya juga tinggi karena harus menghitung jarak antara titik data dengan semua sampel yang tersebar di sekitarnya (neighbor).
Kesimpulan
Berdasarkan penjelasan di atas, dapat disimpulkan bahwa K-nearest neighbor adalah salah satu algoritma yang paling mudah dipahami dan dipakai. Biasanya, K-nearest neighbor digunakan untuk mengumpulkan data dari jejaring sosial.Konsep utama dari algoritma K-nearest neighbor adalah mengambil kumpulan data yang berbeda. Pengaplikasian K-nearest neighbor memang cukup sederhana dan mudah.
Namun, Anda juga harus tetap mempelajarinya dengan baik agar data yang dihasilkan akurat. Untuk ini, Anda bisa bergabung dengan Algoritma Data Science School yang menyediakan kelas seputar K-nearest neighbor dan materi data science lainnya. Klik di sini untuk belajar tentang K-nearest neighbor lebih mendalam bersama Algoritma Data Science School!
Referensi:
- java T point - K-Nearest Neighbor(KNN) Algorithm for Machine Learning (Diakses pada 21 Juli 2022)
- Towards Data Science - Machine Learning Basics with the K-Nearest Neighbors Algorithm (Diakses pada 21 Juli 2022)
- Analytics Vidhya - A Quick Introduction to K – Nearest Neighbor (KNN) Classification Using Python (Diakses pada 21 Juli 2022)