Langsung ke konten utama

Sentiment Analysis

Pada artikel kali ini, akan dibahas mengenai cara menganalisa sentimen masyarakat melalui media sosial Twitter  terhadap kasus Bullying menggunakan aplikasi R. Tetapi, sebelum melakukan Sentiment Analysis, terlebih dahulu saya akan menjelaskan beberapa hal yang menyangkut tentang Sentiment Analysis ini. Beberapa hal diantaranya adalah:

1. Apakah itu Machine Learning?
2. Mengapa Sentiment Analysis?
3. Apakah itu Sentiment Analysis?
4. Bagaimana Sentiment Analysis bekerja?

Topik pertama yang akan sedikit saya jabarkan adalah mengenai Machine Learning, Machine Learning adalah komputer yang belajar tanpa campur tangan dari manusia, sehingga komputer tersebut dapat belajar dengan sendirinya, komputer tersebut akan belajar kapanpun mereka mendapatkan data-data baru tanpa campur tangan atau bantuan dari manusia.
Machine learning terbagi menjadi tiga kategori, yaitu Supervised Learning, Reinforcement Learning, dan Unsupervised Learning.

Hasil gambar untuk machine learning category
Supervised Learning adalah ketika anda melatih/melakukan training terhadap suatu program dengan ouput yang sudah tersedia, artinya anda melakukan training pada program dengan menggunakan data sets, sehingga akan mengenali apa yang sedang dibahas. Contohnya bila ingin membuat sebuah  program untuk mengenali bagaimana perbedaan jenis buah-buahan.

Pastinya anda  akan melatih/melakukan train pada program dengan berbagai macam input yang berbeda, anda harus melatih program dengan atribut pada buah-buahan, misal menggunakan atribut bentuk sebagai pengenal, pada buah apel bentuknya adalah bulat dan pisang berbentuk panjang. Setelah melakukan train dengan data-data tersebut,  terdapat juga  satu lagi data set yang disebut dengan testing data set.


Artinya, setelah anda melatih program dengan data-data yang  beragam untuk dipelajari, kemudian memasukan input  sebagai bahan testing kedalam program, hasil yang didapatkan dari testing tersebut  adalah yang akan menentukan  apakah program yang dibuat sudah akurat atau belum. Misal, ketika anda memasukan input citra buah apel malang, namun program tersebut mengenali bahawa gambar tersebut adalah buah pisang, maka akan menurunkan nilai keakuratan dari program yang anda buat.

Jadi, kesimpulan dari Supervised Learning adalah anda menyediakan data-data untuk di training/dilatih agar program dapat berjalan dengan benar, kapanpun data-data tersebut terlibat didalam program, biasanya Supervised Learning digunakan untuk mengelompokan suatu data, ke data yang sudah ada. Pada contoh kasus tersebut, sebuah program yang akurat adalah, apabila anda memasukan citra buah pisang ambon sebagai input, maka program akan mengelompokan inputan tersebut kedalam buah pisang.

Selanjutnya, divisi machine learning yang kedua yaitu Reinforcement Learning. Reinforcement Learning adalah ketika anda mencoba membuat keputusan berdasarkan pengalaman dimasa lalu, jadi program akan belajar berdasarkan pola kebiasaan. Misal, pada sebuah program tentang ramalan cuaca, ketika anda bertanya pada program tersebut, apakah akan hujan besok, maka program tersebut akan mengambil keputusan berdasarkan keadaan yang lalu, apakah hujan atau tidak, dan beralih kehari sebelumnya lagi dan menganalisis parameter apa yang mengarahkan bahwa akan hujan dihari selanjutnya. Parameter tersebut akan di uji dengan keadaan hari ketika anda bertanya tentang cuaca pada suatu hari di program. Apabila terjadi kecocokan paramter ,maka program akan memberikan keputusan.

Divisi machine learning yang terakhir adalah Unsupervised Learning, divisi ini adalah kebalikan dari Supervised Learning, pada Unsepervised Learning tidak ada training data atau testing input, program tersebut akan secara langsung memulai untuk melakukan pengelompokan berdasarkan data yang ada. Pada divisi ini program akan melakukan klasifikasi berdasarkan cluster dan logic. Program hanya mengandalakn logika berdasarkan cluster yang kemudian diklasifikasikan.
Misalnya, ketika anda memasukan citra buah-buahan sebagai inputan, seperti apel malang, apel import merah, pisang raja, dan pisang ambon kedalam program, maka program tersebut akan mengklasifikasikan inputan tersebut secara langsung dengan menggunakan logika, tanpa adanya training terhadap data set atau testing input.

Pada pembahasan selanjutnya saya akan mebahasa tentang mengapa menggunakan Sentiment Analysis? Apakah Sentiment Anlysis itu?
Sentiment Analysis adalah bagian dari Survised Learning, Bila mengambil contoh ketika anda membuat sebuah aplikasi yang sangat populer dan memiliki jutaan bahkan miliaran pengguna, ketika menambhakan fungsi baru pada aplikasi tersebut, anda ingin mengatahui bagaiamana respon pengguna terhadap fungsi baru yang anda tambahkan tersebut. Bisa saja anda mendapatkan positive atau negative respon, anda harus membuat pertimbangan, apabila respon Negatif lebih banyak daripada respon postif, maka itu merupakan kejadian yang buruk. Update terhadap fungsi baru yang anda lakukan berarti buruk untuk pengguna.

Tetapi, bagaiman cara anda menentukan komentar teresebut baik atau komentar buruk? Disinilah digunakannya Sentiment Analysis. Jadi, dasar dari Sentiment Analysis adalah, seusatu yang akan anda lakukan ketika memiliki komentar dengan menganalisanya apakah komentar tersebut bermuatan postive atau negative. Adapun Sentiment Analysis ini adalah bagian dari Survised Learning yang sebelumnya pernah dijabarkan.  

Bila kita berbicara mengenai Sentiment Analysis, umumnya terdapat tiga jenis emosi yang kita dapatkan dalam sebuah kalimat komentar, yaitu komentar Positif, komentar Negatif dan komentar Netral. Jadi kesimpulannya, Sentiment Analysis mengidentifikasi dan mengkatagorikan opini yang di ekspresikan lewat sebuah text dari seorang customer, baik melaui media sosial seperti Facebook, Twitter, Instagram, Youtube, Google Play dan lain-lain.

Sentiment Analysis Bekerja
Selanjutnya, saya akan membahas sedikit mengenai bagaimana Sentiment Analysis bekerja. Mungkin anda akan berfikir bahwa ini adalah sesuatu yang sangat kompleks, untuk mengetahui sebuah emosi pengguna dalam suatu komentar, tetapi sebenarnya ini sangat sederhana.

Jadi, pada dasarnya anda memiliki dua buah kata ketika  melakukan Sentiment Analysis. Anda memiliki kata-kata Positif dan kata-kata Negatif,  dan juga ada kata-kata selain positive dan Negatif yaitu kata-kata  Netral. Kata-kata tersebut adalah gudang data anda. Sehingga, ketika terdapat sebuah Statement  yang diuji , dalam analisa Statement ini akan dicocokan terhadap dua data atau dua file, yaitu file yang berisi kata-kata Positif, dan file yang berisi kata-kata Negatif. Kemudian, kita akan menentukan apakah kalimat tersebut Positif atau Negatif.

Contoh menentukan sentiment terhadap Iphone 7

Selanjutnya kata-kata Positif dan Negatif tersebut diberikan nilai, yang nantinya akan dijumlahkan. Untuk kata-kata Positif berbobot nilai +1 dan kata-kata Negatif berbobot nilai -1. Dalam satu kalimat, akan dihitung jumlah dari kata-kata yang terdapat didalamnya. Apabila jumlah dari hasil yang didapatkan adalah bilangan Positif  yang lebih dari 0, menandakan bahwa kalimat tersebut bermuatan dengan banyak kata-kata Positif, maka kalimat tersebut akan diputuskan sebagai kalimat Positif.

Kebalikan dari kejadian tersebut, apabila suatu kalimat ketika dijumlahakan memiliki Score Negatif yang kurang dari 0, maka kalimat tersebut banyak mengandung kata-kata Negatif. Sedangkan apabila suatu kalimat, ketika dijumlahkan menghasilkan 0, maka kalimat tersebut merupakan kalimat yang Netral.  

Lalu, bagaimana apabila terdapat dua kalimat yang saling bertolak belakang? Seperti contoh yang ada pada gambar dibawah ini. Terdapat kalimat “The Service was Terrible but the food was Great”. Bagaimana anda akan mengevaluasi kalimat ini? Pada bagian awal kalimat, berisi Negatif komen, sedangkan pada bagian yang kedua berisi Positif komen.
Berdasarkan persepsi manusia, apabila anda seseorang yang mendahulukan pelayanan, maka komentar ini akan masuk sebagai komentar Negatif, berbeda apabila anda seorang pecinta makanan, maka komentar ini akan anda anggap sebagai komentar positi. Lalu bagaimana dengan yang komputer artikan? Kasus ini disebut dengan Constructive Conjunction. Dimana kaliamat ini akan dibagi menjadi dua. Jadi, kalimat ini akan dievaluasi secara terpisah dan juga akan di list secara terpisah, sehingga kita memiliki dua scores dan disebagai  gantinya, dari satu kalimat akan didapatkan dua kalimat. Metode penyelesaian ini bernama Binary Sentiment Analysis, karena anda akan membagi menjadi dua bagian dan akan dievaluasi lagi. Sama seperti method ini, ada banyak lagi method yang dapat digunakan yang dapat melakukan evaluasi dengan data yang lebih kompleks.

Sehingga, bila anda menginginkan untuk meningkatkan keakuratan dari model yang and buat maka lakukan cara tertentu, sebab kita tidak dapat langsung menyebutkan  jenis dari suatu kalimat secara tepat karena bahasa manusia adalah sesuatu yang besar.

Sumber: https://www.youtube.com/watch?v=-JW6_kcHDj4&t=412s

Komentar

Postingan populer dari blog ini

Membuat Game 'Flappy Bird' dengan Unity

Pada Mata Kuliah Pengenalan Teknologi dan New Media ini saya beserta kelompok saya membuat sebuah game dengan aplikasi Unity.Mungkin para pembaca masih belum tahu aplikasi seperti apakah unity itu.Nah kira-kira seperti inilah gambaran dari tampilan unity,unity adalah aplikasi game development tool high-end yang mendukung GUI.Tidak ada konflik pada alur kerja, adanya fitur top-of-the-line untuk grafik yang diperluas, efek partikel yang menakjubkan, scripting yang dioptimalkan, dukungan Ageia physX Engine, karakter animasi dan ragdolls, dan kelebihan untuk membuat standalone game untuk Mac dan Windows Nah pada kesempatan ini saya dan tim mebuat game yang sempat populer,mungkin pembaca disini pernah memainkannya atau bahkan kecanduan dengan game ini,game tersebut adalah 'Flappy Bird'.Namun karena saya yang tidak terlalu mahir dalam bermain game ini dan selalu kalah,sulit sekali untuk mengumpulkan score,maka game inipun saya beri nama dengan game 'Impossible Bird'haha

Zenius, Situs Belajar Online Favorite Pelajar

Zenius merupakan start up dibidang pendidikan yang menyediakan platfrom e-learning. Zenius menghadirkan suatu trobosan baru bagi pelajar Indonesia dengan pembelajaran secara konsep dan menyenangkan berbasis multimedia. Situs belajar online ini namanya sudah tidak asing lagi ditelinga para pelajar Indonesia. Keanggotaan zenius dapat diperoleh dari pendaftaran pada situs zenius.net, terbagi menjadi dua yaitu anggota reguler dan anggota premium, dimana anggota premium dapat secara leluasa mengeksplor video-video yang ada di situs tersebut. 1. Sejarah Terbentuknya PT Zenius Education Zenius mulai berdiri pada tahun 2004 yang didirikan oleh Sabda dan Medy Suharta. Sabda dan Medy pernah mengenyam pendidikan di Insitut Teknologi Bandung dengan Sabda pada jurusan Teknik Informatika dan Medy Suharta jurusan Teknik Elektro. Meski impian awal dari pendirian Zenius adalah menyediakan dokumentasi materi  dalam format digital yang akan disebarkan melalui website zenius.net, tetapi imp

Belajar Membuat Web dengan Freecodecamp (Pengenalan)

Hallo teman-teman jadi gini langsung aja ya gausah basa basi deh kita jujur-jujuran aja ya disini gausah ada yang ditutpin lagi ku sudah lelah.    Halah Ok jadi saya sekarang akan mulai menulis tentang topik yang lumayan bermanfaat nih dibandingkan topik-topik gajelas saya sebelumnya.saya akan membahas cara membuat web yang saya pelajarin dari freecodecamp. Tujuan Jadi tujuan dari penulisan ini adalah supaya saya gak lupa tentang materi-materi yang ada di freecodecamp ini,selain itu mungkin penulisan ini nantinya bisa berguna buat temen-temen yang mau belajar bikin web juga hehe :D Apa itu Freecodecamp? Nah...jadi kalo ada yang belum tahu frecodecamp yang dari tadi saya bilang itu apa,langsung aja cek webnya disini! Freecodecamp sendiri adalah sebuah web yang akan membantu kita kalo kita mau belajar membuat web,sejauh yang saya pelajarin web ini bagus dan mudah dimengerti terutama untuk orang awam yang belum terlalu familiar dengan coding . Metode Belajar Untuk metode

Apa Itu Research Gate?

Belum lama ini saya mendapatkan tugas dari dosen saya,tugasnya adalah meninjau lebih jauh tentang sebuah web,nama webnya adalah research gate,kalo yang mau lihat blognya bisa klik link ini  Research Gate . Setelah itu saya browsing lebih jauh mengenai research gate,apasih research gate itu? Dari beberapa sumber,saya menemukan bahwa research gate ini keren banget,karena di website ini peneliti dari penjuru dunia dapat mempublikasikan seputar penelitiannya dengan cara meng-uploadnya pada web ini.jadi di web ini kita bisa dapet jurnal-jurnal dan ilmu pengetahuan lainnya secara gratis. Research Gate ini juga menyediakan statistik mengenai jumlah paper kita yang didownload,web ini juga memfasilitasi usernya untuk terhubung dan berkolaborasi dengan user lain di bidang yang sama. Saya jadi penasaran tentang web ini,maka saya mencoba untuk join,berhubung join ke web ini  juga free.Jadi langkah pertama adalah kita bisa mendaftarkan diri dengan memasukan nama,alamat email dari kampus/