Kamis, 10 Mei 2018

Sentiment Analysis

Sentiment Analysis merupakan sebuah cabang penelitian di domain Text Mining yang mulai booming pada awal tahun 2002-an. Riset-nya mulai marak semenjak paper dari B.Pang dan L.Lee [1] keluar. Secara umum, Sentiment analysis ini dibagi menjadi 2 kategori besar :
  1. Coarse-grained sentiment analysis
  2. Fined-grained sentiment analysis
Coarse-grained sentiment analysis - kita mencoba melakukan proses analysis pada level Dokumen. Singkatnya adalah kita mencoba mengklasifikasikan orientasi sebuah dokumen secara keseluruhan. Orientasi ini ada 3 jenih : Positif, Netral, Negatif. Akan tetapi, ada juga yang menjadikan nilai orientasi ini bersifat kontinu / tidak diskrit.

Fined-grained sentiment analysis - kategori kedua ini yang sedang Naik Daunsekarang. Maksudnya adalah para researcher sebagian besar fokus pada jenis ini. Obyek yang ingin diklasifikasi bukan berada pada level dokumen melainkan sebuah kalimat pada suatu dokumen.

sebagai contoh berikut adalah sebuah program dengan bahasa R untuk mengolah sentiment analysis. 

Langkah pertama adalah masuk ke apps.twitter.com. Lalu pilih create an application.


Setelah terbuat maka akan terlihat kode untuk tokennya. Kode inilah yang akan digunakan untuk mendaftarkan API twitter pada bahasa R.


Langkah selanjutnya adalah pengkodean pada program R. Terlebih dahulu kita menginstall package untuk mencari kata kunci yaitu twitteR dan RCurl. Package ini kemudian juga diaktifkan.


Token token yang telah didapat dimasukkan kedalam sintaks bahasa R untuk mendaftarkan API twitter.
> consumer_key <- 'diisikan consumer key'
> consumer_secret <- 'diisikan consumer secret'
> access_token <- 'diisikan access token'
> access_secret <- 'diisikan access secret'

Jika tidak terdapat error maka koneksi API twitter dengan bahasa R berhasil. Kemudian kita  melakukan mining tweets dengan memasukkan kata kuncinya. Dalam contoh ini kata kunci yang digunakan adalah "antek pki".

Langkah selanjutnya adalah menginstall package corpus dan tm. Package ini digunakan untuk menampilkan semua tweet hasil mining.


Lalu kita menampilkan hasil tweet yang dilakukan mining. Cara menampilkannya dengan memanggil Corpus yang baru saja diinstall.
> kampanye_corpus <- Corpus(VectorSource(miningtweets_text))
> kampanye_corpus
> inspect(kampanye_corpus)


Kemudian dilakukan filter kata untuk menyaring agar hanya kata kunci yang dibutuhkan saja yang akan digunakan.


Setelah itu dilakukan wordcloud untuk menampilkan kata-kata kunci dalam bentuk gambar susunan seperti awan. Dilakukan install packagenya terlebih dahulu.


Jika sudah maka lakukan wordcloud untuk menampilkan kata kunci yang telah disaring.
> wordcloud(black_clear, random.order=F, col=rainbow(50))