1
BAB I
PENDAHULUAN
1.1.
Latar Belakang Perkembangan teknologi informasi yang semakin meningkat memberi
dampak pada pertukaran informasi dan komunikasi yang semakin mudah. Hal ini ditandai dengan dengan munculnya media sosial seperti Twitter, Facebook, Yahoo, Google, Youtube, Instagram, Path. Pertumbuhan media sosial ini juga mendorng adanya informasi tekstual yang besar sehingga muncul kebutuhan penyajian data yang memudahkan pengguna mendapatkan informasi yang akurat. Media sosial twitter merupakan salah satu media komunikasi populer saat ini. Hal ini terlihat dari peningkatan pengguna twitter yang tercatat di seluruh dunia. Berdasarkan data yang dirilis infografis (tahun 2014-2015) Twitter memiliki 302 juta pengguna aktif yang 80 persennya berasal dari perangkat mobile. Dari angka itu, 37 persen pengguna Twitter berusia 18-29 tahun, sedangkan 25 persen lainnya berada di rentan usia 30-49 tahun. Dengan jumlah pengguna aktif sebanyak itu, Twitter menerima kicauan sebanyak 500 juta setiap harinya. Sebanyak 68 persen berupa kicauan balasan, 26 persen berupa kicauan, dan 6 persen adalah kicauan ulang.
51
2
Pengguna twitter yang semakin meningkat ini terlihat dari jutaan tweets yang di posting setiap harinya dengan berbagai topik yang berbeda. Data tweets ini dapat berupa persepsi publik baik ekonomi, perilaku sosial, fenomena alam, perdagangan yang terjadi diseluruh dunia. Data yang besar tersebut bisa dijadikan sebagai objek penelitan, seperti yang telah dilakukan oleh [Cahyanti, O.D., Saksono, P.H., Suryayusra, Negara, E.S., (2015)], dalam penelitiannya twitter sebagai objek penelitan, dengan menggunakan teknik- teknik khusus untuk menjadikan data yang berupa teks dari twitter menjadi informasi. Informasi yang telah didapatkan tersebut juga merefleksikan bagaimana perilaku masyaratak terhadap suatu peristiwa yang sedang terjadi pada kehidupan nyata yang dituangkan pada sosial media. Hasil penelitian yang dilakukan oleh [Cahyanti, O.D., Saksono, P.H., Suryayusra, Negara, E.S., (2015)] mengenai peristiwa jatuhnya pesawat AirAsia QZ8501 yang terjadi tanggal 28 Desember 2014 di Selat Karimata memperlihatkan dari negara mana saja yang ikut mengamati peristiwa jatuhnya pesawat tersebut berdasarkan bahasa yang digunakan pada saat mengunggah tweets, mengidentifikasi tipe pengguna twitter, rentang usia pengguna serta jenis kelamin. Berdasarkan penelitian yang telah ada sebelumnya, penelitan ini mencoba melakukan analisis sentimen data dengan mengklasifikasi data twitter berbahasa Indonesia pada suatu produk. Data tersebut akan diproses dengan text mining untuk menghindari data yang kurang sempurna kemudian mengklasifikasi data tweet ke dalam tiga klasifikasi yaitu klasifikasi positif, negatif, netral. Klasifikasi ini menggunakan algoritma Naïve Bayes Classifier. 51
3
Dari uraian – uraian yang telah dijelaskan dapat diambil suatu masalah untuk dijadikan bahan penelitian yang berjudul “Analisa Sentimen Pada Data Twitter Dengan Menggunakan Text Mining Terhadap Suatu Produk”.
1.2.
Perumusan Masalah Berdasarkan latar belakang yang telah diuraikan maka permasalahan yang
akan dibahas adalah Bagaimana Menganalisis dan mengklasifikasi Sentimen Pada Data Twitter Menggunakan Text Mining terhadap Suatu Produk.?
1.3.
Batasan Masalah Untuk lebih memudahkan dalam melakukan analisis data dan menghindari
pembahasan yang terlalu jauh maka akan dibatasi permasalahan sebagai berikut: 1.
Naïve Bayes Classifier merupakan algoritma yang digunakan untuk pengklasifikasian data Twitter suatu produk berbahasa Indonesia.
2.
Penelitian ini menggunakan data teks berbahasa Indonesia yang bersumber dari media sosial yaitu Twitter.
1.4.
Tujuan dan Manfaat Penelitian
1.4.1. Tujuan Penelitian Adapun tujuan penelitian ini adalah : 1.
Mengklasifikasikan data Twitter dengan menggunakan Algoritma Naïve Bayes Classifier.
2.
Mendapatkan Kategori Analisis Sentimen positif, negatiif dan netral dari text berbahasa Indonesia yang ada pada data twitter suatu produk.
51
4
1.4.2. Manfaat Penelitian Adapun manfaat penelitian ini adalah: 1.
Memperoleh informasi terkait dengan suatu produk dan menentukan apakah produk tersebut dinilai positif, negatif atau netral di twitter.
2.
1.5.
Memperoleh klasifikasi sentimen pada twitter secara otomatis.
Metodologi Penelitian
1.5.1. Waktu dan Tempat Penelitian Pada Penelitian ini penulis membutuhkan waktu 6 bulan melakukan
analisis
data,
perancangan,
pengkodean,
pengujian
untuk hingga
pendokumentasian. Objek pada penelitian ini adalah media social yaitu Twitter. 1.5.2. Metode Penelitian Metode penelitian yang di gunakan dalam penelitian ini ialah metode Deskriptif. Metode deskriptif adalah suatu metode yang digunakan untuk menggambarkan atau menganalisis suatu hasil penelitian tetapi tidak digunakan untuk membuat kesimpulan yang lebih luas. [Sugiyono, (2005: 21)]. Dalam penelitian ini penulis menggunakan metode penelitian deskriptif untuk mendeskripsikan fenomena yang terjadi di seluruh dunia melalui media sosial twitter. Dengan menganalisa data tweet yang di up-date oleh pengguna twitter seputar informasi terhangat yang terjadi di seluruh dunia. 1.5.3. Metode Pengumpulan Data Metode pengumpulan data yang digunakan oleh penulis adalah kajian kepustakaan, dimana sumber data utama dalam penelitian ini berasal dari jurnal-
51
5
jurnal ilmiah, artikel ilmiah, internet, dan laporan-laporan yang berkaitan dengan pemanfaatan data tweet pada media sosial twitter. 1.5.4. Metode Analisis Pada metode analisis terdapat langkah-langkah dasar yang akan dilakukan adalah: 1. Identify, yaitu melakukan proses identifikasi masalah. 2. Understand, yaitu memahami kerja dari sistem yang ada. 3. Analysis, yaitu melakukan analisa terhadap sistem. 4.
Report, yaitu membuat laporan dari hasil analisis
[Mulyanto, (2009:129)].
1.6.
Sistematika Penulisan Sistematika dalam penulisan ini menguraikan struktur bab dalam
penelitian dan gambaran umum sebagai berikut : BAB I PENDAHULUAN Pada bab ini berisi latar belakang masalah, rumusan masalah, tujuan dan manfaat penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan. BAB II LANDASAN TEORI Pada bab ini menguraikan pengertian mengenai tinjauan pustaka yang berisi tentang teori-teori yang mendukung dalam penilitian ini. BAB III ANALISA DAN PERANCANGAN Pada bab ini menjelaskan tentang analisis sistem, perancangan sistem dan perancangan antarmuka. 51
6
BAB IV HASIL DAN PEMBAHASAN Pada bab ini menguraikan tentang hasil dan pembahasan tentang tujuan dari penelitian ini. BAB V KESIMPULAN DAN SARAN Pada bab ini menguraikan kesimpulan dari keseluruhan bab dan diikuti dengan saran.
51
7
BAB II
LANDASAN TEORI
2.1.
Analisis Sentimen Penelitian mengenai analisis sentimen terus berkembang, di setiap
penelitian memiliki perbedaan baik mengenai metode, data, Bahasa, algoritma maupun perhitungan pembobotan yang berbeda. Analisis Sentimen atau opinion mining mengacu pada bidang yang luas dari pengolahan bahasa alami, komputasi linguistik dan text mining yang bertujuan menganlisa pendapat, sentimen, evaluasi, sikap, penilaian dan emosi seseorang apakah pembicara atau penulis berkenaan dengan suatu topik , produk, layanan, organisasi, individu, ataupun kegiatan tertentu (Liu, 2011). Tugas dasar dalam analisis sentimen adalah mengelompokkan teks yang ada dalam sebuah kalimat atau dokumen kemudia menentukan pendapat yang dikemukakan dalam kaliamat atau dokumen tersebut apakah bersifat positif, negatif atau netral (Dehaff, M., 2010). Ekspresi atau sentiment mengacu pada fokus topik tertentu, pernyataan pada satu topik mungkin akan berbeda makna dengan pernyataan yang sama pada subject yang berbeda. Oleh karena itu pada beberapa penelitian, terutama pada review produk, pekerjaan didahului dengan
51
8
menentukan elemen dari sebuah produk yang sedang dibicarakan sebelum memulai proses opinion mining (Barber, 2010).
2.2.
Twitter Menurut [Jansen, B.J, Zhang, M., Sobel, K., Chowdury, A., (2009)] twitter
merupakan sebuah situs web yang dimiliki dan dioperasikan oleh Twitter Inc, yang menawarkan jejaring sosial berupa mikroblog sehingga memungkinkan penggunanya untuk mengirim dan membaca pesan yang disebut tweets. Tweets melalui situs Twitter, aplikasi eksternal yang kompatibel (telepon seluler), atau dengan pesan singkat (SMS) yang tersedia di negara-negara tertentu. Pengguna dapat menulis pesan berdasarkan topik dengan menggunakan tanda # (hashtag). Sedangkan untuk menyebutkan atau membalas pesan dari pengguna lain bisa menggunakan tanda @. Pesan pada awalnya diatur hanya mempunyai batasan sampai 140 karakter disesuaikan dengan kompatibilitas dengan pesan SMS, memperkenalkan singkatan notasi dan slang yang biasa digunakan dalam pesan SMS. Batas karakter 140 juga meningkatkan penggunaan layanan memperpendek URL seperti bit.ly, goo.gl, dan tr.im, dan jasa hosting konten, seperti Twitpic, Tweephoto, memozu.com dan NotePub untuk mengakomodasi multimedia isi dan teks yang lebih panjang daripada 140 karakter. Twitter menggunakan bit.ly untuk memperpendek otomatis semua URL yang dikirim-tampil. Twitter Timelines merupakan istilah yang menggambarkan kumpulan seluruh update status dari pengguna akun twitter yang di follow oleh pengguna. Biasanya ditampilkan dalam bentuk satu kolom kotak. Twitter timelines biasanya 51
9
ditampilkan berdasarkan waktu penerbitan tweet. Tweet yang terbaru akan ditampilkan dalam kotak paling atas. Jenis sosial media seperti Twitter dapat menciptakan serta menggerakkan komunitas, mengendalikan traffic di blog, website. Twitter juga bersifat real time, mengembangkan jaringan yang tak terbatas, dapat menyebarkan ide, membuka peluang pasar, menciptakan personal brand, dapat meningkatkan pelayanan kepada konsumen serta memanusiakan brand. Menurut Puntoadi (2011:129-131) dalam Dosi Aprilinda Palewa (2013:34), twitter memiliki kelebihan, yaitu : 1. Following : twitter dapat mengidentifikasi jumlah akun yang diikuti. 2. Followers : twitter dapat mengidentifikasi jumlah akun yang mengikuti. 3. Updates : twitter mendeteksi seberapa sering orang melakukan posting (menulis konten) 4. Men-tag nama : beberapa orang akan terlibat dalam pembicaraan apabila mencantumkan akun pada setiap status yang ditulis. 5. Re-tweet : dengan me-retweet status followers lain menunjukkan tweets tersebut menarik untuk dibahas. Tweet tersebut dapat dibaca oleh seluruh followers. 6. Keterlibatan : brand harus mampu untuk meningkatkan keterlibatan para konsumen dalam berbagai percakapan. 7. Kecepatan : konsitensi dan frekuensi diperlukan untuk mengimbangi kecepatan perubahan informasi yang beredar di twitter.
51
10
2.3.
Text Mining Text mining adalah bidang interdisipliner yang mengacu pada pencarian
informasi, pertambangan data, pembelajaran mesin, statistik, dan komputasi linguistik. Dikarenakan kebanyakan informasi (perkiraan umum mengatakan lebih dari 80%) saat ini disimpan sebagai teks, text mining diyakini memiliki potensi nilai komersial tinggi (Bridge, 2011). Text mining merupakan teknik yang digunakan untuk menangani extraction
masalah
klasifikasi,
clustering,
information
dan information retrival (Berry & Kogan, 2010). Text mining
(penambangan teks) adalah penambangan yang dilakukan oleh komputer untuk mendapatkan sesuatu yang baru, sesuatu yang tidak diketahui sebelumnya atau menemukan kembali informasi yang tersirat secara implisit, yang berasal dari informasi yang diekstrak secara otomatis dari sumber-sumber data teks yang berbeda- beda (Feldman & Sanger, 2007). Text mining mengacu pada proses mengambil informasi berkualitas tinggi dari teks. Informasi berkualitas tinggi biasanya diperoleh melalui peramalan pola dan kecenderungan melalui sarana seperti pembelajaran pola statistic. Proses text mining yang khas meliputi kategorisasi teks, text clustering, ekstraksi konsep/entitas, produksi taksonomi granular, sentiment analysis, penyimpulan dokumen, dan pemodelan relasi entitas (yaitu, pembelajaran hubungan antara entitas bernama) (Saraswati, 2013).
Pendekatan manual text mining secara
intensif dalam laboratorium pertama muncul pada pertengahan 1980-an, namun kemajuan teknologi telah memungkinkan ranah tersebut untuk berkembang selama dekade terakhir. Text mining biasanya melibatkan proses penataan teks input (biasanya parsing, bersama dengan penambahan beberapa fitur linguistik 51
11
turunan dan penghilangan beberapa diantaranya, dan penyisipan subsequent ke dalam database), menentukan pola dalam data terstruktur, dan akhirnya mengevaluasi dan menginterpretasi output. Berkualitas tinggi di bidang text mining biasanya mengacu ke beberapa kombinasi relevansi, kebaruan, dan interestingness.(Saraswati, 2011). Tahap-tahap text mining secara umum adalah text preprocessing dan feature selection (Feldman & Sanger
2007, Berry & Kogan 2010). Dimana
penjelasan dari tahap-tahap tersebut adalah sebagai berikut: 1.
Text Preprocessing Tahap text preprocessing adalah tahap awal dari text mining. Tahap ini mencakup semua rutinitas, dan proses untuk mempersiapkan data yang akan digunakan pada operasi knowledge discovery sistem text mining (Feldman & Sanger, 2007). Tahapan yang akan dilakukan proses text mining, pada umumnya memiliki beberapa karakteristik diantaranya adalah memiliki dimensi yang tinggi, terdapat noise pada data, dan terdapat struktur teks yang tidak baik. Cara yang digunakan dalam mempelajari suatu data teks, adalah dengan terlebih dahulu menentukan fitur-fitur yang mewakili setiap kata untuk setiap fitur yang ada pada dokumen. Sebelum menentukan fitur-fitur yang mewakili, diperlukan tahap preprocessing yang dilakukan secara umum dalam teks mining pada dokumen, yaitu case folding, tokenizing, filtering, stemming, tagging dan analyzing (Triawati, 2009).
51
12
a. Case folding dan Tokenizing Case folding adalah mengubah semua huruf dalam dokumen menjadi huruf kecil. Hanya huruf “a” sampai dengan “z” yang diterima. Karakter selain huruf dihilangkan dan dianggap delimiter (Triawati, 2009). Contoh pemakaian case folding : Bagaimana keadaanmu Hari ini? bagaimana keadaanmu hari ini
Tahap tokenizing / parsing adalah tahap pemotongan string input berdasarkan tiap kata yang menyusunnya. Contoh Tokenizing : bagaimana keadaanmu hari ini
bagaimana keadaanmu hari ini
b. Filtering Filtering adalah tahap mengambil kata-kata penting dari hasil token. Bisa menggunakan algoritma stoplist (membuang kata yang kurang penting) atau wordlist (menyimpan kata penting). Stoplist/stopword adalah katakata yang tidak deskriptif yang dapat dibuang dalam pendekatan bag-ofwords. Contoh stopwords adalah “yang”, “dan”, “di”, “dari”, dan seterusnya.( Triawati, 2009) . Contoh Filtering : bagaimana keadaanmu hari ini
keadaan hari ini
c. Stemming Tahap stemming adalah tahap mencari root kata dari tiap kata hasil filtering. Pada tahap ini dilakukan proses pengembalian berbagai bentukan kata ke dalam suatu representasi yang sama (Agusta, 2009). 51
13
Tahap ini kebanyakan dipakai untuk teks berbahasa Inggris dan lebih sulit diterapkan pada teks berbahasa Indonesia. 2.
Feature Selection Tahap seleksi fitur (feature selection) bertujuan untuk mengurangi dimensi dari suatu kumpulan teks, atau dengan kata lain menghapus kata-kata yang
dianggap
tidak penting atau tidak menggambarkan isi dokumen
sehingga proses pengklasifikasian lebih efektif dan akurat (Do et al, 2006., Feldman & Sanger, 2007., Berry & Kogan 2010). Saat ini text mining telah mendapat perhatian dalam berbagai bidang diantaranya (Saraswati, 2011) : 1.
Aplikasi keamanan Banyak paket perangkat lunak text mining dipasarkan terhadap aplikasi keamanan, khususnya analisis plain text seperti berita internet. Hal ini juga mencakup studi enkripsi teks.
2.
Aplikasi biomedis Berbagai aplikasi text mining dalam literatur biomedis telah disusun. Salah satu contohnya adalah PubGene yang mengkombinasikan text mining biomedis dengan visualisasi jaringan sebagai sebuah layanan Internet. Contoh lain text mining adalah GoPubMed.org. Kesamaan semantik juga telah digunakan oleh sistem text mining yaitu GOAnnotator.
3.
Perangkat Lunak dan Aplikasi Departemen riset dan pengembangan perusahaan besar, termasuk IBM dan Microsoft, sedang meneliti teknik text mining dan mengembangkan program untuk lebih mengotomatisasi proses pertambangan dan analisis. Perangkat 51
14
lunak text mining juga sedang diteliti oleh perusahaan yang berbeda yang bekerja di bidang pencarian dan pengindeksan secara umum sebagai cara untuk meningkatkan performansinya. 4.
Aplikasi Media Online Text mining sedang digunakan oleh perusahaan media besar, seperti perusahaan Tribune, untuk menghilangkan ambigu informasi dan untuk memberikan pembaca dengan pengalaman pencarian yang lebih baik, yang meningkatkan loyalitas pada site dan pendapatan. Selain itu, editor diuntungkan dengan mampu berbagi, mengasosiasi dan properti paket berita, secara signifikan meningkatkan peluang untuk menguangkan konten.
5.
Aplikasi Pemasaran Text mining juga mulai digunakan dalam pemasaran, lebih spesifik dalam analisis manajemen hubungan pelanggan.
6.
Sentiment Analysis Sentiment Analysis mungkin melibatkan analisis dari review film untuk memperkirakan berapa baik review untuk sebuah film. Analisis semacam ini mungkin memerlukan kumpulan data berlabel atau label dari efektifitas katakata. Sebuah sumber daya untuk efektivitas kata-kata telah dibuat untuk WordNet.
7.
Aplikasi Akademik Masalah text mining penting bagi penerbit yang memiliki database besar untuk mendapatkan informasi yang memerlukan pengindeksan untuk pencarian. Hal ini terutama berlaku dalam ilmu sains, di mana informasi yang sangat spesifik sering terkandung dalam teks tertulis. Oleh karena itu, inisiatif 51
15
telah diambil seperti Nature’s proposal untuk Open Text Mining Interface (OTMI) dan Health’s common Journal Publishing untuk Document Type Definition (DTD) yang akan memberikan isyarat semantik pada mesin untuk menjawab pertanyaan
spesifik
yang
terkandung dalam teks
tanpa
menghilangkan barrier penerbit untuk akses publik. Sebelumnya, website paling sering menggunakan pencarian berbasis teks, yang hanya menemukan dokumen yang berisi kata-kata atau frase spesifik yang ditentukan oleh pengguna. Sekarang, melalui penggunaan web semantik, text mining dapat menemukan konten berdasarkan makna dan konteks (daripada hanya dengan kata tertentu). Text mining juga digunakan dalam beberapa filter email spam sebagai cara untuk menentukan karakteristik pesan yang mungkin berupa iklan atau materi yang tidak diinginkan lainnya. Dengan text mining tugas-tugas yang berhubungan dengan penganalisaan teks dengan jumlah yang besar, penemuan pola serta penggalian informasi yang mungkin berguna dari suatu teks dapat dilakukan. Sebagai bentuk aplikasi dari text mining, sistem klasifikasi berita menggunakan berita sebagai sumber informasi dan informasi klasifikasi sebagai informasi yang akan diekstrak dari sumber informasi. Informasi klasifikasi dapat berbentuk angka-angka probabilitas, set aturan atau bentuk lainnya.
2.4.
Klasifikasi Klasifikasi adalah proses untuk menemukan model atau fungsi yang
menjelaskan atau membedakan konsep atau kelas data dengan tujuan untuk memperkirakan kelas yang tidak diketahui dari suatu objek (Tan et all, 2004). Dalam pengklasifikasian data terdapat dua proses yang dilakukan yaitu: 51
16
1.
Proses training Pada proses training digunakan training set yang telah diketahui labellabelnya untuk membangun model atau fungsi.
2.
Proses testing Untuk mengetahui keakuratan model atau fungsi yang akan dibangun pada proses training, maka digunakan data yang disebut dengan testing set untuk memprediksi label-labelnya.
Gambar 2.1 Tahapan Proses Klasifikasi (http://www.informatika.unsyiah.ac.id/tfa/dm/DM-Praktikum-Decision-Tree.pdf)
Tujuan dari klasifikasi adalah untuk: 1.
Menemukan model dari training set yang membedakan record kedalam kategori atau kelas yang sesuai, model tersebut kemudian digunakan untuk mengklasifikasikan record yang kelasnya belum diketahui sebelumnya pada test set.
2.
Mengambil keputusan dengan memprediksikan suatu kasus, berdasarkan hasil klasifikasi yang diperoleh. Klasifikasi merupakan penempatan objek-objek ke salah satu dari
beberapa kategori yang telah ditetapkan sebelumnya. Klasifikasi telah banyak 51
17
ditemui dalam berbagai aplikasi. Sebagai contoh, pendeteksian pesan email, spam berdasarkan header dan isi atau mengklasifikasikan galaksi berdasarkan bentukbentuknya. Data input untuk klasifikasi adalah koleksi record. Setiap record dikenal sebagai instance atau contoh yang ditentukan oleh sebuah tuple (x,y). Dimana x adalah himpunan atribut dan y adalah atribut tertentu, yang dinyatakan sebagai label class (juga dikenal sebagai kategori atau atribut target). Klasifikasi adalah tugas pembelajaran sebuah fungsi target f yang memetakan setiap himpunan atribut x ke salah satu label kelas y yang telah di definisikan sebelumnya. Fungsi target juga di kenal secara informal sebagai model klasifikasi (tan et all, 2006). Model klasifikasi terdiri dari dua bagian yaitu: 1.
Pemodelan Deskriptif Model klasifikasi dapat bertindak sebagai alat penjelas untuk membedakan objek objek dari kelas kelas yang berbeda. Sebagai contoh untuk para ahli Biologi, model deskriptif yang meringkas data.
2.
Pemodelan Prediktif Model klasifikasi juga dapat di gunakan untuk memprediksikan label kelas dari record yangn tidak diketahui. Seperti pada gambar 2 tampak sebuah model klasifikan dapat dipandang sebagai kotak hitam yang secara otomatis memberikan sebuah label ketika dipresentasikan dengan himpunan atribut dari record yang tidak di ketahui. Input
Output Classification
Attribut set (x)
model
Class label (y)
Gambar 2.2 Klasifikasi sebagai suatu tugas memetakan atribut x ke 51
18
dalam label kelas y (Tan et all, 2006) Beberapa teknik klasifikasi yang digunakan adalah decision tree classifier, rule-based classifier, neural-network, support vector machine, dan naïve bayes classifier,
Setiap
teknik
menggunakan
algoritme
pembelajaran
untuk
mengidentifikasi model yang memberikan hubungan yang paling sesuai antara himpunan atribut dan label kelas dari data input. Pendekatan umum yang digunakan dalam masalah klasifikasi adalah, pertama,training set berisi record yang mempunyai label kelas yang diketahui haruslah tersedia . Training set digunakan untuk membangun model klasifikasi , yang kemudian diaplikasikan ke test set, yang berisi record-record dengan label kelas yang tidak di ketahui. Dalam klasifikasi, terdapat target variabel kategori. Sebagai contoh, penggolongan pendapatan dapat dipisahkan dalam tiga kategori, yaitu pendapatan tinggi, pendapatan sedang, dan pendapatan rendah. Contoh lain klasifikasi dalam bisnis dan penelitian adalah: a.
Menentukan apakah suatu transaksi kartu kredit merupakan transaksi yang curang atau bukan.
b.
Memperkirakan apakah suatu pengajuan hipotek oleh nasabah merupakan suatu kredit yang baik atau buruk.
c.
Mendiagnosa penyakit seorang pasien untuk mendapatkan kategori apa. Klasifikasi dokumen adalah proses pengelompokan dokumen sesuai
dengan kategori yang dimilikinya. Klasifikasi dokumen merupakan masalah yang mendasar namun sangat penting karena manfaatnya cukup besar mengingat jumlah dokumen yang ada setiap hari semakin bertambah. Sebuah dokumen dapat 51
19
dikelompokkan ke dalam kategori tertentu berdasarkan kata-kata dan kalimatkalimat yang ada di dalam dokumen tersebut. Kata atau kalimat yang terdapat di dalam sebuah dokumen memiliki makna tertentu dan dapat digunakan sebagai dasar untuk menentukan kategori dari dokumen tersebut.
2.5.
Naïve Bayes Classifier Naïve bayes klasifikasi merupakan metode terbaru yang digunakan untuk
memprediksi probabilitas. Algoritma ini memanfaatkan teori probabilitas yang dikemukakan oleh ilmuwan Inggris Thomas Bayes, yaitu memprediksi probabilitas di masa depan berdasarkan pengalaman di masa sebelumnya. Dua kelompok peneliti, satu oleh Pantel dan Lin, dan yang lain oleh Microsoft Research memperkenalkan metode statistik bayesian. Tetapi yang membuat naïve bayesian ini popular adalah pendekatan yang dilakukan oleh Paul Graham. Banyak aplikasi ini menghubungkan antara atribut set dan variabel kelas yang non deterministic. Dengan kata lain, label kelas test record tidak dapat diprediksi dengan peristiwa tertentu meski atribut set identik dengan beberapa contoh training. Situasi ini makin meningkat karena noisy data atau kehadiran factor confouding tertentu yang mempengaruhi klasifikasi tetapi tidak termasuk di dalam analisis. Sebagai contoh, perhatikan tugas memprediksi apakah seseorang beresiko terkena penyakit jantung berdasarkan diet yang dilakukan dan olahraga teratur. Meski mempunyai pola makan sehat dan melakukan olahraga teratur, tetapi masih beresiko terkena penyakit jantung karena faktor faktor lain seperti keturunan, merokok, dan penyalahgunaan alkohol. Untuk menentukan apakah diet sehat dan olahraga teratur yang dilakukan sesorang adalah cukup menjadi subyek 51
20
interpretasi,
yang
akan
memperkenalkan
ketidakpastian
pada
masalah
pembelajaran. Algoritma naive bayes classifier merupakan algoritma yang digunakan untuk mencari nilai probabilitas tertinggi untuk mengklasifikasi data uji pada kategori yang paling tepat (Feldman & Sanger 2007). Dalam penelitian ini yang menjadi data uji adalah data tweets. Ada dua tahap pada klasifikaasi data yang pertama pelatihan terhadap dokumen yang sudah diketahui kategorinya. Sedangkan kedua adalah proses klasifikasi dokumen yang belum diketahui kategorinya. Dalam algoritma naïve bayes classifier setiap dokumen direpresentasikan dengan pasangan atribut “x1, x2, x3,...xn” dimana x1 adalah kata pertama, x2 adalah kata kedua dan seterusnya. Sedangkan V adalah himpunan kategori Tweet. Pada saat klasifikasi algoritma akan mencari probabilitas tertinggi dari semua kategori dokumen yang diujikan (VMAP), dimana persamaannya adalah sebagai berikut:
(2.1)
Keterangan : Vj
= Kategori tweet j =1, 2, 3,…n.
P(xi|Vj) = Probabilitas xi pada kategori Vj P(Vj)
= Probabilitas dari Vj 51
21
Naïve bayes classifier memiliki asumsi bahwa hubungan antar atribut adalah saling bebas. Naïve bayes classifier memiliki beberapa keuntungan dan kelemahan yaitu diantaranya : Keuntungan : a.
Hasilnya cukup baik untuk sebagian besar kasus dan mudah diimplementasikan.
b.
Bila asumsi saling bebas terpenuhi, maka tingkat akurasinya sangat tinggi
Kelemahan : a.
Adanya asumsi saling bebas antar atributnya terkadang akan menurunkan tingkat akurasi.
b.
Biasanya dalam kehidupan nyata selalu ada hubungan antar atribut sehingga asumsi saling bebas menjadi tidak terpenuhi dan keterkaitan tersebut tidak dapat dimodelkan oleh naïve bayes classifier.
c.
Perkiraan kemungkinan class yang tidak akurat.
d.
Batasan atau threshold harus ditentukan secara manual bukan secara analitis
2.6.
MongoDB MongoDB adalah salah satu NoSQL yang berorientasi dokumen yang
dikembangkan secara kode terbuka (Open Source) oleh 10 gen. Beberapa karakteristik penting dari MongoDB adalah penyimpanan data dalam collections dan masing – masing collections memiliki documents yang diserialisasi dengan menggunakan BSON (Binary JSON). Perbandingan antara MongoDB dan SQL Server pernah dilakukan dalam lingkungan sistem pengambilan keputusan dan layanan data secara interaktif yang mengatakan sisi kinerja SQL Server lebih unggul meskipun aspek lainnya NoSQL memiliki keunggulan yang berbeda. [Rahardjo, A.W., Emanuel., Sentosa., J., (2013)]. 51
22
MongoDB memiliki perbedaan dengan RDBMS seperti yang ditampilkan pada gambar berikut ini :
Gambar 2.3. Perbedaan RDBMS dan MongoDb Tidak seperti
database
relasional
lainnya
yang
menunjukkan
rancangan skema beberapa tabel dan menunjukkan relasi di antaranya, pada MongoDB tidak ada istilah relasi. Keuntungan MongoDB daripada RDBMS ialah : 1.
Skema berkurang, MongoDB merupakan database dokumen dimana padasetiap koleksi memiliki dokumen yang berbeda. Field, isi, ukuran dokumen bisa berbeda dari dokumen lainnya.
2.
Struktur objek tunggal yang jelas
3.
Tidak ada relasi
4.
Kemampuan query yang mendalam
5.
Mudah untuk digambarkan
6.
Konversi/pemetaan dari aplikasi objek ke database objek tidak dibutuhkan 51
23
7.
Menggunakan internal memori untuk penyimpanan, mampu mengakses data lebih cepat. MongoDB sangat cocok digunakan untuk Big Data, Content Management
and Delivery, Mobile and Social Infrastructure, User Data Management, dan Data Hub. Ada beberapa kekurangan MongoDB diantaranya : 1.
MongoDB harus di instal di sebuah server , dan ketika kita menggunakan PHP anda juga harus merestart server anda driver mongoDB anda dapat digunakan oleh PHP
2.
Belum support di hosting, namun bisa diakali dengan menggunakan MongoHQ (untuk free terdapat limit sampai 16MB)
MongoDB hadir dengan beberapa kelebihan yaitu : 1.
Performa yang ditawarkan MongoDB lebih cepat dibandingkan MySQL ini disebabkan oleh memcached dan format dokumennya yang berbentuk seperti JSON
2.
Replikasi, adalah fitur yang sangat bermanfaat untuk backup data secara realtime.
3.
MongoDB sangat cocok digunakan untuk portal berita ataupun blog, namun belum cocok untuk digunakan pada sistem informasi yang berkaitan dengan keuangan karena MongoDB tidak mendukung transaction SQL
4.
Auto-sharding, merupakan fitur untuk memecah database yang besar menjadi beberapa bagian demi optimalisasi performa database. Penggunaannya sendiri sangat berguna ketika Anda memiliki website dengan database yang jutaan baris, sharding akan membantu memecahnya menjadi beberapa bagian 51
24
5.
MongoDB juga sudah mendukung C, C++, C#, Erlang, Haskell, Java, JavaScript, .NET(C# F#, PowerShell), Lips, Perl, PHP, Python, Ruby dan Scala Cross-platform, sehingga dapat digunakan di Windows, Linux, OS X dan Solaris
6.
Proses Create, Read, Update, Delete (CRUD) terasa sangat ringan.
7.
Map/Reduce, akan sangat membantu ketika kita melakukan operasi agregasi. Dimana semua entry datangnya dari collection dan outputnya pun akan menjadi collection juga.
2.7.
Unified Modeling Language (UML) Definisi Unified Modeling Language (UML) adalah standar bahasa untuk
menentukan,
memvisualisasikan,
membangun,
dan
mendokumentasikan
pengembangan dari sistem perangkat lunak yang berbasis Object Oriented. Pada umumnya UML digunakan untuk pemodelan sistem perangkat lunak namun bisa juga untuk memodelkan sisitem seperti aliran proses di unit manufaktur dll. UML bukanlah bahasa pemrograman tetapi media yang digunakan untuk menghasilkan kode
dalam
berbagai
bahasa
menggunakan
UML
diagram
(http://www.tutorialspoint.com/uml/index.htm, 2015). Berikut ini adalah jenis diagram UML menurut Henderi (2010:6) yaitu:
1.
Use Case Diagram Use Case Diagram secara grafis menggambarkan, interaksi secara sistem, sistem eksternal dan pengguna. Dengan kata lain use case diagram secara grafis mendeskripsikan siapa yang akan menggunakan sistem dan dalam cara 51
25
apa pengguna (user) mengharapkan interaksi dengan sistem itu. Use case secara naratif digunakan untuk secara tekstual menggambarkan sekuensi langkah-langkah dari tiap interaksi. 2.
Class Diagram Menggambarkan struktur object sistem. Diagram ini menunjukan class diagram yang menyusun sistem dan hubungan antara class object tersebut.
3.
Sequence Diagram Secara grafis menggambarkan bagaimana object berinteraksi satu sama lain melalui pesan pada sekuensi sebuah use case atau operasi.
4.
State Chart Diagram Digunakan untuk memodelkan behaviour objek khusus yang dinamis. Diagram ini mengilustrasikan siklus hidup objek berbagai keadaan yang dapat diasumsikan oleh objek dan event-event (kejadian) yang menyebabkan objek dari satu state ke state yang lain.
5.
Activity Diagram Secara grafis untuk menggambarkan rangkaian aliran aktivitas baik proses bisnis maupun use case. Activity Diagram dapat juga digunakan untuk memodelkan action yang akan dilakukan saat operasi dieksekusi, dan memodelkan hasil dari action tersebut.
2.8.
Kerangka Pemikiran
51
26
Kerangka Pemikiran pada penelitian ini akan menjelaskan alur –alur pikiran yang dirangkum dalam sebuah gambar. Dalam kerangka pemikiran ini menggunakan data twitter yang ditarik dengan menggunakan Search API seperti penelitian sebelumnya. Data tweet kemudian dibersihkan dengan text mining yang didalamnya terjadi preprocessing dan feature selection serta menggunakan metode . Selanjutnya data tweet bersih akan dijadikan data training. Data training berguna sebagai data latih dimana akan diberikan nilai positif, nilai negatif secara manual.
Setelah proses training selesai akan diuji dengan menggunakan
klasifikasi naïve bayes classifier. Algoritma ini akan memberikan nilai sentimen negatif, sentiment positif atau netral di setiap tweet yang ada. Berikut Kerangka Pemikiran penelitian ini
Mulai data tweet (ditarik dengan menggunakan twitter API)
Proses text mining (akan dilakukan preprocessing dan feature selection)
Algoritma Naive Bayes Classifier mengklasifikasi sentimen
Nilai sentimen positif, negative atau netral
Selesai
Gambar 2.4. Kerangka Pemikiran
2.9.
Penelitian Sebelumnya 51
27
Penelitian sebelumnya telah dilakukan oleh [Cahyanti, O.D., Saksono, P.H., Suryayusra, Negara, E.S., (2015)], penulis menggunakan twitter sebagai objek penelitian. Untuk menganalisa data twitter ini diperlukan teknik-teknik khusus untuk menjadikan data yang berupa teks dari twitter menjadi informasi yang selanjutnya dapat dijadikan bahan untuk penelitian. Penulis melakukan penelitian mengenai peristiwa jatuhnya pesawat AirAsia QZ8501 yang terjadi pada tanggal 28 Desember 2014 di selat Karimata, Indonesia. Pada penelitian ini, penulis memperlihatkan dari negara mana saja yang ikut mengamati peristiwa jatuhnya pesawat tersebut berdasarkan bahasa yang digunakan pada saat mengunggah tweets mereka. Penelitian lain dilakukan oleh [SN, Azhari., Hidayatullah, AF., 2014]. Penelitian ini melakukan analisis sentimen dan klasifikasi kategori terhadap tokoh public pada twitter. Metode klasifikasi yang digunakan adalah Support Vector Machine dan Naïve Bayes Classifier. Klasifikasi sentiment terdiri dari positif dan negatif. Penelitian yang dilakukan oleh [Permatasari, D.R. 2014]. Penelitian ini melakukan analisis sentiment nasabah bank X menggunakan pengklasifikasia naïve bayes classifier.Penelitian ini mencari tingkat kecocokan naïve bayes classifier dalam mengklasifikasikan kalimat sentiment ke dalam kelas positif dan negative. Hasi dari penelitian ini naïve bayes classifier memberikan nilai error untuk mengklasifikasikan kalimat sentiment ke dalam kelas positif dan kelas negatif sebesar 24,26%. Penelitian yang serupa juga dilakukan oleh [Winarko, Edi., Putranti, ND., 2014. Penelitian ini melakukan Analisis Sentimen Twitter untuk teks Berbahasa 51
28
Indonesia dengan Maximum Entropy Support Vector Machine. Dalam penelitian ini data opini diperoleh dari jejaringan sosial twitter berdasarkan query dalam Bahasa Indonesia. Data yang sudah terkumpul dilakukan proses preprocessing dan POS tagger untuk menghasilkan suatu klasifikasi. Hasil dari klasifikasi diperoleh akurasi 86.81%.
51
29
BAB III
ANALISA DAN PERANCANGAN
3.1. Analisis Sistem Analisis sistem yang digunakan untuk menyelesaikan masalah pada penelitan ini terdiri dari beberapa langkah – langkah yaitu: 1.
Analisis masalah
2.
Pengumpulan data
3.
Proses Text Mining
4.
Penerapan metode Klasifikasi naïve Bayes Classifier
3.1.1. Analisis Masalah Pengguna twitter yang semakin meningkat ini terlihat dari jutaan tweets yang di posting setiap harinya dengan berbagai topik yang berbeda. Data tweets ini dapat berupa persepsi publik baik ekonomi, perilaku sosial, fenomena alam, perdagangan yang terjadi diseluruh dunia. Data yang besar tersebut bisa dijadikan sebagai objek penelitan, seperti yang telah dilakukan oleh [Cahyanti, O.D., Saksono, P.H., Suryayusra, Negara, E.S., (2015)], dalam penelitiannya twitter sebagai objek penelitan, dengan menggunakan teknik- teknik khusus untuk menjadikan data yang berupa teks dari twitter menjadi informasi. Informasi yang telah didapatkan tersebut juga merefleksikan bagaimana perilaku masyarakat 51
30
terhadap suatu peristiwa yang sedang terjadi pada kehidupan nyata yang dituangkan pada sosial media. Informasi yang terkandung dalam tweets dapat digunakan sebagai nilai jual bagi pelaku usaha. Salah satu contoh perusahaan yang ingin mengetahui nilai jual produknya laku dipasaran atau tidak. Kita sebut saja perusahan yang memproduksi kosmetik seperti lipstick wardah, sabun cuci seperti Rinso. Perusahaan ini akan mencari opini dari pengguna produk tersebut apakah produknya di nilai positif atau negatif. Hal ini dilakukan untuk mengambil langkah strategis agar produknya tetap diminati masyarakat. Penilaian produk pada suatu perusahaan disebut dengan analisis sentimen. analisis sentiment yang ada sekarang dilakukan secara manual. Oleh karena itu untuk mendapatkan nilai sentiment secara otomatis dari suatu produk tersebut memiliki tantangan. Tantangan berupa teks yang tidak formal yang digunakan oleh pengguna twitter dalam mengeluarkan opini. Untuk itu dari penelitian ini menggunakan proses text mining yang di dalamnya terdapat tahapan preprocessing dan Ekstraksi fitur serta naïve bayes classifier sebagai metode klasifikasi nilai sentimen apakah opini bernilai positif atau negatif. 3.1.2. Pengumpulan Data Pada penelitian ini pengumpulan data dimulai dengan penarikan data tweet dari server twitter yang kemudian disimpan kedalam MongoDB. Penarikan data tweet dilakukan dengan menggunakan fasilitas Application Programming Interface (API). API adalah fasilitas yang telah disediakan oleh twitter. Application Programming Interface (API) ini mengambil data kotor tweet dari server twitter, yang selanjutnya akan dipilih menjadi data tweet bersih. Data tweet 51
31
ini akan disimpan di dalam database MongoDB. Berikut adalah gambar proses pengumpulan data :
Penarikan Data tweet dengan API
Simpan di MongoDB
Server twitter
Gambar 3.1. Proses pengumpulan data tweet Data tweet yang dijadikan sebagai data latih atau data training sebanyak 300 tweet. Data ini dijadikan sebagai data latih dimana akan dikategorikan secara manual dengan menilainya ke dalam 3 kategori sentiment yaitu tweet yang bersentimen negative, positif dan netral. Data ini disimpan ke dalam database MongoDB dengan tabel sebagai berikut : Tabel 3.1. tabel tweet training No
Token
tipe
total
1
Enak
positif
1
2
Sedap
positif
2
3
Kotor
negatif
1
4
Pahit
negatif
1
5
Bahagia
positif
1
3.1.3. Proses Text Mining Pada proses text mining membutuhkan 2 (dua) tahapan yaitu : 1.
Preprocessing ini dilakukan untuk menghindari data yang kurang sempurna, gangguan pada data, dan data-data yang tidak konsisten (Hemalatha, dkk, 2012). Tahapan pada text preprocessing yang dilakukan adalah: 51
32
a.
Melakukan Cleaning menghilangkan kata yang tidak diperlukan agar dokumen bersih.Contohnya: Mandi pakai LUX menambah wangi dan segar loh!! Mandi pakai LUX menambah wangi segar !!
b.
Case folding dengan mengubah semua huruf dalam dokumen menjadi huruf kecil. Hanya huruf “a” sampai dengan “z” yang diterima. Karakter selain huruf dihilangkan dan dianggap delimiter (Triawati, 2009). Contoh pemakaian case folding : Mandi pakai LUX menambah wangi segar !! mandi pakai lux menambah wangi segar
c.
Tahap tokenizing / parsing adalah tahap pemotongan string input berdasarkan tiap kata yang menyusunnya. Contoh Tokenizing : mandi pakai lux menambah wangi segar
mandi pakai lux menambah wangi segar
d. Filtering Filtering adalah tahap mengambil kata-kata penting dari hasil token. Bisa menggunakan algoritma stoplist (membuang kata yang kurang penting) atau wordlist (menyimpan kata penting). Stoplist/stopword adalah katakata yang tidak deskriptif yang dapat dibuang dalam pendekatan bag-ofwords. Contoh stopwords adalah “yang”, “dan”, “di”, “dari”, dan seterusnya.( Triawati, 2009) . Contoh Filtering :
mandi pakai lux menambah wangi segar
51
mandi pakai lux wangi segar
33
Berikut flowchart dari tahapan preprocessing: Mulai
Tweet kotor
Cleaning dan Case Folding
Tokenisasi dan filtering
Tweet bersih
Selesai
Gambar 3.2. Flowchart tahapan Preprocessing Berikut contoh hasil dari preprocessing : Input di beranda twitter (tweet kotor) : pakai AllNew CB150R? bikin tambah ganteng dengan Honda Genuine Accessories ya!@
[email protected]/1z171bwDnV
hasil tweet bersih setelah melalui tahapan preprocessing adalah pakai allnew cb150r tambah ganteng Honda genuine accessories
51
34
2. Ekstraksi Fitur Pada penelitian ini ekstraksi fitur menggunakan Term frequency adalah gagasan standar frekuensi dalam corpus based Natural Language Process atau pengolahan bahasa alami. (Yamamoto dan Church, 2001).
3.1.4. Metode Klasifikasi Klasifikasi pada penelitian ini menggunakan Naïve Bayes Classifier.Pada tahapan ini akan dilakukan klasifikasi dengan menggunakan algoritma naïve bayes classiefier. Algoritma ini akan menghitung nilai sentimen positif, negatif atau netral. Penggunaan algoritma naïve bayes classifier adalah sebagai berikut : Contoh sentimen positif dengan dokumen pembelajaran(data latih) -> tekwan enak. Tabel 3.2. daftar kata sentiment positif No.
Keyword
Frekuensi (nk)
1
_t
1
2
Ek
1
3
Kw
1
4
An
1
5
n_
2
6
_e
1
7
Na
1
8
Ak
1
Dari tabel 3.2. didapat: Jumah Frekuensi keseluruhan sentiment positif (n) = 9 Jumlah kata(kosakata) = 8
51
35
Sehingga dengan nilai tersebut dicari probabilitas dengan naïve bayes sebagai berikut : P(_t|positif) = (1+1)/(9+8) = 0.117 P(n_|positif) = (2+1)(9+8) =0.176 Dari data di atas dapat dilihat probabilitas kata sebagai berikut : Tabel 3.3. probabilitas kata tweet positif No.
Keyword
Frekuensi (nk)
Probabilitas
1
_t
1
0.117
2
Ek
1
0.117
3
Kw
1
0.117
4
An
1
0.117
5
n_
2
0.176
6
_e
1
0.117
7
Na
1
0.117
8
Ak
1
0.117
Berdasarkan nilai probabilitas di atas kita hitung nilai Vmap :
=(0.117) (0.117) (0.117) (0.117) (0.176) (0.117) (0.117) (0.117) =5.28219E-08 Contoh dokumen sentiment negative -> tekwan gosong Tabel 3.4. daftar kata sentimen negatif No.
Keyword
Frekuensi (nk)
1
_t
1
2
Ek
1
3
Kw
1 51
36
4
An
1
5
n_
2
6
_g
1
7
Os
1
8
So
1
9
Ng
1
Dari tabel 3.4. didapat: Jumah Frekuensi keseluruhan sentiment negatif (n) = 10 Jumlah kata(kosakata) = 9 Sehingga dengan nilai tersebut dicari probabilitas dengan naïve bayes sebagai berikut : P(_t|positif) = (1+1)/(10+9) = 0.105 P(n_|positif) = (2+1)(10+9) =0.157 Dari data di atas dapat dilihat probabilitas kata sebagai berikut: Tabel 3.5. Probabilitas tweet negatif No.
Keyword
Frekuensi (nk)
Probabilitas
1
_t
1
0.105
2
ek
1
0.105
3
kw
1
0.105
4
an
1
0.105
5
n_
2
0.157
6
_g
1
0.105
7
os
1
0.105
8
so
1
0.105
9
ng
1
0.105
51
37
Berdasarkan nilai probabilitas di atas kita hitung nilai Vmap :
=(0.105) (0.105) (0.105) (0.105) (0.157) (0.105) (0.105) (0.105) (0.105) =2.3196E-09 Dari hasil perhitungan probabilitas antara sentimen positif dan sentimen negative didapatkan nilai tertinggi adalah kategori sentiment positif.
3.2.
Perancangan Sistem Pada analisis sentiment data twitter menggunakan Unified Modeling
Language (UML) untuk mendokumentasikan permasalahan dalam beberapa diagram diantarnya sebagai berikut : 3.2.1. Diagram Use Case Pada analisis sentimen ini terdiri dari 1 aktor yaitu pengguna twitter. Berikut gambaran diagram use case dari analisis sentiment data twitter :
<<extend>> <
> <<uses> >
Tokenizin g
Beranda
<>
pengguna twitter
<<extend>>
Klasifikasi
<>
Hasil sentiment +
<<extend>>
Proses
-
Gambar 3.3. diagram Use Case 51
Data text
praprose s <<extend>>
simpan
38
Gambar di atas menunjukkan alur kerja analisis sentiment penelitian ini dengan penjelasan sebagai berikut : Halaman Utama : merupakan proses untuk masuk ke tahapan selanjutnya. Tokenizing : merupakan proses yang terdiri dari praproses yang didalamnya ada cleaning dan case folding untuk membersihkan data tweet. Data tweet bersih akan dikategorikan secara manual sebagai data latih yang selanjutnya disimpan di MongoDb. Klasifikasi : merupakan proses pengklasifikasian twitter dengan data tweet yang belum diketahui kategorinya dimana proses ini melewati tahapan preprocessing dan proses naïve bayes classifier sehingga menghasilkan kategori sentimen positif, negatif ataupun netral. 3.2.2. Spesifikasi Use Case Pada spesifikasi ini menjelaskan setiap use case yang ada di diagram use case pada gambar 3.3. terdiri dari 3 bagian yang dituangkan dalam tabel 3.2. berikut ini : Tabel 3.6. Spesifikasi Use Case Tipe 1
Uraian
Use Case Beranda
Pengguna twitter Skenario
1.Pengguna menbuka beranda 2. pengguna masuk ke pilihan selanjutnya
51
39
2
Use Case Tokenizing
penjelasan
proses yang terdiri dari praproses yang didalamnya ada cleaning dan case folding untuk membersihkan data tweet. Data tweet bersih akan dikategorikan secara manual sebagai data latih yang selanjutnya disimpan di MongoDb.
aktor
Pengguna twitter
Tahapan
1. Pengguna berada di halaman beranda 2. Pengguna memilih form tokenizing 3. Pengguna memilih file.txt untuk dijadikan data latih 4. Pengguna menentukan kategori positif atau negative 5. Pengguna melakukan praproses dimana didalamnya terdapat proses cleaning, case folding, filtering 6. Sistem akan menampilkan hasil praproces dalam bentuk tabel yang menjelaskan isi atau jumlah data yang di token. 7. Hasil praproses akan disimpan ke database Mongo
3
Use Case Klasifikasi
Penjelasan
proses pengklasifikasian twitter dengan data tweet yang belum diketahui
kategorinya
dimana
proses
ini
melewati
tahapan
preprocessing dan proses naïve bayes classifier sehingga menghasilkan 51
40
kategori sentimen positif, negatif ataupun netral. 1. Pengguna berada di halaman beranda Tahapan
2. Pengguna memilih form klasifikasi 3. Pengguna memasukkan trend produk yang akan diklasifikasi 4. Pengguna memasukkan jumlah tweet yang akan diklasifikasi 5. System akan mencari tweet sesuai dengan trend dan jumlah yang dicari 6. System menampilkan tweet yang dicari 7. Pengguna mengklik tombol analis 8. System
akan
menampilkan
hasil
dari
proses
analis
dan
menyimpannya.
3.2.3. Diagram Aktifitas Diagram ini berguna untuk menggambarkan alur dari aktifitas system yang sedang berjalan. Berikut diagram aktifitas yang terdiri dari 3 bagian yaitu : 1.
Diagram Aktifitas Beranda Diagram ini menunjukkan alur User masuk ke dalam sistem yang dibuat Sistem
User
Menerima permintaan buka
Membuka beranda
Menerima tampilan menu pilihan
Menampilkan menu pilihan
Gambar 3.4. Diagram aktifitas Beranda 51
41
2.
Diagram Aktifitas Tokenizing User
Sistem
Memilih menu tokenizing
Menerima requets form tokenizing
Menyisipkan file. txt dan memilih kategori positif atau negatif
Menampilkan form tokenizing
Menekan tombol praproses
Menerima request praproses
Menerima tampilan hasil praproses
Melakukan praproses
Gambar 3.5. Diagram aktifitas Tokenizing
51
42
3.
Diagram AktifitasKlasifikasi User
Sistem
Memilih menu klasifikasi
Menerima request form klasifikasi
Masukkan trend dan jumlah
Menampilkan form klasifikasi
Menekan tombol cari trend
Menerima request cari trend
Menerima tampilan hasil pencarian
Melakukan proses pencarian
Menekan tombol analisa
Menerima proses analisa
Melakukan proses analisa naïve bayes
Menerima hasil analisa
Menampilkan hasil analisa
Gambar 3.6. Diagram aktifitas Klasifikasi
51
43
3.3.
Rancangan Antarmuka Perancangan antarmuka dalam analisis sentimen ini terbagi menjadi 3
tampilan yaitu: 1.
Rancangan Halaman Utama
Form Tokenizing
Form Klasifikasi
Gambar 3.7. Rancangan halaman utama 2.
Rancangan Halaman Tokenizing Positif
Browse
Clearing
Negatif
Folding
Statistic Token Positif Token Negatif total token
Tokenizing
praproses
simpan
tutup
Gambar 3.8. Rancangan halaman Tokenizin 51
44
3.
Rancangan Halaman Analisis Klasifikasi Twits Kata Kunci Trend
Jumlah :_____ Cari Trend
Hasil analisa
save
Close
Gambar 3.9. Rancangan halaman Klasifikasi
51
45
BAB IV
HASIL DAN PEMBAHASAN
4.1.
Hasil
4.1.1. Implementasi sistem Setelah dilakukan analisa dan perancangan sistem maka akan dilakukan implementasi sistem analisa sentiment data twitter dengan menggunakan text mining pada suatu produk. Adapun spesifikasi perangkat keras dan lunak yang digunakan untuk mendukung penelitian ini adalah sebagai berikut : 1.
2.
Satu unit laptop dengan spesifikasi sebagai berikut :
Prosesor Core i5 3337U 1.8 GHz, 14” HD Color Shine
RAM 4 GB DDR3, Harddisk 500 GB
VGA Nvidia Geforce GT720M 2 GB
DVDRW, Wi-Fi
OS Windows 7
Software yang di gunakan adalah sebagai berikut :
NetBeans IDE 7.4
Mongo DB
Java.
51
46
Seteleh Aplikasi dijalankan akan tampil Halaman beranda yang berisi menu pilihan untuk masuk ke form tokenizing dan form klasifikasi. Berikut gambar 4.1. neunjukkan tampilan halaman beranda.
Gambar 4.1 Tampilan Halaman Utama Gambar 4.2. menunjukkan tampilan form tokenizing. Form ini berfungsi untuk mencari token dari setiap kalimat yang dimasukkan melalui file.txt. nilai token yang dihasilkan bernilai positif dan negative. Data token ini merupakan data latih untuk pembanding sebelum di analisa menggunakan naïve bayes classifier. Sehingga tampilan form tokenizing adalah sebagai berikut :
51
47
Gambar 4.2. Tampilan Form Tokenizing Selain form tokenizing pada sistem ini terdapat form klasifikasi. Form klasiifikasi berfungsi untuk mencari nilai kategori sentiment positif, sentiment negatif atau sentiment netral secara otomatis dengan menggunakan naïve bayes classifier. Form klasifikasi dapat dilihat pada gambar 4.3. sebagai berikut :
Gambar 4.3. Tampilan Form Klasifikasi 51
48
4.1.2. Pengujian Pada tahap pngujian sistem akan mencari nilai klasifikasi terhadap data tweet secara otomatis. Nilai yang diperoleh berupa sentimen positif, sentiment negative atau netral pada setiap tweet yang ditampilkan. Pengujian ini menggunakan form klasifikasi dengan cara memasukkan trend dan jumlah data yang akan di analisa. Sebagai sampel data uji akan menggunakan produk makanan yaitu : tekwan dengan jumlah 100 tweet. Berikut tampilan hasil cari trend mengenai tekwan sebelum dianalisa pada gambar 4.4 :
Gambar 4.4. Tampilan hasil mencari tweet Setelah dapat 100 tweet kita klik tombol analisa untuk mencari nilai dari setiap tweet dengan tampilan hasil sebagai berikut :
51
49
Gambar 4.5. Tampilan hasil klasifikasi tweet Pengujian lain juga bisa dilakukan dengan data latih lainnya, di sini kita mengambil contoh lagi untuk 200 data tentang produk rinso yang akan diklasifikasi dengan hasil sebagai berikut :
Gambar 4.6. Tampilan hasil mencari tweet Rinso 51
50
Gambar 4.7. Tampilan hasil klasifikasi tweet Rinso
4.2. Pembahasan Berdasarkan hasil uji yang telah dilakukan didapatkan jumlah data yang terdiri dari 100 tweet tekwan didapatkan nilai dengan kategori sentimen positif sebanyak 35 sentimen negatif 0 sentimen netral 75. Hasil Uji untuk 200 data tweet dengan nama produk rinso didapatlan nilai tweet netral berjumlah 25 sentimen negative berjumlah 75 dan sentimen positif berjumlah 100.
51
51
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan Dari hasil penelitian terhadap analisis sentimen data twitter dengan menggunakan text mining pada suatu produk dapat disimpulkan sebagai berikut : 1.
Algoritma Naïve Bayes sebagai algoritma untuk mencari nilai probabilitas dari setiap tweet yang di analisa.
2.
Dari hasil uji analisis sentimen pada data twitter didapat tweet dengan tiga kategori yaitu kategori positif, negatif dan netral.
3.
Analisis sentiment dengan menggunakan text mining yang didalamnya terdapat tahapan preprocessing dan ekstraksi fitur untuk menghasilkan tweet kotor menjadi tweet bersih.
4.
Semakin banyak data latih atau data yang ditoken saat training maka nilai sentimen yang didapat akan semakin akurat.
5.
Penelitian ini bisa digunakan untuk mencari minat masyarakat terhadap suatu produk.
51
52
5.2. Saran Dari kesimpulan yang telah diuraikan maka terdapat saran yang perlu disampaikan untuk penelitan selanjutnya yaitu penelitian selanjutnya dapat menggunakan metode lain untuk mengklasifikasi dan menggunakan banyak data latih sehingga hasil yang didapat semakin akurat.
51