Ngomongin K-Nearest Neighbor

 T :  KNN, apaan tu?

J  :  KNN atau K-Nearest Neigbor secara harfiahnya berarti k-tetangga terdekat…  

T  : yah ini lagi cuman ngartiin kata-katanya doang, kalo bahasa Inggris mah little-little i can lah.. maksudnya KNN tu buat apa?

J :  sabar dikit napa c  T ni juga mo jelasin…,  jadi, KNN itu salah satu algoritma untuk klasifikasi.. tau kan klasifikasi apa, apa bedanya sama klustering?

T: hm,, iya kalo itu c inget. kalo kelasifikasi kan kelas targetnya dah ditentuin terlebih dahulu gitu ya, apa tuh istilah kerennya…

J :   supervised learning..

T :   nah, iya ntu.  Kalo klustering belum ditentuin kelas targetnya, berarti unsupervised learning, ya kan?

J :   siip..

T :   yaudah, lanjut-lanjut. hm,, jadi KNN tu buat klasifikasi, terus napa tu namanya unik banget.. k-tetangga terdekat.. tinggal di komplek apa tu dia, ampe disebut begono

J :  haha. ya enggaklah. makanya lanjut dulu pengertiannya ya.  Jadi konsep dasar c KNN tu, kita ngambil sebanyak k titik yang paling deket dengan titik queri…

T :   pit.. pit… dulu.   titik queri maksudnya apa Bos?

J :  titik queri itu titik yang mo kita cari dia masuk ke kelas mana.  

T : ooo..

J : oke, lanjut.  Kita ngambil sebanyak k titik yang paling deket dengan titik queri,  kita sebut dia sebagai k-tetangga terdekat. Terus kita liat deh tetangga-tetangga itu, mereka mayoritas masuk kelas apa.   Nah, si titik queri ini akan masuk ke kelas mayoritas itu.

T :   hm hm hm…  simpel juga kayanya,

J : yap, intinya c algortima ini ada dua langkah.  Pertama, cari k- tetangga terdekat.  Tentu sebelumnya kita dah nentuian nilai k-nya, artinya kita dah tentuin dulu berapa tetagga terdekat nih yang diambil…

T : lah terus cara nyarinya gimana. Gimana kita tau kalo mereka adalah our nearest neighbor, halah..

J :  Ah elu.  Masa gitu aja nanya c..  ya pake jarak dong. 

T :  xixixi.. oh iye ye. 

J :  Hitung jarak antara titik queri dengan titik-titik training…

T :  titik training tu berarti titik yang udah kita tau kelasnya apa kan? kayak data training gitu.

J : yap, encer juga tu otak kadang2..

T :   eerrggh..

J : he… sori, ngocol dikit. yawdah lanjut. hitung jarak antara titik queri dengan titik-titik training..   Caranya ngitung jarak,  bisa pake fungsi2 yang uda pernah dibahas di kulian metkuan, inget? ada jarak Euclidean,  jarak Mahlanobis, dll…

T :  oo.. yayaya, kayaknya pernah denger tu.

J :  itu kan ada di kuliah metkuan

T : ah, elu suka pura-pura gak tau, gw kan suka sambil tidur kalo belajar di kelas.

J : hahaha.. emang bisa ya.  yawdah lanjut..  Udah dapet ni perhitungan jaraknya, abis itu kita ambilin yang paling kecil, ambil k titik yang nilainya paling kecil.  caranya? urutin dari kecil ke gede, ambil k baris pertama. Itulah our k-nearest neighbor.

T : hm…

J : sip, langkah pertama beres.  Sekarang kita dah punya k-tetangga terdekat..

T : lanjut..

J : langkah kedua;    dari k-tetangga terdekat tadi, kita liat mayoritas pada masuk kelas apa, misal masuk kelas x. yaudah, berarti titik queri kita juga masuk kelas x. beres deh klasifikasi kita.. !   :)

T :  hooo… bingung. 

J :   lha?  hm, emang lebih jelas langsung pake contoh c. yawda, coba unduh (maaf untuk saat ini belum ada link nya) hand-outnya aja kalo gitu.

T:  ok ok..

J :  Sebenernya… katanya c, algoritma ini juga bisa dipake buat interpolasi ma ekstrapolasi. 

T:  apalagi tu? kalo interpolasi c gw tau dikit. yang kayak di anum kan? nge-fit titik-titik gitu pake polinom or fungsi2 lain..

J : yap.. interpolasi tu untuk smoothing, kalo ekstrapolasi buat cari nilai di luar rentang nilai data yang diketahui… istiahnya… prediction

T : hm,, 

J : bedanya dengan klasifikasi yang tadi, kalo klasifikasi yang tadi kan nilai targetnya berupa data kategorik (dia masuk ke kelas 1 kelas 2 dst…), kalo smoothing ma prediction itu  nilai targetnya kuantitatif.. bingung?

T :  he em uy..

J  :  sama.. hehehe… nti kalo sempet kita bahas lagi… yawdah. otak gw dah ngebul ni. udahan dulu ye..

T :  ok makasi. kapan-kapan kita nge-gosip lagi ya…!!

 

* mohon rujuk kembali ke sumber yang lebih terpercaya… he.. :) *

9 Respon untuk Ngomongin K-Nearest Neighbor

  1. wah..wah ziza sempat-sempatnya nulis blog catatan kuliah… liburan ya za ga ada kerjaan. aku malah amnesia dengan tugas-tugas kuliah…. di rumah bawaannya tidur dan maen terus. mumpung liburan he…

  2. mba salam kenal..
    aku puji,, oh jadi kalo knn itu supervised ya,
    kalo k means unsupervised kan
    nah tau tentang v fold cross validation ga mba????
    Maksihhhhhh

  3. @Puji: wah maaf ru bales.. iya kalo k-means unsupervised… k-fold cross validation setau sy salah satu metode untuk menguji akurasi.. nanti kali ya lengkapnya cerita2 lagi…
    @anakkebo: di plot aja grafiknya..he..he..

  4. w tanya donk??w ada rumus d2(x,y)={(x-y)pangkat T(I+Dwwpangkat T)(x-y)}pangkat 1/2
    maaf katro ditulis kyk gini rumusnya

    w ngk tau x itu apa, y itu apa?mgkn dari grafik ya? trus T,I, ama Dww itu apa??

    w mohon banget bantuannya??

  5. w mo tanya donk??

    ad artikel credit scoring memakai metode knn, nah disitu ad rumus :
    d(x,y)={(x-y)pangkat T(I+Dwwpangkat T)(x-y)}pangkat 1/2

    maaf katro w nulis rumusnya,,,

    w ngk ngerti nama2 variabel ini I untuk apa Dww untuk apa??
    mohon penjelasannya???

    terima kasih atas bantuannya

Tinggalkan Balasan

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Ubah )

Twitter picture

You are commenting using your Twitter account. Log Out / Ubah )

Facebook photo

You are commenting using your Facebook account. Log Out / Ubah )

Connecting to %s