14
IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI KATEGORI BERITA DALAM BAHASA INDONESIA SKRIPSI Diajukan Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer (S.Kom.) Rully Saputra 00000013889 PROGRAM STUDI INFORMATIKA FAKULTAS TEKNIK DAN INFORMATIKA UNIVERSITAS MULTIMEDIA NUSANTARA TANGERANG 2020

IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

  • Upload
    others

  • View
    63

  • Download
    0

Embed Size (px)

Citation preview

Page 1: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI

KATEGORI BERITA DALAM BAHASA INDONESIA

SKRIPSI

Diajukan Sebagai Salah Satu Syarat untuk Memperoleh Gelar

Sarjana Komputer (S.Kom.)

Rully Saputra

00000013889

PROGRAM STUDI INFORMATIKA

FAKULTAS TEKNIK DAN INFORMATIKA

UNIVERSITAS MULTIMEDIA NUSANTARA

TANGERANG

2020

Page 2: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …
Page 3: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

iii

PERNYATAAN TIDAK MELAKUKAN PLAGIAT

Dengan ini saya,

Nama : Rully Saputra

NIM : 00000013889

Program Studi : Informatika

Fakultas : Fakultas Teknik dan Informatika

menyatakan bahwa Skripsi yang berjudul “IMPLEMENTASI METODE LSTM-

RNN PADA KLASIFIKASI KATEGORI BERITA DALAM BAHASA

INDONESIA” ini adalah karya ilmiah saya sendiri, bukan plagiat dari karya ilmiah

yang ditulis oleh orang lain atau lembaga lain, dan semua karya ilmiah orang lain

atau lembaga lain yang dirujuk dalam Skripsi ini telah disebutkan sumber

kutipannya serta dicantumkan di Daftar Pustaka.

Jika di kemudian hari terbukti ditemukan kecurangan/ penyimpangan, baik dalam

pelaksanaan Skripsi maupun dalam penulisan laporan Skripsi, saya bersedia

menerima konsekuensi dinyatakan TIDAK LULUS untuk mata kuliah Skripsi yang

telah saya tempuh.

Tangerang, 21 Desember 2020

Rully Saputra

Stamp
Page 4: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

iv

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Sebagai sivitas akademik Universitas Multimedia Nusantara, saya yang bertanda

tangan di bawah ini:

Nama : Rully Saputra

NIM : 00000013889

Program Studi : Informatika

Fakultas : Fakultas Teknik dan Informatika

Jenis Karya : Skripsi

Demi pengembangan ilmu pengetahuan, menyetujui dan memberikan izin kepada

Universitas Multimedia Nusantara hak Bebas Royalti Non-eksklusif (Non-

exclusive Royalty-Free Right) atas karya ilmiah saya yang berjudul:

Implementasi Metode Lstm-Rnn Pada Klasifikasi Kategori Berita Dalam

Bahasa Indonesia beserta perangkat yang diperlukan.

Dengan Hak Bebas Royalti Non-eksklusif ini, pihak Universitas Multimedia

Nusantara berhak menyimpan, mengalihmedia atau format-kan, mengelola dalam

bentuk pangkalan data (database), merawat, dan mendistribusi dan menampilkan

atau mempublikasikan karya ilmiah saya di internet atau media lain untuk

kepentingan akademis, tanpa perlu meminta izin dari saya maupun memberikan

royalti kepada saya, selama tetap mencantumkan nama saya sebagai penulis karya

ilmiah tersebut.

Demikian pernyataan ini saya buat dengan sebenarnya untuk dipergunakan

sebagaimana mestinya.

Tangerang, 21 Desember 2020

Rully Saputra

Stamp
Page 5: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

v

HALAMAN PERSEMBAHAN/MOTO

Karya ini saya persembahkan untuk

kedua Orang tua, saudara, dan

seluruh orang yang telah mendukung penelitian ini

Stay Hungry, Stay Foolish

Steve Jobs

Page 6: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

vi

IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI

KATEGORI BERITA DALAM BAHASA INDONESIA

ABSTRAK

Klasifikasi kategori suatu data teks memiliki tujuan untuk mempermudah manusia untuk mengkategorikan sebuah data dalam kategori tertentu. Pada penelitian ini, klasfikasi berita digital akan mempermudah editor dalam menentukan berita tersebut masuk pada kategori tertentu. Proses mengklasifikasi data teks tidak dapat dilakukan oleh machine learning karena sebuah model machine learning hanya dapat menerima masukan berupa nilai numerik. Dengan adanya keterbatasan tersebut, maka kumpulan data teks harus ditransformasi dengan menerapkan Natural Language Processing (NLP) yang mempersiapkan data agar dapat diproses. NLP menjadi kunci agar sebuah model dapat mempelajari data latih dengan optimal supaya hasil prediksi akurat. Metode untuk melakukan prediksi dengan menerapkan LSTM-RNN merupakan kombinasi terbaik dalam memprediksi suatu kumpulan kata yang banyak Pada penelitan terdahulu, penggunaan metode LSTM-RNN memiliki tingkat akurasi yang tinggi untuk klasifikasi berita dalam bahasa inggris. Untuk eksplorasi lebih lanjut, maka pada penelitian ini menggunakan berita berbahasa Indonesia yang diambil dari Jakartaresearch dan web scraping pada Kompas.com yang menjadi data latih dan data testing. Berdasarkan hasil eksperimen untuk model LSTM-RNN berhasil mendapatkan nilai akurasi sebesar 93%, nilai recall sebesar 91.8%, nilai presisi sebesar 92.4% dan nilai F1-Score sebesar 91.8%. Nilai akurasi prediksi dengan menggunakan 17 data berita dari Detik.com menunjukan 100% akurat memprediksi kategori berita tersebut.

Kata kunci : Genre Classification, Long Short Term Memory, Natural Language Processing, News, Recurrent Neural Network, Web Scraping,

Page 7: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

vii

IMPLEMENTATION LSTM-RNN METHOD FOR CLASSIFYING

CATEGORY OF INDONESIAN NEWS

ABSTRACT

Category classification of text has a purpose of helping people categorize text to a specific category. In this research, classifying news will help the editor to determine a category of news. Machine learning can't process text to classify the category because machine learning only process numerical data. With these limitations, the text data must be transformed with Natural Language Processing (NLP) that help prepare the data to be able to process. NLP is key to help the model learn training data for the best predict result. The best method to predict a big collection of text is a combination of LSTM-RNN. In previous research, using LSTM-RNN method has high accurate rate to classifying news in English. For further exploration, in this research, the dataset to train and test the model applying Indonesian news from Jakartaresearch and web scraping from Kompas.com. Based on the experiment for the model LSTM-RNN, the final score of accurate is 93%, the score of recall is 91.8%, the score of precision is 92.4%, and the score of F1-Score is 91.8%. The prediction of 17 news from Detik.com has result 100% accurately predict the correct category.

Keyword : Genre Classification, Long Short Term Memory, Natural Language Processing, News, Recurrent Neural Network, Web Scraping,

Page 8: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

viii

KATA PENGANTAR

Puji syukur saya haturkan kepada Tuhan yang maha esa atas segala karunia-

nya sehingga laporan skripsi yang berjudul “IMPLEMENTASI METODE LSTM-

RNN PADA KLASIFIKASI KATEGORI BERITA DALAM BAHASA

INDONESIA” dapat diselesaikan dengan baik dan tepat waktu. Skripsi ini sebagai

persyaratan saya agar dapat lulus pada program studi Informatika, Fakultas

Teknologi Informasi dan Komunikasi, Universitas Multimedia Nusantara. Tanpa

bantuan fasilitas kampus tidak mungkin laporan skripsi ini dapat selesai dengan

tepat waktu. Selain itu, ungkapan terima kasih juga ditujukan kepada :

1. Bapak Alexander Waworuntu, S.Kom., M.T.I selaku dosen tetap di

Universitas Multimedia Nusantara sebagai dosen pembimbing yang selalu

sabar menghadapi saya dan memberikan bimbingan dan masukkan agar

terciptanya skripsi yang baik,

2. Bapak Andre Rusli, S.Kom., M.Sc. selaku dosen di Universitas Multimedia

Nusantara sebagai dosen pembimbing yang sabar untuk menjawab

pertanyaan mengenai metode yang digunakan pada skripsi ini dan berbagai

hal teknis pembuatan program,

3. Ibu Marlinda Vasty Overbeek, S.Kom, M.Kom selaku kepala program studi

Informatika yang memberikan kesempatan untuk melakukan proses

pembuatan skripsi

4. Keluarga dan teman-teman yang selalu memberi support berupa jasmani

ataupun rohain agar terus semangat menyelesaikan skripsi

Semoga laporan skripsi ini dapat menjadi inspirasi pembaca dan dikemudian hari

akan dilakukan penelitian lebih lanjut yang semakin baik.

Page 9: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

ix

DAFTAR ISI HALAMAN JUDUL ................................................................................................ i

HALAMAN PENGESAHAN ................................................................................. ii

PERNYATAAN TIDAK MELAKUKAN PLAGIAT .......................................... iii

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ............................................................................. iv

HALAMAN PERSEMBAHAN/MOTO ................................................................. v

ABSTRAK ............................................................................................................. vi

ABSTRACT .......................................................................................................... vii

KATA PENGANTAR ......................................................................................... viii

DAFTAR ISI .......................................................................................................... ix

DAFTAR GAMBAR ............................................................................................. xi

DAFTAR TABEL ................................................................................................ xiii

DAFTAR RUMUS .............................................................................................. xiv

BAB 1 PENDAHULUAN .................................................................................... 15

1.1. Latar Belakang Masalah ............................................................................. 15

1.2. Rumusan Masalah ........................................................................................ 3

1.3. Batasan Masalah ........................................................................................... 4

1.4. Tujuan Penelitian .......................................................................................... 4

1.5. Manfaat Penelitian ........................................................................................ 5

1.6. Sistematika Penulisan ................................................................................... 5

BAB 2 LANDASAN TEORI .................................................................................. 7

2.1. Natural Language Processing ...................................................................... 7

2.2. Recurrent Neural Network (RNN) ............................................................... 9

2.3 Long Short-Term Memory (LSTM) ............................................................ 10

2.4. Softmax Activation ...................................................................................... 14

2.5. FastText ...................................................................................................... 15

2.6 Confusion Matrix ........................................................................................ 16

BAB 3 METODOLOGI DAN PERANCANGAN SISTEM ................................ 18

3.1. Metodologi Penelitian ................................................................................ 18

3.2. Analisis dan Alur Kerja .............................................................................. 20

3.3. Perancangan Model .................................................................................... 22

3.3.1. Pengambilan Data ................................................................................ 23

Page 10: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

x

3.3.2. Pre Processing ...................................................................................... 24

3.3.3. Implementasi FastText ......................................................................... 29

3.3.4. Pembuatan Model LSTM-RNN ........................................................... 30

3.3.5. Rancangan dan Alur Kerja Sistem ....................................................... 32

BAB 4 IMPLEMENTASI DAN UJI COBA ........................................................ 35

4.1. Spesifikasi Sistem ....................................................................................... 35

4.2. Implementasi Web Scraping ...................................................................... 36

4.3. Implementasi Pre-Processing ..................................................................... 38

4.3.1. Cleaning Text ....................................................................................... 38

4.3.2. Implementasi Pembuatan Data Training.............................................. 40

4.4. Implementasi FastText ............................................................................... 42

4.5. Implementasi Pembuatan Model ................................................................ 43

4.5.1. Impelementasi Evaluasi Performa Model ............................................ 45

4.6. Implementasi Sistem Web .......................................................................... 48

4.7. Uji Coba ..................................................................................................... 53

BAB 5 SIMPULAN DAN SARAN ...................................................................... 59

5.1. Simpulan ..................................................................................................... 59

5.2. Saran ........................................................................................................... 59

DAFTAR PUSTAKA ........................................................................................... 61

LAMPIRAN .......................................................................................................... 64

Page 11: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

xi

DAFTAR GAMBAR

Gambar 2.1 Langkah-Langkah Penerapan NLP…………………………………..8

Gambar 3.1 Flowchart Penelitian…..……………………………………………21

Gambar 3.2 Proses Web Scraping…..……………………………………………23

Gambar 3.3 Flowchart Cleaning Text…..………………………………………..25

Gambar 3.4 Proses Stemming……….…..………………………………………..26

Gambar 3.5 Proses Create Vocabulary……….…..……………………………...28

Gambar 3.6 Proses Implementasi Fasttext……….…..…………………………..29

Gambar 3.7 Pembuatan Model LSTM-RNN……….…..………………………...30

Gambar 3.8 Pelatihan Model……………………….…..………………………...31

Gambar 3.9 Rancangan Antarmuka Web……………………….…..……………33

Gambar 3.10 Impelementasi model dengan Web Service………………………..34

Gambar 4.1 Kelas Berita untuk Scrapy…………………………………………..37

Gambar 4.2 Proses Pengambilan URL Berita……………………………………37

Gambar 4.3 Pengambilan Isi Berita dari Kumpulan URL……………………….37

Gambar 4.4 Penghapusan Baris “Baca Juga”…………...……………………….39

Gambar 4.5 Penghapusan Identitas Platform Berita…………...………………...39

Gambar 4.6 Cleaning Text………………………...…………...………………...40

Gambar 4.7 Stemming Paragraf Berita………………………...…………...……40

Gambar 4.8 Tokenisasi………………………………………...…………...……40

Gambar 4.9 Pembuatan Vocabulary………………………………………...…...41

Gambar 4.10 Persiapan Data Latih………………………………………...….....42

Gambar 4.11 Implementasi FastText………………………………………...…..43

Gambar 4.12 Pembuatan Model LSTM……………………………………….....44

Gambar 4.13 Proses Pelatihan Model………………………………………........45

Gambar 4.14 Grafik Loss………………….……………………………………..46

Gambar 4.15 Grafik Akurasi………………….………………………………….46

Gambar 4.16 Classification Report dan Confusion Matrix Data Testing………..47

Gambar 4.17 Classification Report dan Confusion Matrix Data Latih...………..48

Page 12: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

xii

Gambar 4.18 Implementasi Flask………………………..………………….…...50

Gambar 4.19 Tampilan Awal Web………………………..………………….….50

Gambar 4.20 Tampilan Kolom Isi Berita Terisi………………………..………..51

Gambar 4.21 Tampilan Loading Proses Prediksi………………………..………51

Gambar 4.22 Implementasi AJAX Jquery……...………………………..………51

Gambar 4.23 Hasil Akhir Prediksi……....……...………………………..………52

Page 13: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

xiii

DAFTAR TABEL

Tabel 4.1 Dokumentasi Hasil Percobaan……...………………………..………..46

Tabel 4.2 Hyperparameter pada model……...………………………..………….53

Tabel 4.3 Potongan isi berita beserta kategorinya……...………………………..53

Tabel 4.4 Hasil Prediksi……………………………………...…………………..57

Tabel 4.5 Hasil Evaluasi Model……………………………………...…………..58

Page 14: IMPLEMENTASI METODE LSTM-RNN PADA KLASIFIKASI …

xiv

DAFTAR RUMUS

Rumus 2.1 Rumus Output State……………………………...…………………..10

Rumus 2.2 Rumus Fungsi Aktivasi……………………………...……………….10

Rumus 2.3 Rumus Forget Gate……………………………...…………………...11

Rumus 2.4 Rumus Lapisan Sigmoid Input Gate……………………………........12

Rumus 2.5 Rumus Lapisan Tanh Input Gate……………………………..............12

Rumus 2.6 Rumus Hidden State……………………………...…………………..13

Rumus 2.7 Rumus Cell State……………………………...……………………...14

Rumus 2.8 Rumus Probabilitas softmax……………………………...…………..17

Rumus 2.9 Rumus Accuracy…………...……………………………...………….17

Rumus 2.10 Rumus Precision………….……………………………...………….17

Rumus 2.11 Rumus Recall…………….……………………………...…………..17

Rumus 2.12 Rumus F1-Score…………….……………………………...………17