• Tidak ada hasil yang ditemukan

PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT

N/A
N/A
Protected

Academic year: 2021

Membagikan "PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT"

Copied!
116
0
0

Teks penuh

(1)

TUGAS AKHIR – IS184853

PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT

INDONESIA MEDICAL LANGUAGE MODEL USING MASKED LANGUAGE MODEL TECHNIQUES ON BERT

FIRQA AQILA NOOR ARASYI NRP 05211740000127

Dosen Pembimbing :

Renny Pradina K., S.T., M.T

DEPARTEMEN SISTEM INFORMASI

Fakultas Teknologi Elektro dan Informatika Cerdas Institut Teknologi Sepuluh Nopember

Surabaya 2020

(2)

2 i

TUGAS AKHIR – IS184853

PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT

FIRQA AQILA NOOR ARASYI NRP 05211740000127

Dosen Pembimbing :

Renny Pradina K., S.T., M.T.

DEPARTEMEN SISTEM INFORMASI

Fakultas Teknologi Elektro dan Informatika Cerdas Institut Teknologi Sepuluh Nopember

Surabaya 2020

(3)

ii

FINAL PROJECT – IS184853

INDONESIAN MEDICAL LANGUAGE MODEL USING MASKED LANGUAGE MODEL TECHNIQUES ON BERT

FIRQA AQILA NOOR ARASYI NRP 05211740000127

Supervisor :

Renny Pradina K., S.T., M.T.

DEPARTMENT OF INFORMATION SYSTEMS

Faculty of Intelligent Electrical and Informatics Technology Institut Teknologi Sepuluh Nopember

Surabaya 2020

(4)

iv

(5)

v

(6)

vi

(7)

vii

PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA

(8)

viii

DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT

Nama Mahasiswa : Firqa Aqila Noor Arasyi

NRP 05211740000127

Jurusan : Sistem Informasi FTEIC-ITS Pembimbing 1 : Renny Pradina K., S.T., M.T.

ABSTRAK

Pembuatan Language Model (LM) untuk domain yang lebih spesifik belum banyak dilakukan terutama dalam teks berbahasa Indonesia. Disisi lain jenis teks dalam Bahasa Indonesia juga sangat beragam seperti teks berita, politik, sains, finansial, ekonomi, kedokteran, dan berbagai jenis teks lainnya. Namun banyaknya jenis teks tersebut belum terdapat model bahasa yang spesifk untuk mengatasi permasalahan terkait domain tersebut. Oleh karena itu, penelitian ini bertujuan untuk melakukan pembuatan Language Model (LM) untuk domain spesifik yaitu kedokteran. Model yang digunakan adalah model BERT. Data yang digunakan dalam penelitian ini adalah data yang diambil dari kumpulan jurnal di bidang kedokteran berbahasa Indonesia. Pada tahap evaluasi penelitian ini menggunakan dataset terjemahan dan hanya akan diuji untuk permasalahan klasifikasi teks. Penelitian ini menghasilkan sebuah model yang kami namai sebagai MedBERT.

Penelitian ini juga berhasil menunjukan bahwa language model yang telah dilatih dalam teks latih didomain yang lebih spesifik memiliki performa yang lebih baik daripada model yang dilatih dalam teks latih yang lebih general. Uji performa dari model MedBERT yang kami hasilkan memiliki performa yang kompetitif jika dibandingkan dengan language model berbahasa Indonesia lainnya yang lebih general seperti IndoBERT dan IndoLEM.

Model MedBERT yang dihasilkan juga memiliki performa yang jauh lebih baik jika dibandingkan dengan model bahasa multilingual seperti mBERT dan XLM-RoBERTa dengan selisih akurasi sekitar 2% - 10% lebih baik daripada kedua model tersebut. Hasil evaluasi nilai akurasi tertinggi yang didapatkan oleh model MedBERT adalah 42 persen.

Kata kunci: Language Model, BERT, MedBERT, Klasifikasi Teks

(9)

ix

INDONESIAN MEDICAL LANGUAGE MODEL USING MASKED LANGUAGE MODEL TECHNIQUES ON BERT

Student Name : Firqa Aqila Noor Arasyi

NRP 05211740000127

Department : Information Systems ELECTICS-ITS Supervisor 1 : Renny Pradina K., S.T., M.T.

ABSTRACT

Creating Language Model (LM) for more specific domains has not been done much, especially in Indonesian texts. On the other hand, the types of texts in Indonesian are also very diverse, such as news texts, politics, science, finance, economics, medicine, and various other types of texts. However, there are many types of texts that do not have a specific language model to solve problems related to this domain. Therefore, this study aims to make a Language Model (LM) for a specific domain, namely medicine. The model used is the BERT model. The data used in this study is data taken from a collection of journals in the field of medicine in Indonesian language. At the evaluation stage, this research uses a translation dataset and will only be tested for text classification problems.

This research resulted in a model which we named as MedBERT. This study also succeeded in showing that language models that have been trained in training texts in more specific domains have better performance than models trained in more general training texts. The performance test of our MedBERT model has a competitive performance when compared to other more general Indonesian language models such as IndoBERT and IndoLEM. The resulting MedBERT model also has a much better performance when compared to multilingual language models such as mBERT and XLM-RoBERTa with an accuracy difference of about 2% - 10% better than the two models. The evaluation result of the highest accuracy value obtained by the MedBERT model is 42 percent.

Keywords: Language Model, BERT, MedBERT, Text Classification

(10)

10

SURAT PERNYATAAN BEBAS PLAGIARISME Saya yang bertandatangan di bawah ini:

Nama : Firqa Aqila Noor Arasyi

NRP 05211740000127

Tempat/Tanggal Lahir : Bekasi, 03 Desember 1996 Fakultas/Departemen : FTEIC / Sistem Informasi

Nomor Telp/Hp/E-mail : 085954719191 / firqaaa@gmail.com

Dengan ini menyatakan dengan sesungguhnya bahwa penelitian/makalah/tugas akhir saya yang berjudul:

PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESI DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT

Bebas Dari Plagiarisme Dan Bukan Hasil Karya Orang Lain,

Apabila di kemudian hari ditemukan seluruh atau Sebagian penelitian/makalah/tugas akhir tersebut terdapat indikasi plagiarisme, maka saya bersedia menerima sanksi sesuai peraturan dan ketentuan yang berlaku.

Demikian surat pernyataan ini saya buat dengan sesungguhnya dan untuk dipergunakan sebagaimana mestinya.

Surabaya, 7 Agustus 2021

Firqa Aqila Noor Arasyi NRP: 05211740000127

(11)

xi

KATA PENGANTAR

Puji dan syukur penulis tuturkan ke hadirat Allah SWT, Tuhan Semesta Alam yang telah memberikan kekuatan dan hidayah-Nya kepada penulis sehingga penulis mendapatkan kelancaran dalam menyelesaikan tugas akhir ini dengan judul PEMBUATAN MODEL BAHASA MEDIK BERBAHASA INDONESIA DENGAN MENGGUNAKAN TEKNIK MASKED LANGUAGE MODEL PADA BERT yang merupakan salah satu syarat kelulusan pada Departemen Sistem Informasi, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Surabaya.

Terima kasih penulis sampaikan kepada pihak-pihak yang telah mendukung, memberikan saran, motivasi, semangat, dan bantuan baik berupa materiil maupun moril demi tercapainya tujuan pembuatan tugas akhir ini. Tugas akhir ini tidak akan pernah terwujud tanpa bantuan dan dukungan dari berbagai pihak yang sudah meluangkan waktu, tenaga dan pikirannya. Secara khusus penulis akan menyampaikan ucapan terima kasih yang sebanyak-banyaknya kepada:

1. Alm.Bapak Sunarsi dan Alm.Ibu Lilis Arini selaku kedua orang tua dari penulis.

2. Bapak Dr. Mudjahidin, S.T., M.T. selaku Ketua Departemen Sistem Informasi ITS Surabaya.

3. Ibu Renny Pradina K., S.T., M.T., selaku dosen pembimbing dan sebagai narasumber yang senantiasa meluangkan waktu, memberikan ilmu dan petunjuk, serta memotivasi untuk kelancaran tugas akhir.

4. Bapak Faizal Johan Atletiko, S.Kom., M.T dan Bapak Radityo Prasetianto.W, S.Kom, M.Kom selaku dosen penguji yang telah memberikan saran dan kritik untuk perbaikan tugas akhir.

5. Ibu Amalia Utamima, S.Kom., MBA, Ph.D selaku dosen wali penulis yang telah membimbing penulis mulai dari awal perkuliahan.

6. Seluruh dosen dan karyawan Departemen Sistem Informasi ITS yang telah memberikan ilmu yang bermanfaat kepada penulis.

7. Berbagai pihak yang tidak bisa disebutkan satu persatu yang telah turut serta menyukseskan penulis dalam menyelesaikan tugas akhir.

Penyusunan laporan ini masih jauh dari kata sempurna sehingga penulis menerima adanya kritik maupun saran yang membangun untuk perbaikan di masa yang akan datang. Semoga buku tugas akhir ini dapat memberikan manfaat bagi pembaca.

Surabaya, 29 Juli 2021

Penulis

(12)

12

DAFTAR ISI

ABSTRAK ... vii

ABSTRACT ... vii

SURAT PERNYATAAN BEBAS PLAGIARISME………. ix

KATA PENGANTAR ... x

DAFTAR ISI ... xi

DAFTAR GAMBAR ... xiv

DAFTAR TABEL ... xv

DAFTAR KODE ... xvi

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 1

1.3 Batasan Masalah ... 2

1.4 Tujuan Penelitian ... 2

1.5 Manfaat Penelitian ... 2

1.6 Relevansi ... 2

BAB II TINJAUAN PUSTAKA ... 4

2.1 Penelitian Sebelumnya ... 4

2.2 Dasar Teori ... 5

2.2.1 Natural Language Processing ... 5

2.2.2 Deep Learning ... 5

2.2.3 Language Modeling ... 5

2.2.4 Attention ... 6

2.2.5 Transformer ... 7

2.2.6 Bidirectional Representation from Transformer (BERT) ... 9

2.2.7 Masked Language Model (MLM) ... 11

2.2.8 multilingual BERT (mBERT) ... 11

2.2.9 XLM (Cross-lingual Language Model) ... 11

2.2.10 XLM-R atau XLM-RoBERTa ... 11

2.2.11 XLNet ... 12

BAB III METODOLOGI ... 16

(13)

xiii

3.1 Tahapan Pelaksanaan Penelitian Tugas Akhir ... 16

3.1.1 Identifikasi masalah dan Studi Literatur ... 16

3.1.2 Pengumpulan Data ... 17

3.1.3 Pra Proses Data ... 19

3.1.4 Pelatihan Model ... 20

3.1.5 Evaluasi Model ... 20

3.1 Jadwal Penelitian ... 21

BAB IV PERANCANGAN ... 23

4.1 Perancangan Pengumpulan Data Teks ... 23

4.2 Perancangan Pra-Proses ... 23

4.3 Perancangan Penerjemahan ... 23

4.4 Perancangan Teks Augmentasi ... 23

4.5 Perancangan Pelatihan Model Klasifikasi ... 24

4.6 Perancangan Evaluasi Model ... 26

4.6.1 Fill Mask ... 26

4.6.2 Accuracy Score ... 26

BAB V IMPLEMENTASI ... 28

5.1 Persiapan Implementasi ... 28

5.2 Pengumpulan Data Teks ... 29

5.3 Pra-Proses Data Teks / Korpus ... 29

5.4 Penerjemahan Dataset ... 29

5.5 Penambahan Data dengan Augmentasi Teks ... 32

5.6 Pra-Proses Dataset ... 36

5.7 Pelatihan Language Model ... 37

5.8 Pelatihan Klasifikasi Teks ... 42

5.9 Evaluasi Language Model ... 58

5.10 Evaluasi Klasifikasi Teks ... 59

BAB VI HASIL DAN PEMBAHASAN ... 61

6.1 Hasil Pengumpulan dan Pra-Proses Teks Latih ... 61

6.2 Pembuatan Dataset Latih ... 62

6.3 Pembuatan Dataset Tes ... 63

6.4 Penerjemahan Dataset Latih dan Tes ... 64

6.5 Penambahan Data Latih dengan Augmentasi ... 65

(14)

xiv

6.6 Pra-Proses Data Hasil Penerjemahan ... 66

6.7 Pelatihan Language Model ... 67

6.8 Evaluasi Fill Mask ... 67

6.9 Downstream Task Sequence Text Classification ... 74

BAB VII KESIMPULAN DAN SARAN ... 92

7.1. Kesimpulan ... 92

7.2. Saran ... 93

DAFTAR PUSTAKA ... 95

BIODATA PENULIS ... 96

(15)

xv

DAFTAR GAMBAR

Gambar 2.1 Scaled Dot-Product Attention (kiri) dan Multi-Head Attention

(kanan)... 6

Gambar 2.2 Mekanisme dari Self-Attention ... 7

Gambar 2.3 Encoder dari Sebuah Transformer ... 8

Gambar 2.4 Decoder dari Sebuah Transformer ... 8

Gambar 2.5 Arsitektur Penuh dari Sebuah Transformer ... 9

Gambar 2.6 Representasi Data Input untuk BERT ... 10

Gambar 2.7 Bidirectional Encoder Representation from Transformer (BERT) ... 10

Gambar 2.8 Hasil evaluasi XLM-R dengan menggunakan XNLI ... 12

Gambar 2.9 Hasil evaluasi XLM-R dengan menggunakan GLUE ... 12

Gambar 2.10 Ilustrasi dari Permutation Language Modeling (PLM) untuk memprediksi w3 ... 13

Gambar 2.11 (a) Content stream attention. (b) Query stream attention. (c) Keseluruhan pelatihan dari permutation language modeling dengan two-stream attention... 14

Gambar 3.1 Alur Pengerjaan Penelitian Tugas Akhir ... 16

Gambar 3.2 Alur Pra Proses Data ... 20

(16)

16

DAFTAR TABEL

Tabel 3.1 Teks dalam Format PDF dan Teks dalam Format txt ... 17

Tabel 3.2 Data Teks Berbahasa Inggris dan Terjemahannya ... 18

Tabel 4.1 Dataframe Dataset Terjemahan ... 23

Tabel 5.1 Spesifikasi Perangkat Cloud ... 28

Tabel 5.2 Rincian Software ... 28

Tabel 6.1 Hasil Pra Proses Teks Latih ... 62

Tabel 6.2 Dataset Latih untuk Klasifikasi ... 63

Tabel 6.3 Dataset Tes untuk Klasifikasi ... 64

Tabel 6.4 Dataset Hasil Penerjemahan ... 65

Tabel 6.5 Hasil Augmentasi Teks ... 65

Tabel 6.6 Pra-Proses Dataset Terjemahan ... 66

Tabel 6.8 Skenario Pelatihan Pertama ... 74

Tabel 6.9 Skenario Pelatihan Kedua ... 76

Tabel 6.10 Skenario Pelatihan Ketiga ... 77

Tabel 6.11 Skenario Pelatihan Keempat ... 78

Tabel 6.12 Skenario Pelatihan Kelima ... 80

Tabel 6.13 Skenario Pelatihan Keenam ... 81

Tabel 6.14 Skenario Pelatihan Ketujuh ... 82

Tabel 6.15 Skenario Pelatihan Kedelapan ... 84

Tabel 6.16 Skenario Pelatihan Kesembilan ... 85

Tabel 6.17 Skenario Pelatihan Kesepuluh ... 86

Tabel 6.18 Skenario Pelatihan Kesebelas ... 88

Tabel 6.19 Skenario Pelatihan Keduabelas ... 89

(17)

xvii

DAFTAR KODE

Kode 5.1 Potongan Kode untuk Memuat Data Teks ... 29

Kode 5.2 Potongan Kode untuk Penerjemahan ... 29

Kode 5.3 Potongan Kode Kelas Dataset untuk Penerjemahan ... 30

Kode 5.4 Potongan Kode Untuk Melakukan Penerjemahan ... 31

Kode 5.5 Potongan Kode Kelas Dataset Augmentasi ... 32

Kode 5.6 Potongan Kode Untuk Memilih Label yang akan Diaugmentasi ... 33

Kode 5.7 Potongan Kode untuk Membungkus Data dalam Sebuah Dataloader .. 33

Kode 5.8 Augmentasi untuk Satu Buah Sample ... 34

Kode 5.9 Potongan Kode untuk Melakukan Augmentasi ... 35

Kode 5.10 Regex untuk Pra-Proses Dataset ... 36

Kode 5.11 Regex untuk Mengektrak Baris Index Berhuruf Ganda ... 36

Kode 5.12 Kode untuk Memuat Pustaka yang Dibutuhkan dalam Pelatihan Language Model ... 37

Kode 5.13 Kode untuk Pelatihan Tokenizer Berdasarkan Teks Latih ... 38

Kode 5.14 Kode untuk Memuat Tokenizer Berdasarkan Kosakata Hasil Pelatihan Language Model ... 38

Kode 5.15 Kode untuk Melakukan Pengaturan Tokenizer dengan Menambahkan Token [SEP] dan [CLS] ... 39

Kode 5.16 Kode untuk Melakukan Konfigurasi Language Model ... 39

Kode 5.17 Kode untuk Memuat Tokenizer dan Menginisiasi Model Berdasarkan Konfigurasi yang Telah Dibuat ... 40

Kode 5.18 Kode untuk Mengubah Teks Latih ke Format Dataset Per Baris ... 40

Kode 5.19 Kode untuk Membuat Data Collator ... 41

Kode 5.20 Kode Pengaturan Parameter TrainingArgument dan Inisiasi Trainer 41 Kode 5.21 Kode untuk Melakukan Pengecekan GPU ... 42

Kode 5.22 Kode untuk Memuat Data Latih dan Data Tes ... 43

Kode 5.23 Kode untuk Melakukan Proses Pengacakan ... 43

Kode 5.24 Kode Proses Encode Label ... 44

Kode 5.25 Kode Pembentukan Struktur Pelatihan ... 44

Kode 5.26 Kode untuk Mencari Panjang Kalimat Maksimal ... 45

Kode 5.27 Kode untuk Mengatur Panjang Maksimal Kalimat ... 45

Kode 5.28 Kode Pembuatan Kelas Dataset Latih ... 46

Kode 5.29 Kode Pembuatan Kelas Dataset Tes ... 48

Kode 5.30 Kode Pembuatan Dataloader ... 49

Kode 5.31 Inisiasi train_data_loader, eval_data_loader, dan test_data_loader .... 50

Kode 5.32 Inisiasi Model Hasil Pelatihan Language Model ... 50

Kode 5.33 Kode Pembuatan Kelas Classifier ... 51

Kode 5.34 Kode Inisiasi Label dan Model Klasifikasi ... 51

Kode 5.35 Kode Pengaturan Scheduler dan Parameternya ... 52

Kode 5.36 Pembuatan Fungsi Masing-Masing Scheduler ... 53

Kode 5.37 Inisiasi optimizer, total_steps, scheduler, dan loss_fn ... 53

Kode 5.38 Fungsi train_epoch ... 54

Kode 5.39 Fungsi eval_model ... 56

(18)

18

Kode 5.40 Pelatihan Model ... 57

Kode 5.41 Evaluasi Model dengan Fill Mask ... 58

Kode 5.42 Evaluasi Fill Mask ... 58

Kode 5.43 Evaluasi Klasifikasi Teks ... 59

(19)

BAB I PENDAHULUAN 1.1 Latar Belakang

Perkembangan bidang Natural Language Processing (NLP) di Indonesia masih sangat kurang jika dibandingkan dengan beberapa bahasa lain di dunia. Hal ini bisa ditunjukan dari jumlah paper yang berhasil diterima pada konferensi-konferensi di tingkat internasional setiap tahunnya. Namun akhir-akhir ini beberapa peneliti NLP di Indonesia berhasil megimplementasikan sebuah metode berbasis Bidirectional Encoder Representation from Transformer (BERT) yang mampu memecahkan beberapa permasalahan dalam NLP terutama dalam Bahasa Indonesia [1]. Dari hasil penelitian itulah model BERT yang telah dibuat masih bisa dikembangkan lebih lanjut terutama untuk menangani permasalahan-permasalahan dalam domain yang lebih spesifik.

Pembuatan Language Model (LM) untuk permasalahan yang spesifik di Indonesia masih belum begitu pesat perkembangannya. Sementara itu jenis teks berbahasa Indonesia sangat beragam, mulai dari teks berita, sains, finansial, bahkan biomedik.

Penelitian ini difokuskan pada pembuatan LM pada kumpulan teks biomedik. Hal ini dikarenakan penggunaan data teks biomedik belum dilakukan pada penelitian sebelumnya. Sehingga masih bisa dilakukan pembuatan LM yang spesifik dari LM dasarnya.

Sejauh ini terdapat beberapa LM untuk teks biomedik. Salah satunya adalah BioNER dan BioBERT [2]. Bio-NER adalah model yang spesifik digunakan dalam permasalahan Name-Entity Recognition di teks biomedik. Contoh penggunaannya adalah untuk mengenali nama virus, obat, protein, dan lain sebagainya. Sedangkan BioBERT adalah model kontekstual yang bisa digunakan tidak hanya untuk NER, melainkan juga untuk klasifikasi teks.

Pada dasarnya model-model yang telah dibuat tersebut hanya tersedia dalam bentuk monolingual saja yaitu Bahasa Inggris. Para peneliti NLP dibidang ini juga belum menginisiasi pembuatan LM biomedik dalam bentuk multilingualnya. Oleh karena itu pembuatan LM berbahasa Indonesia sangat diperlukan terutama dalam domain biomedik.

Pada penelitian ini, kami membuat LM spesifik untuk teks biomedik berbahasa Indonesia. Dalam penelitian ini diharapkan mampu menciptakan LM yang performanya melebihi LM yang general terutama dalam task data-data teks biomedik.

1.2 Rumusan Masalah

Rumusan permasalahan dalam penelitian ini adalah sebagai berikut:

1. Bagaimana cara mengekstraksi data teks dari sebuah jurnal ilmial biomedik?

1

(20)

2

2. Bagaimana membuat language model menggunakan pretrained model yang sudah tersedia?

3. Bagaimana hasil ketepatan prediksi pada task klasifikasi dengan menggunakan dataset benchmark?

1.3 Batasan Masalah

Batasan masalah yang digunakan dalam penelitian ini adalah sebagai berikut : 1. Dataset benchmark yang digunakan adalah dataset hasil terjemahan dari

Bahasa Inggris yang telah dibuat sebelumnya.

2. Data teks yang digunakan dalam pelatihan model menggunakan data teks yang diambil dari jurnal penelitian di bidang biomedik.

3. Evaluasi model hanya dilakukan pada task klasifikasi.

1.4 Tujuan Penelitian

Secara garis besar tujuan dari penelitian ini adalah sebagai berikut:

1. Menerapkan metode scraping untuk mengekstraksi data teks dari sebuah jurnal biomedik yang berformat Portable Document Format (PDF).

2. Menerapkan arsitektur model BERT dalam pembuatan language modeling.

3. Melakukan analisis performa model pada task klasifikasi pada dataset benchmark terjemahan.

1.5 Manfaat Penelitian

Manfaat dari penelitian ini adalah membantu menyediakan language model pada domain spesifik yaitu biomedik terutama dalam Bahasa Indonesia. Model yang telah dilatih dan dievaluasi diharapkan bisa digunakan dalam penelitian-penelitian berikutnya yang berkaitan dengan pemrosesan teks di bidang biomedik.

1.6 Relevansi

Topik pada penelitian tugas akhir ini adalah Language Model yang sangat relevan dengan bidang penelitian didalam laboratorium Akuisisi Data dan Diseminasi Informasi ADDI, yaitu Natural Language Processing. Matakuliah lain yang sangat relevan dengan penelitian ini adalah Penggalian Data, Pengolahan Bahasa Alami, dan Visualisasi Informasi,

(21)

3

Halaman ini sengaja dikosongkan

(22)

BAB II

TINJAUAN PUSTAKA

2.1 Penelitian Sebelumnya

Penelitian pertama yang kami rujuk adalah penelitian yang berjudul “IndoNLU:

Benchmark and Resources for Evaluating Indonesian Natural Language Understanding” yang ditulis oleh Bryan Wilie et.al pada tahun 2020. Pada penelitian ini, para peneliti berhasil membuat sebuah benchmark yang terdiri dari dua belas task dan terbagi kedalam empat buah kategori yang bisa digunakan dalam evaluasi model dalam natural language processing berbahasa Indonesia. Keempat buah kategori tersebut meliputi single-sentence classification, single-sentence sequence-tagging, sentence-pair classification, dan sentence-pair sequence labelling. Selain itu pada penelitian ini digunakan tiga buah jenis model yang berbeda meliputi non-pretrained model, word-embedding based model menggunakan fastText, dan contextualized language model menggunakan IndoBERT dan IndoBERT-lite. Dalam penelitian ini, model IndoBERTLARGE, XLM-RLARGE, dan IndoBERTBASE mencapai hasil 3 teratas hasil kinerja terbaik pada task klasifikasi. Selain itu, XLM-LARGE, IndoBERTLARGE, dan XLM-RBASE mencapai 3 teratas hasil kinerja terbaik pada task sequence-labeling [1].

Penelitian selanjutnya adalah penelitian yang berjudul “FinBERT: A Pretrained Language Model for Financial Communications” yang ditulis oleh Yi Yang et.al pada tahun 2020. Pada penelitian ini, peneliti membuat sebuah language model untuk domain yang lebih spesifik yaitu finansial. Pada penelitian ini digunakan empat buah model FinBERT yaitu FinBERT-Base Vocab uncased, FinBERT-Base Vocab cased, FinBERT-FinVocab uncased, dan FinBERT-FinVocab cased. Secara keseluruhan melakukan pretraining pada kumpulan teks finansial menghasilkan performa model yang lebih efektif terutama dalam domain yang lebih spesifik, dalam hal ini adalah domain finansial [3].

Penelitian lainnya adalah penelitian yang berjudul “TweetBERT: A Pretrained Language Representation Model for Twitter Text Analysis” yang ditulis oleh Mohiuddin Md Abdul Qudar et.al pada tahun 2020. Pada penelitian ini, peneliti membuat language model yang dilatih pada kumpulan teks dari media sosial twitter. Alasan pembuatan language model ini adalah bentuk teks pada twitter yang sangat beragam. Hal ini disebabkan oleh adanya limit karakter sebanyak 280 karakter per tweet. TweetBERT dievaluasi pada beragam dataset dari twitter dan menunjukan bahwa baik TweetBERTv1 dan TweetBERTv2 melampaui performa dari beberapa model BERT tradisional seperti BioBERT, SciBERT, dan BERT itu sendiri [4].

4

(23)

5

2.2 Dasar Teori

2.2.1 Natural Language Processing

Natural Language Processing adalah salah satu cabang bidang dalam Artificial Intelligence (AI) yang memiliki peran utama dalam pengolahan bahasa natural atau alami. Bahasa alami adalah bahasa yang digunakan oleh manusia dalam kehidupan sehari-hari. Beberapa bidang yang menjadi fokus utama dalam Natural Language Processing adalah sebagai berikut [8] :

▪ Text Summarization

▪ Machine Translation

▪ Question Answering

▪ Emotion Recognition

▪ Sentiment Analysis

▪ Text Classification

▪ Language Modeling

▪ Text Generation

▪ Topic Modeling

▪ Part-of-Speech Tagging

▪ Text-To-Speech Synthesis

▪ Information Retrieval 2.2.2 Deep Learning

Deep Learning adalah bagian dari Machine Learning dan Artificial Intelligence yang merupakan pengembangan lebih lanjut dari sebuah Multi-Layer Perceptron (MLP). Metode ini berusaha meniru bagaimana sistem dalam otak manusia bekerja.

Deep Learning memiliki kegunaan dalam berbagai hal seperti deteksi objek, pengenalan suara, terjemahan bahasa dan lain sebagainya [7]. Deep Learning dapat digunakan untuk memecahkan permasalahan yang bersifat supervised, semi- supervised, dan unsupervised.

2.2.3 Language Modeling

Language Modeling (LM) merupakan salah satu bagian penting dalam Natural Language Processing yang tugas utamanya adalah untuk memprediksi probabilitas dari sebuah kata dalam sebuah kalimat. Penggunaan Language Model cukup luas, diantaranya dapat digunakan untuk mengatasi beberapa task dalam Natural Language Processing seperti Machine Translation, Spell Correction, Speech Recognition, Summarization, Question Answering, Sentiment Analysis dan lain sebagainya. Terdapat dua buah jenis Language Model yaitu statistical language model dan neural language model.

▪ Statistical Language Model : Language Model ini menggunakan metode statistik tradisional seperti N-grams, Hidden Markov Model (HMM), dan lain sebagainya.

▪ Neural Language Model : Language Model ini menggunakan neural network seperti Recurrent Neural Network (RNN), Long-Short Term Memory (LSTM) dan lain sebagainya. Neural Language Model diklaim lebih efektif dibandingkan dengan Statistical Language Model.

Dalam evaluasi model, terdapat dua metode pengukuran yaitu intrinsic evaluation dan extrinsic evaluation. Intrinsic evaluation adalah menguji LM itu sendiri seberapa baik sebuah LM dalam memprediksi kata selanjutnya dalam sebuah

(24)

6

sekuens yang belum pernah diuji. Rumus dari perplexity adalah seperti dibawah ini.

P (W) = �∏ 𝑃𝑃 (𝑤𝑤 1

𝑖𝑖 | 𝑤𝑤1, . . . ,𝑤𝑤𝑛𝑛) 𝑁𝑁𝑖𝑖=1

𝑁𝑁 (1)

Sementara itu extrinsic evaluation adalah menguji LM dengan sebuah dataset benchmark tertentu yang sesuai. Misalkan penggunaan metrik skor BLEU dalam sebuah task penerjemahan dalam Machine Translation.

2.2.4 Attention

Attention adalah mekanisme yang melakukan pemetaan terhadap sebuah query dengan kumpulan pasangan key-value ke sebuah output dimana query, key, value, dan output adalah sebuah vektor [5]. Jenis mekanisme attention yang digunakan pada arsitektur transformer adalah multi-head attention yang tersusun oleh beberapa mekanisme attention yang lebih sederhana yaitu scaled dot-product attention. Selain itu juga terdapat tipe mekanisme attention lain yang digunakan yaitu self-attention.

Gambar 2.1 Scaled Dot-Product Attention (kiri) dan Multi-Head Attention (kanan)

Mekanisme dari scaled dot-product attention adalah dengan melakukan perkalian skalar antara vektor query dan key yang masing-masing memiliki dimensi dk . Hasil dari perkalian ini dibagi dengan √dk dan dimasukan ke sebuah fungsi softmax sehingga dapat digunakan sebagai bobot dari sebuah matriks value [5].

(25)

7

Attention(Q,K,V)=softmax(𝑄𝑄𝑄𝑄√𝑑𝑑𝑇𝑇

𝑘𝑘)V (2)

Multi-head attention adalah attention yang dilakukan sebanyak h kali. Hal ini akan menghasilkan sebanyak h elemen dari perkalian matriks query dan key. Hasil dari h elemen ini akan dilakukan perkalian dengan matriks value sebanyak h. Dari hasil perkalian matriks tersebut akan dihasilkan sebanyak h vektor yang akan diteruskan kesebuah layer concat dan dense untuk menghasilkan satu buah vektor output.

Vektor output hasil dari multi-head attention akan lebih bersifat kontekstual daripada vektor output dari mekanisme attention yang hanya dilakukan sekali.

MultiHead(Q, K, V) = Concat(head1, …, headh)WO

dimana headi = Attention(𝑄𝑄𝑊𝑊𝑖𝑖𝑄𝑄, K𝑊𝑊𝑖𝑖𝑄𝑄, V𝑊𝑊𝑖𝑖𝑉𝑉) (3)

Sementara itu self-attention adalah mekanisme attention yang memungkinkan model mempelajari korelasi antara sekuens kata saat ini dengan beberapa sekuens dibagian lain dari sebuah kalimat.

Gambar 2.2 Mekanisme dari Self-Attention 2.2.5 Transformer

Transformer adalah salah-satu state-of-the-art model didalam Natural Language Processing. Transformer memiliki dua bagian utama yaitu encoder dan decoder.

Bagian encoder dari transformer terdiri dari enam buah tumpukan layer yang identik dimana masing-masing layer tersusun atas multi-head self-attention layer dan sebuah fully connected feed-forward network. Pada masing-masing sub- layernya, terdapat mekanisme residual / skip connection yang diikuti sebuah layer normalisasi. Dimensi vektor yang dihasilkan disetiap sub-layer selalu memiliki panjang sekuens yang sama yaitu sebesar 512 [5].

(26)

8

Gambar 2.3 Encoder dari Sebuah Transformer

Sama seperti encoder, bagian decoder dari transformer memiliki enam buah layer yang identik. Pada masing-masing layer terdapat tiga buah sub-layer yaitu dua buah multi-head attention dan sebuah fully-connected feed-forward network. Selain itu decoder juga memiliki mekanisme residual / skip connection yang sama dengan encoder. Perbedaannya terletak pada multi-head attention di sub-layer pertama yang berfungsi untuk mencegah beberapa sekuens sebelumnya dalam memprediksi sekuens saat ini [5].

Gambar 2.4 Decoder dari Sebuah Transformer

(27)

9

Secara keseluruhan mekanisme transformer diawali dengan memasukan sekuens input dan sekuens output ke sebuah embedding layer untuk menghasilkan sebuah vektor berdimensi 512. Setelah itu sebuah sinusoid-wave based positional encoding digunakan untuk mengetahui informasi terkait posisi sekuens.

Gambar 2.5 Arsitektur Penuh dari Sebuah Transformer

Hasil sekuens dari positional encoding selanjutnya ditambahkan dengan sekuens hasil dari embedding layer. Dibagian akhir dari decoder ditambahkan sebuah layer linear dan softmax untuk menghasilkan nilai output. Gambar 5 menunjukan mekanisme secara keseluruhan dari sebuah model transformer.

2.2.6 Bidirectional Representation from Transformer (BERT)

BERT adalah sebuah model yang dibentuk secara dua arah (bidirectional) sehingga membuat model ini dapat memiliki pemahaman yang mendalam mengenai konteks dan aliran bahasa dibandingkan dengan model satu arah. BERT menggunakan sebuah teknik baru yang dinamakan Masked Language Model (MLM) [6]. Masking berarti menutupi kata-kata tertentu secara acak dan berusaha untuk memprediksinya. Model ini melihat kedua arah, baik kiri maupun kanan, dan menggunakan keseluruhan konteks untuk memprediksi kata yang di-mask. Model BERT bergantung pada sebuah transformer yang memiliki mekanisme attention untuk mempelajari hubungan kontekstual antara kata-kata dalam teks. Transformer ini memiliki bagian yang disebut encoder yang akan membaca teks input serta decoder yang akan menghasilkan prediksi pada sebuah task. Dalam pembuatan representasi bahasa, model BERT hanya menggunakan bagian encodernya saja.

Sebelum melakukan fine-tuning pada task yang dikehendaki, teks input diproses kedalam tiga jenis bagian embedding yaitu sebagai berikut:

▪ Token embedding : Pada bagian ini token [CLS] akan ditambahkan diawal kalimat dan token [SEP] ditambahkan dibagian akhir setiap kalimat.

(28)

10

▪ Segment embedding : Pada bagian ini ditambahkan sebuah penanda dimasing-masing kalimat. Bagian ini memungkinkan encoder untuk membedakan antara dua buah kalimat.

▪ Positional embedding : Pada bagian ini ditambahkan sebuah positional embedding yang berfungsi mengindikasikan posisi token dalam sebuah kalimat.

Gambar 2.6 Representasi Data Input untuk BERT

Hasil dari proses embedding ini selanjutnya diteruskan ke sebuah encoder dari sebuah transformer yang tumpang-tindih. Hasil dari transformer ini adalah sekuens yang berkorespondensi satu-satu dengan sekuens input pada indeks yang sama.

Sekuens inilah yang akan diteruskan kesebuah feed-forward neural network dan sebuah layer aktifasi softmax untuk melakukan task tertentu, misalnya klasifikasi teks.

Gambar 2.7 Bidirectional Encoder Representation from Transformer (BERT)

(29)

11

2.2.7 Masked Language Model (MLM)

Masked Language Model adalah sebuah metode fill-in-the-blanks. Masked Language Model akan mengganti beberapa sekuens dengan sebuah token [MASK]

dan berusaha memprediksinya berdasarkan kata-kata kontekstual disekitarnya. Para peneliti secara acak melakukan masking sebanyak 15% dari sekuens input. Namun, untuk mengatasi model hanya berfokus pada kata-kata bertoken [MASK], adakalanya model digunakan untuk memprediksi kata yang benar dari sebuah kata acak. Sehingga para peneliti menganjurkan untuk melakukan tiga buah langkah strategi dalam melakukan masking. Ketiga buah strategi tersebut adalah sebagai berikut :

▪ 80% dari kata keseluruhan diganti dengan sebuah token [MASK]

▪ 10% dari kata keseluruhan diganti dengan sebuah kata acak

▪ 10% sisanya adalah kata yang sesuai yaitu kata-kata yang dibiarkan tidak berubah

2.2.8 multilingual BERT (mBERT)

Multilingual BERT adalah model BERT yang mendukung banyak bahasa yaitu sebanyak 104 bahasa dan termasuk didalamnya Bahasa Indonesia. Pembuatannya tidak terlalu rumit karena mBERT dibuat dari model BERT yang dilatih dalam kumpulan teks dengan bahasa yang berbeda-beda. Teks yang digunakan dalam pembuatan mBERT ini khususnya adalah teks dari Wikipedia dimasing-masing bahasa. Untuk mengatasi permasalahan ketidakseimbangan konten maka teks Wikipedia yang lebih sedikit akan dilakukan over-sampling atau down-sampling pada teks Wikipedia yang terlalu besar.

2.2.9 XLM (Cross-lingual Language Model)

XLM adalah model transformer seperti BERT yang dilatih dengan teknik Masked Language Modeling (MLM) dan Translation Language Modeling (TLM). TLM bertujuan untuk memaksa model mempelajari representasi dari dua bahasa yang berbeda. Mekanisme dari TLM cukup sederhana yaitu dengan memasukan kalimat yang sama dari dua bahasa yang berbeda dan sebuah token [MASK]. Token [MASK] diprediksi dengan menggunakan token dari bahasa yang lain. Pre-training XLM biasa digunakan dalam tugas-tugas seperti :

▪ Klasifikasi zero-shot cross-lingual

▪ Supervised dan unsupervised neural machine translation

▪ Language model untuk bahasa-bahasa yang low-resource

▪ Unsupervised cross-lingual word embeddings 2.2.10 XLM-R atau XLM-RoBERTa

XLM-R atau XLM-RoBERTa adalah sebuah model yang menggunakan teknik pelatihan secara self-supervised yang bertujuan untuk memperoleh performa mutakhir dalam pemahaman cross-lingual. Model ini dilatih dalam data yang sangat besar yang terdiri dari 100 jenis bahasa yang diekstrak dari dataset

(30)

12

CommonCrawl sebesar 2.5TB teks. Berbeda dengan model sebelumnya yaitu XLM, XLM-R tidak menggunakan teknik TLM dan hanya menggunakan teknik MLM dari RoBERTa. Perbedaan dari RoBERTa sebelumnya adalah RoBERTa pada XLM memiliki jumlah vocab yang lebih besar yaitu sebanyak 250.000 token dibandingkan dengan 50.000 token pada RoBERTa biasa. Sehingga membuat RoBERTa pada XLM memiliki jumlah parameter yang lebih besar yaitu sebesar 550 juta dibandingkan dengan 350 juta parameter pada RoBERTa sebelumnya [13].

Pada evaluasi dengan menggunakan dataset XNLI (Cross-lingual Natural Language Inference), sebuah dataset standar yang digunakan untuk mengevaluasi performa model yang mempelajari banyak bahasa [11], XLM-R memiliki performa yang lebih baik dibandingkan dengan model multilingual lain seperti mBERT.

Hasil evaluasi pada XNLI dapat dilihat pada gambar 2.1.

Gambar 2.8 Hasil evaluasi XLM-R dengan menggunakan XNLI

Pada evaluasi dengan menggunakan GLUE benchmark, sebuah benchmark standar dalam NLP di Bahasa Inggris, XLM-R memperoleh hasil yang kompetitif yaitu sebesar 91.5 persen dibandingkan 90.2, 92.0, 92.8 dari BERT, XLNet, dan RoBERTa secara berturut-turut [13].

Gambar 2.9 Hasil evaluasi XLM-R dengan menggunakan GLUE 2.2.11 XLNet

XLNet adalah sebuah model auto-regressive yang tergeneralisasi dimana token selanjutnya bergantung pada semua token sebelumnya. XLNet dikatakan tergeneralisasi karena menerapakan sebuah teknik yang dinamakan Permutation Language Modeling (PLM) yang menangkap konteks secara dua arah. XLNet tidak dilatih dari kiri-kanan atau kanan-kiri secara tetap, tetapi memaksimalkan sebuah

(31)

13

ekpektasi log-likelihood terhadap semua kemungkinan permutasi dari sekuen.

Sehingga masing-masing posisi belajar untuk memanfaatkan informasi kontekstual dari semua posisi yang ada sehingga dengan demikian model telah mampu menangkap konteks secara dua arah [14].

Gambar 2.10 Ilustrasi dari Permutation Language Modeling (PLM) untuk memprediksi w3

Gambar 10 mengilustrasikan bagaimana sebuah PLM bekerja. Pada gambar tersebut PLM digunakan untuk memprediksi w3. PLM dilatih secara auto-regresive dengan beragam permutasi dari token dalam sebuah kalimat. Sehingga diakhir dari semua permutasi diharapkan model telah mempelajari w3 dari semua kemungkinan kata didalam kalimat.

Selain itu, XLNet juga menggunakan sebuah arsitektur yang dinamakan two-stream self-attention dan TransformerXL. Two-stream self-attention ini terdiri dari dua buah self-attention yaitu content stream attention dan query stream attention.

XLNet menggunakan query stream attention untuk menggantikan token [MASK]

pada BERT dengan sebuah representasi query [14].

(32)

14

Gambar 2.11 (a) Content stream attention. (b) Query stream attention. (c) Keseluruhan pelatihan dari permutation language modeling dengan two-

stream attention.

Gambar 11 (a) adalah perhitungan dari representasi konten. Jika kita ingin memprediksi representasi konten dari x1, kita diharuskan untuk menggunakan empat buah token dari informasi konten. Sehingga KV = [h1, h2, h3, h4] dan Q

= [h1]. Gambar 11 (b) memperlihatkan perhitungan untuk representasi query.

Jika kita ingin memprediksi representasi query dari x1 maka kita tidak bisa melihat representasi konten dari x1 itu sendiri. Sehingga KV = [h2, h3, h4] dan Q = [g1]. Gambar 11 (c) mengilustrasikan keseluruhan perhitungan model.

Pertama-tama h dan g diinisialisasi menjadi e(xi) dan w. Setelah melalui content mask dan query mask, two-stream attention akan menghasilkan output h1 dan g1 dan diulangi untuk layer yang kedua. Pada gambar 11 (c) juga bisa dilihat bahwa content mask dan query mask adalah sebuah matriks. Didalam content mask pada gambar tersebut terlihat bahwa baris pertama memiliki empat buah titik merah. Hal ini dapat diartikan bahwa token pertama dapat mengunjungi semua token termasuk dirinya (x3x2 x4x1). Pada baris kedua memiliki dua buah titik berwarna merah. Hal ini berarti token kedua hanya bisa mengunjungi dua buah token (x3x2). Begitu seterusnya sampai baris terakhir.

Satu-satunya perbedaan antara content mask dan query mask terletak pada diagonalnya. Diagonal pada query mask bernilai 0 yang berarti token tidak bisa melihat atau mengunjungi dirinya sendiri.

(33)

15

Halaman ini sengaja dikosongkan

(34)

BAB III METODOLOGI

Bab ini akan menjelaskan mengenai gambaran dan alur dalam pengerjaan tugas akhir. Metodologi akan digunakan sebagai pedoman dan arah agar pengerjaan tugas akhir bisa terstruktur dan sistematis.

3.1 Tahapan Pelaksanaan Penelitian Tugas Akhir

Pada bagian ini akan dijelaskan mengenai tahapan penelitian tugas akhir yang akan dilakukan.

Gambar 3.1 Alur Pengerjaan Penelitian Tugas Akhir 3.1.1 Identifikasi masalah dan Studi Literatur

Tahapan ini adalah fase pertama dalam pengerjaan tugas akhir ini. Pada tahap ini dilakukan identifikasi masalah penggalian kebutuan pengetahuan terkait topik yang akan diambil. Setelah itu dilakukan pencarian literatur berdasarkan beberapa paper referensi.. Literatur yang dijadikan referensi adalah paper mengenai topik pembuatan Language Model (LM) terutama dengan menggunakan arsitektur model

16

(35)

17

kontekstual. Paper utama yang menjadi rujukan dalam penelitian ini adalah paper yang berjudul “IndoNLU: Benchmark and Resources for Evaluating Indonesian Natural Language Understanding”. Selain itu penelitian lain yang kami gunakan sebagai rujukan adalah paper yang berjudul “BioALBERT: A Simple and Effective Pre-trained Language Model for Biomedical Named-Entity Recognition”. Salah satu dari metode pada paper diatas akan digunakan dalam penelitian ini.

3.1.2 Pengumpulan Data

Pada tahap ini dilakukan pengumpulan data yang akan menjadi input dalam penelitian ini. Data yang dikumpulan adalah data teks dari beberapa kumpulan jurnal ilmiah dalam bidang biomedik. Data ini didapatkan dengan melakukan scraping pada kumpulan dokumen jurnal ilmiah berformat Portable Document Format (PDF). Format data hasil scraping akan disimpan dalam bentuk txt.

Tabel 3.1 Teks dalam Format PDF dan Teks dalam Format txt

Format PDF Format txt

Poliuria pada resipien pascatransplantasi ginjal merupakan kondisi yang sering terjadi dan berpotensi

menimbulkan komplikasi fatal apabila berlangsung secara masif, terus menerus, dan tanpa pengawasan

yang ketat. Studi literatur ini dibuat agar dapat memberikan gambaran mengenai biomarker apa yang dapat

digunakan sebagai prediktor kejadian poliuria pada resipien pascatransplantasi ginjal dan apakah biomarker

tersebut dapat dipergunakan di RS dr. Cipto Mangunkusumo Jakarta. Studi literatur ini dibuat dari beberapa

sumber kepustakaan yang berkaitan dengan kejadian poliuria pascatransplantasi ginjal. Disimpulkan bahwa urodilatin memiliki potensi lebih besar dalam menyebabkan poliuria pascatransplantasi ginjal dibandingkan

dengan dan atrial natriuretic peptide (ANP), brain natriuretic

(36)

18

peptide (BNP), maupun C-type natriuretic peptide

(CNP). Meskipin demikian perlu penelitian lebih lanjut untuk memastikannya hingga ke tingkat molekuler.

Pemeriksaan radio immuno assay (RIA) untuk peptida natriuretik dan urodilatin baru dilakukan untuk

keperluan penelitian dan belum digunakan secara luas kepada pasien.

Dataset untuk evaluasi adalah dataset hasil terjemahan dari Bahasa Inggris. Proses penerjemahan dataset dilakukan oleh orang yang berada di domain terkait.

Tabel 3.2 Data Teks Berbahasa Inggris dan Terjemahannya

Teks Asli Teks Terjemahan

SUBJECTIVE:, This 23-year-old white female presents with complaint of allergies. She used to have allergies when she lived in Seattle but she thinks they are worse here. In the past, she has tried Claritin, and Zyrtec. Both worked for short time but then seemed to lose effectiveness. She has used Allegra also. She used that last summer and she began using it again two weeks ago. It does not appear to be working very well. She has used over-the-counter sprays but no prescription nasal sprays.

She does have asthma but doest not require daily medication for this and does not think it is flaring up.,MEDICATIONS: , Her only medication currently is Ortho Tri-

Cyclen and the

Allegra.,ALLERGIES: , She has no

known medicine

allergies.,OBJECTIVE:,Vitals:

Weight was 130 pounds and blood pressure 124/78.,HEENT: Her throat was mildly erythematous without exudate. Nasal mucosa was

Perempuan berkulit putih berusia 23 tahun datang dengan keluhan alergi. Dia memiliki riwayat alergi semenjak tinggal di Seattle dan semakin memperburuk keadaannya. Di masa lampau dia telah mencoba Claritin dan Zyrtec. Keduanya bekerja dalam jangka pendek tetapi kemudian tampak kehilangan efektifitasnya. Dia juga telah menggunakan Allegra. Dia menggunakannya pada musim panas yang lalu dan memulai menggunakan lagi pada dua minggu yang lalu. Hal itu tampak tidak bekerja dengan baik. Dia menggunakan semprotan yang dijual bebas tetapi tidak diresepkan obat semprot hidung. Dia memiliki asma dan tidak mendapatkan pengobatan karena tidak berpikir akan kambuh.

PENGOBATAN: Satu-

satunya obat saat ini adalah Ortho Tri-Cyclen dan Allegra.

(37)

19

erythematous and swollen. Only clear drainage was seen. TMs were clear.,Neck: Supple without adenopathy.,Lungs:

Clear.,ASSESSMENT:, Allergic rhinitis.,PLAN:,1. She will try Zyrtec instead of Allegra again.

Another option will be to use loratadine. She does not think she has prescription coverage so that might be cheaper.,2. Samples of Nasonex two sprays in each nostril given for three weeks. A prescription was written as well.

ALERGI: Dia tidak memiliki alergi obat. OBJEKTIF: Tanda vital: Berat 130 pon dan tekanan darah 124/78.

Pemeriksaan Kepala:

Tenggorokannya tampak eritematous tanpa disertai eksudat. Mukosa hidung tampak eritematosus dan membengkak. Hanya terlihat drainase yang jelas. Leher:

Supel tidak ada adenopati.

Rencana: dia akan menggunakan Zyrtec lagi daripada Allegra. Opsi lain

akan menggunakan

Loratadine. Dia tidak berpikir memiliki perlindungan resep sehingga mungkin lebih murah. Sampel dari Nasonex disemprotkan dua kali di masing-masing lubang hidung selama 3 minggu. Resep juga di tulis.

3.1.3 Pra Proses Data

Data yang diperoleh dari proses pengumpulan data akan dibersihkan terlebih dahulu sebelum masuk ketahap pelatihan model. Tahap pra proses ini tidak terlalu memakan banyak upaya mengingat data yang diambil berasal dari jurnal ilmiah dimana sudah pasti mengandung kata-kata yang baku. Sehingga hanya dilakukan beberapa tahap seperti menghilangkan beberapa tanda baca, casefolding, dan menghilangkan beberapa komponen yang sekiranya tidak dibutuhkan seperti tabel- tabel dan beberapa gambar serta melakukan tokenization yaitu pengubangan bentuk teks menjadi sebuah angka.

(38)

20

Gambar 3.1 Alur Pra Proses Data 3.1.4 Pelatihan Model

Pada tahap ini dilakukan pelatihan model BERT, yaitu RoBERTa. Pelatihan model dilakukan dengan memanfaatkan library PyTorch dan huggingface di Python. Pada pengimplementasian model ini akan dilakukan beberapa pengaturan terkait beberapa parameter terkait.

3.1.5 Evaluasi Model

Pada tahap ini dilakukan evaluasi language model yang dibuat terhadap task klasifikasi teks di sebuah dataset benchmark yang telah diterjemahkan dan evaluasi seberapa bagus model dalam memprediksi kata selanjutnya. Performa model juga akan dibandingkan dengan beberapa model kontekstual lain yang bersifat multilingual, seperti model-model berarsitektur XLM (Cross-Lingual Language Model) dan mBERT (multilingual BERT). Dataset evaluasi menggunakan dataset Ohsumed yang memiliki 23 kelas. Metrik evaluasi yang akan digunakan adalah accuracy score.

(39)

21

3.1 Jadwal Penelitian

Tabel 3.3 Jadwal Penelitian

No Kegiatan Bulan 1 Bulan 2 Bulan 3 Bulan 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 Identifikasi

Masalah dan Studi

Literatur

2 Pengumpulan Data

s3 Pra Proses Data

4 Pelatihan Model

5 Analisis dan Evaluasi

6 Penyusunan Dokumen Tugas Akhir

(40)

22

Halaman ini sengaja dikosongkan

22

(41)

BAB IV PERANCANGAN

4.1 Perancangan Pengumpulan Data Teks

Pada tahap ini dilakukan pengumpulan data teks atau korpus dari beberapa jurnal kedokteran berbahasa Indonesia. Data diperoleh dengan mengunduhnya dari website kemudian disimpan dalam satu folder agar mudah digunakan dalam tahap selanjutnya. Pada tahap ini berhasil dikumpulkan sebanyak 402 file jurnal kedokteran berformat pdf.

4.2 Perancangan Pra-Proses

Pada tahap ini dilakukan pra-proses terhadap data teks yang telah dikumpulkan di tahap sebelumnya. Pada pra-proses, beberapa unsur kata dalam Bahasa Inggris dibuang. Selain itu teks terkait referensi atau daftar pustaka juga tidak diikutkan.

Sehingga bagian jurnal yang diambil hanyalah bagian pendahuluan sampai kesimpulan. Hasil dari pra-proses disimpan dalam bentuk file berformat txt.

4.3 Perancangan Penerjemahan

Pada tahap ini dilakukan proses penerjemahan dataset yang akan digunakan dalam pelatihan dan evaluasi model. Dataset yang digunakan adalah Ohsumed yaitu dataset yang sering digunakan sebagai pembanding untuk tugas klasifikasi teks.

Penerjemahan dataset ini menggunakan model transformer yang khusus digunakan dalam machine translation.

Tabel 4.1 Dataframe Dataset Terjemahan Attribute Tipe Data Deskripsi

text String Berisi teks hasil dari terjemahan

labels String Label dari teks. Labels ini diambil dari nama folder tempat file disimpan.

4.4 Perancangan Teks Augmentasi

Pada tahap ini dilakukan proses augmentasi teks terhadap dataset yang akan digunakan dalam pelatihan model. Proses ini bertujuan untuk menyeimbangkan jumlah kelas yang terdapat dalam dataset tersebut. Metode yang digunakan dalam augmentasi teks ini adalah contextual word embedding dari model multilingual- bert. Proses ini dilakukan dengan bantuan pustaka transformers dan nlpaug di python.

23

(42)

24

Tabel 4.2 Dataframe Dataset Augmentasi Attribute Tipe Data Deskripsi

text String Berisi teks hasil dari proses augmentasi labels String Label dari teks. Labels ini diambil dari

nama folder tempat file disimpan.

4.5 Perancangan Pelatihan Model Klasifikasi

Dalam pembuata model BERT terdapat beberapa parameter yang harus ditentutak agar mendapatkan hasil terbaik. Perubahan parameter akan dilakukan yaitu perubahan pada jenis model, optimizer, scheduler, learning rate, jumlah epoch dan max len. Model yang akan digunakan dalam penelitian ini adalah model BERT hasil dari pelatihan language model, indobert-base-p1, indobert-base-lite-p1, indolem/indobert-base-uncased, mBERT, dan XLMRoBERTa. Adapapun optimizer yang akan digunakan adalah Adam dan AdamW. Tipe scheduler yang digunakan adalah CosineAnnealingWarmRestart dan CosineAnnealingLR. Untuk learning rate akan digunakan 1e-4, 1e-5, dan 1e-6. Jumlah epoch yang digunakan yaitu 15 dan 25. Parameter terakhir adalah jumlah kata maksimal dalam kalimat, max len, adalah 100 dan 256. Untuk lebih jelasnya kombinasi parameter-parameter yang telah disebutkan sebelumnya dirinci didalam tabel 6 dibawah ini.

(43)

25

Tabel 4.3 Parameter yang Digunakan Pada Model BERT

Parameter Nilai Keterangan

Model 1. MedBERT

2. indobert-base-p1

3. indolem/indobert-base-uncased 4. mBERT

5. XLMRoBERTa

Model yang digunakan sebagai pembanding.

Optimizer 1. Adam

2. AdamW Menentukan algorima

optimizer yang digunakan untuk training model.

Optimizer adalah algoritma atau metode yang digunakan untuk mengubah atribut model neural network seperti weights dan learning rate untuk mengurangi loss

Scheduler 1. CosineAnnealingLR

2. CosineAnnealingLRWarmRestart

Menentukan algoritma scheduler yang akan digunakan. Algoritma scheduler ini adalah sebuah teknik untuk mengurangi besar learning rate secara bertahap,

Learning

Rate 1. 1e-4

2. 1e-5 3. 1e-6

Menentukan nilai Learning rate dari Optimizer yang dipilih. Learning Rate merupakan parameter yang mengontrol berapa banyak untuk mengubah model dalam menanggapi estimasi kesalahan setiap kali bobot model diperbarui.

Epoch 1. 15

2. 25 Nilai epoch adalah

banyaknya sebuha Max Len 1. 100

2. 256 Nilai max len adalah

banyaknya jumlah kata maksimal yang digunakan dimasing- masing kalimat.

Referensi

Dokumen terkait

Bapak Wirawan Istiono,S.Kom., M.Kom., yang telah membimbing penulis dalam pembuatan laporan kerja magang dan yang telah memberikan penulis dukungan serta masukan yang membangun

Dengan dibuatnya sistem informasi yang baru ini, sistem administrasi dan penggajian pada Bengkel Sumber Jaya Motor yang tadinya masih manual menjadi sistem yang

Natural Language Toolkit merupakan salah satu library yang digunakan untuk membuat program menggunakan Python berhubungan dengan bahasa manusia yang diterapkan pada

Pengertian hak paten dalam Undang-Undang pada Pasal 1 ayat 1 Undang-Undang Nomor 14 Tahun 2001, telah menyebutkan bahwa pengertian hak paten adalah hak eksklusif

TIDAK TERKLASIFIKASI SEDERHANA KOMPLEKS 36% SEDERHANA UMUM 7% PARSIAL 57% TONIK KLONIK 23% LENA 6% MIOKLONIK 3% UMUM 40% TIDAK TERKLASIFIKASI 3% UMUM LAINNYA 8% KLASIFIKASI

Pengabdian masyarakat ini berdampak positif untuk anak anak di Yayasan Rumah Harapan, mereka memiliki skill membuat akun email, akun media sosial dan pengetahuan

 Peserta didik diberi kesempatan untuk mendiskusikan, mengumpulkan informasi, mempresentasikan ulang, dan saling bertukar informasi mengenai Pengertian ilmu

Dapat disimpulkan bahwa nilai yang terkandung dalam dalam kegiatan seni rupa tradisi selalu berkait dengan simbol religi, contohnya dalam kegiatan seni ragam hias tradisi Indonesia