Top Banner
7 BAB 2 TINJAUAN REFERENSI 2.1 Teori Pengenalan Emosi Menurut Swati D. Bhutekar (Bhutekar, Chandak, & Agrawal, 2012), emosi digambarkan sebagai perasaan intens yang diarahkan pada sesuatu atau seseorang sebagai respons terhadap peristiwa internal atau eksternal yang memiliki signifikansi khusus bagi individu. Dalam penelitian pembuatan leksikon emosi bahasa Indonesia yang dilakukan oleh Julius bersama rekan timnya (Bata, Suyoto, & Pranowo, 2015), mengelompokkan emosi menjadi 5 kategori yaitu senang, cinta, marah, sedih, dan takut. Mengutip Calvo dalam jurnal Julius (Bata et al., 2015; Calvo & D’Mello, 2010), emosi dapat dideteksi dari suara, ekspresi wajah, gestur dan teks. Teks merupakan salah satu media yang digunakan untuk berkomunikasi dan menyampaikan informasi. Tidak hanya memuat informasi, teks juga dapat mengekspresikan sikap dan keadaan emosional seseorang (Hirat & Mittal, 2015). 2.2 Media social Menurut Manning (Manning, 2014) Social media merupakan suatu istilah yang mengacu pada bentuk baru sebuah media yang melibatkan partisipasi interaktif. Menurutnya pengembangan media dibagi menjadi dua masa, masa broadcast dan masa interaktif. Pada masa broadcast media hanya berfokus pada satu entitas dan didistribusikan kepada banyak orang seperti radio dan televisi. Sedangkan media interaktif adalah masa di mana interaktif sebagai fokus dari fungsi suatu media. Sehingga setiap individu dapat berkomunikasi secara langsung ke satu atau banyak orang. Kemudian disimpulkan oleh Hayes (Hayes, 2015), media sosial merupakan saluran berbasis internet yang memungkinkan pengguna untuk dapat berinteraksi secara opurtunis dan selektif menampilkan diri, baik secara real time atau asinkron.
28

BAB 2 TINJAUAN REFERENSI Teori Pengenalan Emosi …library.binus.ac.id/eColls/eThesisdoc/Bab2/RS1_2019_1_49... · 2020. 5. 31. · sebagai respons terhadap peristiwa internal atau

Feb 08, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 7

    BAB 2

    TINJAUAN REFERENSI

    2.1 Teori Pengenalan Emosi

    Menurut Swati D. Bhutekar (Bhutekar, Chandak, & Agrawal, 2012), emosi

    digambarkan sebagai perasaan intens yang diarahkan pada sesuatu atau seseorang

    sebagai respons terhadap peristiwa internal atau eksternal yang memiliki signifikansi

    khusus bagi individu.

    Dalam penelitian pembuatan leksikon emosi bahasa Indonesia yang dilakukan

    oleh Julius bersama rekan timnya (Bata, Suyoto, & Pranowo, 2015),

    mengelompokkan emosi menjadi 5 kategori yaitu senang, cinta, marah, sedih, dan

    takut. Mengutip Calvo dalam jurnal Julius (Bata et al., 2015; Calvo & D’Mello,

    2010), emosi dapat dideteksi dari suara, ekspresi wajah, gestur dan teks. Teks

    merupakan salah satu media yang digunakan untuk berkomunikasi dan

    menyampaikan informasi. Tidak hanya memuat informasi, teks juga dapat

    mengekspresikan sikap dan keadaan emosional seseorang (Hirat & Mittal, 2015).

    2.2 Media social

    Menurut Manning (Manning, 2014) Social media merupakan suatu istilah yang

    mengacu pada bentuk baru sebuah media yang melibatkan partisipasi interaktif.

    Menurutnya pengembangan media dibagi menjadi dua masa, masa broadcast dan

    masa interaktif. Pada masa broadcast media hanya berfokus pada satu entitas dan

    didistribusikan kepada banyak orang seperti radio dan televisi. Sedangkan media

    interaktif adalah masa di mana interaktif sebagai fokus dari fungsi suatu media.

    Sehingga setiap individu dapat berkomunikasi secara langsung ke satu atau banyak

    orang.

    Kemudian disimpulkan oleh Hayes (Hayes, 2015), media sosial merupakan

    saluran berbasis internet yang memungkinkan pengguna untuk dapat berinteraksi

    secara opurtunis dan selektif menampilkan diri, baik secara real time atau asinkron.

  • 8

    2.3 Twitter

    Twitter diluncurkan pada Oktober 2006. Twitter adalah layanan pesan singkat

    real-time gratis yang memungkinkan pengguna untuk mengirim dan membaca pesan

    (tweet) melalu situs web Twitter, layanan pesan singkat (SMS), aplikasi seluler, dan

    berbagai aplikasi desktop. Salah satu karakteristik penting Twitter adalah batasnya

    pengguna mengirim pembaruan hanya dalam 140 karakter. (Liu, Cheung, & Lee,

    2010)

    Menurut Imam (Imam & Fajtriab, 2015) Twitter adalah jejaring sosial berupa

    blog ukuran kecil yang biasa digunakan sebagai media untuk mengirim dan

    membaca pesan, berbagi informasi, menjalin relasi bisnis, dan menuangkan isi

    pikiran dengan kapasitas kata maksimal 140 karakter.

    Sebagai salah satu situs mikroblog, pengguna Twitter dapat memperbarui

    informasi berupa status yang disebut dengan tweet atau kicauan, yaitu pesan teks

    yang jumlah karakternya tidak melebihi 280 karakter (PERTIWI, 2018).

    2.4 Twitter APIs

    Application Programming Interface atau API adalah yang memungkinkan

    aplikasi dengan data untuk membaginya dengan seluruh dunia. API adalah situs web

    tanpa hiasan, diakses melalui permintaan URL tetapi tidak mengembalikan halamana

    web yang ditampilkan di browser, melainkan data terstruktur. Data yang

    dikembalikan disusun untuk memudahkan penguraian dan mendapatkan informasi di

    dalamnya (Makice, 2009).

    Menurut (Bruns & Moe, 2014) Twitter menyediakan tiga jenis API data berbeda

    yang tersedia bagi para peneliti, diantaranya adalah:

    a. Streaming API

    Twitter Streaming API adalah jenis API yang sangat tidak lazim

    dibandingkan dengan bagaimana sebagian besar API lainnya berfungsi.

    Dalam konfigurasi yang lebih tradisional, API didasarkan pada “pull” -

    peneliti meminta halaman data dari server dengan meminta URL, di mana

    server mengembembalikan halaman yang diminta. Sedangkan, Twitter

    streaming API berbasis “push”, yaitu data terus-menerus mengalir dari URL

    yang diminta dan terserah kepada peniliti untuk mengembangkan atau

  • 9

    menggunakan alat yang mempertahankan koneksi terus-menerus ke aliran

    data sekaligus memprosesnya.

    Menurut Bruns (Bruns & Moe, 2014), Streaming API merupakan

    sumber data yang paling banyak digunakan untuk penelitian Twitter.

    Biasanya analisis kuantitatif skala besar dari data Twitter didasarkan pada

    data mentah yang dikumpulkan.

    b. REST API

    REST (REpresent State Transfer) API menyediakan kumpulan

    metode untuk interaksi data yang secara fundamental berbeda dari Streaming

    API, menggunakan model pull yang lebih tradisional. Metode yang lebih

    berguna dalam REST API menyediakan akses ke topik yang sedang tren,

    memungkinkan pengguna batch dengan kelompok ID pengguna, dan

    umumnya melakukan fungsi yang menarik seiring dengan informasi yang

    dapat dikumpulkan melalui Streaming API. (Bruns & Moe, 2014)

    c. Search API

    Serupa dengan REST API, search API adalah sumber daya berbasis

    tarik, dan pada dasarnya mereplikasi fungsi pencarian Twitter. Sementara

    secara teori, beberapa pengumpulan data historis masih dimungkinkan

    melalui search API, dalam praktiknya kegunaannya sangat terbatas. Data

    secara bebas hilang dari sistem pencarian dalam waktu seminggu setelah

    dipublikasikan, dan tidak ada informasi yang dapat diandalkan tentang

    kelengkapannya. (Bruns & Moe, 2014)

    2.5 Natural Language Processing

    Menurut Diksha, Sukhdev, Aditya, dan Kiran (Khurana, Koli, Khatter, & Singh,

    2017) Natural Language Processing (NLP) merupakan cabang dari Artificial

    Intellegence dan Linguistik, yang ditujukan pada komputer untuk dapat memahami

    pernyataan atau kata-kata yang ditulis dalam bahasa manusia. Pemrosesan bahasa

    alami muncul untuk memudahkan pekerjaan pengguna dan untuk memenuhi

    keinginan untuk berkomunikasi dengan komputer dalam bahasa alami.

    Menurut Bird, Klein, dan Loper dalam bukunya “Natural Language Processing

    with Python” (Bird, Klein, & Loper, 2009), Natural Language Processing atau NLP

    secara luas diartikan sebagai segala sesuatu yang berhubungan dengan manipulasi

    komputer pada bahasa alami. Dapat berupa perhitungan frekuensi kata untuk

  • 10

    membandingkan gaya penulisan, hingga melibatkan pemahaman terhadap ucapan

    manusia.

    Menurut Hirschberg dan Manning (Hirschberg & Manning, 2015) Natural

    Language Processsing adalah cabang ilmu dalam computer science yang berkaitan

    dengan penggunaan teknik komputasi untuk belajar, memahami, dan menghasilkan

    sebuah konten dengan bahasa manusia.

    Menurut jurnal yang ditulis oleh Frank (Frank Zhao, 2017) Natural Language

    Processing mengingkatkan kemampuan komputer dan statistika untuk memproses

    dan memahami suatu bahasa dengan cara yang sistematis dan masuk akal tanpa

    adanya keterlibatan manusia selain coding. Dalam NLP terdapat tiga proses dasar,

    yaitu:

    1. Text processing

    Proses pengolahan teks dengan cara melakukan pembersihan teks dari noise

    (kata-kata yang tidak relevan atau tidak dibutuhkan) dan penyederhanaan

    kata. Dalam text processing terdapat tiga sub proses, diantaranya:

    a. Noise Removal

    Proses menghilangkan segala sesuatu dalam sebuah teks yang tidak tidak

    relevan atau tidak mempengaruhi hasil analisa. Contohnya seperti URL,

    hashtag, akronim, dan stopword.

    b. Lexicon Normalization

    Proses penyederhanaan representasi berganda pada suatu kata.

    Pendekatan yang sering digunakan adalah stemming dan lemmatization.

    Stemming merupakan proses menghilangkan imbuhan pada suatu kata,

    sedangkan lemmatization adalah proses mengembalikan suatu kata

    menjadi kata dasarnya. Kedua proses tersebut bertujuan untuk

    mengurangi adanya kata baru dan turunan dari suatu kata dengan cara

    mengembalikan kata tersebut ke kata dasarnya.

    c. Object Standarization

    Proses merubah variasi suatu kata ataupun kata yang disingkat menjadi

    kata baku.

    2. Text to features

    a. Syntatical Parsing

  • 11

    Proses penggambaran struktur dari suatu kalimat. Terdapat dua jenis

    pendekatan yaitu, dependency grammar dan part of speech tagging.

    Dalam dependency grammar, setiap kalimat akan dipecah menjadi tiga

    relasi diantaranya adalah subjek, kata kerja, dan objek. Beberapa kata

    dapat memiliki arti yang berbeda tergantung pada konteks dalam suatu

    kalimat, part of speech tagging digunakan untuk hal tersebut dengan

    memperhatikan dimensi dari PoS.

    b. Statistical Features

    Proses merubah text menjadi sesuatu yang dapat dihitung, seperti jumlah

    kata atau kalimat dari sebuat teks. Salah satu metode dalam statistical

    features adalah word embedding. Word embbeding merupakan metode

    dengan menggunakan memanfaatkan vektor untuk mendapatkan

    perbedaan dimensi dari sebuah kata.

    3. Testing & refinement

    Testing & refinement merupakan proses terakhir dalam proses NLP. Testing

    merupakan proses untuk mengetahui seberapa baik performa sebuah

    algoritma NLP melalui batas yang ditentukan. Refinement merupakan proses

    kalibrasi algoritma NLP yang dilakukan secara berulang hingga mencapai

    batas yang diinginkan.

    2.6 Preprocessing

    Dalam penelitian sebelumnya (Krouska, Troussas, & Virvou, 2016),

    preprocessing merupakan langkah penting dalam menyiapkan data untuk melakukan

    klasifikasi sentimen. Langkah tersebut akan menghasilkan atribut-atribut yang

    dibutuhkan dalam proses klasifikasi.

    Menurut Haddi (Haddi, Liu, & Shi, 2013) preprocessing data adalah proses

    untuk menyiapkan dan membersihkan data untuk proses klasifikasi. Data text yang

    didapatkan secara online biasanya mengandung bagian-bagian yang tidak penting

    dalam proses klasifikasi. Sehingga preprocessing perlu dilakukan untuk mengurangi

    noise pada text.

    Menurut Vivek (Agarwal, 2015) preprocessing merupakan proses untuk merubah

    data mentah menjadi data dengan format yang dapat dipahami oleh komputer.

  • 12

    Beberapa data di dunianya biasanya tidak konsisten, redundan, dan terdapat noise

    (tidak bermakna). Dalam preprocessing terdapat beberapa langkah untuk merubah

    data mentah menjadi bentuk yang dapat dipahami oleh komputer, diantaranya data

    cleaning, data integration, data transformation, data reduction, dan data

    discretization. (Sivakumar, 2017)

    Gambar 2.1 Tahapan proses preprocessing (Sivakumar, 2017)

    1. Data Cleaning

    Proses pembersihan data dengan cara menghilangkan data-data yang bersifat

    tidak akurat, tidak konsisten, dan data-data yang tidak relevan.

    2. Data Integration

    Sebuah data mungkin berasal dari beberapa sumber, data integration

    berfungsi untuk menjamin konsistensi data, menghilangkan redundasi

    meskipun ada kemungkinan sebuah berasal dari berbagai sumber.

    3. Data Transformation

    Proses merubah data menjadi bentuk yang lebih dipahami oleh komputer.

    Terdapat beberapa proses diantaranya:

    a. Normalization, yaitu membatasi suatu data kedalam rentang tertentu

    seperti dari -1 sampai 1 atau 0 sampai 1.

  • 13

    b. Smoothing, yaitu proses menghilangkan noise dari data. Teknik yang

    biasa digunakan dalam proses ini adalah binning, clustering, dan

    regression.

    c. Aggregation, yaitu proses untuk menghasilkan sebuah ringkasan dari

    kumpulan data.

    d. Generalization, yaitu proses merubah suatu data yang bersifat “low level”

    ke bentuk yang lebih tinggi bergantung pada tingkatan tertentu. Seperti

    penggunaan angka pada umur dapat dipetakan menjadi muda, remaja, dan

    tua.

    4. Data Reduction

    Proses mengurangi representasi dari sebuah kumpulan data tanpa

    menghilangkan integritas data asli dan menghasilkan qualitative knowledge.

    Konsep data reduction biasanya berupa pengurangan volume atau

    pengurangan dimensi (jumlah atribut dalam suatu data). Tujuan dari data

    reduction adalah untuk mempercepat proses analisa.

    2.7 Word2vec

    Menurut (Sivakumar, 2017), Word2vec memiliki dua jenis algoritma, yang

    pertama adalah Continouos Bag of Word (CBOW) dan Skip-gram. Word2vec sendiri

    merupakan cara untuk merubah kata-kata dan frase menjadi vektor.

    2.7.1 Skip-gram

    Menurut (Lilleberg, Zhu, & Zhang, 2015) Skip-gram merupakan salah satu

    algoritma dari word2vec yang berfungsi untuk memprediksi vektor kata-kata yang ada

    disekitar kata yang diberikan.

    Skip-gram dikenalkan oleh Mikolov (Lilleberg et al., 2015; Mikolov, Sutskever,

    Chen, Corrado, & Dean, 2013). Jika dalam CBOW untuk memprediksi suatu target

    dibutuhkan suatu konteks, Skip-gram justru sebaliknya, untuk memprediksi konteks

    dalam suatu kalimat, dibutuhkan suata kata target yang berhubungan dari kata

    tersebut.

  • 14

    Gambar 2.2 Arsitektur model skip-gram (Rong, 2014)

  • 15

  • 16

    2.8 Machine Learning

    Algoritma machine learning adalah proses komputasi yang menggunakan input

    data untuk mencapai tugas yang diinginkan tanpa memprogram secara harfiah “hard

    coded” untuk menghasilkan hasil tertentu. Algoritma ini dalam arti “soft coded” di

    mana secara otomatis mengubah atau mengadaptasi arsitektur yang ada melalui

  • 17

    pengulangan (yaitu, pengalaman) sehingga menjadi lebih baik dan lebih baik dalam

    mencapai tugas yang diinginkan (El Naqa & Murphy, 2015).

    Machine learning dapat digunakan untuk menyelesaikan beberapa permasalahan

    seperti Document Classification, Natural Language Processing, Speech Processing,

    Computer Vision, dan permasalahan lainnya. Menurut Mehryar, Afshin, dan Ameet

    (Mohri, Rostamizadeh, & Talwalkar, 2018) untuk dapat menyelesaikan

    permasalahan yang ada, ada beberapa metode learning yang dipelajari dalam proses

    machine learning, yaitu:

    1. Classification

    Proses menentukan kategori dari setiap data. Seperti contohnya menentukan

    suatu dokumen dikategorikan sebagai dokumen olahraga, bisnis, atau cuaca.

    2. Regression

    Proses memprediksi nilai dari suatu data. Contohnya memprediksi harga dari

    suatu saham. Dalam regression, penalty dari suatu prediksi ditentukan

    berdasarkan besarnya perbedaan antara nilai yang benar dan yang bisa

    diprediksi.

    3. Ranking

    Proses untuk menentukan urutan berdasarkan suatu kriteria yang ditentukan.

    Contohnya seperti situs pencarian, menampilkan halaman situs yang paling

    sesuai dengan kata pencarian.

    4. Clustering

    Proses membagi kumpulan data ke dalam himpunan yang homogen,

    Clustering biasa digunakan untuk menganalisa dataset yang sangat besar.

    Contohnya seperti mengidentifikasi sebuah komunitas alami dari kelompok

    besar orang.

    5. Dimensionality Reduction

    Proses perubahan terhadap suatu representasi data menjadi dimensi yang

    lebih rendah dengan tetap mempertahankan integritas data tersebut.

    Contohnya seperti preprocessing gambar pada tugas computer vision.

    Machine learning dapat dibagi sesuai dengan sifat pelabelan data menjadi

    supervised learning, unsupervised learning, dan semi-supervised learning (El Naqa

    & Murphy, 2015) seperti yang terlihat pada Gambar 2.3

  • 18

    Gambar 2.3 Sifat-sifat pelabelan pada Machine Learning (El Naqa & Murphy, 2015)

    2.8.1 Supervised Learning

    Supervised learning terdiri dari ketersediaan output yang diinginkan untuk

    serangkaian sinyal input yang diberikan; dengan kata lain, setiap sampel pelatihan

    terdiri dari sinyal input dan output yang sesuai (I. N. Da Silva, Spatti, Flauzino,

    Liboni, & dos Reis Alves, 2017).

    Supervised learning didasarkan pada pelatihan sampel data dari sumber data

    dengan klasifikasi yang sudah ditentukan. Teknik-teknik tersebut digunakan dalam

    feedforward atau multilayer perceptron (MLP). MLP memiliki tiga karakteristik:

    a. Satu atau lebih lapisan neuron tersembunyi yang tidak termasuk bagian

    dari lapisan input atau ouput dari jaringan yang mengaktifkan jaringan

    untuk belajar dan menyelesaikan segala kerumitan masalah.

    b. Ketidaklinieran yang tercermin dalam aktivitas neuron adalah

    terdiferensiasi.

    c. Model interkoneksi jaringan menunjukkan tingkat konektivitas yang

    tinggi.

    Karakteristik ini dengan pembelajaran melalui pelatihan dapat memecahkan

    masalah yang sulit dan beragam (Sathya & Abraham, 2013).

  • 19

    2.8.2 Unsupervised Learning

  • 20

    a. Clustering merupakan permasalahan di mana peneliti ingin menemukan

    pengelompokan yang melekat dalam data, seperti mengelompokkan

    pelanggan berdasarkan perilaku.

    b. Association merupakan permasalahan di mana peneliti ingin menemukan

    aturan-aturan yang menggambarkan sebagian besar dari data yang dimiliki,

    seperti orang yang membeli barang A juga cenderung membeli barang B.

    2.8.3 Support Vector Machine

    Gambar 2.4 Perhitungan SVM (Lessmann et al., 2006)

    Karena maka dapat diformulasikan menjadi

  • 21

  • 22

    Trik kernel ini membuat SVM fleksibel sehingga memungkinkan pembangunan

    kernel dengan tujuan khusus, seperti untuk klasifikasi teks.

    2.8.4 Random Forest

  • 23

    2.9 Artificial Neural Network

    Menurut Hassoun (Hassoun, 1995), Artificial Neural Network adalah model

    komputasi paralel. Jaringan pada ANN merupakan implementasi dari sistem statis

    atau dinamis non linear. Fitur pada ANN adalah sifat adaptif di mana dalam

    menyelesaikan suatu masalah sistem ini belajar dengan contoh.

    Artificial Neural Networks dapat didefinisikan sebagai struktur yang terdiri

    atas elemen pemprosesan sederhana adaptif yang saling terhubung erat (disebut

    neuron atau node buatan) yang mampu melakukan komputasi paralel masif untuk

    pemrosesan data dan representasi pengetahuan (I. N. Da Silva et al., 2017).

    Artificial neural networks adalah model komputasi yang terinspirasi oleh sistem

    saraf makhluk hidup. ANN memiliki kemampuan untuk memperoleh dan

    mempertahankan pengetahuan (berbasis informasi) dan dapat didefinisikan sebagai

    satu set unit pemrosesan, diwakili oleh neuron buatan, saling terkait oleh banyak

    interkoneksi (sinapsis buatan), dilaksanakan oleh vektor dan matriks bobot sinaptik

    (I. N. Da Silva et al., 2017). Terdapat arsitektur pada artificial neural network yang

    mengatur bagaimana suatu neuron tersusun dan terhubung satu sama lain. Secara

    umum neural network dapat dibagi menjadi tiga bagian, yaitu:

    1. Input layer

    Merupakan lapisan yang berfungsi sebagai penerima input informasi berupa

    data atau fitur yang berasal dari lingkungan luar.

    2. Hidden layers

    Lapisan yang terdiri dari komposisi beberapa neuron yang bertanggung jawab

    untuk mengekstrak pola yang terkait dengan sistem yang dianalisis.

    3. Output layer

    Lapisan yang juga terdiri dari komposisi beberapa neuron, dan masing-

    masing bertanggung jawab untuk menghasilkan hasil akhir, yang mana

    diproses di lapisan sebelumnya.

  • 24

    Menurut Da Silva (I. N. Da Silva et al., 2017), berdasarkan jumlah komposisi

    lapisan pada arsitektur artificial neural networks, dapat dibagi menjadi beberap

    kategori seperti single-layer feedforward network, multilayer feedforward network,

    dan recurrent networks

    2.9.1 Single-Layer Feedforward Neural Network

    Arsitektur artificial neural network pada single-layer feedforward hanya terdiri

    dari satu input layer, dan satu output layer. Informasi dalam arsitektur ini selalu

    berasal dari input layer dan berakhir di output layer.

    Gambar 2.5 Arsitektur single-layer feedforward (I. N. Da Silva et al., 2017)

    2.9.2 Multilayer Feedforward Neural Network

    Berbeda dengan single-layer feedforward network, multilayer feedforward

    network memiliki komposisi satu atau lebih hidden layer. Hidden layer berfungsi

    untuk menyelesaikan beragam permasalahan seperti, perkiraan fungsi, klasifikasi

    pola, kontrol proses dan lain sebagainya.

  • 25

    Gambar 2.6 Arsitektur multi-layer feedforward (I. N. Da Silva et al., 2017)

    2.9.3 Recurrent Neural Network

    Dalam arsitektur recurrent neural network, hasil dari neuron output digunakan

    kembali menjadi sebuah input sebagai feedback. Fitur feedback digunakan untuk

    pemrosesan informasi dinamis, yang berarti dapat digunakan untuk sistem varian

    waktu seperti prediksi time-series.

    Gambar 2.7 Arsitektur recurrent neural network (I. N. Da Silva et al., 2017)

  • 26

    Seperti pada Gambar 2.7 salah satu hasil ouput kembali ke lapisan tengah sebagai

    feedback.

    2.9.4 Long Short Term Memory

    Long Short Term Memory pertama kali diperkenalkan oleh Hochreiter dan

    Schmidhuber (Hochreiter & Schmidhuber, 1997; Nunes, Gerding, McGroarty, &

    Niranjan, 2019). Model LSTM serupa dengan RNN yaitu memiliki struktur yang

    mencangkup mekanisme feedback loop tertunda dalam waktu dan struktur tersebut

    dapat “dibuka” pada suatu waktu. Pada setiap perubahan waktu, secara substansial

    LSTM memiliki struktur yang lebih kompleks daripada RNN, yaitu menggabungkan

    empat saraf yang lengkap di masing-masing sel atau disebut sel memori (Nunes et

    al., 2019).

    konten lama harus dihapus, dan konten saat ini harus diekspos. (Cheng, Dong, &

    Lapata, 2016).

    Gate adalah fitur khas dari pendekatan LSTM. Setiap sel pada LSTM terdapat

    jalur informasi yang dikontrol dengan tiga gate: forget, input, dan ouput.

    1. Forget Gate

    Forget gate bertugas untuk menentukan apakah suatu informasi harus

    disimpan atau dilupakan. Hal tersebut ditentukan melalui hasil dari aktivasi

    fungsi sigmoid antara hidden state sebelumnya dan nilai input terkini. Hasil

    dari aktivasi fungsi sigmoid antara 0 dan 1, semakin mendekati 0 maka

    semakin besar kemungkinan untuk dilupakan, sebaliknya semakin mendekati

    1 maka informasi tersebut akan disimpan.

    2. Input Gate

    Input gate bertugas untuk melakukan update pada cell state. Proses update

    cell state dimulai dengan melakukan aktivasi fungsi sigmoid pada nilai

    hidden state dan nilai input terkini. Aktivasi fungsi sigmoid menghasilkan

    antara 0 dan 1 yang merepresentasikan suatu informasi tidak penting dan

    penting secara berurutan. Kemudian melakukan aktivasi fungsi tanh pada

    hidden state dan nilai input terkini untuk menekan nilai antara -1 dan 1 untuk

  • 27

    membantu mengatur jaringan. Dan terakhir dilakukan perkalian pada hasil

    dari aktivasi fungsi sigmoid dan tanh. Hasil dari fungsi sigmoid menentukan

    bagian informasi dari hasil tanh yang harus disimpan.

    3. Output Gate

    Output gate bertugas untuk menentukan hidden state selanjutnya. Hidden

    state memilki informasi dari nilai input sebelumnya. Untuk menentukan

    hidden state, dimulai dengan melakukan aktivasi fungsi sigmoid pada hidden

    state sebelumnya dan nilai input terkini. Dilanjutkan dengan aktvasi fungsi

    tanh terhadap cell state terbaru. Dan terakhir dilakukan perkalian antara hasil

    activation function tanh dan sigmoid yang akan menghasilkan hidden state

    baru untuk dilanjutkan ke proses selanjutnya.

    Seluruh perhitungan pada setiap gate bergantung pada nilai input terkini pada

    waktu yang sama dan juga state dari hidden layer pada waktu t - 1. Hasil output pada

    sel bergantung pada kedua variable tersebut ditambah dengan cell state pada waktu t.

  • 28

    Gambar 2.8 Long Short Term Memory cell diagram (Nunes et al., 2019)

    2.10 Penelitian Terdahulu

    Berdasarkan beberapa jurnal sebelumnya, diantaranya memiliki keterkaitan

    dengan penelitian yang akan peneliti lakukan.

    Jurnal pertama adalah jurnal yang ditulis oleh Mei Silviana Saputri, Rahmad

    Mahendra, Mirna Adriani (2018) yang berjudul “Emotion Classification on

    Indonesian Twitter Dataset”. Penelitian tersebut bertujuan untuk memanfaatkan

    microblog seperti Twitter sebagai platform untuk menganalisa emosi yang terdapat

    pada tweet-tweet yang ada di Twitter. Dalam penelitian tersebut peneliti melakukan

    pengumpulan sample data selama dua minggu dan mendapatkan data sebanyak 7.500

    tweet. Kemudian data tersebut diklasifikasikan menjadi lima kelas emosi: love, joy,

    surprise, anger, sadness, dan fear. Setelah proses klasifikasi hanya 64% dari total

    data yang dapat diklasifikasikan menjadi lima kelas, 32% tanpa emosi, dan 4%-nya

    multi-label. Pendekatan yang dilakukan oleh peneliti untuk klasifikasi emosi berupa

    Lexicon-based, Bag-of-Words, Word embeddings, orthography, dan Part-Of-Speech

    (POS). Peneliti juga menggunakan dataset lain yang memiliki klasifikasi yang sama

    berdasarkan emotion word list.

    Hasil penelitian pada jurnal pertama dibagi menjadi beberapa kategori dengan

    memperhatikan masing-masing pendekatan yang digunakan. Yang pertama adalah

    hasil dengan menggunakan emotion word list sebagai fitur utama memiliki hasil

    yang lebih baik pada dataset yang terdapat emosi secara eksplisit di dalamnya. Hal

  • 29

    tersebut dibuktikan dengan hasil 57.85% pada nilai F1 saat Logistic Regression

    diaplikasikan. Yang di sisi lain, persentase pada fitur dasar hanya 43,09%.

    Kemudian, penggunaan Bag-of-Words dapat meningkatkan performa pada kedua

    dataset. Hasil yang sangat baik didapatkan ketika menggabungkan fitur-fitur emotion

    word list, Bag-of-Words, dan FastText.

    Jurnal kedua ditulis oleh Nurjanah, Perdana, dan Fauzi (Nurjanah, Perdana, &

    Fauzi, 2017) dengan judul “Analisis Sentimen Terhadap Tayangan Televisi

    Berdasarkan Opini Masyarakat pada Media Sosial Twitter menggunakan Metode

    K-Nearest Neighbor dan Pembobotan Jumlah Retweet”. Penelitian tersebut dibuat

    dengan tujuan untuk memprediksi apakah opini masyarakat terhadap suatu tayangan

    televisi bersfiat positif atau negatif. Peneliti memanfaatkan sosial media Twitter

    sebagai platform untuk mengumpulkan opini masyakarat. Dalam proses klasifikasi

  • 30

    windows 10, dimensi fitur 800, dan menggunakan arsitektur skip-gram. Dalam

    proses klasifikasinya, peneliti mencoba tiga pecobaan yaitu:

  • 31

    Deep network dilatih dengan seluruh emosi (happiness, sadness, anger, fear,

    disgust, dan surprise).

    Deep network dilatih tanpa disgust dan surprise.

    Network dilatih hanya dengan emosi bipolar yaitu happiness dan sadness.

    Menghasilkan permasalahan klasifikasi biner.

    Pada percobaan pertama, peneliti mendapatkan Precission 67% pada happiness,

    47% pada sadness, 55% pada anger, 22% pada fear, 0% pada disgust, dan 0% pada

    surprise. Kemudian mendapatkan Recall sebesar 81% pada happiness, 47% pada

    sadness, 53% pada anger, dam 0% pada fear, disgust, dan surprise. Kemudia F1-

    Score 73% pada happiness, 47% pada sadness, 54% pada anger, 1% pada fear, dan

    0% pada disgust dan surprise. Secara keseluruhan emosi, peneliti mendapatkan 63%.

    Pada percobaan kedua, peneliti tidak menggunakan dataset disgust dan surprise.

    Peneliti mendapatkan Precision 66% pada happiness, 48% pada sadness, 61% pada

    anger, dan 27% pada fear. Kemudian untuk Recall 82% pada happiness, 49% pada

    sadness, 47% pada anger, dan 1% pada fear. Kemudian Untuk F1-Score 73% pada

    happiness, 49% pada sadness, 53% pada anger, dan 2% pada fear. Secara

    keseluruhan emosi peneliti mendapatkan nilai 66%. Pada percobaan terakhir, peneliti

    hanya menggunakan dataset emosi dengan jumlah dua terbanyak yaitu happiness dan

    sadness. Dari percobaan ketiga tersebut peneliti mendapatkan Precision 78% pada

    happiness dan 69% pada sadness. Kemudian pada nilai Recal, 84% pada happiness

    dan 60% pada sadness. Terakhir F1-Score 81% pada happiness dan 64% pada

    sadness.

    Jurnal keempat ditulis oleh Joshi (Joshi & Deshpande, 2018) dengan judul

    “Twitter Sentiment Analysis System”. Dalam jurnal tersebut peneliti mencoba

    melakukan klasifikasi polaritas dari sebuah tweet dikatakan negatif atau positif. Data

    pada penelitian tersebut didapatkan melalui Kaggle dan terdapat kelas sentiment

    dengan 1 dikatakan positif dan 0 dikatakan negatif. Dalam proses preprocessing

    peneliti melakukan beberapa proses diantaranya: merubah tweet menjadi lowercase,

    menggantikan hyperlinks dengan kata URL, menggantikan emoticon menjadi dua

    jenis emoticon EMO_POS dan EMO_NEG, dan beberapa proses lainnya. Peneliti

    membuat pemetaan untuk merubah emoticon yang ditemukan pada suatu tweet

    menjadi salah satu dari dua kata tersebut. Kemudian peneliti melakukan Feature

    Extraction dengan Unigrams dan Bigrams. Pada Unigrams, peneliti mendapatkan

    181.232 kata unik dan pada bigrams mendapatkan 1.954.953 bigrams unik. Peneliti

  • 32

    menggunakan beberapa algoritma diantaranya Baseline (Evaluation Metric), Naïve

    Bayes, dan Maximum Entropy. Pada penelitian tersebut, peneliti menerapkan model

    Naïve Bayes dan Maximum Entropy dikarenakan performa keduanya jauh lebih baik

    dibandingkan penggunaan model Baseline.

    Jurnal kelima adalah jurnal yang ditulis oleh Gaind, Syal, dan Padgalwar (Gaind,

    Syal, & Padgalwar, 2019) dengan judul “Emotion Detection and Analysis on

    Social Media”. Penelitian tersebut ditujukan untuk mengklasifikasikan teks menjadi

    enam kategori emosi, yaitu: happiness, sadness, fear, anger, surprise, dan disgust.

    Dalam pembuatan model, peneliti menggunakan dua pendekatan berbeda

    kemudiannya menggabungkannya. Metode pertama menggunakan fitur tekstual

    seperti emoticons, degree words, Part of Speech, dan grammatical analysis. Metode

    kedua menggunakan pendekatan klasifikasi machine learning. Peneliti

    mengumpulkan data sebanyak 10 ribu tweet dengan menggunakan Tweepy library

    Python untuk mengumpulkan data tweet. Kemudian peneliti membuat sebuah bag of

    words emosi dengan kualitas akurasi tinggi sebanyak 1500 kata yang disebut sebagai

    Emotion Word Set (EWS). Kemudian, disesediakan 50 kata degree seperti kata “too”,

    “more”, dan lainnya. Selain itu peneliti juga menyediakan 20 data kota-kota besar di

    India.

    Pada pendekatan pertama peneliti menggunakan NLP, Emotion Word Set, dan

    beberapa tekstual fitur seperti Tokenizing, Annotating, Finding Hits, Detecting

    person in context, Effect of Negation dan Degree-words, dan Emoticon detection.

    Kemudian pada pendekatan kedua, peniliti menggunakan pendekatan machine

    learning. Pada pendekatan ini, peneliti melakukan tiga tahap yaitu Generation of the

    Training Set, Filtering and Labelling the Training Set, dan Training the Classifier.

    Setelah itu peneliti menggabungkan hasil keduanya dengan menjumlahkan nilai

    maksimal pada pendekatan pertama dengan pendekatan kedua. Dengan

    menggabungkan kedua pendekatan peneliti berhasil mendapatkan akurasi 91.7%

    dengan klasifikasi SMO dan 85.4% dengan klasifikasi J48.

    Menurut Jimmie (Manning, 2014) Social media merupakan suatu istilah yang

    mengacu pada bentuk baru sebuah media yang melibatkan partisipasi interaktif.

    Menurutnya pengembangan media dibagi menjadi dua masa, masa broadcast dan

    masa interaktif. Di mana pada masa broadcast media hanya berfokus pada satu

    entitas dan didistribusikan kepada banyak orang seperti radio dan televisi. Sedangkan

    media interaktif adalah masa di mana interaktif sebagai fokus dari fungsi suatu

  • 33

    media. Sehingga setiap individu dapat berkomunikasi secara langsung ke satu atau

    banyak orang.

    Kemudian disimpulkan oleh Hayes (Hayes, 2015), media sosial merupakan

    saluran berbasis internet yang memungkinkan pengguna untuk dapat berinteraksi

    secara opurtunis dan selektif menampilkan diri, baik secara real time atau asinkron.

  • 34