K-Nearest Neighbors

Lab K-Nearest Neighbors

Klasifikasi berbasis instance dengan region keputusan interaktif, inspeksi tetangga, dan voting berbobot.

K-NN tidak belajar parameter global model. Prediksi dilakukan dengan label titik training terdekat di ruang fitur.

Untuk titik query x, pilih K sampel terdekat lalu gabungkan label dengan voting mayoritas (atau berbobot).

$$\hat{y}(x)=\arg\max_c \sum_{i\in \mathcal{N}_K(x)} w_i\,\mathbf{1}(y_i=c)$$

  • K kecil: batas sangat fleksibel, sensitif terhadap noise lokal.
  • K besar: batas lebih halus, varians lebih rendah, bias bisa lebih tinggi.
  • Voting berbobot (w=1/d) memberi pengaruh lebih besar ke tetangga yang sangat dekat.

Karena K-NN bergantung pada jarak, skala fitur sangat penting pada data nyata. Standardisasi biasanya meningkatkan reliabilitas.

Biaya prediksi meningkat seiring ukuran dataset karena jarak harus dihitung terhadap banyak sampel saat inferensi.

Gunakan validasi untuk memilih K dan menilai ketahanan terhadap noise atau distribusi kelas yang saling tumpang tindih.

  1. Muat distribusi demo (vertikal, XOR, konsentris, overlap, acak).
  2. Sesuaikan K dan toggle voting berbobot untuk membandingkan batas keputusan.
  3. Aktifkan Mode Uji dan klik untuk melihat tetangga terdekat serta probabilitas kelas.
  4. Naikkan kepadatan region untuk detail yang lebih halus, lalu turunkan untuk render lebih cepat.

Klik untuk menambah sampel training. Di Mode Uji, klik untuk mengklasifikasikan titik dan memeriksa tetangganya.

Info Model
Titik: 0 A | 0 B
Tes Terakhir P(B): -
Tetangga Terdekat