Anda di halaman 1dari 28

ANALISIS SENTIMEN MENGGUNAKAN METODE KLASIFIKASI SUPPORT VECTOR MACHINE

Proposal Skripsi

Untuk persyaratan penelitian dan penulisan skripsi sebagai akhir studi S1 Program Studi Ilmu Komputer FPMIPA

diajukan oleh : Cecep Barkah Safari 0608855

Kepada Tim Skripsi Program Studi Ilmu Komputer

PROGRAM STUDI ILMU KOMPUTER FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS PENDIDIKAN INDONESIA 2012

LEMBAR PENGESAHAN
ANALISIS SENTIMEN MENGGUNAKAN METODE KLASIFIKASI SUPPORT VECTOR MACHINE

Proposal Skripsi

Diajukan oleh : Cecep Barkah Safari 0608855

Mengetahui, Ketua Tim Skripsi Jurusan/Program Studi Ilmu Komputer FPMIPA UPI

Wahyudin, MT NIP. 197304242008121001

ii

DAFTAR ISI

LEMBAR PENGESAHAN.......................................................................................i DAFTAR ISI ........................................................................................................... ii DAFTAR TABEL ................................................................................................... iii DAFTAR GAMBAR ...............................................................................................iv PENDAHULUAN ....................................................................................................1 1.1. Latar Belakang ......................................................................................... 1 1.2. Rumusan Masalah.................................................................................... 3 1.3. Tujuan ......................................................................................................4 1.4. Batasan Masalah ...................................................................................... 5 1.5. Metode Penelitian .................................................................................... 5 TINJAUAN PUSTAKA ........................................................................................... 7 2.1. Analisis Sentimen .................................................................................... 7 2.2. Support Vector Machine ..........................................................................8 2.3. Hidden Markov Model POS Tagger[ALF2010] ....................................14 2.4. Nazief dan Adriani Stemmer[NAZ1996] .............................................. 15 METODE PENELITIAN ....................................................................................... 16 3.1. Desain Penelitian ................................................................................... 16 3.2. Fokus Penelitian .................................................................................... 16 3.3. Alat dan Bahan Penelitian......................................................................17 3.4. Metode Penelitian .................................................................................. 18 3.5. Jadwal Penelitian ................................................................................... 21 DAFTAR PUSTAKA .......................................................................................... xxii

DAFTAR TABEL

Table 2.1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Jadwal Penelitian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

DAFTAR GAMBAR

Gambar 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Gambar 2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Gambar 2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Gambar 2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Gambar 3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Gambar 3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

PENDAHULUAN

1.1. Latar Belakang


Perkembangan pesat teknologi web dan jumlah user-generated content di internet membuat perusahaan, khususnya perusahaan penyedia layanan internet, melakukan analisis pemasaran dengan memanfaatkan posting opini pelanggannya secara online. Salah satu perusahaan penyedia layanan internet di Indonesia yang memanfaatkan analisis posting opini secara online ini adalah Telkom. Telkom memantau opini pelanggan layanan Telkom Speedy dengan memanfaatkan jejaring sosial sebagai domain pantauan. Bagian layanan pelanggan Telkom Speedy selalu menanggapi opini yang diungkapkan pelanggannya melalui teks status di jejaring sosial. Jejaring sosial dan layanan microblogging merupakan salah satu hasil perkembangan teknologi web dan internet. Jejaring sosial dan layanan microblogging memungkinkan setiap orang saling berinteraksi dan berbagi informasi tanpa batasan ruang dan waktu. Setiap orang dapat berbagi informasi mengenai apapun, kepada siapapun atau orang-orang tertentu melalui teks status yang di-post dalam jejaring sosial[BOL2010]. Salah satu jejaring sosial dan layanan microblogging yang banyak digunakan orang, khususnya masyarakat Indonesia, adalah Twitter (http://twitter.com). Berdasarkan hasil survei ComScore yang dilansir situs berita

OkeZone[OKE2010] pada 12 Agustus 2010, pengguna Twitter di Indonesia mencapai 93 juta pengguna. Hal ini menempatkan Indonesia di urutan pertama negara Asia Pasifik dengan pengguna Twitter terbanyak. Kesederhanaan dan kemudahan dalam penggunaan merupakan beberapa alasan mengapa Twitter lebih digemari masyarakat Indonesia dalam berkomunikasi. Setiap pengguna Twitter bebas mem-post tweet dengan batasan 140 karakter. Tweet adalah teks status

2 pengguna yang digunakan untuk memberikan informasi di Twitter. Berdasarkan kutipan hasil penelitian Bollen[BOL2010], tweet biasa digunakan penggunanya untuk : 1. Memberitahu tentang apa yang sedang dilakukan atau dirasakan, 2. Percakapan, contohnya menujukan tweet kepada pengguna tertentu yang menjadi follower-nya untuk memulai percakapan, 3. Berbagi informasi, contohnya saling bertukar informasi mengenai sesuatu hal atau link website sumber informasi, dan 4. Pelaporan berita, contohnya memberikan informasi tentang apa yang terjadi disekitar pengguna atau mengomentari berita yang diinformasikan pengguna lain. Hal-hal tersebut merupakan aktivitas umum yang juga dilakukan pengguna Twitter di Indonesia. Banyak jenis penggunaan tweet sebagai salah satu sarana berbagi informasi, namun pada umumnya tweet digunakan untuk mem-post hal tentang diri pengguna dan berbagi informasi. Isi tweet juga dapat mengekspresikan perasaan atau mood pengguna, misalkan Saya puas dengan pelayanan dari PT. X, hal ini bersifat penilaian subjektif atau opini. Opini melalui tweet inilah yang dimanfaatkan untuk keperluan business intelligence perusahaanperusahaan, pelanggannya. Analisis opini atau sentimen adalah salah satu langkah yang diambil perusahaan untuk mengetahui penilaian pelanggan terhadap layanannya. Beberapa hal yang ingin diketahui oleh perusahaan mengenai produk atau layanan dari sudut pandang pelanggannya[PAK2010], antara lain : 1. Bagaimana pendapat pelanggan tentang produk atau layanannya? 2. Seberapa positif atau negatif tanggapan pelanggan terhadap produk atau layanannya? 3. Seperti apa produk atau layanan yang pelanggan harapkan? Semua informasi tersebut dapat diperoleh melalui layanan microblogging atau jejaring sosial selama pelanggan mem-post opininya pada layanan khususnya penyedia layanan internet, dalam memantau

3 microblogging atau jejaring sosial tersebut. Dalam menentukan polaritas positif atau negatifnya suatu opini dapat dilakukan secara manual, tetapi seiring bertambahnya sumber opini menjadi semakin banyak, tentunya waktu dan usaha yang dibutuhkan untuk mengklasifikasikan polaritas opini tersebut akan semakin banyak terpakai. Oleh karena itu, diajukan penerapan metode pembelajaran mesin untuk mengklasifikasi polaritas opini dari sumber data yang sangat banyak tersebut. Metode klasifikasi support vector machine adalah metode klasifikasi teks paling baik dibandingkan metode lain, seperti metode Nave Bayes dan Maximum Entropy. Atas dasar hal ini, penulis bermaksud menerapkan metode support vector machine dalam mengklasifikasi polaritas sentimen atau opini dan mengukur kinerja metode tersebut dalam domain klasifikasi sentimen atau opini. Support Vector Machine (SVM) adalah sistem pembelajaran yang menggunakan ruang hipotesis berupa fungsi-fungsi linear dalam sebuah ruang fitur (feature space) berdimensi tinggi, dilatih dengan pembelajaran yang didasarkan pada teori optimasi dengan mengimplementasikan learning bias yang berasal dari teori pembelajaran statistik[CHR2000]. SVM diperkenalkan oleh Vapnik, Boser, dan Guyon dan berkembang pesat sejak tahun 1992. Salah satu keunggulan SVM adalah kinerjanya yang baik pada klasifikasi teks dibanding metode pengklasifikasi lain[FRA2008] [NUG2007]. Dalam penelitian ini, analisis sentimen diterapkan pada tweet-tweet yang memiliki nilai subyektif dengan menggunakan metode support vector machine. Adapula penerapan algoritma stemming Nazief dan Adriani[NAZ1996] dalam praproses teks dan penggunaan HMM POS Tagger[ALF2010] dalam proses tagging dataset yang digunakan.

1.2. Rumusan Masalah


Permasalahan yang akan diangkat dalam penelitian ini adalah : 1. Bagaimana tahapan analisis sentimen dilakukan pada kalimat bahasa

4 Indonesia? 2. Bagaimana penerapan metode klasifikasi SVM dilakukan untuk

menentukan polaritas sentimen pada teks berbahasa Indonesia? 3. Bagaimana kinerja dan akurasi metode klasifikasi SVM yang digunakan dalam menentukan polaritas sentimen? 4. Bagaimana implementasi analisis sentimen dan metode SVM ke dalam aplikasi menggunakan metodologi dan pemrograman berbasis objek?

1.3. Tujuan
Tujuan utama dari penelitian yang akan dilakukan adalah melakukan analisis polaritas sentimen teks berbahasa Indonesia dengan menerapkan metode support vector machine. Tujuan detail dari penelitian dapat dijabarkan sebagai berikut : 1. Memahami tahapan dalam analisis sentimen. 2. Memahami metode pembelajaran SVM. 3. Memahami tahapan bagaimana penerapan SVM dalam mengklasifikasi polaritas sentimen dari teks berbahasa Indonesia. 4. Mengimplementasikan analisis sentimen dan metode SVM ke dalam aplikasi dengan metodologi dan pemrograman berbasis objek. 5. Menganalisis kinerja dan akurasi penggunaan SVM dalam proses klasifikasi polaritas sentimen teks berbahasa Indonesia.

1.4. Batasan Masalah


Beberapa batasan masalah yang dibuat untuk menjaga fokus dari penelitian, antara lain : 1. Tweet yang digunakan sebagai dataset dalam penelitian adalah teks tweet berbahasa Indonesia yang memiliki topik yang sama, dalam penelitian ini topik yang diambil adalah penyedia layanan internet broadband. 2. Proses part-of-speech tagging menggunakan alat bantu HMM POS Tagger[ALF2010]. 3. Perhitungan jumlah sentimen positif dan negatif berdasarkan jumlah tweet yang dijadikan dataset dalam penelitian. 4. Batasan ketidakterstrukturan tweet yang termasuk dalam batas toleransi untuk dijadikan dataset adalah bukan berupa kombinasi huruf, simbol dan angka. 5. Kata yang terbentuk dari kombinasi huruf, simbol dan angka serta tidak memiliki makna dianggap sebagai spam.

1.5. Metode Penelitian


Tahapan-tahapan yang akan dilakukan dalam pelaksanaan penelitian adalah sebagai berikut : 1. Eksplorasi awal, melakukan eksplorasi dan memahami metode

pembelajaran mesin SVM dan tahapan analisis sentimen pada teks berbahasa Indonesia. 2. Studi literatur, mempelajari literatur-literatur berupa textbook, jurnal elektronik, artikel ilmiah dan dokumen web yang relevan dengan topik penelitian, khususnya mengenai SVM dan analisis sentimen.

6 3. Analisis penyelesaian masalah, menganalisis penerapan SVM untuk menentukan subjektif dan polaritas sentimen. 4. Pengumpulan dataset, dataset berupa tweet yang dikumpulkan ke dalam database. Dataset dibagi menjadi dua, dataset untuk pelatihan dan dataset untuk pengujian. 5. Perancangan berdasarkan perangkat hasil lunak, analisis metode membuat desain perangkat masalah bentuk lunak dan

penyelesaian penelitian dalam

mengimplementasikan pemrograman.

algoritma

6. Implementasi, mengimplementasikan hasil perancangan perangkat lunak. 7. Pengujian, melakukan pengujian kinerja dan ketepatan perangkat lunak dalam memproses dataset pengujian. 8. Analisis hasil pengujian, menganalisis hasil pengujian dan menarik kesimpulan berdasarkan hasil pengujian tersebut.

TINJAUAN PUSTAKA

2.1. Analisis Sentimen


Informasi tekstual secara umum dapat dibagi menjadi informasi fakta dan opini[LIU2010]. Fakta adalah ekspresi obyektif terhadap suatu benda, kejadian dan kepunyaan benda tersebut. Opini biasanya berupa ekspresi subyektif yang menggambarkan sentimen, penilaian, atau perasaan seseorang terhadap suatu benda, kejadian atau kepunyaan dari benda tersebut. Penelitian yang dilakukan dalam text mining lebih banyak terfokus pada informasi faktual seperti information retrieval, pencarian web, pengelompokan teks dan penelitian dalam natural language processing lainnya. 2.1.1. Subyektivitas dan Obyektivitas Informasi berupa paper, artikel, jurnal dan lain sebagainya berisikan informasi tekstual yang bersifat objektif, yaitu informasi yang tidak menggambarkan perasaan atau pendapat penulis terhadap hal yang ditulisnya. Infomasi-informasi objektif tersebut cenderung bersifat netral, sedangkan informasi seperti opini, komentar atau pendapat masing-masing memiliki nilai atau makna yang diungkapkan oleh penulisnya, makna tersebut dapat bernilai positif atau negatif. Nilai positif dan negatif yang terkandung dalam kalimat subjektif ini disebut dengan polaritas. Kalimat opini, komentar atau pendapat yang menggambarkan penilaian atau perasaan seseorang terhadap suatu hal merupakan sentimen. Polaritas sentimen ini yang menjadi objek penelitian yang akan dilaksanakan penulis. 2.1.2. Polaritas Polaritas merupakan nilai dari suatu sentimen yang dapat bernilai positif, negatif atau bahkan netral (objektif). Nilai polaritas sentimen seseorang dapat menjadi suatu input pendukung dalam menentukan suatu

8 keputusan. Kita ambil contoh, seseorang yang akan membeli gadget meminta pendapat orang disekitarnya atau suatu forum di internet terhadap kualitas gadget yang akan dibelinya, sebagai bahan referensi agar tidak menyesal setelah membeli. Pendapat orang-orang beraneka macam, mungkin positif atau juga negatif. Jumlah pendapat, atau bisa kita sebut jumlah nilai polaritas sentimen, baik positif maupun negatif berpengaruh terhadap keinginan orang tersebut untuk membeli gadget itu. Jumlah pendapat yang sangat banyak tentunya akan menghambat proses pengambilan keputusan, sehingga dibutuhkan suatu rutin

pembelajaran mesin untuk mengolah pendapat-pendapat tersebut secara cepat dan akurat. Berdasarkan beberapa hasil penelitian perbandingan metode pembelajaran mesin mengenai text mining, metode support vector machine adalah metode klasifikasi teks yang memiliki keunggulan dari segi keakuratan yang paling baik dari metode klasifikasi lain. Metode support vector machine ini akan djelaskan pada subbab selanjutnya.

2.2. Support Vector Machine


Support Vector Machine (SVM) dikembangkan oleh Boser, Guyon, dan Vapnik. Pertama kali dipresentasikan pada tahun 1992 di Annual Workshop on Computational Learning Theory. Prisip dasar SVM adalah pengklasifikasi linear (linear classifier), dan selanjutnya dikembangkan agar dapat bekerja pada masalah non-linear, dengan memasukkan kernel trick pada ruang kerja berdimensi tinggi[NUG2007]. Algoritma SVM digambarkan secara umum pada Gambar 2.1 di bawah ini. (sumber: http://www.dtreg.com/svm.htm)

Gambar 2.1

2.2.1.

Klasifikasi Linear Konsep SVM dapat dijelaskan secara sederhana sebagai usaha

mencari hyperplane terbaik yang berfungsi sebagai pemisah dua buah kelas pada input space. Dua kelas, +1 dan -1, beserta masing-masing pattern digambarkan dengan simbol kotak warna merah untuk pattern -1 dan simbol lingkaran warna biru untuk pattern +1 pada Gambar 2.2 di bawah ini.

Gambar 2.2

10 Hyperplane pemisah terbaik antara kedua kelas dapat ditemukan dengan mengukur margin hyperplane tersebut dan mencari titik maksimalnya. Margin adalah jarak antara hyperplane terdekat dengan pattern terdekat dari masing-masing kelas. Pattern yang paling dekat

dengan hyperplane disebut support vector. Hyperplane terbaik pada Gambar 2.3 digambarkan sebagai garis tidak putus-putus yang terletak tepat di tengah-tengah kedua kelas. Sedangkan support vector tampak sebagai pattern yang berpotongan dengan garis putus-putus.

Dataset dinotas ikan sebagai

x i D ,i=1,2, . .. ,N . N
adalah banyak nya data,
Gambar 2.3

dan

kelas positif dan negatif dinotasikan sebagai +1 dan -1. Dengan demikian notasi tiap pattern dan kelasnya adalah y i { 1, 1 } . Diasumsikan bahwa kedua kelas tersebut dapat dipisahkan secara sempurna oleh hyperplane di D-dimensional feature space. Feature space merupakan kumpulan dataset yang telah dipilih dan ditransformasi untuk mendefinisikan hyperplane. Hyperplane didefinisikan sebagai berikut :
w . x i +b= 0 . . . (2.1)

11 Data
xi

yang tergolong kelas negatif adalah mereka yang

memenuhi pertidaksamaan berikut :


w . x i +b 1 . . . (2.2)

Adapun data x i yang tergolong kelas positif adalah mereka yang memenuhi pertidaksamaan :
w . x i +b 1 . . . (2.3)

Margin optimal dihitung dengan memaksimalkan jarak antara hyperplane dengan pattern terdekat. Jarak ini dirumuskan sebagai
1 w . . . (2.4)

dengan w adalah norm dari weight vector w. Selanjutnya masalah ini diformulasikan ke dalam quadratic programming problem dengan meminimalkan w dan mengaplikasikan constraint
y i w. x i +b 1 0, i . . . (2.5)

pada fungsi minimalisasi tersebut. Optimisasi fungsi meminimalkan w dapat dilakukan dengan menggunakan Multiplier Lagrange seperti berikut :

1 L w,b, = w2 i y i w . xi +b 1 . . . (2.6) 2
i adalah Multiplier Lagrange yang berkorespondensi dengan x i . Nilai i adalah nol atau positif. Untuk menyelesaikan masalah tersebut, pertama

meminimalkan L terhadap w dan memaksimalkan L terhadap i . Dengan memodifikasi persamaan (2.6), masalah maksimalisasi di atas dapat direpresentasikan dalam i sebagai berikut :

12

i 1 i j y i y j x i x j 2

. . . (2.7)

dengan menerapkan constraint i 0, i y i pada persamaan (2.7). Solusi masalah ini akan menghasilkan banyak i dengan nilai nol. Data yang berkorespondensi dengan i yang tidak nol, merupakan support vector, yaitu data yang memiliki jarak terdekat dengan hyperplane.

2.2.2.

Soft Margin Bahasan sebelumnya adalah jika masalah yang dihadapi dapat

diselesaikan secara linear (linearly separable) atau dapat dipisahkan secara sempurna oleh hyperplane. Namun, pada umumnya masalah yang sering dihadapi adalah non-linear separable, salah satunya dikarenakan noise. Sehingga kedua kelas tersebut tidak dapat dipisahkan oleh hyperplane secara sempurna dan proses optimasi fungsi minimalisasi tidak dapat diselesaikan, karena tidak ada w dan b yang memenuhi pertidaksamaan (2.5). Untuk itu, pertidaksamaan (2.5) dimodifikasi dengan memasukkan slack variable i i 0 , menjadi
y i w. x i +b 1 i , i untuk kelas positif . . . (2.8)
y i w. x i +b 1 +i , i untuk kelas negatif . . . (2.9)
2 Demikian juga dengan w , sehingga diperoleh

1 w 2+C i . . . (2.10) 2
Parameter C bertugas mengendalikan trade off antara margin dan kesalahan klasifikasi. Semakin besar nilai C, semakin besar nilai penalty yang dikenakan untuk setiap kesalahan klasifikasi. Penambahan slack

13 variable i ini disebut dengan Kernel Trick yang akan dibahas pada subbab 2.2.3 paragraf kedua. 2.2.3. Klasifikasi Non-Linear Pada konsep dasarnya, SVM merupakan salah satu varian pembelajaran mesin linear atau pengklasifikasi linear yang digunakan untuk menyelesaikan masalah yang sifatnya linearly separable. Untuk dapat digunakan pada kasus non-linearly separable, data yang berada di ruang
D vector awal x i

berdimensi D, harus dipindahkan ke ruang vector

baru yang berdimensi lebih tinggi

x' i Q . Misalnya saja fungsi

pemetaan tersebut dinotasikan sebagai x . Pemetaan ini bertujuan untuk merepresentasikan data ke format yang linearly separable pada ruang vector baru. Ilustrasi proses digambarkan pada Gambar 2.4.

Selanju tnya dilakuk an proses pelatih an


Gambar 2.4

sebagai mana

pada klasifikasi linear. Proses optimisasi pada fase ini diperlukan perhitungan dot product dua buah contoh pada ruang vector baru. Dot product kedua buah vector x i dan x j dinotasikan sebagai x i . x j . Nilai dot product kedua vector ini dapat dihitung secara tidak langsung, yaitu tanpa mengetahui proses transformasi . Teknik komputasi ini

14 disebut Kernel Trick, yaitu menghitung dot product dua vector di ruang vector baru dengan memakai komponen kedua vector tersebut di ruang vector asal.
K x i ,x j = xi . x j

. . . (2.11)

Fungsi-fungsi kernel yang umum digunakan adalah sebagai berikut: Nama Kernel Polynomial Gausian (RBF)
K x i ,x j = exp

Fungsi

K x i ,x j = x i x j 1

x i x j 2 22

Sigmoid

K x i ,x j = tanh x i x j +
Tabel 2.1

2.3. Hidden Markov Model POS Tagger[ALF2010]


Part-of-speech tagging merupakan proses pemberian tag pada kata atau frase ke dalam kategori gramatikal. Part-of-speech dalam bahasa Indonesia antara lain kata kerja, kata benda, kata sifat, kata keterangan, dan kategori lainnya. HMM part-of-speech tagger merupakan salah satu perangkat tagger untuk bahasa Indonesia yang berbasis metode probabilistik yang dibuat oleh Alfan Farizki Wicaksono[ALF2010] menggunakan model Hidden Markov. HMM POS tagger memiliki kelebihan dalam memproses out of vocabulary word, yaitu kata yang tidak terdapat pada corpus beranotasi. Peran POS tagger dalam praproses teks adalah memilah term-term yang terbentuk dari suatu kalimat, dalam hal ini suatu tweet, berdasarkan kelompok kata dalam bahasa Indonesia. Proses pemilahan term ini memudahkan proses analisis subyektivitas dan polaritas term dalam analisis sentimen.

15

2.4. Nazief dan Adriani Stemmer[NAZ1996]


Stemming merupakan proses transformasi kata ke dalam bentuk asal (root word) dengan menggunakan aturan-aturan tertentu. Proses stemming termasuk salah satu rangkaian proses normalisasi teks dalam text mining atau information retrieval. Sebagai contoh, kata kesamaan, menyamai dan disamakan memiliki bentuk asal sama, bentuk asal tersebut diperoleh dengan melakukan proses stemming terhadap ketiga kata berimbuhan tersebut. Kata-kata dalam bahasa Indonesia memiliki aturan morfologi yang kompleks dibandingkan dengan bahasa Inggris. Dalam bahasa Inggris proses stemming hanya perlu menghilangkan akhiran untuk mendapatkan bentuk asal, sedangkan dalam morfologi bahasa Indonesia terdapat kombinasi imbuhan seperti awalan, sisipan, dan akhiran dalam pembentukan suatu kata. Oleh karena itu, diperlukan algoritma stemming khusus untuk mendapatkan bentuk asal dari katakata bahasa Indonesia. Dalam penelitian ini akan digunakan algoritma stemming bahasa Indonesia yang dibuat oleh Bobby Nazief dan Mirna Adriani[NAZ1996]. Algoritma stemming Nazief dan Adriani banyak digunakan dalam praproses teks karena tingkat akurasi yang tinggi dalam stemming kata bahasa Indonesia dibandingkan algoritma lain. Penggunaan algortima stemming Nazief dan Adriani dalam praproses tweet diharapkan dapat mempermudah saat proses ekstraksi fitur dan membuang tweet yang berupa spam (spam filtering).

16

METODE PENELITIAN

3.1. Desain Penelitian


Tahap-tahap penelitian yang akan dilakukan digambarkan pada Gambar 3.1 di bawah ini.

Gambar 3.1

3.2. Fokus Penelitian


Penelitian difokuskan pada analisis sentimen dari tweet-tweet dengan topik yang sama, yaitu opini mengenai kualitas penyedia layanan internet broadband. Hal yang akan diteliti dari tweet-tweet tersebut, adalah polaritas, apakah positif atau negatif makna tweet yang diteliti.

17 Langkah-langkah penelitian analisis sentimen akan difokuskan pada : 1. Praproses teks, dataset yang digunakan adalah teks bahasa Indonesia yang tidak terstruktur dengan baik, sehingga diperlukan tahapan normalisasi. 2. Pemberian tag pada tiap term sesuai dengan morfologi bahasa Indonesia, untuk mempermudah proses klasifikasi. 3. Penerapan metode klasifikasi support vector machine dalam menentukan polaritas sentimen ke dalam bentuk perangkat lunak.

3.3. Alat dan Bahan Penelitian


Penelitian akan dilakukan dengan menggunakan alat berupa perangkat keras dan lunak sebagai berikut : 1. Perangkat Keras Notebook, dengan spesifikasi : Prosesor Dual Core @1.5 GHz RAM 1GB Ruang harddisk kosong 10 GB Keyboard dan Touchpad Layar LCD 10,1 inch dengan resolusi 1024x600 pixel

2. Perangkat Lunak Netbeans versi 6.7.1 Java Development Kit versi 1.6 update 16 RDBMS MySQL versi 5.1 Hidden Markov Model POS Tagger[ALF2010]

18 Sistem operasi Ubuntu versi 10.04

3.4. Metode Penelitian


3.4.1. Eksplorasi dan Studi Literatur Pada tahap ini, penulis mencari dan mempelajari referensi berupa textbook, artikel ilmiah maupun jurnal yang berkaitan dengan penelitian. Topik yang akan dibahas antara lain : analisis sentimen, part-of-speech tag (POS Tag) pada kalimat bahasa Indonesia, algoritma stemming Nazief dan Adriani[NAZ1996], dan metode klasifikasi support vector machine (SVM).

3.4.2.

Pengumpulan Dataset Dataset yang akan digunakan dalam penelitian adalah public

timeline tweet bahasa Indonesia yang merupakan hasil pencarian berdasarkan subyek tertentu. Dataset didapatkan dengan cara crawling dan disimpan dalam bentuk database.

3.4.3.

Praproses Dataset Dataset yang telah disimpan di database kemudian diambil dan

dinormalisasi dengan tahapan sebagai berikut : 1. Tiap tweet dipecah menjadi kata-kata independen atau disebut term dengan karakter spasi (white space) sebagai tanda pemisah (proses pembentukan token atau term). 2. Karakter non-alphanumeric dihilangkan, karakter tersebut antara lain tanda baca dan simbol. 3. Mengubah case semua huruf menjadi huruf lowercase.

19 4. Menghilangkan stop word, seperti kata yang, itu, ke dan lain sebagainya. 5. Stemming tiap term dengan menggunakan algoritma stemming untuk bahasa Indonesia, Nazief dan Adriani[NAZ1996].

3.4.4.

Analisis dan Perancangan Perangkat Lunak Pemahaman teori diterapkan pada dataset pengujian sebagai

langkah analisis solusi permasalahan. Analisis dan perancangan perangkat lunak menggunakan metodologi berbasis objek[PRE2001]. Alur

perancangan perangkat lunak digambarkan pada Gambar 3.2 di bawah ini.

Gambar 3.2

3.4.5.

Implementasi Hasil analisis dan perancangan perangkat lunak diimplementasikan

ke dalam bentuk aplikasi menggunakan pemrograman berbasis objek. Pengumpulan dataset dilakukan dengan membuat perangkat lunak yang mencari hasil pencarian topik memanfaatkan fasilitas pencarian Twitter

20 dengan kata kunci pencarian nama provider internet. Perangkat pencarian topik dibuat menggunakan bahasa pemrograman Java servlet yang secara otomatis dieksekusi dalam waktu yang telah ditentukan. Hasil pencaria kemudian di-parse Implementasi dalam bentuk code perangkat lunak dari analisis sentimen dan metode SVM dilakukan menggunakan bahasa pemrograman Java. Sebagai alat bantu digunakan perangkat lunak HMM POS tagger karya Alfan Farizki Wicaksono[ALF2010] sebagai strategi mempermudah klasifikasi polaritas sentimen. Perangkat lunak POS tagger ini dijadikan sebagai library dalam proses klasifikasi sentimen.

3.4.6.

Pengujian Pengujian perangkat lunak dilakukan baik pada saat analisis dan

desain, maupun saat penerapan perangkat lunak terhadat dataset pengujian. Pengujian saat analisis dan desain meliputi ketepatan semantik, yaitu ketepatan pemodelan kelas sesuai dengan domain masalah di dunia nyata, dan konsistensi model analisis dan desain. Konsistensi model analisis dan desain dapat diukur dari keterhubungan antar kelas. Beberapa fasilitas yang dapat digunakan dalam pengujian konsistensi model antara lain dengan melakukan pengujian pada class-responsibility-collaboration (CRC) model dan object -relationship diagram. Selain pada saat analisis dan desain, pengujian dilakukan juga pada saat penerapan aplikasi terhadap dataset pengujian. Pengujian tahap ini dilakukan dengan maksud mengukur ketepatan perangkat lunak dalam menyelesaikan masalah pada domain dunia nyata. Pengujian ini dilakukan dengan metode black-box testing.

21

3.5. Jadwal Penelitian


No. Tahapan Penelitian 1A 2B 3C 4D 5E 6F 7G 8H I I April 2011 II III IV I Mei 2011 II III IV V I Juni 2011 II III IV

16 24

31

Legenda: 1 2 3 A Eksplorasi dan Studi Literatur B Pengumpulan Dataset C Pemodelan Dataset D Praproses Dataset E Analisis dan Perancangan Perangkat Lunak F Implementasi G Pengujian H Penyusunan Laporan I Target persentase progress (%)

39 47 54 62 70 77 85 93 100 6 7 8 9 10 11 12 13 4 5

Berikut adalah rencana jadwal pelaksanaan penelitian berdasarkan metodologi yang dijelaskan pada subbab sebelumnya. Rencana jadwal di atas merupakan target penulis dalam menyelesaikan penelitian, tetapi dapat berubah disesuaikan dengan kondisi.

xxii

DAFTAR PUSTAKA

[BOL2010]

Bollen, Johan et.al., 2009. Modeling Public Mood and Emotion: Twitter Sentiment and Socio-Economic Phenomena. North Carolina. 2010.

[OKE2010] Okezone. 2010. 20% Pengguna Internet Indonesia Mengunjungi Twitter. http://techno.okezone.com/read/2010/08/12/55/362264/20pengguna-internet-indonesia-mengunjungi-twitter. Diakses tanggal 12 Desember 2010. [CHR2000] Christianini, Nello & John S. Taylor, 2000. An Introduction to Support Vector Machines and Other Kernel-based Learning Methods. Cambridge University Press, 2000. [FRA2008] Franky, 2008. Analisis Sentimen Menggunakan Metode Nave Bayes, Maximum Entropy, dan Support Vector Machine pada Dokumen Berbahasa Inggris dan Dokumen Berbahasa Indonesia Hasil Penerjemahan Otomatis. Depok. 2008. [PAK2010] Pak, Alexander & Patrick Paroubeck, 2010. Twitter as a Corpus for Sentiment Analysis and Opinion Mining. Universit de ParisSud, Laboratoire LIMSI-CNRS, B timent 508, F-91405 Orsay Cedex, France. 2010. [NUG2007] Nugroho, Anto Satriyo, 2007. Pengantar Support Vector Machine. Tanggal dibuat 8 Februari 2007. [ALF2010] Wicaksono, Alfan Farizki & Ayu Purwarianti, 2010. HMM Based POS Tagger for Bahasa Indonesia. On Proceedings of 4th International MALINDO (Malay - Indonesian Language)

xxiii Workshop. 2nd August 2010. [NAZ1996] Nazief, Bobby dan Mirna Adriani, 1996. Confix-Stripping: Approach to Stemming Algorithm for Bahasa Indonesia, Faculty of Computer Science University of Indonesia. [PRE2001] Pressman, Roger S., 2001. Software Engineering: A Practitioner's Approach, Chapter 20-23. New York: McGraw-Hill Companies. [LIU2010] Liu, Bing, 2010. Sentiment Analysis and Subjectivity. To appear in Handbook of Natural Language Processing. Editors: N. Indurkhrya & F. M. Damerau.