Kamis, 06 Juni 2019

Data Mining Classification (KNN (K-NEAREST NEIGHBOR)


Kali ini kita akan melakukan perhitungan DATA MINING CLASSIFICATION dengan Metode K-NN (K-Nearest Neighbor).

K-Nearest Neighbor (K-NN) adalah suatu metode yang menggunakan algoritma supervised dimana hasil dari sampel uji yang baru diklasifikasikan berdasarkan mayoritas dari kategori pada K-NN.
Tujuan dari algoritma ini adalah mengklasifikasi objek baru berdasakan atribut dan sampel latih. Pengklasifikasian tidak menggunakan model apapun untuk dicocokkan dan hanya berdasarkan pada memori. Diberikan titik uji, akan ditemukan sejumlah K objek (titik training) yang paling dekat dengan titik uji. Klasifikasi menggunakan voting terbanyak di antara klasifikasi dari K objek. Algoritma K-NN menggunakan klasifikasi ketetanggaan sebagai nilai prediksi dari sample uji yang baru. Dekat atau jauhnya tetangga biasanya dihitung berdasarkan jarak Eucledian distance.

Data yang akan kita gunakan kali ini yaitu Data survei kebahaigian/kepuasan masyarakat terhadap hidup dan layanan di kota Somerville  yang saya ambil dari UCI. Atau bisa di klik pada link ini : → https://archive.ics.uci.edu/ml/machine-learning-databases/00479/


Data yang kita gunakan adalah dimana Kota Somerville adalah kota yang terletak langsung di barat laut Boston, dan di timur Cambridge, di Middlesex County, Massachusetts, Amerika Serikat.
Mereka mengirimkan survei kebahagiaan ke sampel acak penduduk Somerville yang meminta mereka untuk menilai kebahagiaan pribadi dan kepuasan mereka dengan layanan kota tersebut.
Dalam data tersebut ada beberapa nilai yang digunakan, yaitu sebagai berikut :
D   = atribut keputusan (D) dengan nilai 0 (tidak bahagia) dan 1 (bahagia)
X1 = ketersediaan informasi tentang layanan kota
X2 = biaya perumahan
X3 = kualitas keseluruhan sekolah umum
X4 = kepercayaan Anda pada polisi setempat
X5 = pemeliharaan jalan dan trotoar
X6 = ketersediaan acara komunitas sosial

* atribut x1-x6 memiliki nilai 1-5

Datanya sebagai berikut :







Terdapat 143 data ,dan pada data ke 144 muncul data baru, disini kita akan menentukan data ke 144 masuk ke data yes/happy (1) atau no/unhappy (0).
Perhitungan manual yang pertama adalah :
1.      Kita mencari Eucledian Distance denan rumus :


Agar lebih mudah menentukan nya kita menggunakan perhitungan dari excel dan kita menggunakan 25 data sampel.
                                         
Hasilnya :


Untuk mencari eucledian untuk data 1 sampai 25 adalah




Dan seterusnya sampai data ke 25 . Nilai data ke n di kurang dengan data yang muncul.
Setelah data eucledian sudah ditemukan hasilnya, kemudian akan dicari jarak terdekat :

Diurutkan dari data terdekat dengan nilai 1 kemudian sampai data terjauh yaitu jarak ke 11.
Kemudian K disini kita menggunakan K=3, MAKA akan dihasilkan nilai berikut :



Data berwarna hijau adalah 3 urutan data terdekat, mengapa kita ambil 3 karena kita menggunakan K=3.


Kemudian kita lihat pada ke 3 urutan terdekat tersebut masuk ke dalam kategori apa.



Dihasilkan bahwa data unhappy ada 6 dan  happy ada 3, maka dapat disimpulkan BAHWA DATA KE 144 MASUK KE DALAM D=0/UNHAPPY, KARENA UNHAPPY > HAPPY.




Kemudian kita coba dengan K=5 , seperti berikut :






kita akan melihat 5 jarak terdekat dari data eucledian distance. Disini ada 7 happy dan 9 data unhappy, ,maka datanya akan sama dimana UNHAPPY > HAPPY , maka datanya ke 144 masuk ke data UNHAPPY. 

Setelah kita mendapatkan data dengan perhitungan manual, sekarang kita akan masuk ke dalam perhitungan aplikasi weka.
Data yang telah kita punya di excel kita save dengan ekstensi CSV seperti gambar berikut ini :

Save as type CSV (Comma delimited)

setelah di save, kemudian kita akan masuk ke aplikasi weka.

pilih explorer, kemudian pilih data yang akan kita gunakan dengan open file.

berikut adalah data yang sudah kita open, kemudian kita pilih classify ,


kemudian kita pilih choose , lalu lazy -> ibk :

setelahnya kita klik pada choose yang ada tulisan ibknya, kita masukan pada KNN = 3 seperti berikut :

kemudian OK dan klik start , hasilnya adalah seperti berikut :


kemudian kita coba dengan KNN=5 , sama seperti cara seperti di awal tadi, klik ibk di samping choose, masukkan KNN=5, maka hasilnya berikut :




berikut adalah hasil perhitungan WEKA data mining clasification dengan K-NEAREST NEIGHBOR.
Mohon maaf jika ada kekurangan dan salah kata yang sulit dimengerti, semoga ilmu yang telah saya bagikan dapat membantu teman-teman semua. Terimakasih ...👩👩🙏