Algoritma KNN digunakan untuk klasifikasi dan regresi dengan mengklasifikasikan data berdasarkan kedekatan dengan tetangga terdekatnya. Langkah-langkah KNN adalah menentukan nilai K, menghitung jarak sampel ke data latih, memilih K tetangga terdekat, dan menentukan kelas mayoritas tetangga sebagai prediksi kelas sampel baru. KNN memiliki kelebihan sederhana namun efektif, tetapi sensitif terhadap fitur tidak
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Presentasi KNN
1. Introduction to KNN Algorithm
K-Nearest Neighbors (KNN)
www.itts.ac.id
Pusat Teknologi Nasional Berkelas Dunia
Penyusun :
1002210036 - Achmad Hidayat
1002210007 - Muhammad Iqbal
2. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 2
Definisi KNN
Apa itu KNN ?
Algoritma pembelajaran mesin yang digunakan untuk klasifikasi
dan regresi.
Prinsip dasar KNN mengklasifikasikan data berdasarkan
"kedekatan" dengan tetangga terdekatnya.
3. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 3
Langkah – langkah KNN
1. Pilih nilai K (jumlah tetangga terdekat).
2. Hitung jarak antara sampel yang akan diklasifikasikan dengan setiap titik data yang ada.
3. Pilih K tetangga terdekat berdasarkan jarak.
4. Tentukan kategori mayoritas dari tetangga terdekat sebagai prediksi kelas untuk sampel.
Untuk mencari dekat atau jauhnya jarak antar titik pada kelas k biasanya dihitung
menggunakan jarak Euclidean. Jarak Euclidean adalah formula untuk mencari jarak antara 2
titik dalam ruang dua dimensi.
Berikut rumus untuk menghitung jarak Euclidean:
4. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 4
Contoh Kasus
Misalnya ada sebuah rumah yang berada tepat di
tengah perbatasan antara Kota Bandung dan
Kabupaten Bandung, sehingga pemerintah
kesulitan untuk menentukan apakah rumah
tersebut termasuk kedalam wilayah Kota Bandung
atau Kabupaten Bandung.
Kita bisa menentukannya dengan
menggunakan Algoritma k-NN, yaitu dengan
melibatkan jarak antara rumah tersebut dengan
rumah-rumah yang ada disekitarnya (tetangganya).
5. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 5
Contoh Kasus
Pertama, kita harus menentukan jumlah tetangga yg akan kita perhitungkan (k), misalnya kita
tentukan 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:
1. Bila dari 3 tetangga tersebut terdapat ada 2 rumah yg termasuk kedalam wilayah
Kota Bandung, maka rumah tersebut termasuk kedalam wilayah Kota Bandung.
2. Sebaliknya, bila dari 3 tetangga tersebut terdapat 2 rumah yg termasuk kedalam
wilayah Kabupaten Bandung, maka rumah tersebut termasuk kedalam wilayah
Kabupaten Bandung.
6. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 6
Pembahasan Lebih Detil
Pada kasus tersebut, kita menghitung jarak suatu rumah
terhadap tetangga-tetangganya, itu berarti kita harus
mengetahui posisi dari setiap rumah.
Kita bisa menggunakan latitude dan longitude (atau garis lintang
dan garis bujur) sebagai posisi.
Untuk mempermudah pemahaman, saya akan coba
menggunakan data yang nilainya sederhana. Data yang akan
digunakan adalah sebagai berikut:
7. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 7
Pembahasan Lebih Detil
Dari data diatas, kita mendapatkan beberapa informasi,
diantaranya:
1. Independent Variables, yaitu variable yang nilainya tidak
dipengaruhi oleh variable lain. Pada contoh data diatas, yang
termasuk independent variable adalah Lat, dan Long.
2. Dependent Variables, yaitu variable yang
nilainya dipengaruhi oleh variable lain. Pada
contoh data diatas, yang termasuk dependent
variable adalah Lokasi.
3. Rumah A-E adalah rumah yang masuk ke dalam wilayah Kota.
4. Rumah F-J adalah rumah yang masuk ke dalam
wilayah Kabupaten.
5. Rumah X adalah rumah yang akan kita prediksi menggunakan
algoritma kNN apakah termasuk ke dalam wilayah Kota atau
Kabupaten.
8. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 8
Pembahasan Lebih Detil
Selanjutnya kita hitung jarak antara rumah X terhadap rumah A-G dengan menggunakan rumus pythagoras:
Diketahui, dimana x adalah Lat, y adalah Long, sedangkan (x1,
y1) adalah lat dan long dari rumah X, dan (x2,
y2) adalah lat dan long dari masing-masing tetangganya.
Setelah dihitung, selanjutnya adalah urutkan jarak tersebut dari
yang paling kecil ke yang paling besar, hasilnya adalah sebagai
berikut:
9. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 9
Pembahasan Lebih Detil
Rumah H (Kabupaten) yang memiliki jarak 2.24,
Rumah C (Kota) yang memiliki jarak 3, dan
Rumah E (Kota) yang memiliki jarak 3.16.
Dari ke-3 tetangga terdekat, terdapat 2 rumah yang termasuk
kedalam wilayah Kota dan 1 rumah yang masuk ke dalam
wilayah Kabupaten.
Sehingga dapat disimpulkan, bahwa Rumah X adalah rumah
yang termasuk kedalam wilayah Kota Bandung.
Dapat dilihat dari hasil perhitungan tersebut, bahwa ternyata 3 tetangga terdekat dari rumah X adalah:
10. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 10
Kelebihan dan Kelemahan KNN
Kelebihan KNN:
1. Sederhana dan mudah dipahami.
2. Tidak memerlukan asumsi yang kuat tentang data.
3. Dapat digunakan untuk klasifikasi dan regresi.
4. Dapat digunakan untuk data numerik dan
kategorikal.
Kelemahan KNN:
1. Sangat sensitif terhadap skala data dan fitur yang tidak
relevan.
2. Memerlukan penyimpanan data training secara
lengkap.
3. Memerlukan waktu komputasi yang signifikan saat
jumlah data besar.
4. Memerlukan pemilihan parameter K yang tepat.
11. K-Nearest Neighbors (KNN)
Introduction to KNN Algorithm 11
Kesimpulan
“KNN adalah algoritma yang sederhana
namun efektif untuk klasifikasi data
berdasarkan tetangga terdekat.”
Dalam menentukan nilai k, bila jumlah klasifikasi kita 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.
Didalam dunia Machine Learning, Independent Variables sering disebut juga sebagai Features.
Dalam kasus ini, Independent Variables nya sudah berbentuk angka, sehingga tidak perlu dilakukan konversi. Namun, bila dalam kasus lain terdapat Independent Varibales yang nilainya bukan berbentuk angka, maka kita harus mengkonversinya terlebih dahulu.