Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
ANALISIS SENTIMEN REVIEW PRODUK KOSMETIK MELALUI KOMPARASI FEATURE SELECTION Dinar Ajeng Kristiyanti Teknik Informatika, STMIK Nusa Mandiri Jakarta Jl. Damai No.8 Warung Jati Barat (Margasatwa) Jakarta Selatan Email:
[email protected]
ABSTRACT Sentiment analysis is a computational study of the opinions, behaviors and emotions of people toward the entity. The entity describes the individuals, events or topics. That topics generally could be the review of diverse datasets, one of which is a product review. By reading the review of products based on the experiences of other consumers, it will be recognized the quality of a product. It goes without saying, as cosmetic products on the market today are very diverse, both in terms of type and brand. However, not all cosmetics have good quality in line with the needs of consumers and it is to be noticed by the consumer. Lately consumers who are writing their opinions, reviews and experiences through online is increasing. So, reexamination of the cosmetic product review by classifying these reviews into positive and negative class is an excellent way to determine the response of other consumers about the product quickly and accurately. Among of the techniques for classification mostly used by data classification is Support Vector Machine (SVM). SVM has the advantage of being able to identify the separated hyper plane that maximizes the margin between two different classes. However, SVM has a weakness for parameter selection or suitable features. Feature selection set up the parameters in SVM that significantly affects the results of classification accuracy. Feature selection also can be used to reduce the attributes that are less relevant to the dataset. To improve the previous research, this research uses the combined method of feature selection in Algorithm Support Vector Machine by comparing two-feature selection, namely Particle Swarm Optimization and Genetic Algorithm. It is in order to improve the accuracy of the classification of Support Vector Machine. Furthermore the research found the text classification in a positive or negative format from the cosmetic products review. Measurement is based on Support Vector Machine accuracy before and after adding the feature selection method. The evaluation was done by using 10 Fold Cross Validation. While the accuracy measurement is done by using the Confusion Matrix and ROC Curve. The results of integrated Support Vector Machine Algorithm and Feature Selection Algorithm, Particle Swarm Optimization indicate the best results with average accuracy 97.00% and the average AUC 0.988. While Genetic Algorithm show the best results with average accuracy 94.00% and average of AUC 0.984. As conclusion, the research of Support Vector Machine Algorithm showed the best accuracy improvement toward the integrated feature selection Particle Swarm Optimization with the increased accuracy from 89.00% to 97.00%. Keywords: Classification, Genetic Algorithm, Particle Swarm Optimization, Review Of Cosmetic Products, Support Vector Machine PENDAHULUAN Saat ini konsumen yang menulis opini dan pengalaman secara online semakin meningkat. Membaca review tersebut secara keseluruhan dapat memakan waktu, namun jika hanya sedikit review yang dibaca evaluasi akan menjadi bias. Beberapa review tentang produk kosmetik dapat membantu konsumen dalam mengetahui kualitas brand kosmetik tersebut layak atau tidak untuk digunakan. Produk kosmetik yang beredar di pasaran saat ini sangat beragam, baik dari segi jenis maupun brand. Namun tidak semua kosmetik memiliki kualitas yang baik sesuai kebutuhan konsumen dan hal ini yang harus diperhatikan oleh para konsumen. Sebelum konsumen memutuskan untuk membeli kosmetik sebaiknya konsumen mengetahui dengan detail produk yang akan dibeli, hal ini dapat dipelajari dari testimoni dan opini atau hasil review dari konsumen yang sudah membeli dan menggunakan produk tersebut ISBN 978-602-72850-0-2
sebelumnya. Klasifikasi sentimen bertujuan untuk mengatasi masalah ini dengan secara otomatis mengelompokkan review pengguna menjadi opini positif atau negatif [15]. Untuk itu perlunya pengkajian ulang tentang review produk kosmetik dengan cara pengklasifikasian review tersebut ke dalam class positif dan negatif agar pada akhirnya konsumen dapat mengetahui tanggapan konsumen lain tentang produk tersebut secara cepat dan tepat. Analisa sentimen atau opinion mining adalah studi komputasi mengenai pendapat, perilaku dan emosi seseorang terhadap entitas. Entitas tersebut dapat menggambarkan individu, kejadian atau topik. Topik tersebut kemungkinan besar dapat berupa review [10]. Teknik klasifikasi yang biasa digunakan untuk analisis sentimen review diantaranya Naïve Bayes, Support Vector Machine (SVM) dan K-Nearest Neighbor (KNN) [3]. Terdapat beberapa penelitian yang sudah dilakukan dalam melakukan klasifikasi sentimen terhadap review yang tersedia secara online 74
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia diantaranya, analisa sentimen pada review pengguna ponsel [14]. Analisa sentimen pada opini review film menggunakan pengklasifikasi Support Vector Machine dan Particle Swarm Optimization [1]. Klasifikasi sentimen pada review online tempat tujuan perjalanan menggunakan pengklasifikasi Naïve Bayes, Support Vector Machine dan Character Based N-gram Model [13]. Analisa sentimen pada review film dan beberapa produk dari Amazon.com menggunakan pengklasifikasi Support Vector Machine dan Artificial Neural Network [11]. Pengklasifikasian sentimen pada review restoran di internet yang ditulis dalam bahasa Canton menggunakan pengklasifikasi Naïve Bayes dan Support Vector Machine [15]. Analisa sentimen pada sosial media Republik Ceko menggunakan Supervised Machine Learning [5]. Dari beberapa teknik tersebut yang paling sering digunakan untuk klasifikasi data adalah Support Vector Machine (SVM). SVM merupakan metode supervised learning yang menganalisa data dan mengenali pola-pola yang digunakan untuk klasifikasi [1]. Support Vector Machine (SVM) adalah kasus khusus dari keluarga algoritma yang disebut sebagai regularized metode klasifikasi linier dan metode yang kuat untuk meminimalisasi resiko [12]. SVM memiliki kelebihan yaitu mampu mengidentifikasi hyperplane terpisah yang memaksimalkan margin antara dua kelas yang berbeda [2]. Namun Support Vector Machine memiliki kekurangan terhadap masalah pemilihan parameter atau fitur yang sesuai [1]. Pemilihan fitur sekaligus penyetingan parameter di SVM secara signifikan mempengaruhi hasil akurasi klasifikasi [16]. Dalam masalah aplikasi tertentu, tidak semua fitur ini sama pentingnya. Kinerja yang lebih baik dapat dicapai dengan membuang beberapa fitur. Dengan demikian, dapat dihilangkannya data yang noise, data yang tidak relevan dan berlebihan [16]. Particle Swarm Optimization (PSO) banyak digunakan untuk memecahkan masalah optimasi serta sebagai masalah seleksi fitur [9]. Dalam teknik Particle Swarm Optimization (PSO) terdapat beberapa cara untuk melakukan pengoptimasian diantaranya meningkatkan bobot atribut (attribute weight) terhadap semua atribut atau variabel yang dipakai, menyeleksi atribut (attribute selection) dan feature selection. Particle Swarm Optimization (PSO) adalah suatu teknik optimasi yang sangat sederhana untuk menerapkan dan memodifikasi beberapa parameter [1]. Salah satu metode wrapper yang bisa digunakan dalam pemilihan fitur adalah Genetic algorithm (GA). Genetic algorithm mudah disejajarkan dan telah digunakan untuk klasifikasi seperti masalah optimasi lainnya. Dalam data mining, algoritma genetika dapat digunakan untuk mengevaluasi fitness algoritma lainnya [4]. Pada penelitian ini algoritma Support Vector Machine dan algoritma Particle Swarm Optimization sebagai metode pemilihan fitur serta algoritma Support Vector Machine dan algoritma Genetic Algorithm sebagai metode pemilihan fitur akan ISBN 978-602-72850-0-2
diterapkan oleh peneliti dan akan peneliti bandingkan keduanya untuk mengklasifikasikan teks pada review produk kosmetik dalam rangka meningkatkan akurasi analisa sentimen. Situs web adalah wadah bagi beragam pendapat. Salah satu bentuk opini yang memiliki kredibilitas adalah review produk. Situs web seperti amazon.com mendorong pengguna untuk memberikan ulasan (review) [12]. Hasil penambangan teks dari review tersebut dapat diklasifikasikan dengan tiga kategori, yaitu positif, negatif dan netral. Sebagai contoh berikut adalah contoh review produk di amazon.com [12]:
Gambar 1. Prototipe Review Produk di amazon.com Setelah dianalisis melalui penambangan teks maka didapatkan decision rule pada klasifikasi review produk sebagai berikut [12]:
Gambar 2. Decision Rules pada Klasifikasi Review Produk di amazon.com Menurut Tang dalam [6], analisa sentimen pada review adalah proses menyelidiki review produk di internet untuk menentukan opini atau perasaan terhadap suatu produk secara keseluruhan. Menurut Thelwall [6], analisa sentimen diperlakukan sebagai suatu tugas klasifikasi yang mengklasifikasikan orientasi suatu teks ke dalam positif atau negatif. Menurut Mejova dalam [1], tujuan dari analisa sentimen adalah untuk menentukan perilaku atau opini dari seorang penulis dengan memperhatikan suatu topik tertentu. Perilaku bisa mengindikasikan alasan, opini atau penilaian, kondisi kecenderungan (bagaimana si penulis ingin mempengaruhi pembaca). Seleksi fitur adalah salah satu faktor yang paling penting yang dapat mempengaruhi tingkat akurasi klasifikasi karena jika dataset berisi sejumlah fitur, dimensi ruang akan menjadi besar, merendahkan tingkat akurasi klasifikasi [9]. Seleksi fitur mempengaruhi beberapa aspek yaitu pola klasifikasi, akurasi klasifikasi, waktu yang diperlukan untuk pembelajaran fungsi klasifikasi, jumlah contoh yang dibutuhkan untuk pembelajaran dan biaya yang terkait dengan fitur menurut Yang dan Honavar dalam [16]. Seleksi fitur merupakan proses optimasi untuk mengurangi satu set besar fitur besar sumber asli agar subset fitur yang relatif kecil yang signifikan
75
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia untuk meningkatkan akurasi klasifikasi cepat dan efektif. Particle Swarm Optimization (PSO) banyak digunakan untuk memecahkan masalah optimasi serta sebagai masalah seleksi fitur [9]. Optimasi adalah proses menyesuaikan kepada masukan atau karakteristik perangkat, proses matematis, atau percobaan untuk menemukan output minimum atau maksimum hasil. Input terdiri dari variabel, proses atau fungsi dikenal sebagai fungsi biaya, fungsi tujuan atau kemampuan fungsi dan output adalah biaya atau tujuan, jika proses adalah sebuah percobaan, kemudian variabel adalah masukan fisik untuk percobaan [7]. Dalam teknik Particle Swarm Optimization (PSO) terdapat beberapa cara untuk melakukan pengoptimasian diantaranya meningkatkan bobot atribut (attribute weight) terhadap semua atribut atau variabel yang dipakai, menseleksi atribut (attribute selection) dan feature selection. Particle Swarm Optimization (PSO) adalah suatu teknik optimasi yang sangat sederhana untuk menerapkan dan memodifikasi beberapa parameter [1]. Salah satu metode wrapper yang bisa digunakan dalam pemilihan fitur adalah Genetic algorithm (GA). Genetic algorithm mudah disejajarkan dan telah digunakan untuk klasifikasi seperti masalah optimasi lainnya. Dalam data mining, algoritma genetika dapat digunakan untuk mengevaluasi fitness algoritma lainnya [4]. Support Vector Machines (SVM) adalah seperangkat metode yang terkait untuk suatu metode pembelajaran, untuk kedua masalah klasifikasi dan regresi. Dengan berorientasi pada tugas, kuat, sifat komputasi yang mudah dikerjakan, SVM telah mencapai sukses besar dan dianggap sebagai state ofthe art classifier saat ini [8]. SVM merupakan metode supervised learning yang menganalisa data dan mengenali pola-pola yang digunakan untuk klasifikasi [1]. SVM memiliki kelebihan yaitu mampu mengidentifikasi hyperplane terpisah yang memaksimalkan margin antara dua kelas yang berbeda [2]. Namun Support Vector Machine memiliki kekurangan terhadap masalah pemilihan parameter atau fitur yang sesuai [1]. Pemilihan fitur sekaligus penyetingan parameter di SVM secara signifikan mempengaruh hasil akurasi klasifikasi [16]. Berikut adalah beberapa penelitian yang menggunakan algoritma Support Vector Machine sebagai pengklasifikasian dalam klasifikasi teks sentimen pada review online yang digunakan peneliti sebagai perbandingan tinjauan studi terdahulu, sebagai berikut:
Pre Processing
Judul
Opinion Mining
of
a. Filter Data
ISBN 978-602-72850-0-2
Feature Selection a. ase
Classifier
Accuracy
Tabel 1. Tinjauan Studi Penelitian Terkait
Support Vector
76,2 0%
Movie b. Data Review using Cleansing Hybrid c. Extract to Method of Text File Support Vector Machine and Particle Swarm Optimization [1]
Normaliz ation
Machine (SVM)
b. okenizatio n c. temming d. enerate N-Grams e. article Swarm Optimizat ion (PSO)
Optimizing a. parameters nitialize of support competitiv vector e machine template using fast b. messy genetic robabilisti algorithm for call dispute initializati classification on [2] Sentiment Converted classification all of online characters reviews to to lowercase travel destinations by supervised machine learning approaches [13] Model yang a. diusulkan okenizatio n b. enerate NGram c. temming
a. hreshold selection b.
Support Vector Machine (SVM)
89,3 0%
Support Vector Machine (SVM)
73,9 7%
Support Vector Machine (SVM)
?
uilding blocks filter c. enetic Alghorith m NGrams
a. article Swarm Optimizat ion (PSO) b. enetic Algorithm (GA)
Penelitian ini dimulai dari adanya masalah dalam klasifikasi teks pada review produk menggunakan pengklasifikasi Support Vector Machine (SVM), dimana pengklasifikasian tersebut memiliki kekurangan terhadap masalah pemilihan parameter yang sesuai, karena dengan tidak sesuainya sebuah pengaturan parameter dapat menyebabkan hasil klasifikasi menjadi rendah. Sumber data yang digunakan dalam penelitian ini yaitu mengambil data review produk kosmetik pada situs penyedia review produk yang didapat dari www.amazon.com yang terdiri dari 100 review positif dan 100 review negatif. Preprocessing yang dilakukan dengan Tokenization, Generate N-Gram dan Stemming. Metode pembobotan Fitur yang akan digunakan adalah Term Frequency Invers Document Frequency (TF-IDF) dan pemilihan seleksi fitur menggunakan Particle Swarm Optimization (PSO) dan Genetic Algorithm (GA). Sedangkan pengklasifikasi yang digunakan adalah Support Vector Machine. Pengujian 10 Fold Cross Validation akan dilakukan, akurasi algorima akan diukur menggunakan Confusion Matrix dan hasil olahan data dalam bentuk kurva ROC. RapidMiner C Versi 5.3 digunakan sebagai alat bantu dalam 76
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia mengukur akurasi data eksperimen yang dilakukan dalam penelitian. Gambar 3 menggambarkan kerangka pemikiran yang peneliti usulkan dalam penelitian ini. INDICATORS
PROPOSED METHOD
OBJECTIVES
MEASUREMENT
Model Accuracy
Confusion Matrix
Dataset
Review Produk Kosmetik (www.amaz on.com) Preprocessing
Tokenize
Generate NGram
ROC Curve Steamming
Population Size
Observed Variables
Proses klasifikasi di sini adalah untuk menentukan sebuah kalimat sebagai anggota class positif atau class negatif berdasarkan nilai perhitungan probabilitas dari rumus SVM yang lebih besar. Jika hasil probabilitas kalimat tersebut untuk class positif lebih besar dari pada class negatif, maka kalimat tersebut termasuk ke dalam class positif. Jika probabilitas untuk class positif lebih kecil dari pada class negatif, maka kalimat tersebut termasuk ke dalam class negatif. Nilai training cycles dalam penelitian ini ditentukan dengan cara melakukan uji coba memasukkan C, epsilon. Berikut ini adalah hasil dari percobaan yang telah dilakukan untuk penentuan nilai training cycles:
Feature Selection
Support Vector Machine
G
PEMBAHASAN
Tabel 4. Eksperimen Penentuan Nilai Training Cycles SVM berbasis PSO & SVM berbasis GA
Generate NGram
Stemming
0.0
0.0
5
I like it. Very dark, intense and bold black. Has a nice soft, yet sturdy tip.
I like it Very dark intense and bold black Has a nice soft yet sturdy tip
I l li lik ike ke e i it Ve Ver ery ry y d da dar ark in int nte ten ens nse se e a an and nd d b bo bol old ld d b bl bla lac ack Ha Has as s a a a n ni nic ice ce e s so sof oft ye yet et t s st stu tur urd rdy dy y t ti tip
i l li lik ike ke e i it ve ver eri ry y d da dar ark in int nte ten en nse se e a an and nd d b bo bol old ld d b bl bla lac ack ha has as s a a a n ni nic ice ce e so sof oft ye yet et t s st stu tur urd rdi dy y t ti tip
0.1
0.1
5
0.2
0.2
5
0.3
0.3
5
0.4
0.4
5
0.5
0.5
5
0.6
0.6
5
0.7
0.7
5
0.8
0.8
5
ISBN 978-602-72850-0-2
77
SVM
SVM+PSO
SVM+GA AUC
C
Population Size
Tokenizatio n
AUC 0.980 0.988 0.987 0.987 0.987 0.985 0.985 0.985 0.985 0.985 0.500 0.500 0.987
Hasil terbaik pada eksperimen SVM di atas adalah dengan C=0.1 dan Epsilon=0.1 dihasilkan accuracy 89.00 % dan AUCnya 0.988. Nilai training cycles dalam penelitian ini ditentukan dengan cara melakukan uji coba memasukkan C, epsilon dan population size. Berikut ini adalah hasil dari percobaan yang telah dilakukan untuk penentuan nilai training cycles:
Tabel 2. Pengolahan Awal Data Review
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.0 0.0
Epsilon
Data training yang digunakan dalam pengklasifikasian teks ini terdiri dari 100 review produk kosmetik positif dan 100 review produk kosmetik negatif dari situs www.amazon.com. Data tersebut masih berupa sekumpulan teks yang terpisah dalam bentuk dokumen. Sebelum diklasifikasikan, data tersebut harus melalui beberapa tahapan proses agar bisa diklasifikasikan dalam proses selanjutnya, berikut adalah tahapan prosesnya: 1. Pengumpulan Data SWn 2. Pengolahan Data. Data review positif disatukan dalam folder dengan nama POSITIF. Sedangkan data review negatif disatukan penyimpanannya dalam folder dengan nama NEGATIF. Tiap dokumen berekstensi .txt yang dapat dibuka menggunakan aplikasi Notepad. Proses yang dilalui terdiri dari tokenization, generate n-gram dan stemming. Hasil pengolahan awal data dapat dilihat pada Tabel 2.
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0.0 1.0 1.0
Accuracy
GA
ambar 3. Kerangka Pemikiran
Epsilon
AUC
Observed Variables
C
Accuracy
epsilon
SVM Accuracy 80.50% 89.00% 89.00% 88.00% 87.50% 87.00% 87.00% 87.00% 87.00% 87.00% 50.00% 50.00% 89.00%
Classification Algorithm
AUC
C
Tabel 3. Eksperimen Penentuan Nilai Training Cycles SVM
PSO
Accuracy
Kernel Type
80.5 0% 89.0 0% 89.0 0% 88.0 0% 87.5 0% 87.0 0% 87.0 0% 87.0 0% 87.0 0%
0.98 0 0.98 8 0.98 7 0.98 7 0.98 7 0.98 5 0.98 5 0.98 5 0.98 5
82.5 0% 94.0 0% 97.0 0% 95.0 0% 96.0 0% 96.5 0% 96.5 0% 94.0 0% 96.5 0%
0.9 85 0.9 89 0.9 88 0.9 91 0.9 91 0.9 84 0.9 94 0.9 85 0.9 95
84.5 0% 93.0 0% 93.0 0% 94.0 0% 94.0 0% 93.5 0% 93.0 0% 93.5 0% 93.5 0%
0.9 43 0.9 75 0.9 80 0.9 75 0.9 84 0.9 85 0.9 85 0.9 87 0.9 84
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia 0.9
0.9
5
0.0
1.0
5
1.0
1.0
5
1.0
0.0
5
87.0 0% 50.0 0% 50.0 0% 89.0 0%
0.98 5 0.50 0 0.50 0 0.98 7
95.0 0% 50.0 0% 50.0 0% 96.0 0%
0.9 94 0.5 00 0.5 00 0.9 84
93.0 0% 50.0 0% 50.0 0% 93.5 0%
0.9 72 0.5 00 0.5 00 0.9 87
Hasil terbaik pada eksperimen SVM berbasis PSO di atas adalah dengan C=0.2 dan Epsilon=0.2 serta population size=5 yang dihasilkan accuracy 97.00 % dan AUCnya 0.988. Sedangkan hasil terbaik pada eksperimen SVM berbasis GA di atas adalah dengan C=0.4 dan Epsilon=0.4 serta population size=5 yang dihasilkan accuracy 94.00% dan AUCnya 0.984. Pada penelitian penentuan hasil review produk kosmetik ini menggunakan algoritma Support Vector Machine didapatkan nilai accuracy, precision dan recall dari data training dapat dihitung dengan menggunakan Rapid Miner. Hasil pengujian dengan menggunakan model Support Vector Machine didapatkan hasil pada Tabel 5. Tabel 5 data training yang digunakan terdiri dari 100 data review positif produk kosmetik dan 100 data review negatif produk kosmetik. Untuk data review negatif produk kosmetik, 79 diklasifikasikan ke dalam review positif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 21 data diprediksi review positif tetapi ternyata hasil prediksinya review negatif. Untuk data review negatif produk kosmetik, 99 diklasifikasikan review negatif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 1 data diprediksi review negatif ternyata hasil prediksinya review positif. Tabel 5. Model Confusion Matrix Untuk Metode Support Vector Machine Accuracy : 89.00%, +/- 6.24% (Mikro : 89.00%) True True Class Positif Negatif Precission 79 1 98.75% Prediksi Positif 21 99 82.50% Prediksi Negatif 79.00% 99.00% Class Recall
Berdasarkan Tabel 5 tersebut menunjukkan bahwa, tingkat akurasi dengan menggunakan algoritma SVM adalah sebesar 89.00%, dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv dan npv hasilnya dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv, dan npv pada persamaan di bawah ini: a. (1) b.
(2)
c. d. e.
(3) (4) (5)
Kesimpulan hasil perhitungan dari persamaan di atas terlihat pada Tabel 6 di bawah ini:
Tabel 6. Nilai Accuracy, Sensitivity, Specificity, PPV dan NPV Untuk Metode Support Vector Machine Accuracy Sensitivity Specifity PPV NPV
Nilai % 89.00% 98.75% 82.50% 79.00% 99.00%
Hasil perhitungan divisualisasikan dengan kurva ROC. Perbandingan kedua metode komparasi bisa dilihat pada Gambar 4 yang merupakan kurva ROC untuk algoritma Support Vector Machine. Kurva ROC pada Gambar 4 mengekspresikan confusion matrix dari Tabel 5. Garis horizontal adalah false positive dan garis vertikal true positive.
Gambar 4. Kurva ROC Support Vector Machine
Dari Gambar 4 terdapat grafik ROC dengan nilai AUC (Area Under Curve) sebesar 0.988 dimana diagnosa hasilnya klasifikasi sangat baik (excellent classification). Untuk mencapai nilai keakurasian AUC mendekati 1 (sangat sempurna) dibutuhkan metode untuk meningkatkan diagnosa hasil klasifikasi yang terbentuk. Dalam hal ini peneliti menggunakan Particle Swarm Optimization (PSO) dan Genetic Algorithm (GA) sebagai algoritma seleksi fitur untuk meningkatkan akurasi klasifikasi. Nilai accuracy, precision dan recall dari data training dapat dihitung dengan menggunakan Rapid Miner. Hasil pengujian dengan menggunakan model Support Vector Machine berbasis GA didapatkan hasil pada Tabel 7. 1) Confusion Matrix Tabel 7 data training yang digunakan terdiri dari 100 data review positif produk kosmetik dan 100 data review negatif produk kosmetik. Untuk data review negatif produk kosmetik, 98 diklasifikasikan ke dalam review positif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 2 data diprediksi review positif tetapi ternyata hasil prediksinya review negatif. Untuk data review negatif produk kosmetik, 99 diklasifikasikan review negatif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 1 data diprediksi review negatif ternyata hasil prediksinya review positif. Tabel 7. Model Confusion Matrix untuk Metode Support Vector Machine berbasis PSO Accuracy : 97.00%, +/- 3.32% (Mikro : 97.00%)
ISBN 978-602-72850-0-2
78
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
Prediksi Positif Prediksi Negatif Class Recall
True Positif 95 5
True Negatif 1 99
95.00%
99.00%
Class Precission 98.96% 95.19%
Berdasarkan Tabel 7 tersebut menunjukkan bahwa, tingkat akurasi dengan menggunakan algoritma SVM berbasis PSO adalah sebesar 97.00%, dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv dan npv hasilnya dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv, dan npv pada persamaan di bawah ini: a.
Tabel 9 data training yang digunakan terdiri dari 100 data review positif produk kosmetik dan 100 data review negatif produk kosmetik. Untuk data review negatif produk kosmetik, 90 diklasifikasikan ke dalam review positif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 10 data diprediksi review positif tetapi ternyata hasil prediksinya review negatif. Untuk data review negatif produk kosmetik, 98 diklasifikasikan review negatif sesuai dengan prediksi yang dilakukan dengan metode SVM dan 2 data diprediksi review negatif ternyata hasil prediksinya review positif. Tabel 9. Model Confusion Matrix untuk Metode Support Vector Machine berbasis GA Accuracy : 94.00%, +/- 4.90% (Mikro : 94.00%) True True Class Positif Negatif Precission 90 2 97.83% Prediksi Positif 10 98 90.74% Prediksi Negatif 90.00% 98.00% Class Recall
(1)
b.
(2)
c.
(3)
d.
(4)
e.
(5)
Kesimpulan hasil perhitungan dari persamaan di atas terlihat pada Tabel 8 di bawah ini: Tabel 8. Nilai Accuracy, Sensitivity, Specificity, PPV dan NPV untuk Metode Support Vector Machine Berbasis PSO Accuracy Sensitivity Specifity PPV NPV
Berdasarkan Tabel 9 tersebut menunjukkan bahwa, tingkat akurasi dengan menggunakan algoritma SVM berbasis GA adalah sebesar 94.00%, dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv dan npv hasilnya dan dapat dihitung untuk mencari nilai accuracy, sensitivity, specificity, ppv, dan npv pada persamaan di bawah ini: a.
Nilai % 97.00% 98.96% 95.19% 95.00% 99.00%
Kurva ROC Hasil perhitungan divisualisasikan dengan kurva ROC. Perbandingan kedua metode komparasi bisa dilihat pada Gambar 5 yang merupakan kurva ROC untuk algoritma Support Vector Machine berbasis PSO. Kurva ROC pada Gambar 5 mengekspresikan confusion matrix dari Tabel 6. Garis horizontal adalah false positive dan garis vertikal true positive.
(1)
b.
(2)
c.
(3)
2)
d.
(4)
e.
(5)
Kesimpulan hasil perhitungan dari persamaan di atas terlihat pada Tabel 10 di bawah ini: Tabel 10. Nilai Accuracy, Sensitivity, Specificity, PPV dan NPV untuk Metode Support Vector Machine Berbasis GA Accuracy Sensitivity Specifity PPV NPV
Gambar 5. Kurva ROC Support Vector Machine Berbasis PSO
Dari Gambar 5 terdapat grafik ROC SVM berbasis PSO dengan nilai AUC (Area Under Curve) sebesar 0.988 dimana diagnosa hasilnya klasifikasi sangat baik (excellent classification). Kemudian nilai accuracy, precision dan recall dari data training hasil pengujian dengan menggunakan model Support Vector Machine berbasis GA didapatkan hasil pada Tabel 9.
ISBN 978-602-72850-0-2
Nilai % 94.00% 97.83% 90.74% 90.00% 98.00%
Hasil perhitungan divisualisasikan dengan kurva ROC. Perbandingan kedua metode komparasi bisa dilihat pada Gambar 6 yang merupakan kurva ROC untuk algoritma Support Vector Machine berbasis PSO. Kurva ROC pada Gambar 6 mengekspresikan confusion matrix dari Tabel 7. Garis horizontal adalah false positive dan garis vertikal true positive.
79
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
Gambar 6. Kurva ROC Support Vector Machine Berbasis GA
Dari Gambar 6 terdapat grafik ROC SVM berbasis PSO dengan nilai AUC (Area Under Curve) sebesar 0.984 dimana diagnosa hasilnya klasifikasi sangat baik (excellent classification). Dari hasil pengujian di atas, pengukuran akurasi menggunakan confusion matrix dan kurva ROC terbukti bahwa hasil pengujian algoritma SVM berbasis PSO memiliki nilai akurasi yang lebih tinggi dibandingkan dengan algoritma SVM. Nilai akurasi untuk model algoritma SVM sebesar 89.00%, nilai akurasi untuk model algoritma SVM berbasis PSO sebesar 97.00%, dengan selisih akurasi dengan SVM sendiri 8.00%. Kemudian nilai akurasi untuk model algoritma SVM berbasis GA sebesar 94.00%, dengan selisih akurasi dengan SVM sendiri 5.00%, dapat dilihat pada Tabel 11 di bawah ini: Tabel 11. Pengujian Algoritma SVM dan SVM berbasis PSO SVM SVM berbasis PSO SVM berbasis GA
Accuracy 89.00% 97.00% 94.00%
AUC 0.988 0.988 0.984
Untuk evaluasi menggunakan Kurva ROC sehingga menghasilkan nilai AUC (Area Under Curve) untuk model algoritma SVM menghasilkan nilai 0.988 dengan nilai diagnosa Excellent Classification, kemudian untuk algoritma SVM berbasis PSO (Particle Swarm Optimization) dengan akurasi terbesar yaitu 97.00% ternyata menghasilkan nilai AUC yang sama dengan model algoritma SVM (tetap) yaitu sebesar 0.988 dengan nilai diagnosa Excellent Classification, dan selisih nilai keduanya sebesar 0.00. Sedangkan untuk algoritma SVM berbasis GA (Genetic Algorithm) dengan akurasi terbesar yaitu 94.00% ternyata menghasilkan nilai AUC yang lebih kecil dari keduanya yaitu 0.984. Dengan demikian algoritma SVM berbasis PSO dapat memberikan solusi untuk permasalahan dalam klasifikasi review produk kosmetik. Berdasarkan hasil eksperimen yang dilakukan untuk memecahkan masalah klasifikasi review produk kosmetik, dapat disimpulkan bahwa hasil eksperimen menggunakan metode Support Vector Machine mempunyai tingkat akurasi sebesar 80.50% dan mempunyai nilai AUC sebesar 0.980 dengan parameter C dan epsilon default masing-masing sebesar 0.0. Setelah dilakukan penyesuaian pada parameter C dan epsilon didapat nilai akurasi terbaik untuk algoritma Support Vector Machine yaitu mempunyai akurasi sebesar 89.00% dan nilai AUCnya sebesar 0.988. Sedangkan eksperimen kedua yang dilakukan dengan menggunakan metode
ISBN 978-602-72850-0-2
Support Vector Machine berbasis Particle Swarm Optimization mempunyai nilai akurasi sebesar 85.11% dan nilai AUC sebesar 0.980 dengan parameter C dan epsilon default masing-masing sebesar 0.0. Setelah dilakukan penyesuaian pada parameter C dan Epsilon didapat nilai akurasi terbaik untuk algoritma Support Vector Machine berbasis Particle Swarm Optimization yaitu mempunyai akurasi sebesar 97.00% dan nilai AUC sebesar 0.988. Sedangkan eksperimen ketiga yang dilakukan dengan menggunakan metode Support Vector Machine berbasis Genetic Algorithm mempunyai nilai akurasi sebesar 84.50% dan nilai AUC sebesar 0.943 dengan parameter C dan epsilon default masing-masing sebesar 0.0. Setelah dilakukan penyesuaian pada parameter C dan Epsilon didapat nilai akurasi terbaik untuk algoritma Support Vector Machine berbasis Genetic Algorithm yaitu mempunyai akurasi sebesar 94.00% dan nilai AUC sebesar 0.984. Setelah dibandingkan, didapatkan kesimpulan bahwa feature selection yang terbaik yang dapat diterapkan pada Algoritma Support Vector Machine adalah Particle Swarm Optimization dengan akurasi terbaik sebesar 97.00%. KESIMPULAN Dalam penelitian ini dilakukan pengujian model dengan menggunakan Support Vector Machine dan Support Vector Machine berbasis Particle Swarm Optimization dengan menggunakan data review produk kosmetik yang positif maupun negatif dengan keseluruhan 200 data review. Model yang dihasilkan diuji untuk mendapatkan nilai accuracy, precision, recall dan AUC dari setiap algoritma sehingga didapatkan pengujian dengan menggunakan Support Vector Machine didapatkan nilai accuracy adalah 89.00%. Kemudian pengujian dengan menggunakan Support Vector Machine berbasis Particle Swarm Optimization (PSO) didapatkan nilai accuracy 97.00%. Sedangkan pengujian dengan menggunakan Support Vector Machine berbasis Genetic Algorithm (GA) didapatkan nilai accuracy 94.00%. Maka dapat disimpulkan pengujian data review produk kosmetik menggunakan Support Vector Machine berbasis Particle Swarm Optimization (PSO) lebih baik dari pada Support Vector Machine berbasis Genetic Algorithm (GA) dan Support Vector Machine itu sendiri. Dengan demikian hasil dari pengujian model di atas dapat disimpulkan bahwa Support Vector Machine berbasis Particle Swarm Optimization memberikan pemecahan untuk permasalahan klasifikasi review produk kosmetik menjadi lebih akurat. DAFTAR PUSTAKA [1] Basari, A. S. H., Hussin, B., Ananta, I. G. P., & Zeniarja, J. (2013). Opinion Mining of Movie Review using Hybrid Method of Support Vector Machine and Particle Swarm Optimization. Procedia Engineering, 53, 453–462. doi:10.1016/j.proeng.2013.02.059. [2]
80
Chou, J.-S., Cheng, M.-Y., Wu, Y.-W., & Pham, A.-D. (2014). Optimizing parameters of support vector machine
Konferensi Nasional Ilmu Pengetahuan dan Teknologi (KNIT) 2015 8 Agustus 2015, Bekasi, Indonesia
[3]
using fast messy genetic algorithm for dispute classification. Expert Systems with Applications, 41(8), 3955–3964. doi:10.1016/j.eswa.2013.12.035.
[10] Medhat, W., Hassan, A., & Korashy, H. (2014). Sentiment analysis algorithms and applications: A survey. Ain Shams Engineering Journal. doi:10.1016/j.asej.2014.04.011.
Dehkharghani, R., Mercan, H., Javeed, A., & Saygin, Y. (2014). Sentimental causal rule discovery from Twitter. Expert Systems with Applications, 41(10), 4950–4958. doi:10.1016/j.eswa.2014.02.024.
[11] Moraes, R., Valiati, J. F., & Gavião Neto, W. P. (2013). Document-level sentiment classification: An empirical comparison between SVM and ANN. Expert Systems with Applications, 40(2), 621–633. doi:10.1016/j.eswa.2012.07.059.
[4] Gunal, S. (2012). Hybrid classification ¨, 20. [5]
[6]
feature
selection for text
Habernal, I., Ptáček, T., & Steinberger, J. (2014). Supervised sentiment analysis in Czech social media. Information Processing & Management, 50(5), 693–707. doi:10.1016/j.ipm.2014.05.001
[13]
Haddi, E., Liu, X., & Shi, Y. (2013). The Role of Text Preprocessing in Sentiment Analysis. Procedia Computer Science, 17, 26–32. doi:10.1016/j.procs.2013.05.005
[7] Haupt, R. L., & Haupt, S. E. (2004). Practical Genetic Algorithms. Untied States Of America: A John Wiley & Sons Inc Publication. [8]
[12] Weiss, S. M., Indurkhya, Nitin & Zhang, Tong. (2010). Fundamentals of Predictive Text Mining. London: SpringerVerlag. Ye, Q., Zhang, Z., & Law, R. (2009). Sentiment classification of online reviews to travel destinations by supervised machine learning approaches. Expert Systems with Applications, 36(3), 6527–6535. doi:10.1016/j.eswa.2008.07.035.
[14] Zhang, L., Hua, K., Wang, H., Qian, G., & Zhang, L. (2014). Sentiment Analysis on Reviews of Mobile Users. Procedia Computer Science, 34, 458–465. doi:10.1016/j.procs.2014.07.013
Huang, K., Yang, H., King, I., & Lyu, M. (2008). Machine Learning Modeling Data Locally And Globally. Berlin Heidelberg: Zhejiang University Press, Hangzhou And Springer-Verlag Gmbh.
[15] Zhang, Z., Ye, Q., Zhang, Z., & Li, Y. (2011). Sentiment classification of Internet restaurant reviews written in Cantonese. Expert Systems with Applications, 38(6), 7674– 7682. doi:10.1016/j.eswa.2010.12.147.
[9] Liu, Y., Wang, G., Chen, H., Dong, H., Zhu, X., & Wang, S. (2011). An Improved Particle Swarm Optimization for Feature Selection. Journal of Bionic Engineering, 8(2), 191– 200. doi:10.1016/S1672-6529(11)60020-6.
[16] Zhao, M., Fu, C., Ji, L., Tang, K., & Zhou, M. (2011). Feature selection and parameter optimization for support vector machines: A new approach based on genetic algorithm with feature chromosomes. Expert Systems with Applications, 38(5), 5197–5204. doi:10.1016/j.eswa.2010.10.041.
ISBN 978-602-72850-0-2
81