Pengertian
Adalah algoritma machine learning yang bersifat
non-parametric dan lazy learning. Metode yang bersifat non-parametric memiliki
makna bahwa metode tersebut tidak membuat asumsi apa pun tentang distribusi
data yang mendasarinya. Dengan kata lain, tidak ada jumlah parameter atau
estimasi parameter yang tetap dalam model, terlepas data tersebut berukuran
kecil ataupun besar.
Algoritma non-parametric seperti KNN menggunakan sejumlah
parameter yang fleksibel, dan jumlah parameter seringkali bertambah seiring
data yang semakin banyak. Algoritma non-parametric secara komputasi lebih
lambat, tetapi membuat lebih sedikit asumsi tentang data.
Secara umum, cara kerja algoritma KNN adalah sebagai
berikut.
1.Tentukan jumlah tetangga (K) yang akan digunakan untuk
pertimbangan penentuan kelas.
2.Hitung jarak dari data baru ke masing-masing data point di
dataset.
3.Ambil sejumlah K data dengan jarak terdekat, kemudian
tentukan kelas dari data baru tersebut.
Contoh Penerapan K-Nearest Neighbor Pada Kehidupan Sehari Hari
Berikut adalah beberapa contoh penerapan di mana algoritma
k-nearest neighbor dapat digunakan:
• Peringkat
kredit: Algoritma KNN membantu menentukan peringkat kredit individu dengan
membandingkannya dengan individu yang memiliki karakteristik serupa.
• Persetujuan
pinjaman: Mirip dengan peringkat kredit, algoritma k-nearest neighbor
bermanfaat dalam mengidentifikasi individu yang cenderung gagal membayar
pinjaman dengan membandingkan sifat mereka dengan individu serupa.
• Preprocessing
data: Dataset dapat memiliki banyak nilai yang hilang. Algoritma KNN bisa
digunakan untuk proses yang disebut missing data imputation yang memperkirakan
nilai-nilai yang hilang.
• Pengenalan
pola: Kemampuan algoritma KNN untuk mengidentifikasi pola sangat bermanfaat
untuk beberapa bidang. Misalnya, membantu mendeteksi pola penggunaan kartu
kredit dan menemukan pola yang tidak biasa. Deteksi pola juga berguna dalam
mengidentifikasi pola dalam perilaku pembelian pelanggan.
• Prediksi
harga saham: Karena algoritma KNN memiliki kemampuan untuk memprediksi nilai
entitas yang tidak diketahui, ini berguna dalam memprediksi nilai saham di masa
mendatang berdasarkan data historis.
• Sistem
rekomendasi: Karena KNN dapat membantu menemukan pengguna dengan karakteristik
serupa, KNN dapat digunakan dalam sistem rekomendasi. Misalnya, dapat digunakan
dalam platform streaming video online untuk menyarankan konten yang kemungkinan
besar akan ditonton oleh pengguna dengan menganalisis apa yang ditonton oleh
pengguna serupa.
• Visi
komputer: Algoritma KNN digunakan untuk klasifikasi gambar. Karena mampu
mengelompokkan titik data yang serupa, misalnya, mengelompokkan kucing dan
anjing di kelas yang berbeda, ini berguna dalam beberapa aplikasi visi
komputer.
Kelebihan dan Kekurangan dari Algoritma K-Nearest Neighbor
Kelebihan :
1. Mudah diterapkan
Mengingat kesederhanaan dan akurasi algoritma, KNN merupakan
salah satu pengklasifikasi pertama yang sebaiknya dipelajari oleh data
scientist pemula.
2. Mudah beradaptasi
Saat sampel training baru ditambahkan, algoritma KNN
menyesuaikan untuk ikut memperhitungkan data baru karena semua data pelatihan
disimpan ke dalam memori.
3. Memiliki sedikit hyperparameter
KNN hanya membutuhkan nilai k dan metrik jarak, yang relatif
lebih sedikit jika dibandingkan dengan algoritma machine learning lainnya.
Kekurangan :
1. Tidak berfungsi dengan baik pada dataset berukuran besar
Untuk dataset berukuran besar, cost untuk menghitung jarak
antara titik baru dan setiap titik yang ada sangat besar dan cenderung
menurunkan kinerja algoritma.
2. Kurang cocok untuk dimensi tinggi
Algoritma KNN tidak bekerja dengan baik pada data berdimensi
tinggi karena dengan jumlah dimensi yang besar, menjadi sulit bagi algoritma
untuk menghitung jarak di setiap dimensi.
3. Perlu penskalaan fitur
Kita perlu melakukan penskalaan fitur (standarisasi dan
normalisasi) sebelum menerapkan algoritma KNN ke kumpulan data apa pun. Jika
kita tidak melakukannya, KNN dapat menghasilkan prediksi yang salah.
4. Sensitif terhadap noise data, missing values dan outliers
KNN sensitif terhadap noise dalam dataset. Kita perlu secara
manual memasukkan nilai yang hilang dan menghapus outlier.
Comments
Post a Comment