NEIGHBOR (K-NN)
Yugo Yudansha Luhulima1), Drs. Marji, MT.2), Lailil Muflikhah, S.Kom, M.Sc.2)
1)Mahasiswa, 2)Dosen Pembimbing
Program Studi Teknik Informatika
Program Teknologi Informasi dan Ilmu Komputer
Universitas Brawijaya, Malang 65145, Indonesia
email: yugoyudansha@gmail.com, marji@ub.ac.id, laililmf@gmail.com
Abstrak
Analisis sentimen merupakan salah satu cabang skripsi pada domain Text Mining atau penggalian data berupa teks,
yang diantaranya terdapat proses mengolah dan mengekstrak data tekstual secara otomatis untuk mendapatkan
informasi. Manfaat analisis sentimen dalam dunia usaha antara lain untuk melakukan pemantauan terhadap sebuah
produk. Analisis sentimen dapat digunakan sebagai alat bantu untuk melihat respon konsumen atau masyarakat
terhadap suatu produk tertentu, sehingga dapat segera diambil langkah-langkah strategis berikutnya. Proses pada
analisis sentimen diawali dengan preprocessing, dilanjutkan dengan pembobotan kata, kemudian penghitungan cosine
similarity, dan klasifikasi.
Preprocessing terdiri dari beberapa tahap yaitu cleansing, tokenizing, stopword removal, dan stemming. Metode
pembobotan kata yang digunakan pada skripsi ini adalah Term Frequecny Inverse Document Frequency (TF-IDF) dan
menggunakan K-Nearest Neighbor (KNN) sebagai metode klasifikasinya. K-Nearest Neighbor (KNN) adalah suatu metode
pengklasifikasian berdasarkan mayoritas dari kategori. Metode ini bertujuan untuk mengklasifikasi objek baru
berdasarkan atribut dan training sample.
Pengujian akurasi dari analisis sentimen pada review barang berbahasa Indonesia dengan metode K-Nearest Neighbor
(KNN) menghasilkan rata-rata akurasi sebesar 59,160 % dan nilai tertinggi akurasi sebesar 76,19048 %.
Kata kunci: Analisis Sentimen, Text Mining, K-Nearest Neighbor (KNN)
Abstract
Sentiment analysis is a branch of research in text mining or data mining domain, which contains process and extract textual
data automatically to obtain information. One of the benefit of sentiment analysis in the business world is for monitoring a product.
Sentiment analysis can be used as a tool to see customer response or a particular community to a product, so the next strategic steps
can be taken. The process of sentiment analysis begins with the preprocessing, followed by a weighting word, then cosine similarity
calculation and classification.
Preprocessing consist of several steps, cleansing, tokenizing, stopword removal, and stemming. Term weighting method used in
this research is Term Frequency Inverse Document Frequency (TF-IDF) and using K-Nearest Neighbor (KNN) as the
classification method.K-Nearest Neighbor (KNN) is a classification method based on the category majority. This method aims to
classify new object based on attribute and training sample.
The accuracy testing of sentiment analysis of product review in Indonesian using K-Nearst Neighbor (KNN) obtained 59,160%
as the average of accuracy and the highest accuracy is 76,19048%.
Keyword: Sentiment Analysis, Text Mining, K-Nearest Neighbor (KNN)
1. PENDAHULUAN
Latar Belakang
Perdagangan pada internet atau aktivitas jual beli
sudah banyak dilakukan dan menjadi pilihan untuk
bertransaksi. Aktifitas ini juga disebut e-commerce. Ecommerce sendiri terdiri dari berbagai sistem yang
menjadikan proses jual beli terjadi. Sistem bisa
menjadikan e-commerce menjadi lebih cepat, tepat,
menarik dan aman untuk bertransaksi didalam dunia
maya. Informasi yang dihasilkan dan beredar melalui
duna maya ini sangat bebas dan beragam seperti berita,
pertanyaan, opini, komentar, kritik baik yang bersifat
positif maupun negatif. Kita dapat melihat bagaimana
pendapat orang lain terhadap suatu permasalahan
melalui analisis sentimen, sehingga dapat membantu
kita dalam mengambil sebuah keputusan dengan lebih
cepat dan tepat.
Rumusan Masalah
Berdasarkan
pada permasalahan yang telah
dijelaskan pada bagian latar belakang, maka rumusan
masalah dapat disusun sebagai berikut:
1. Bagaimana implementasi dari pengembangan
aplikasi sentiment analysis pada review barang
dengan metode K-Nearest Neihbor.
2. Berapa tingkat akurasi yang dihasilkan dari
percobaan pada skripsi sentiment analysis ini.
Tujuan
Tujuan yang ingin dicapai dari pembuatan skripsi
ini adalah menerapkan metode klasifikasi K-Nearest
Neighbor pada analisis sentimen review barang
berbahasa Indonesia dan mengetahui tingkat akurasi
dari skripsi ini.
Preprocessing
Pemrosesan teks merupakan proses menggali,
mengolah, mengatur
informasi dengan cara
menganalisis hubungannya, aturan-aturan yang ada di
data tekstual semi terstruktur atau tidak terstruktur.
Untuk lebih efektif dalam proses pemrosesan dilakukan
langkah transformasi data ke dalam suatu format yang
memudahkan untuk kebutuhan pemakai. Proses ini
disebut preprosesing dokumen. Setelah dalam bentuk
yang lebih terstruktur dengan adanya proses diatas
data dapat dijadikan sumber data yang dapat di olah
lebih lanjut.Proses
preprocessing meliputi proses Cleansing, Parsing,
Tokenizing,
Filtering/Stopword
Removal,
dan
Stemming.
Manfaat
Penulisan skripsi ini diharapkan mempunyai
manfaat yang baik dan berguna bagi pembaca dan
penulis. Adapun manfaat yang diharapkan adalah
sebagai berikut:
1. Bagi Penulis
a. Menerapkan ilmu yang telah diperoleh dari
Program Teknologi Informasi dan Ilmu
Komputer Universitas Brawijaya.
b. Mendapatkan pemahaman tentang perancangan
dan pengembangan skripsi Sentiment analysis
pada review barang dengan metode K-Nearest
Neighbor.
2. Bagi Pengguna
dan
pemrosesan
teks
(text
K-Nearest Neighbor
K-Nearest Neighbor (KNN) adalah suatu metode
pengklasifikasian berdasarkan mayoritas dari kategori.
Metode ini bertujuan untuk mengklasifikasi objek baru
berdasarkan atribut dan training sample. Diberikan
suatu titik query, selanjutnya akan ditemukan sejumlah
K objek atau titik training yang paling dekat dengan
titik query. Nilai prediksi dari query akan ditentukan
berdasarkan klasifikasi tetanggaan [1].
Pada metode ini selain memiliki kelebihan seperti
tangguh terhadap training data yang noisy dan efektif
apabila training data berjumlah besar, juga mempunyai
beberapa kekurangan diantaranya perlu ditentukan
nilai K yang paling optimal yang menyatakan jumlah
tetangga terdekat dan biaya komputasi yang cukup
tinggi karena perhitungan jarak harus dilakukan pada
setia query instance secara bersama-sama dengan
seluruh instan dari training sample.
TF-IDF
Metode TF-IDF ini merupakan metode pembobotan
dalam bentuk sebuah metode yang merupakan
integrasi antar term frequency (TF), dan inverse document
frequency (IDF). Metode TF-IDF dapat dirumuskan
sebagai berikut:
w ( t , d ) tf ( t , d ) idf ,
idf log(
(1)
(2)
),
df
sumber: [7]
dimana tf ( t , d ) kemunculan kata t pada dokumen
d, N adalah jumlah dokumen pada kumpulan
dokumen, dan df adalah jumlah dokumen yang
mengandung term t.
Fungsi metode ini adalah untuk mencari
representasi nilai dari tiap-tiap dokumen dari suatu
kumpulan data training (training set) dimana nantinya
akan dibentuk suatu vektor antara dokumen dengan
kata (documents with terms) yang kemudian untuk
kesamaan antar dokumen dengan cluster akan
ditentukan oleh sebuah prototype vektor yang disebut
juga dengan cluster centroid [7].
sumber: [6]
Dimana SIMmax(X) adalah nilai kemiripan
dokumen X yang paling tinggi. SIM(X,dj) adalah nilai
kemiripan antara dokumen X dengan dokumen latih d.
Sedangkan maxdT SIM(X,dj) adalah nilai maksimum
kemiripan dokumen X dengan dokumen d yang
merupakan bagian dari dokumen latih T [10].
Jika digunakan k>1, maka penentuan kategorinya
adalah dengan menjumlahkan semua nilai kemiripan
SIM(X,dj) yang termasuk dalam suatu kategori.
Perhitungan dilakukan dengan persamaan 2.2.
Dokumen X masuk ke dalam kategori yang memiliki
nilai P(X, Cm) paling besar [9].
(
)
(
) (
).
(5)
sumber: [6]
) (
(3)
)
sumber: [9]
dimana X adalah dokumen uji, dj dokumen training, xi
dan dji adalah nilai bobot yang diberikan pada setiap
term pada dokumen.
Kedekatan query dan dokumen diindikasikan
dengan sudut yang dibentuk. Nilai cosinus yang
cenderung besar mengindikasikan bahwa dokumen
cenderung sesuai query. Dalam proses membandingkan
dokumen yang sesuai dengan dokumen yang telah ada
atau dokumen lainnya, maka digunakan perhitungan
dengan rumus pada persamaan (3) untuk mengetahui
angka similaritas dari dokumen tersebut.
Keterangan:
P(x,cm)
: probabilitas dokumen X menjadi
anggota kategori cm
sim(x,dj)
: kemiripan antara dokumen X
dengan dokumen latih dj
y(dj.cm )
: fungsi atribut dari sebuah kategori
yang memenuhi
3
Secara umum, langkah-langkah dari metode KNearest Neighbor (KNN) adalah sebagai berikut [11]:
1. Menentukan parameter K (jumlah tetangga
paling dekat)
2. Menghitung kuadrat jarak euclidean (query
instance) masing-masing objek terhadap data
sampel yang diberikan
3. Mengurutkan objek-objek tersebut ke dalam
kelompok yang mempunyai jarak euclidean
terkecil
4. Mengumpulkan kategori klasifikasi nearest
neighbor
5. Dengan menggunakan kategori nearest
neighbor yang paling mayoritas maka dapat
diprediksikan nilai query instance yang telah
dihitung.
Input
User 1
Sistem
User 2
Input
Preprocessing
(Crawling,
Parsing,stopword
removal,
Stemming)
Pembobotan (TFIDF)
Pengklasifikasian
(K-Nearest
Neighbor)
Start
Input link
berupa html
dari website
Preprocessing
Pembobotan
Term
Analisis Kebutuhan
Aplikasi yang akan dibuat pada skripsi ini adalah
aplikasi yang digunakan untuk analisis sentimen pada
review barang berbahasa Indonesia. Sistem yang akan
dibuat mempunyai fungsi-fungsi sebagai berikut:
1.
Perangkat lunak harus mampu melakukan
proses preprocessing, yakni berupa cleansing,
tokenizing, penghilangan kata stopwords dan
stemming.
2.
Perangkat lunak harus mampu melakukan
proses pembobotan berdasarkan metode yang
akan digunakan.
3.
Perangkat lunak harus mampu menghasilkan
hasil analisis sentimen review berdasarkan
klasifikasi dari proses yang telah dilakukan.
Pengklasifikasian
dokumen (term)
sesuai sentimen
Hasil
sentimen
End
Arsitektur Sistem
Rancangan arsitektur sistem menggambarkan
kerangka dasar dari sistem yang akan dikembangkan.
Tahapan proses analisis sentimen pada review barang
berbahasa Indonesia dapat dilihat lebih jelas pada
gambar 1.
proses
selanjutnya
yaitu
klasifikasi
dengan
menggunakan
K-Nearest
Neighbor.
Gambar
5
menunjukkan diagram alir K-Nearest Neighbor.
Preprocessing
Start
Start (KNN)
Cleansing
Input: Hasil
pembobotan
term
Parsing
Hitung Similarity
antar dokumen
term
Tokenizing
Stopword
Removal
Tentukan nilai K
Stemming
Tentukan kelas
dokumen
Return
Simpan hasil
klasifikasi
Return
Stopword
Removal
Start
tn = t1
Cek tn =
Stopword list ?
True
Hapus Term tn
False
False
tn = tn+1
Return
Skenario
60
60
120
10
11
21
42.85714
50
50
100
10
11
21
10
52.38095
30
30
60
10
11
21
15
52.38095
15
15
30
10
11
21
20
61.90476
25
61.90476
No
76.19048
10
66.66667
15
61.90476
57.14286
20
71.42857
10
61.90476
25
61.90476
15
61.90476
20
66.66667
25
61.90476
No
No
No
71.42857
10
66.66667
15
57.14286
20
61.90476
25
57.14286
Rata-rata Akurasi
(dalam persen)
80,000
Rata-rata
Akurasi (dalam
persen)
60,000
40,000
1
DAFTAR PUSTAKA
[1]
Indah Tri, R. 2010. Pembuatan Judul Otomatis
Dokumen
Berita
Berbahasa
Indonesia
Menggunakan Metode K-Nearest Neighbor. Prodi
Ilmu Komputer, Universitas Brawijaya
[2]
Manning C. D. and Schutze H., 1999.
Foundations of Statistical Natural Language
Processing [M]. Cambridge: MIT Press.
[3]
Bo Pang and Lilian Lee. 2008. Opinion Mining
and Sentiment Analysis, Foundations and Trends in
Information Retrieval, vol. Volume 2, no. Issue 1-2,
pp. 1-135.
[4]
Bing Liu. 2010. Sentiment Analysis and
Subjectivity, in Handbook of Natural Language
Processing.
[5]
Robertson, S.
2004.
Understanding
Inverse Document Frecuency : On Theoretical
argument for IDF. Journal of Documentation.
[6]
Yiming Yang, Jaime G.Carbonell, Rulf D. Brown,
Thomas Pierce, Brian T. Achibald, Xin Liu. 1999.
Learning Approaches for Detecting and Tracking
News Events. IEEE Intelligent Systems, Language
Techlonolies
Institute,
Carbegie
Mellon
University.
[7]
Yong Z, Youwen L, Xhixion X. 2009. An Improved
kNN Text Classification Algotihm based on
Clustering, J+ournal of Computers, Vol. 4, No. 3.
Conference on Neural Information Processing.
[8]
Baoli, Li., Shiwen, Yu., dan Qin, Lu. 2003. An
Improved
k-Nearest
Neighbors
for
Text
Categorization. To appear in the Proceedings of the
20th International Conference of Computer
Processing of Oriental Language.
[9]
Yong Z, Youwen L, Xhixion X. 2009. An Improved
kNN Text Classification Algotihm based on
Clustering, J+ournal of Computers, Vol. 4, No. 3.
Conference on Neural Information Processing.
[10] Bergo, Alexander. 2001. Text Categorization and
Prototypes
http://www.illc.uva.nl/Publications/ResearchRep
orts/.MoL-2001-08.text.pdf.
Diakses
pada
tanggal 10 Februari 2013
[11] Widiarsana, I.G.A.O dkk. 2011. Data Mining:
Metode Klasifikasi K-Nearest Neighbor. Bali:
Teknik Elektro Universitas Udayana.
6. PENUTUP
Kesimpulan
Kesimpulan dari hasil skripsi sentimen analisis
pada review barang berbahasa Indonesia dengan
metode k-Nearest Neighbor (kNN) sebagai berikut:
1. Analisis sentimen pada review barang berbahasa
Indonesia dengan metode K-Nearest Neighbor
(KNN) dapat digunakan untuk mengklasifikasikan
sentimen dari dokumen review secara otomatis
dengan nilai k yang tepat.
2. Hasil rata-rata pengujian akurasi dari analisis
sentimen pada review barang berbahasa Indonesia
dengan metode k-Nearest Neighbor (kNN) adalah
59,160 % dan nilai tertinggi akurasi sebesar 76,19048
% ssehingga dapat disimpulkan bahwa efektivitas
sistem sudah berjalan dengan relatif baik.
Saran
Saran dari hasil skripsi analisis sentimen pada
review barang berbahasa Indonesia dengan metode K7