K-Nearest Neighbor atau KNN adalah salah satu algoritma pembelajaran mesin yang paling dasar namun powerful. Banyak digunakan dalam klasifikasi dan regresi, KNN memanfaatkan jarak antar data untuk menentukan kategori atau nilai prediksi. Memahami KNN secara mendalam tidak hanya membutuhkan teori, tetapi juga latihan soal yang bervariasi. Artikel ini menyajikan kumpulan contoh soal KNN lengkap beserta jawaban dan pembahasannya agar Anda bisa menguasai konsep ini dengan mudah dan cepat.
Apa Itu K-Nearest Neighbor (KNN)?
KNN adalah algoritma non-parametrik yang digunakan untuk klasifikasi dan regresi. Kelebihan utama KNN adalah kesederhanaannya dan efektivitasnya dalam dataset yang kecil hingga menengah. Prinsip kerjanya adalah:
- Menentukan jarak antara data baru dengan data latih yang sudah ada, biasanya menggunakan Euclidean Distance atau Manhattan Distance
- Memilih k data terdekat
- Menentukan kelas atau nilai berdasarkan mayoritas atau rata-rata dari k tetangga terdekat
baca juga:Latihan Contoh Soal CPNS Kemenkumham Terbaru untuk Persiapan Ujian
Misalnya, jika kita ingin memprediksi jenis bunga berdasarkan panjang kelopak dan lebar kelopak, KNN akan membandingkan data bunga baru dengan bunga-bunga yang sudah ada, kemudian menentukan jenis bunga berdasarkan tetangga terdekatnya.
Mengapa Latihan Soal KNN Penting?
Memahami KNN secara teori memang penting, tetapi latihan soal membuat pemahaman lebih konkret. Latihan soal membantu:
- Menguasai perhitungan jarak antar titik data
- Memahami pemilihan nilai k yang tepat
- Mengetahui cara menangani data yang tidak seimbang
- Meningkatkan kemampuan analisis dan interpretasi hasil
Dengan kata lain, mengerjakan soal KNN membuat kita tidak hanya tahu โapa itu KNNโ, tetapi juga bagaimana mengaplikasikannya dalam masalah nyata.
Contoh Soal 1: KNN untuk Klasifikasi
Soal:
Diketahui dataset berikut tentang mahasiswa dan apakah mereka lulus atau tidak berdasarkan jam belajar dan jumlah tugas:
| Mahasiswa | Jam Belajar | Jumlah Tugas | Lulus |
|---|---|---|---|
| A | 5 | 7 | Ya |
| B | 3 | 4 | Tidak |
| C | 4 | 6 | Ya |
| D | 2 | 3 | Tidak |
| E | 6 | 8 | Ya |
Tentukan prediksi apakah mahasiswa F dengan jam belajar 4 dan jumlah tugas 5 akan lulus menggunakan KNN dengan k=3.
Jawaban dan Pembahasan:
Langkah 1: Hitung jarak Euclidean antara F dan setiap mahasiswa. Rumus Euclidean Distance:d=(x1โโx2โ)2+(y1โโy2โ)2โ
- Jarak F ke A: โ((4-5)ยฒ + (5-7)ยฒ) = โ(1 + 4) = โ5 โ 2.236
- Jarak F ke B: โ((4-3)ยฒ + (5-4)ยฒ) = โ(1 + 1) = โ2 โ 1.414
- Jarak F ke C: โ((4-4)ยฒ + (5-6)ยฒ) = โ(0 + 1) = โ1 = 1
- Jarak F ke D: โ((4-2)ยฒ + (5-3)ยฒ) = โ(4 + 4) = โ8 โ 2.828
- Jarak F ke E: โ((4-6)ยฒ + (5-8)ยฒ) = โ(4 + 9) = โ13 โ 3.606
Langkah 2: Pilih k=3 tetangga terdekat:
- C (1), B (1.414), A (2.236)
Langkah 3: Mayoritas kelas tetangga:
- C = Ya, B = Tidak, A = Ya โ Mayoritas = Ya
Kesimpulan: Mahasiswa F diprediksi lulus.
Contoh Soal 2: KNN dengan Dataset Lebih Besar
Soal:
Sebuah perusahaan ingin memprediksi apakah pelanggan akan membeli produk berdasarkan usia dan penghasilan bulanan. Dataset 6 pelanggan sebagai berikut:
| Pelanggan | Usia | Penghasilan | Beli |
|---|---|---|---|
| P1 | 25 | 5000 | Ya |
| P2 | 30 | 7000 | Ya |
| P3 | 22 | 4000 | Tidak |
| P4 | 35 | 6000 | Ya |
| P5 | 28 | 3000 | Tidak |
| P6 | 40 | 8000 | Ya |
Prediksi pelanggan baru dengan usia 27 dan penghasilan 4500 menggunakan k=3.
Jawaban dan Pembahasan:
Hitung jarak Euclidean:
- P1: โ((27-25)ยฒ + (4500-5000)ยฒ) = โ(4 + 2500ยฒ?)
Catatan: Perlu normalisasi karena skala usia dan penghasilan berbeda. Gunakan min-max normalization.
- Usia: min=22, max=40 โ usia norm = (usia – 22)/(40-22)
- Penghasilan: min=3000, max=8000 โ penghasilan norm = (penghasilan – 3000)/5000
Normalisasi pelanggan baru: usia 27 โ (27-22)/18 โ 0.278, penghasilan 4500 โ (4500-3000)/5000 โ 0.3
Lakukan normalisasi untuk semua pelanggan kemudian hitung jarak Euclidean. Setelah memilih 3 terdekat, tentukan mayoritas kelas โ Prediksi Ya atau Tidak.
Langkah ini mengajarkan kita pentingnya normalisasi agar perhitungan jarak akurat.
Contoh Soal 3: KNN untuk Regresi
KNN juga bisa digunakan untuk regresi, yaitu memprediksi nilai numerik.
Soal:
Data tinggi tanaman berdasarkan jumlah pupuk (gram) sebagai berikut:
| Tanaman | Pupuk (gram) | Tinggi (cm) |
|---|---|---|
| T1 | 10 | 15 |
| T2 | 15 | 20 |
| T3 | 20 | 25 |
| T4 | 25 | 28 |
| T5 | 30 | 30 |
Prediksi tinggi tanaman baru dengan pupuk 18 gram menggunakan k=3.
Jawaban dan Pembahasan:
Langkah 1: Hitung jarak Euclidean berdasarkan pupuk.
- T1: |18-10| = 8
- T2: |18-15| = 3
- T3: |18-20| = 2
- T4: |18-25| = 7
- T5: |18-30| = 12
Tetangga 3 terdekat: T3 (2), T2 (3), T4 (7)
Langkah 2: Hitung rata-rata tinggi tetangga:
- (25 + 20 + 28)/3 = 73/3 โ 24.33 cm
Kesimpulan: Tinggi tanaman diprediksi sekitar 24.33 cm.
Tips Sukses Mengerjakan Soal KNN
- Pahami perhitungan jarak
Gunakan Euclidean untuk data kontinu, Manhattan untuk data diskrit atau kategorik. - Pilih k yang tepat
- k kecil โ sensitif terhadap noise
- k besar โ menghaluskan prediksi tapi bisa kehilangan detail
- Normalisasi data
Sangat penting ketika fitur memiliki skala berbeda. - Visualisasi data
Membantu memahami tetangga terdekat dan distribusi kelas. - Gunakan cross-validation
Untuk memilih nilai k terbaik agar akurasi prediksi optimal.
Kesalahan Umum Saat Menggunakan KNN
- Tidak melakukan normalisasi ketika fitur memiliki skala berbeda
- Memilih k terlalu kecil atau terlalu besar
- Menggunakan KNN pada dataset sangat besar tanpa optimisasi โ lambat
- Tidak memeriksa distribusi kelas โ bisa bias pada kelas mayoritas
Dengan memahami kesalahan ini, pembelajaran melalui latihan soal akan lebih efektif.
baca juga:Rektor UTI Ajak Mahasiswa Jadi Pahlawan Masa Kini di Berbagai Bidang pada Momentum Hari Pahlawan
Kesimpulan
K-Nearest Neighbor adalah algoritma sederhana namun sangat berguna dalam klasifikasi maupun regresi. Latihan soal adalah kunci untuk menguasai KNN karena memperlihatkan bagaimana teori diaplikasikan dalam praktik. Dalam artikel ini, sudah diberikan contoh soal klasifikasi dan regresi, pembahasan lengkap, serta tips sukses.
Penulis:ilham



Post Comment