Analisis Sentimen Sosial Media Twitter Dengan Algoritma Machine Learning Menggunakan Software R
Jaka Aulia Pratama 1 , Yadi Suprijadi 2 , dan Zulhanif 2
1 Magister Statistika Terapan; 2 Departemen Statistika, Universitas Padjadjaran, Bandung, Jl. Raya Bandung Sumedang KM.21, Hegarmanah, Jatinangor, Kabupaten Sumedang, Jawa Barat 45363, Indonesia
Korespondensi; Jaka Aulia Pratama, Email: jakajek@gmail.com

## Abstrak
Media sosial adalah wadah untuk mengungkapkan opini terhadap suatu topik tertentu. Ketersediaan informasi dan opini dari para pengguna media sosial merupakan kumpulan dokumen data berupa teks yang amat sangat besar dan berguna untuk kepentingan penelitian maupun membuat suatu keputusan bagi pihak – pihak tertentu. Text Mining bisa didefinisikan sebagai proses penggalian informasi di mana pengguna berinteraksi dengan kumpulan dokumen dari waktu ke waktu dengan menggunakan suatu alat analisis. Analisis sentimen atau Opinion Mining adalah salah satu studi di bidang komputasi yang berhubungan dengan kasus publik mengenai opini, penilaian, sikap, dan emosi. Penelitian ini akan menggunakan metode Machine Learning pada analisis sentimen pengguna layanan jejaring sosial Twitter terhadap Donald Trump dan Barack Obama dalam 20000 tweets . Nilai akurasi metode Machine Learning yang diperoleh cukup tinggi yaitu 87.52% untuk Data Training dan 87.4% untuk Data Testing .
Kata Kunci Analisis Sentimen; Text Mining; Machine Learning; R

## Abstract
Social media is a place to express opinions on a particular topic. The availability of information and opinions from social media users is a collection of data documents in the form of very large textual data and its useful for the research purposes and make a decision for certain parties. Text Mining can be defined as a process of extracting information  in  which  the  user  interacts  with  the  documents  over  time  using  an  analysis  tool.  Opinion  Mining analysis is one of computational studies related to public case concerning opinion, judgment, attitude, and emotion. This study will use the method of Machine Learning algorithm on the analysis of Twitter user sentiment toward Donald Trump and Barack Obama in 20000 tweets. The accuracy of Machine Learning method obtained is high enough that is 87.52% for Data Training and 87.4% for Data Testing.
Keywords Sentiment Aanalysis; Text Mining; Machine Learning; R

## Pendahuluan
Media  sosial  merupakan  salah  satu  fitur  berbasis  teknologi  dalam  CMC  ( Computer-Mediated Communication) yang mampu memfasilitasi komunikasi antar manusia melalui perangkat elektronik. Menurut Steve (2015) dan Nicole B. (2007) media sosial memudahkan pengembangan jejaring sosial online  dengan  menghubungkan  profil  pengguna  dengan  profil  orang  lain  atau  kelompok  lainnya. Sejarah media sosial dimulai saat peneliti di ARPA ( Advanced Research Projects Agency) mengirimkan email pertama kali di dunia pada tahun 1971, tapi perkembangan media sosial tidak begitu baik pada masa  itu  hingga  Tim-Berners  Lee  memulai  revolusi  internet  melalui  penemuan World  Wide  Web (WWW) di tahun 1991. Revolusi internet membuka jalan baru bagi para pencipta dan pengembang layanan jaringan sosial online. Hingga tahun 2017 platform layanan jejaring sosial yang paling populer di dunia adalah Twitter, Facebook, Instagram dan Snapchat.
Twitter  adalah  layanan  jejaring  sosial  dan  portal  berita  online  dimana  penggunannya  saling berinteraksi melalui pesan berbasis teks dengan batas maksimum seratus empat puluh karakter dalam satu tweet. Didalam Twitter terdapat istilah trending topics yaitu dimana kata, frasa, dan topik yang
spesifik  di tweet  oleh  banyak  pengguna  dalam  satu  waktu.  Selain  itu  Twitter  juga  identik  dengan konsep penggunaan hash tag dimana pengguna dapat menggunakan symbol hash tag ‘#’ sebelum kata kunci atau frasa yang relevan pada tweet untuk mengkategorikan tweet nya juga membantunya agar lebih  mudah  muncul  di  laman  pencarian tweet  dan  mempermudah  untuk  ikut  berpastisipasi  pada trending  topics.  Penggunaan  hash  tag  relatif  mempermudah  pengklasifikasian  teks  karena  hash  tag dapat  menunjukan  emosi  atau  opini  pengguna twitter.  Sebagai  contoh,  #MakeAmericaGreatAgain adalah Hash Tag resmi untuk Kandidat Presiden Partai Republik Donald Trump. Semua  tweet yang terdiri dari hash tag tersebut mengindikasikan dukungan kepada Donald Trump (Ramteke, 2016). Dalam  dunia Data  Mining  kita  dituntut  untuk  mampu  menggali  segala  macam  informasi  pada sumber data apapun, salah satunya adalah data berupa teks. Text Mining bisa didefinisikan sebagai proses penggalian informasi di mana pengguna berinteraksi dengan kumpulan dokumen dari waktu ke waktu dengan menggunakan suatu alat analisis. Text Mining mencari informasi berarti dari sumber- sumber  data  melalui  identifikasi  dan  eksplorasi  pola  tertentu,  dalam  kasus  ini  sumber  data  adalah kumpulan dokumen dengan pola yang ditemukan pada data teks yang tidak berstruktur. Oleh karenanya Twitter dapat dijadikan salah satu sumber data berupa teks untuk penelitian Text Mining.
Penelitian ini bertujuan untuk menerapkan analisis sentiment dan Text Mining pada layanan jejaring sosial Twitter  menggunakan  algoritma  Machine  Learning  dengan  contoh  kasus  sentimen  pengguna Twitter berbahasa inggris kepada Donald Trump dan Barack Obama selama bulan Agustus 2017 hingga September 2017 dengan menggunakan software R.

## Landasan Teori
Text Mining
Text  Mining  bisa  didefinisikan  sebagai  proses  penggalian  informasi  di  mana  pengguna  berinteraksi dengan kumpulan dokumen dari waktu ke waktu dengan menggunakan suatu alat analisis. Text Mining mencari  informasi  berarti  dari  sumber-sumber data  melalui  identifikasi dan  eksplorasi  pola  tertentu, dalam kasus ini sumber data adalah kumpulan dokumen dengan pola yang ditemukan pada data teks yang tidak berstruktur. Praproses dari Text Mining sendiri berpusat pada identifikasi dan ekstraksi fitur representatif untuk dokumen Natural Language. (Feldman & Sanger 2007).
Proses Text Mining biasanya membutuhkan penyusunan teks masukan berdasarkan tata bahasa, yang diikuti dengan menggali pola dari data yang sudah terstruktur, evaluasi dan interpretasi hasil. Proses ini biasanya digunakan untuk pengklasifikasian, penggerombolan, analisis makna, pengambil kesimpulan dari dokumen dan pemodelan hubungan objek yang berupa kata (Han & Kamber 2001).

## Analisis Sentimen
Analisis sentimen atau Opinion Mining adalah salah satu studi di bidang komputasi yang berhubungan dengan kasus publik mengenai opini, penilaian, sikap, dan emosi. Opini bersifat subjektif, dan tidak cukup apabila diperoleh hanya dari satu orang untuk membangun suatu ringkasan opini. Secara umum opini terbagi menjadi dua yaitu Regular Opinions dan Comparative Opinions. Regular Opinions adalah sentimen  atau  opini  berupa  ekspresi  pada  suatu  entitas  atau  sesuatu  yang  berwujud.  Sedangkan Comparative Opinions adalah perbandingan lebih dari satu entitas. Regular Opinions terbagi menjadi dua jenis yaitu Direct Opinions dan Indirect Opinions (Jindal & Liu, 2010).
Menurut Liu (2012), opini terdiri dari Lima bagian yaitu entitas, aspek, sentimen, Holder dan waktu. Dimana,
1. Entitas   : Target entitas atau objek
2. Aspek : Aspek atau fitur pada entitas
3. Sentimen  : Positif, negatif, netral, sebuah rating, atau suatu emosi
4. Holder   : Pemilik opini
5. Waktu   : Waktu ketika opini disampaikan.
Kalimat subjektif menyampaikan perasaan pribadi, sudut pandang, emosi atau keyakinan.  Sedangkan kalimat objektif merepresentasikan informasi faktual. Kebanyakan opini merupakan kalimat subjektif, namun kalimat objektif dapat mengartikan opini juga (Liu, 2010). Dengan banyaknya opini maka kita
memerlukan suatu ringkasan. Ringkasan tersebut harus berupa kuantitatif dan dapat didefinisikan secara akurat (Hu & Liu, 2004).
Sentiment Classification adalah solusi dari Un-Supervised Text Classification. Sentiment Classification pada tahap dokumen atau kalimat kurang mampu mengidentifikasi tujuan dari opini (Liu, 2014). Oleh karena itu diperlukan ekstraksi aspek-aspek dan suatu Corpus opini dengan pendekatan sebagai berikut:
1. Mencari Frequent Nouns dan frase Noun
2. Pemanfaatan opini dan kaitannya dengan target
3. Supervised Learning
4. Topic Modelling
Algoritma Machine Learning
Machine Learning adalah salah satu disiplin ilmu dari Computer Science yang mempelajari bagaimana membuat  komputer/mesin  itu  mempunyai  suatu  kecerdasan  mempunyai  suatu  kecerdasan.  Agar mempunyai suatu kecerdasan, komputer/mesin harus dapat belajar. Dengan kata lain, Machine Learning adalah suatu bidang keilmuan yang berisi tentang pembelajaran komputer/mesin untuk menjadi cerdas. Salah satu metode dalam Machine Learning adalah Concept Learning, metode ini membutuhkan Data Training dan mampu mengatasi data negative maupun positif karena termasuk ke dalam  Supervised Learning (Mitchell & Hill, 2008).
Supervised Learning adalah teknik dengan membuat suatu fungsi dari data latihan yang terdiri dari pasangan nilai input (dalam bentuk vector), dan output yang diharapkan untuk input yang bersangkutan. Tugas dari mesin Supervised Learning adalah memprediksi nilai fungsi untuk semua nilai input yang mungkin,  setelah  mengalami  sejumlah  data  latihan.  Untuk  mencapai  tujuan  ini  mesin  harus  dapat melakukan  proses  generalisasi  dari  data  latihan  yang  diberikan,  untuk  memprediksikan  nilai  output dari input yang belum pernah diberikan sebelumnya dengan cara yang masuk akal (Andoko, 2007).

## Bahan dan Metode
Data teks yang digunakan pada penelitian ini diambil dari layanan jejaring sosial Twitter sebanyak 10000 tweets  kepada  ‘#Trump  OR  @DonaldTrump’  dan  10000  tweets  kepada  ‘#Obama  OR @BarackObama’ dari tanggal 1 Agustus 2017 sampai dengan tanggal 27 September 2017.
Tabel 1 Data Training Sergey Bryl.
No. Sentiment  Time Username Tweets 1 0 Mon Apr 06 22:19:45 PDT 2009 _TheSpecialOne_ http://twitpic.com/2y1zl - You shoulda got David Carr of Third Day to do it. ;D 2 0 Mon Apr 06 22:19:49 PDT 2009 scotthamilton is upset that he can't update his Facebook by texting it... and might cry as a result  School today also. Blah! 3 0 Mon Apr 06 22:19:53 PDT 2009 mattycus @Kenichan I dived many times for the ball. Managed to save 50%  The rest go out of bounds … … … … … 1599999  4 Fri May 29 07:33:44 PDT 2009 jonasobsessedx @DestinyHope92 im great thaanks wbuu? 1600000  4 Fri May 29 07:33:45 PDT 2009 sugababez cant wait til her date this weekend
Data Training pada penelitian ini diperoleh dari penelitian sebelumnya yang dilakukan oleh Sergey Bryl’  pada  bulan  Agustus  2017. Data  Training  terdiri  dari  1.600.000  tweets  berbahasa  inggris  yang dikumpulkan secara acak dengan masing – masing tweet memiliki nilai 0 (negative) sampai dengan 4 (positif) dimana nilai tersebut adalah polaritas kandungan kata negatif dan positif dalam sebuah tweet. Tabel 1 adalah tabel yang memperlihatkan Data Training yang dilakukan pada penelitian ini. Sebelum digunakan dalam penelitian ini, Data Training harus melalui beberapa proses selanjutnya seperti Cleaning Data, Splitting Data, Preprocessing Data, Tokenization, Vectorization dan Train Model. Pada tahapan Train Model digunakan metode Cross-Validation Generalized Linear Model dengan folds sebanyak lima kali, iterasi sebanyak seribu dan batas konvergen pada 0.001. Nilai AUC ( Area Under Curve)  yang  diperoleh  pada  tahapan  Train  Model  adalah  0.8752  untuk  Data  Training  dan  0.8740 untuk Data Testing. Hasil tersebut menunjukan bahwa model memiliki nilai akurasi yang tinggi yaitu 87.5% untuk Data Training dan 87.4% untuk Data Testing. Model tersebut disimpan sebagai suatu fungsi pada software R yang selanjutnya akan digunakan untuk data teks 10000 tweets kepada ‘ " #Trump OR @DonaldTrump’ " dan 10000 tweets kepada ‘#Obama OR @BarackObama’ dari tanggal 1 Agustus 2017 sampai dengan tanggal 27 September 2017.
Berikut adalah daftar package pada software R yang digunakan dalam penelitian ini:
Tabel 2 Daftar package R.
No 1 2 3 4 5 6 7 8 Package  twitteR ROAuth
tidyverse purrrlyr text2vec caret glmnet ggrepel

## Hasil dan Pembahasan
Berikut adalah hasil analisis sentiment pengguna layanan jejaring sosial Twitter dalam 10000 tweets kepada ‘ " #Trump OR @DonaldTrump’ " dari tanggal 1 Agustus 2017 sampai dengan tanggal 27 September 2017.
Gambar 1 Hasil Analisis Sentimen ‘" #Trump OR @DonaldTrump "’.
Terlihat pada Gambar 1 bahwa sentiment pengguna layanan jejaring sosial Twitter terhadap ‘ " #Trump OR @DonaldTrump’ " dari tanggal 1 Agustus 2017 sampai dengan tanggal 27 September 2017 pada 10000 tweets didominasi oleh sentiment netral dengan sebanyak 5308 tweets. Sedangkan untuk tweets dengan  sentiment  negative  diperoleh  sebanyak  1204 tweets  dan  tweets  dengan  sentiment  positif diperoleh sebanyak 3488 tweets.
Berikut adalah hasil analisis sentiment pengguna layanan jejaring sosial Twitter dalam 10000 tweets kepada " #Obama  OR  @BarackObama’ " dari  tanggal  1  Agustus  2017  sampai  dengan  tanggal  27 September 2017.
1204 5308 3488 0 1000 2000 3000 4000 5000 6000 NEGATIF NETRAL POSITIF JU M L A H T W EE T SENTIMEN '#Trump  OR @DonaldTrump'
Gambar 2 Hasil Analisis Sentimen ‘"#Obama OR @BarackObama’".
Terlihat pada Gambar 2 bahwa sentiment pengguna layanan jejaring sosial Twitter terhadap ‘ " #Obama OR @BarackObama’ " dari tanggal 1 Agustus 2017 sampai dengan tanggal 27 September 2017 pada 10000 tweets didominasi oleh sentiment positif dengan sebanyak 6897 tweets. Sedangkan untuk tweets dengan  sentiment  negative  diperoleh  sebanyak  1146 tweets  dan  tweets  dengan  sentiment  netral diperoleh sebanyak 1957 tweets.

## Kesimpulan
Besarnya jumlah dalam  Data Training dan tingginya nilai akurasi dalam penelitian ini menunjukan bahwa  analisis  sentimen Twitter  menggunakan  algoritma  Machine  Learning  merupakan  salah  satu alternatif  yang  bagus  dalam  penelitian Text  Mining.  Hanya  saja  metode  Machine  Learning membutuhkan  perangkat  keras  dengan spesifikasi  cukup  tinggi dalam  proses  pengerjaanya.  Kendala penelitian ini terdapat pada akses data Twitter yang terbatas oleh waktu. Waktu maksimal data tweets yang bisa diakses adalah dua bulan kebelakang jika menggunakan software R. Waktu  yang  dibutuhkan  selama  proses Cleaning  Data,  Splitting  Data,  Preprocessing  Data, Tokenization,  Vectorization  dan  Train  Model  adalah  88.53525  menit.  Penelitian  ini  menggunakan software R, jaringan internet dengan kecepatan 12.7 mbps, komputer dengan spesifikasi Intel Core i5 7200U dan RAM 8 GB.

## Referensi
[1] Andoko. 2007. Perancangan Program Simulasi Deteksi Wajah Dengan Support Vector Machines - Viola Jones. Skripsi Teknik Informatika dan Matematika Universitas Bina Nusantara, Jakarta.
[2] Feldman,  R.,  Sanger,  J.  2007. The  text  mining  handbook:  advanced  approaches  in  analyzing  unstructured  data . Cambridge University Press.
[3] J. Han,. M. Kamber. 2001. Data Mining Concepts and Techniques . Morgan Kaufmann, San Francisco
[4] J.  Ramteke.,  S.  Shah.,  D.  Godhia.,  A.  Shaikh.  2016. Election  result  prediction  using  Twitter  sentiment  analysis. International Conference on Inventive Computation Technologies (ICICT), Coimbatore, 2016, pp. 1-5.
[5] Liu, B. 2012. Sentiment Analysis and Opinion Mining . Morgan and Claypool publishers.
1146 1957 6897 0 1000 2000 3000 4000 5000 6000 7000 8000 NEGATIF NETRAL POSITIF J UM LAH TW EET SENTIMEN '# Obama OR @BarackObama'