Anda di halaman 1dari 17

KATA PENGANTAR

Assalamualaikum Wr. Wb.

Segala puji bagi Allah SWT yang telah memberikan rahmat dan karunia-
Nya, sehingga penyusun dapat menyelesaikan tugas makalah mengenai Nearest
Neighbors dengan sebaik mungkin. Makalah ini disusun untuk memenuhi tugas
Machine Learning yang bertujuan untuk mempelajari lebih dalam dan mengetahui
Nearest Neighbors. Saya mencoba menyajikan makalah ini dengan berbagai
sumber yang kami dapatkan dari kegiatan belajar selama perkuliahan berlangsung
juga referensi dari buku dan teman teman, selain itu Saya mencari materi dari
media cetak dan Teknologi Informasi, yakni internet.

Saya menyadari dalam penyusunan makalah ini terdapat banyak


kekurangan, maka dari itu kami mengharapkan pembaca dapat memberikan kritik
dan saran yang bersifat membangun, sehingga di hari kemudian penyusunan
makalah kami dapat lebih baik.

Dan akhirnya, penyusun mengucapkan rasa terima kasih kepada bapak


Atthariq sebagai dosen pengajar yang memberikan bimbingan juga teman teman
yang telah memberikan semangat dan dukungannya. Semoga makalah ini dapat
memberikan wawasan yang lebih luas kepada pembaca.

Wassalamualaikum Wr. Wb.

Lhokseumawe, 07 Mei 2014

Hormat kami

Penyusun

i
DAFTAR ISI

KATA PENGANTAR ............................................................................................. i


DAFTAR ISI ........................................................................................................... ii
DAFTAR GAMBAR ............................................................................................. iii
DAFTAR TABEL .................................................................................................. iv
BAB I PENDAHULUAN ....................................................................................... 2
A. Latar Belakang ......................................................................................... 2
B. Tujuan Penulisan ...................................................................................... 2
C. Manfaat Penulisan .................................................................................... 2
BAB II PEMBAHASAN ........................................................................................ 3
A. Pengertian Nearest Neighbor ................................................................... 3
B. Algoritma 1 - Nearest Neighbor (1-NN) .................................................. 4
C. Algoritma k - Nearest Neighbor (k-NN) .................................................. 5
D. Contoh Kasus Penyelesaian Menggunakan Nearest Neighbor ................ 8
BAB III PENUTUP .............................................................................................. 13
A. Kesimpulan ............................................................................................. 13
DAFTAR PUSTAKA ........................................................................................... 14

ii
DAFTAR GAMBAR

Gambar 2.1. ilustrasi kasus 1-NN ........................................................................... 4

iii
DAFTAR TABEL

Tabel 2.1. Tabel Kasus ............................................................................................ 8


Tabel 2.2. Definisi Bobot Atribut ........................................................................... 8
Tabel 2.3. Kedekatan Nilai Atribut Jenis Kelamin ................................................. 8
Tabel 2.4. Kedekatan Nilai Atribut Pendidikan ...................................................... 9
Tabel 2.5. Kedekatan Nilai Atribut Status .............................................................. 9

iv
BAB I

PENDAHULUAN

A. Latar Belakang

Klasifikasi adalah proses untuk menemukan model atau fungsi yang


menjelaskan atau membedakan konsep atau kelas data, dengan tujuan untuk
dapat memperkirakan kelas dari suatu objek yang labelnya belum diketahui.
Model itu sendiri dapat berupa aturan jika-maka, berupa decision tree,
formula matematis atau neural network. Salah satu metode klasifikasi yaitu
Nearest Neighbor.

B. Tujuan Penulisan

Tujuan penulisan makalah ini adalah untuk memenuhi salat satu tugas dari
matakuliah Machine Learning. Selain itu, penulisan makalah ini juga
memiliki tujuan :

Untuk memahami algoritma Nearest Neighbor


Untuk memahami penggunaan algoritma Nearest Neighbor
Untuk memahami kelebihan dan kelemahan menggunakan algoritma
Nearest Neighbor

C. Manfaat Penulisan

Penulisan makalah ini diharapkan dapat memberikan manfaat bagi penulis


khususnya serta bagi para pembaca pada umumnya. Diharapkan dengan
membaca makalah ini dapat memberikan pengetahuan mengenai pohon
keputusan.

2
BAB II

PEMBAHASAN

A. Pengertian Nearest Neighbor

Algoritma Nearest Neighbor (NN) merupakan algoritma pendekatan untuk


mencari kasus dengan menghitung kedekatan antara kasus baru dengan kasus
lama yaitu berdasarkan pencocokan bobot dari sejumlah atribut yang ada
(Kusrini & Emha, 2009). Nearest Neighbor akan mengklasifikasikan hanya
jika atribut dari kasus baru sesuai dengan salah satu atribut pada kasus lama
(Ricci, F et al., 2010). Perhitungan jarak kedekatan antara kasus baru dengan
kasus lama biasanya memakai metrik jarak. Satuan jarak yang umumnya
digunakan adalah euclidian.

Algoritma Nearest Neighbor (NN) memiliki nama lain, yaitu:

1. lazy algorithm
2. memory-based
3. instance-based
4. exemplar-based
5. case-based
6. experience-based

Jenis algoritma Nearest Neighbor ada 2, yaitu:

1. 1-NN, yaitu pengklasifikasikan dilakukan terhadap 1 labeled data


terdekat.
2. K-NN, yaitu pengklasifikasikan dilakukan terhadap k labeled data
terdekat dengan k>1.

3
B. Algoritma 1 - Nearest Neighbor (1-NN)

1-Nearest Neighborhood (1-NN) adalah suatu metode yang menggunakan


sebuah labeled data terdekat. Langkah-langkah untuk menghitung algoritma
1-NN:

1. Menghitung jarak antara data baru ke setiap labeled data


2. Menentukan 1 labeled data yang mempunyai jarak yang paling
minimal
3. Mengklasifikasikan data baru ke dalam labeled data tersebut.

Berikut ini adalah ilustrasi algoritma 1-NN:

Gambar 2.1. ilustrasi kasus 1-NN

Pada ilustrasi diatas, data baru (node warna biru) akan diklasifikaikan ke
dalam kelompok hipertensi dan tidak hipertensi. Dari kelima data yang
tersebar dalam kelompok hipertensi dan tidak hipertensi, data input (node
biru) lebih dekat dengan salah satu pada kelompok hipertensi. Dengan

4
demikian, dapat disimpulkan bahwa data baru tersebut termasuk ke dalam
kelompok hipertensi.

Rumus euclide distance yang digunakan dalam metode 1-NN untuk


mengambil keputusan dengan menghitung jarak terpendek antara input
dengan masing-masing data yang penentuan bobot atau label dilakukan
secaraacak atau random yaitu:

(2.1)

C. Algoritma k - Nearest Neighbor (k-NN)

k-Nearest Neighborhood (k-NN) adalah suatu metode yang menggunakan


algoritma supervised dimana hasil dari query instance yang baru
diklasifikasikan berdasarkan mayoritas dari label class pada k-NN. Tujuan
dari algoritma k-NN adalah mengklasifikasikan objek baru berdasarkan
atribut dan training data.

Algoritma k-NN bekerja berdasarkan jarak terpendek dari query instance


ke training data untuk menentukan k-NN-nya. Salah satu cara untuk
menghitung jarak dekat atau jauhnya tetangga menggunakan metode
euclidian distance.

Ecludian Distance sering digunakan untuk menghitung jarak. Euclidian


Distance berfungsi menguji ukuran yang bisa digunakan sebagai interpretasi
kedekatan jarak antara dua obyek, di bawah ini merupakan rumus Ecludian
Distance:

(2.2)

Dimana,
Xik = nilai X pada training data

5
Xjk = nilai X pada testing data
m = batas jumlah banyaknya data

Jika hasil nilai dari rumus di atas besar maka akan semakin jauh tingkat
keserupaan antara kedua objek dan sebaliknya jika hasil nilainya semakin
kecil maka akan semakin dekat tingkat keserupaan antar objek tersebut.
Objek yang dimaksud adalah training data dan testing data.

Dalam algoritma ini, nilai k yang terbaik itu tergantung pada jumlah data.
Ukuran nilai k yang besar belum tentu menjadi nilai k yang terbaik begitupun
juga sebaliknya.

Langkah-langkah untuk menghitung algoritma k-NN:

1. Menentukan nilai k.
2. Menghitung kuadrat jarak euclid (query instance) masing-masing objek
terhadap training data yang diberikan.
3. Kemudian mengurutkan objek-objek tersebut ke dalam kelompok yang
mempunyai jarak euclid terkecil.
4. Mengumpulkan label class Y (klasifikasi Nearest Neighborhood).

Pada fase pembelajaran, algoritma ini hanya melakukan penyimpanan


vektor-vektor fitur dan klasifikasi dari data pembelajaran. Pada fase
klasifikasi, fitur-fitur yang sama dihitung untuk data test (yang klasifikasinya
tidak diketahui). Jarak dari vektor yang baru ini terhadap seluruh vektor data
pembelajaran dihitung, dan sejumlah k buah yang paling dekat diambil. Titik
yang baru klasifikasinya diprediksikan termasuk pada klasifikasi terbanyak
dari titik-titik tersebut.

Nilai k yang terbaik untuk algoritma ini tergantung pada data; secara
umumnya, nilai k yang tinggi akan mengurangi efek noise pada klasifikasi,
tetapi membuat batasan antara setiap klasifikasi menjadi lebih kabur. Nilai k
yang bagus dapat dipilih dengan optimasi parameter, misalnya dengan

6
menggunakan cross-validation. Kasus khusus di mana klasifikasi
diprediksikan berdasarkan data pembelajaran yang paling dekat (dengan kata
lain, k = 1) disebut algoritma nearest neighbor.

Ketepatan algoritma k-NN ini sangat dipengaruhi oleh ada atau tidaknya
fitur-fitur yang tidak relevan, atau jika bobot fitur tersebut tidak setara dengan
relevansinya terhadap klasifikasi. Riset terhadap algoritma ini sebagian besar
membahas bagaimana memilih dan memberi bobot terhadap fitur, agar
performa klasifikasi menjadi lebih baik.

Terdapat beberapa jenis algoritma pencarian tetangga terdekat, diantaranya:

Linear scan
Pohon kd
Pohon Balltree
Pohon metrik
Locally-sensitive hashing (LSH)

Kelebihan k-NN
Algoritma k-NN ini memiliki konsistensi yang kuat. Ketika jumlah
data mendekati tak hingga, algoritma ini menjamin error rate yang
tidak lebih dari dua kali Bayes error rate (error rate minimum
untuk distribusi data tertentu).
k-NN tangguh terhadap training data yang noisy dan efektir apabila
data latihnya beesar
Kelemahan k-NN
k-NN perlu menentukan nilai dari parameter k (jumlah dari
tetangga terdekat)
Pembelajaran berdasarkan jarak tidak jelas mengenai jenis jarak
apa yang harus digunakan dan atribut mana yangg harus digunakan
untuk mendapatkan hasil yang terbaik
Biaya komputasi cukup tinggi karena diperlukan perhitungan jarak
dari tiap sample uji pada keseluruhan sample latih.

7
D. Contoh Kasus Penyelesaian Menggunakan Nearest Neighbor

Contoh kasus ini akan memberikan sebuah contoh untuk penyelesaian


kasus menggunakan Nearest Neighbor.

Kasus :
Kemungkinan seorang nasabah bank akan bermasalah dalam
pembayarannya atau tidak.
Tabel 2.1. Tabel Kasus
No Jenis Kelamin Pendidikan Status Bermasalah
1 Laki-Laki S1 Bekerja Ya
2 Perempuan SMA Tidak Bekerja Tidak
3 Laki-Laki SMA Bekerja Tidak
4 Perempuan S2 Bekerja Ya

Atribut Bermasalah merupakan atribut tujuan.

Bobot antara satu atribut dengan atribut yang lain pada atribut bukan
tujuan dapat didefinisikan dengan nilai berbeda.

Tabel 2.2. Definisi Bobot Atribut


Atribut Bobot
Jenis Kelamin 0.5
Pendidikan 1
Status 0.75

Kedekatan antara nilai-nilai dalam atribut juga perlu didefinisikan.

Tabel 2.3. Kedekatan Nilai Atribut Jenis Kelamin


Jenis Kelamin L P
Laki-Laki 1 0
Perempuan 0 1

Nilai1 Nilai2 Kedekatan


Laki-Laki Laki-Laki 1
Perempuan Perempuan 1
Laki-Laki Perempuan 0
Perempuan Laki-Laki 0

8
Tabel 2.4. Kedekatan Nilai Atribut Pendidikan
Pendidikan SMA S1 S2
SMA 1 0.5 0
S1 0.5 1 0.5
S2 0 0.5 1

Nilai1 Nilai2 Kedekatan


S2 S2 1
S2 S1 0.5
S2 SMA 0
S1 S1 1
S1 S2 0.5
S1 SMA 0.5
SMA SMA 1
SMA S1 0.5
SMA S2 0

Tabel 2.5. Kedekatan Nilai Atribut Status


Status Bekerja Tidak Bekerja
Bekerja 1 0
Tidak Bekerja 0 1

Nilai1 Nilai2 Kedekatan


Bekerja Bekerja 1
Tidak Bekerja Tidak Bekerja 1
Bekerja Tidak Bekerja 0
Tidak Bekerja Bekerja 0

Misalkan ada kasus nasabah baru dengan nilai atribut:

Jenis Kelamin : Laki-Laki

Pendidikan : SMA

Status : Tidak Bekerja

Untuk memprediksi apakah nasabah tersebut akan bermasalah atau tidak dapat
dilakukan langkah-langkah sebagai berikut:

1. Menghitung kedekatan kasus baru dengan kasus no1.

Diketahui:

9
a : Kedekatan nilai atribut Jenis Kelamin (Laki-laki dengan
Laki-laki)
: 1
b : Bobot Atribut Jenis Kelamin
: 0.5
c : Kedekatan nilai atribut Pendidikan (SMA dengan S1)
: 0.5
d : Bobot Atribut Pendidikan
: 1
e : Kedekatan nilai atribut Status (Tidak Bekerja dengan
Bekerja)
: 0
f : Bobot Atribut Status
: 0.75

Dihitung:
(a * b) (c * d ) (e * f )
Jarak

bdf
(1 * 0.5) (0.5*1) (0* 0.75)
Jarak
0.5 1 0.75
1
Jarak
2.25
Jarak 0.44

2. Menghitung kedekatan kasus baru dengan kasus no 2.


Diketahui:
a : Kedekatan nilai atribut Jenis Kelamin (Laki-laki dengan
Perempuan)
: 0
b : Bobot Atribut Jenis Kelamin
: 0.5
c : Kedekatan nilai atribut Pendidikan (SMA dengan SMA)
: 1
d : Bobot Atribut Pendidikan
: 1
e : Kedekatan nilai atribut Status (Tidak Bekerja dengan
Bekerja)
: 1
f : Bobot Atribut Status
: 0.75

10
Dihitung:
(a * b) (c * d ) (e * f )
Jarak

bdf
(0 * 0.5) (1*1) (1* 0.75)
Jarak
0.5 1 0.75
1.75
Jarak
2.25
Jarak 0.778

3. Menghitung kedekatan kasus baru dengan kasus no 3.


Diketahui:
a : Kedekatan nilai atribut Jenis Kelamin (Laki-laki dengan
Laki-laki)
: 1
b : Bobot Atribut Jenis Kelamin
: 0.5
c : Kedekatan nilai atribut Pendidikan (SMA dengan SMA)
: 1
d : Bobot Atribut Pendidikan
: 1
e : Kedekatan nilai atribut Status (Tidak Bekerja dengan
Bekerja)
: 0
f : Bobot Atribut Status
: 0.75

Dihitung:
(a * b) (c * d ) (e * f )
Jarak

bdf
(1 * 0.5) (1*1) (1* 0.75)
Jarak
0.5 1 0.75
1.5
Jarak
2.25
Jarak 0.667

11
4. Menghitung kedekatan kasus baru dengan kasus no 4.
Diketahui:
a : Kedekatan nilai atribut Jenis Kelamin (Perempuan dengan
Laki-laki)
: 0
b : Bobot Atribut Jenis Kelamin
: 0.5
c : Kedekatan nilai atribut Pendidikan (SMA dengan S2)
: 0
d : Bobot Atribut Pendidikan
: 1
e : Kedekatan nilai atribut Status (Tidak Bekerja dengan
Bekerja)
: 0
f : Bobot Atribut Status
: 0.75

Dihitung:
(a * b) (c * d ) (e * f )
Jarak

bdf
(0 * 0.5) (0 * 1) (0 * 0.75)
Jarak
0.5 1 0.75
0
Jarak
2.25
Jarak 0

5. Memilih kasus dengan kedekatan terdekat.


Dari langkah 1, 2 dan 3 dapat diketahui bahwa nilai tertinggi
adalah kasus 2. Berarti kasus yang terdekat dengan kasus baru
adalah kasus 2.
6. Menggunakan klasifikasi dari kasus dengan kedekatan terdekat.
Berdasarkan hasil pada langkah 4, maka klasifikasi dari kasus 2
yang akan digunakan untuk memprediksi kasus baru. Yaitu
kemungkinan nasabah baru akan Tidak Bermasalah

12
BAB III
PENUTUP

A. Kesimpulan

Pada metode nearest neighbor semua kasus akan terklasifikasi meskipun


nilai kedekatannya belum tentu 100%. Namun hasil klasifikasi tidak dapat
dijamin kebenarannya karena banyak kasus yang memiliki kedekatan yang
sama dengan beberapa klasifikasi yang berbeda

Keakuratan pencarian kasus lama sangat dipengaruhi oleh penentuan


bobot perbandingan. Dengan menggunakan metode nearest neighbor, proses
testing memerlukan waktu yang lama karena setiap kasus baru akan
dicocokkan dengan semua kasus lama.

Pra proses pada metode nearest neighbor lebih banyak dikarenakan


perlunya penambahan proses penentuan bobot variabel dan penentuan bobot
perbandingan antara nilai_variabel.

13
DAFTAR PUSTAKA

Kusrini, Hartati, S.,. 2007. Penggunaan Penalaran Berbasis Kasus untuk


Membangun Basis Pengetahuan dalam Sistem Diagnosis Penyakit. Proceeding
Seminar Riset Teknologi Informasi (SRITI) 2007. Yogyakarta

Shouman, Mai; Turner, Tim; Stocker, Rob. 2012. Applying K-Nearest Neighbor
in Diagnosing Heart Disease Patients. International Journal of Information
Technology. Vol 2 No 3, June 2012.

Prasetyo, Eko. 2012. Fuzzy K-Nearest Neighbor In Every Class Untuk Klasifikasi
Data. Seminar nasional Teknik Informatika (SANTIKA 2012). Universitas
Pembangunan Nasional Veteran Jawa Timur

14

Anda mungkin juga menyukai