Deep Learning for News Dataset Classification

In this notebook, I applied Deep Learning using Recurrent Neural Network (RNN) with Long Short Term Memory (LSTM) to classify news datasets. The architecture can be seen in the image below. picture

Data Preparation

In [ ]:
# Download dataset
import requests
url = "http://bdsrc.binus.ac.id/wawan/uasdl/news.csv"
req = requests.get(url)

with open("news.csv", "wb") as f:
  f.write(req.content)
In [ ]:
# Import dataset
import pandas as pd
original_data = pd.read_csv("news.csv")
original_data.head()
Out[ ]:
title text category
0 moeldoko harap seni budaya bisa jadi magnet ku... Kepala Staf Kepresidenan RI Jenderal TNI (Pur... Culture
1 seniman palestina sulap tembakan israel jadi k... Berbeda dari seniman pada umumnya, seorang se... Culture
2 sontek cara 56 kreator berpengaruh di dunia ci... , menjadi modal utama yang harus dimiliki tia... Culture
3 intip pertunjukan fashion dalam balutan seni t... Dari Sabang sampai Merauke, Indonesia menawar... Culture
4 kenang benyamin sueb teater abnon gelar pement... Benyamin Suaeb bukan hanya sekadar nama. Soso... Culture

From what I have analyzed, I have found news stories that had erratic punctuation, such as ".," or ",.", etc. I also found some data that has a watermark which says, "Copyright © 2018, KLY KapanLagi Youniverse All Rights Reserved". Although this does not need to be removed because this data is in the same classification, namely Culture, it would be better to remove this watermark to create cleaner data. To see some text, you can run text_checking according to the parameters that have been set

In [ ]:
# Print sample text data by random 
# indexing for given print sample number
def text_checking(dataset, num_of_print):
  import random
  
  for it in range(num_of_print):
    index = random.randint(0, dataset.shape[0] - 1)
    print("Text with index " + str(index) + ":\n" + dataset[index])

text_checking(original_data["text"], 10)
Text with index 49:
 Sukses menggelar pameran di berbagai negara, kini pameran seni rupa "Yayoi Kusama: Life is The Heart of Rainbow" hadir di Jakarta, tepatnya di Museum of Modern and Contemporary Art at Nusantara (,) pada 12 Mei hingga 9 September 2018.,Digelarnya pameran Yayoi Kusama inipun disambut antusiasme yang cukup besar dari masyarakat, terutama bagi para pencinta seni. Pada hari pertama dibuka untuk publik, pameran Yayoi Kusama ramai oleh pengunjung. Sebanyak 3000 tiket yang disediakan untuk pameran hari pertama sudah habis terjual secara , maupun ,.,Baca Juga,Antusiasme yang cukup besar terlihat dari antrean pengunjung yang telah mengular sejak pukul 9.30. Padahal, pameran baru dibuka untuk umum pada pukul 10.00. Ketika pintu masuk  , dibuka, para pengunjung langsung disambut dengan Giant Pumpkin yang menjadi bagian dari karya Yayoi Kusama.,Tumbuh dan besar di keluarga konservatif Jepang membuat Yayoi Kusama harus rela menahan ambisinya menjadi seorang seniman. Namun kini, namanya dikenal sebagai seniman eksentrik yang berhasil mengguncang dunia.,Antrean pun tidak hanya terjadi di pintu masuk, melainkan juga di semua ruangan yang tersedia di pameran ini. Setiap ruangan akan memberikan pengalaman yang berbeda kepada pengunjung dalam menikmati karya seni Yayoi Kusama yang identik dengan polkadot, jaring, dan labu. Pengunjung pun diperbolehkan mengabadikan momen ketika berada di dalam ruangan tersebut dengan mengikuti himbauan dari para petugas.,Pengunjung yang datang pun tidak hanya berasal dari Jakarta dan sekitarnya. Namun, ada juga pengunjung yang berasal dari luar kota seperti Erlin, seorang ibu yang berasal Yogyakarta. Ia datang ke pameran Yayoi Kusama bersama sang anak. Sang anak sendiri merupakan pecinta kesenian Jepang. Sehingga Erlin pun ikut menemani sang anak menikmati pameran seni dari Jepang itu.,Dari sekian banyak ruangan yang Erlin dan anaknya kunjungi, The Obliteration Room yang menjadi favorit. Menurutnya, ruangan ini cukup menarik karena pengunjung bisa bereksplorasi.,"Belum begitu tahu ya. Ketika teman rekomendasikan itu, baca-baca. Oh ternyata menarik juga. Anak saya kebetulan suka sesuatu hal yang berbau Jepang. Dia suka , Jepang," ujar Erlin.,"Soalnya warna-warni. Kita boleh nempelin , gitu. Jadi kayak interaktif. Lebih ikut berkreasi," ujar sang anak., ,Nina Hidayat selaku Staf Komunikasi dari Museum MACAN menuturkan bahwa antusiasme masyarakat cukup besar, terutama setelah diadakan ,.,"Setelah ada , kemarin antusiasme pengunjung langsung meningkat. Karena meningkatkan , juga. Hari ini sudah ,. Tiketnya sudah sold out sejak kemarin," ujar Nina Hidayat.,Nina pun menghimbau agar para pengunjung untuk memperhatikan himbauan dari para petugas. Salah satunya untuk tidak menendang atau menyentuh bola-bola di Narcissus Garden sehingga tidak mengubah konstelasi yang ada. Dihadirkannya pameran Yayoi Kusama di Museum MACAN, pihak museum berusaha memberikan edukasi kepada publik yang mungkin sudah banyak tahu tentang karya Yayoi Kusama. Di mana melalui pameran ini, masyarakat bisa mengetahui apa yang menjadi latar belakang di balik motif polkadot, jaring, dan labu yang terkenal.,Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved
Text with index 68:
 pun pasti merasakan suatu tekanan ketika bekerja. Akan tetapi, kadang-kadang tekanan itu bisa berat, sedang atau biasa-biasa saja.  Bila tekanan itu dirasakan berat, hali itu tentu akan membuat Anda mudah marah, letih, dan tidak produktif.,Untuk memeriksa tingkat stres Anda ketika bekerja, ada sebuah kuisioner kecil yang dikembangkan oleh Paul J. Rosch, M.D., ketua American Institute of Stress di Yonkers, New York. ,Beri skor satu poin untuk tiap pernyataan yang tidak Anda setujui, dua poin untuk tiap pernyataan yang sampai batas tertentu Anda setujui, dan tiga poin untuk tiap pernyataan yang sangat Anda setujui.,1.    Saya tidak dapat mengungkapkan pendapat saya yang sesungguhnya dalam pekerjaan.,2.    Tanggung jawab saya banyak tetapi wewenang saya tidak seberapa.,3.    Saya dapat bekerja jauh lebih baik asalkan tidak diburu-buru.,4.    Saya jarang memperoleh pengakuan atau penghargaan.,5.    Saya tidak bangga, atau puas, dengan pekerjaan saya.,6.    Saya diculasi dan didiskriminasi dalam pekerjaan.,7.    Tempat kerja saya bukan tempat yang menyenangkan atau aman.,8.    Pekerjaan saya bersilang jalan dengan tuntutan keluarga dan kebutuhan pribadi.,9.     Saya cenderung sering berbeda pendapat dengan atasan, rekan kerja, atau pelanggan.,10.   Saya merasa kurang memegang kendali atas hidup saya dalam pekerjaan.,Skor 10 hingga 16 poin menunjukkan Anda dapat menangani stres dengan baik.,Skor 17 hingga 23 poin berarti Anda dapat menangani stres dengan cukup baik, ,Skor 24 hingga 30 poin berarti Anda perlu memecahkan masalah-masalah yang telah menyebabkan Anda mengalami stres berat.
Text with index 49:
 Sukses menggelar pameran di berbagai negara, kini pameran seni rupa "Yayoi Kusama: Life is The Heart of Rainbow" hadir di Jakarta, tepatnya di Museum of Modern and Contemporary Art at Nusantara (,) pada 12 Mei hingga 9 September 2018.,Digelarnya pameran Yayoi Kusama inipun disambut antusiasme yang cukup besar dari masyarakat, terutama bagi para pencinta seni. Pada hari pertama dibuka untuk publik, pameran Yayoi Kusama ramai oleh pengunjung. Sebanyak 3000 tiket yang disediakan untuk pameran hari pertama sudah habis terjual secara , maupun ,.,Baca Juga,Antusiasme yang cukup besar terlihat dari antrean pengunjung yang telah mengular sejak pukul 9.30. Padahal, pameran baru dibuka untuk umum pada pukul 10.00. Ketika pintu masuk  , dibuka, para pengunjung langsung disambut dengan Giant Pumpkin yang menjadi bagian dari karya Yayoi Kusama.,Tumbuh dan besar di keluarga konservatif Jepang membuat Yayoi Kusama harus rela menahan ambisinya menjadi seorang seniman. Namun kini, namanya dikenal sebagai seniman eksentrik yang berhasil mengguncang dunia.,Antrean pun tidak hanya terjadi di pintu masuk, melainkan juga di semua ruangan yang tersedia di pameran ini. Setiap ruangan akan memberikan pengalaman yang berbeda kepada pengunjung dalam menikmati karya seni Yayoi Kusama yang identik dengan polkadot, jaring, dan labu. Pengunjung pun diperbolehkan mengabadikan momen ketika berada di dalam ruangan tersebut dengan mengikuti himbauan dari para petugas.,Pengunjung yang datang pun tidak hanya berasal dari Jakarta dan sekitarnya. Namun, ada juga pengunjung yang berasal dari luar kota seperti Erlin, seorang ibu yang berasal Yogyakarta. Ia datang ke pameran Yayoi Kusama bersama sang anak. Sang anak sendiri merupakan pecinta kesenian Jepang. Sehingga Erlin pun ikut menemani sang anak menikmati pameran seni dari Jepang itu.,Dari sekian banyak ruangan yang Erlin dan anaknya kunjungi, The Obliteration Room yang menjadi favorit. Menurutnya, ruangan ini cukup menarik karena pengunjung bisa bereksplorasi.,"Belum begitu tahu ya. Ketika teman rekomendasikan itu, baca-baca. Oh ternyata menarik juga. Anak saya kebetulan suka sesuatu hal yang berbau Jepang. Dia suka , Jepang," ujar Erlin.,"Soalnya warna-warni. Kita boleh nempelin , gitu. Jadi kayak interaktif. Lebih ikut berkreasi," ujar sang anak., ,Nina Hidayat selaku Staf Komunikasi dari Museum MACAN menuturkan bahwa antusiasme masyarakat cukup besar, terutama setelah diadakan ,.,"Setelah ada , kemarin antusiasme pengunjung langsung meningkat. Karena meningkatkan , juga. Hari ini sudah ,. Tiketnya sudah sold out sejak kemarin," ujar Nina Hidayat.,Nina pun menghimbau agar para pengunjung untuk memperhatikan himbauan dari para petugas. Salah satunya untuk tidak menendang atau menyentuh bola-bola di Narcissus Garden sehingga tidak mengubah konstelasi yang ada. Dihadirkannya pameran Yayoi Kusama di Museum MACAN, pihak museum berusaha memberikan edukasi kepada publik yang mungkin sudah banyak tahu tentang karya Yayoi Kusama. Di mana melalui pameran ini, masyarakat bisa mengetahui apa yang menjadi latar belakang di balik motif polkadot, jaring, dan labu yang terkenal.,Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved
Text with index 89:
- HIV/AIDS di Indonesia memasuki tingkat epidemi terkonsentrasi, dengan jumlah penderita yang terus mengalami peningkatan. "Penderita secara komulatif penderita AIDS tercatat 11.141 kasus dan HIV 6.066 kasus," kata Ajianto dari Komisi Penanggulangan AIDS Nasional (KPAN) di Denpasar, Sabtu (19/7).,Menjelang pertemuan regional untuk merumuskan dan mengagendakan kegiatan bersama di wilayah Bali, Nusa Tenggara Barat, dan Nusa Tenggara Timur dalam penanggulangan HIV/AIDS, ia mengatakan, hampir seluruh kabupaten/kota dan provinsi di Indonesia melaporkan adanya kasus HIV/AIDS. Dari laporan tersebut menunjukkan adanya laju pertambahan infeksi HIV/AIDS dalam kondisi yang sangat memprihatinkan.,Oleh sebab itu, diperlukan adanya respons secara nyata, efektif, dan efisien dalam menurunkan epidemi melalui pendekatan yang komprehensif dengan melibatkan masyarakat dan semua pihak. Ajianto menambahkan, untuk merumuskan dan mengagendakan kegiatan bersama dalam menanggulangi HIV/AIDS diadakan pertemuan secara regional.,    ,Pertemuan pengurus KPA untuk Provinsi Bali, NTB, dan NTT dilaksanakan di Nusa Dua, Bali, selama empat hari, 21-25 Juli 2008, dan melibatkan 113 peserta. "Pertemuan tersebut rencananya dihadiri sekretaris KPAN Dr Nafsiah Mboi dan seluruh pengurus KPA kabupaten/kota di tiga provinsi tersebut," ujar Ajianto.
Text with index 91:
 Dr. Boyke Dian Nugraha menyarankan masyarakat untuk ikut membantu mencegah dan menekan penularan penyakit HIV/AIDS. Menurutnya, ada lima langkah yang dapat dilakukan guna mencegah penularan penyakit yang mematikan dan belum ada obatnya tersebut.,    ,"Yang pertama adalah menghindari berhubungan seks bebas," ungkapnya usai memaparkan seminar pengaruh globalisasi terhadap hubungan seks para generasi muda di Pangkalpinang, Sabtu (21/6).,Bila seseorang menyukai hubungan seks bebas, menurut Boyke hampir dipastikian kemungkinan untuk tertular atau menularkan HIV/AIDS menjadi sangat besar.,Sedangkan strategi selanjutnya menurutnya adalah setiap pria atau wanita harus setia kepada pasangannya sehingga meminimalisir masuknya virus HIV yang dapat menghancurkan sistem kekebalan tubuh manusia.,"Banyak masyarakat yang tak puas dengan pasangan mereka sehingga mencari pasangan lain di luar yang kondisi kesehatannya tidak jelas apakah ia terkena HIV AIDS atau penyakit kelamin lainnya," ujarnya.,Di samping itu, masing-masing pasangan harus bisa mempertahankan hubungan yang harmonis pada keluarganya agar tidak terjadi kejenuhan dan polemik dalam keluarga yang menjadi pemicu awal.,Strategi berikutnya adalah menggunakan selalu kondom saat melakukan hubungan intim dan hal ini dilakukan setelah strategi pertama dan kedua tidak berhasil diterapkan. Selanjutnya untuk menghindari HIV/AIDS adalah masyarakat khususnya para generasi muda agar menghindari penggunaan jarum suntik secara bergantian yang keseterilannya sangat diragukan.,Sedangkan strategi terakhir menurut pria yang pernah mendapat predikat Dokter Puskesmas  Teladan se-Provinsi Lampung tahun 1985 adalah menghindari penularan melalui transfusi darah dengan cara selektif dan ketat dalam menjalani transfusi darah.  ,Menurutnya, banyak sekali problem remaja mulai dari soal seks, pacaran, hamil diluar nikah, komplikasi aborsi yang dapat menyebarkan HIV AIDS yang harus dihindari. Seminar yang diprakarsai Dinas Pendidikan Kota Pangkalpinang itu diikuti sedikitnya 800 orang Mahasiswa dan pelajar se-kota Pangkalpinang.
Text with index 34:
 Seorang pemain perkusi ternama dari ,, Park Je Chun menampilkan karyanya di Indonesian Dance Festival 2016 beberapa waktu lalu. Dengan karyanya yang berjudul “Do You Want Me”, Park Je Chun berkolaborasi dengan tujuh penari dari dua negara, tiga penari Korea Selatan dan empat penari Indonesia. Pertunjukan ini diadakan di Graha Bhakti Budaya, Jakarta.,Empat penari yang bekerjasama dengan Park Je Chun untuk pertunjukannya adalah Hari Guntur dari Surabaya, Fadhila Oziana dari Batusangkar, Try Anggrara dan Josh Marcy dari Jakarta. Dengan latar belakang konsentrasi , yang berbeda, seluruh penari bekerjasama untuk mewujudkan sebuah konsep pertunjukan unik yang dibuat oleh Park Je Chun.,Baca Juga,Seluruh penari akan membuat gerakan indah untuk mengimbangi permainan , yang ditabuh oleh Park Je Chun. Tanpa sebuah standar yang sama, interaksi permainan drum Park Je Chun dan respon para penari merupakan poin yang sangat menarik. Dibagi menjadi tujuh bagian, pertunjukan ini berhasil memukau para penonton yang hadir menyaksikan tarian ini.,Tarian kontemporer “Do You Want Me” merupakan sebuah pertunjukan utama yang ada di Indonesian Dance Festival 2016. Pertunjukan lainnya yang dibawakan oleh seniman mancanegara masih akan berlanjut hingga penutupan IDF 2016 yang diadakan di Taman Ismail Marzuki pada tanggal 5 November 2016.,Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved
Text with index 68:
 pun pasti merasakan suatu tekanan ketika bekerja. Akan tetapi, kadang-kadang tekanan itu bisa berat, sedang atau biasa-biasa saja.  Bila tekanan itu dirasakan berat, hali itu tentu akan membuat Anda mudah marah, letih, dan tidak produktif.,Untuk memeriksa tingkat stres Anda ketika bekerja, ada sebuah kuisioner kecil yang dikembangkan oleh Paul J. Rosch, M.D., ketua American Institute of Stress di Yonkers, New York. ,Beri skor satu poin untuk tiap pernyataan yang tidak Anda setujui, dua poin untuk tiap pernyataan yang sampai batas tertentu Anda setujui, dan tiga poin untuk tiap pernyataan yang sangat Anda setujui.,1.    Saya tidak dapat mengungkapkan pendapat saya yang sesungguhnya dalam pekerjaan.,2.    Tanggung jawab saya banyak tetapi wewenang saya tidak seberapa.,3.    Saya dapat bekerja jauh lebih baik asalkan tidak diburu-buru.,4.    Saya jarang memperoleh pengakuan atau penghargaan.,5.    Saya tidak bangga, atau puas, dengan pekerjaan saya.,6.    Saya diculasi dan didiskriminasi dalam pekerjaan.,7.    Tempat kerja saya bukan tempat yang menyenangkan atau aman.,8.    Pekerjaan saya bersilang jalan dengan tuntutan keluarga dan kebutuhan pribadi.,9.     Saya cenderung sering berbeda pendapat dengan atasan, rekan kerja, atau pelanggan.,10.   Saya merasa kurang memegang kendali atas hidup saya dalam pekerjaan.,Skor 10 hingga 16 poin menunjukkan Anda dapat menangani stres dengan baik.,Skor 17 hingga 23 poin berarti Anda dapat menangani stres dengan cukup baik, ,Skor 24 hingga 30 poin berarti Anda perlu memecahkan masalah-masalah yang telah menyebabkan Anda mengalami stres berat.
Text with index 68:
 pun pasti merasakan suatu tekanan ketika bekerja. Akan tetapi, kadang-kadang tekanan itu bisa berat, sedang atau biasa-biasa saja.  Bila tekanan itu dirasakan berat, hali itu tentu akan membuat Anda mudah marah, letih, dan tidak produktif.,Untuk memeriksa tingkat stres Anda ketika bekerja, ada sebuah kuisioner kecil yang dikembangkan oleh Paul J. Rosch, M.D., ketua American Institute of Stress di Yonkers, New York. ,Beri skor satu poin untuk tiap pernyataan yang tidak Anda setujui, dua poin untuk tiap pernyataan yang sampai batas tertentu Anda setujui, dan tiga poin untuk tiap pernyataan yang sangat Anda setujui.,1.    Saya tidak dapat mengungkapkan pendapat saya yang sesungguhnya dalam pekerjaan.,2.    Tanggung jawab saya banyak tetapi wewenang saya tidak seberapa.,3.    Saya dapat bekerja jauh lebih baik asalkan tidak diburu-buru.,4.    Saya jarang memperoleh pengakuan atau penghargaan.,5.    Saya tidak bangga, atau puas, dengan pekerjaan saya.,6.    Saya diculasi dan didiskriminasi dalam pekerjaan.,7.    Tempat kerja saya bukan tempat yang menyenangkan atau aman.,8.    Pekerjaan saya bersilang jalan dengan tuntutan keluarga dan kebutuhan pribadi.,9.     Saya cenderung sering berbeda pendapat dengan atasan, rekan kerja, atau pelanggan.,10.   Saya merasa kurang memegang kendali atas hidup saya dalam pekerjaan.,Skor 10 hingga 16 poin menunjukkan Anda dapat menangani stres dengan baik.,Skor 17 hingga 23 poin berarti Anda dapat menangani stres dengan cukup baik, ,Skor 24 hingga 30 poin berarti Anda perlu memecahkan masalah-masalah yang telah menyebabkan Anda mengalami stres berat.
Text with index 97:
 - Penderita HIV/AIDS di Bali secara kumulatif hingga Maret 2008 mencapai 1.986 kasus, meningkat 345 penderita dibanding periode sama tahun sebelumnya yang tercatat 1.641 orang.,    ,Jumlah penderita tersebut menempatkan posisi Bali pada urutan lima besar nasional, kata Koordinator Program Komisi Penanggulangan AIDS Daerah (KPAD) Bali Elyas Pallewoi di Denpasar, Selasa (3/6).,Ia mengatakan, DKI Jakarta menempati urutan pertama terbanyak jumlah penderita hilangnya kekebalan daya tubuh tersebut, disusul Papua, Kepulauan Riau, dan Jawa Timur pada posisi keempat.,Pertambahan penderita HIV/AIDS yang semakin mengkhawatirkan itu terutama akibat masih maraknya pemakaian jarum suntik secara bergantian diantara pengguna narkoba, disamping hubungan seksual secara bebas tanpa kondom.,Elyas  menambahkan, Indonesia termasuk Bali, yang menghadapi kenyataan penderita HIV/AIDS semakin meningkat, bertekad melaksanakan program "harm reduction", yakni pengurangan dampak buruk akibat penggunaan jarum suntik di kalangan pecandu narkoba.,Hal itu dilakukan untuk menghidari meluasnya penyebaran HIV/AIDS, mengingat masyarakat sekarang berada di bawah cengkeraman berbagai wabah, selain akibat narkoba juga karena virus HIV/AIDS.,Elyas menambahkan, orang dengan HIV/AIDS (Odha) di Bali kini tercatat 4.041 orang, hampir 50 persennya sudah berhasil diungkap ke permukaan. Hal itu berkat berbagai upaya dan kerja keras semua pihak, sehingga para penderita mendapat perawatan dan penanganan dengan baik, ujar Elyas.    ,Odha yang jumlahnya cenderung bertambah itu terutama akibat masih maraknya hubungan seks bebas dan kebiasaan menggunakan narkoba dengan jarum suntik secara bersama-sama.,Oleh sebab itu penggunaan kondom dinilai sangat efektif dalam upaya mencegah penularan HIV/AIDS, disamping lebih waspada terhadap ancaman penyakit tersebut, harap Elyas.
Text with index 6:
 , menjadi sebuah media yang mampu memberikan pesan sekaligus hiburan menarik bagi para penontonnya. Hal ini juga disadari betul oleh para pemuda pemudi dari HKBP Kebayoran Baru, yang merayakan Hari Kebangkitan Pemuda Harheheon 2017. Mereka menyajikan sebuah pertunjukan teatrikal, musik, dan tari dalam “Teater Poda”, pada Sabtu, (2/9/2017).,Naposo HKBP Kebayoran baru sendiri merupakan kelompok pemuda gereja, yang mencoba menghadirkan budaya Batak pada generasi muda. Beranggotakan 10 pemain utama dan berbagai pemain pendukung, mereka menghadirkan sebuah cerita , yang dekat dengan kehidupan sehari-hari yaitu cinta dengan orang tua.,Baca Juga,Pemeran utama dalam Teater Poda ini sendiri adalah Teresa Gerda, yang merupakan model profesional dan penyanyi muda berbakat. Echa, panggilan akrabnya, memerankan sosok Cindy yang tidak menyukai ibunya karena berlumur narkoba dan dosa masa lalu. Sedangkan lawan mainnya dalam , ini, Markus sang pembangkang, merupakan anak yang sangat disayang oleh Ayahnya.,Latihan intensif dari bulan April 2017, ternyata memberikan hasil yang manis. Terbukti dari para penonton yang memenuhi Hall Usmar Ismail, terkesan dengan pertunjukan para pemuda ini. Bahkan orang tua Echa sendiri, berhasil tersihir dan berlinang air mata saat pertunjukan teater berlangsung. ,Kisah yang diadopsi dari The Prodigal Son dalam Alkitab ini, mencoba menyampaikan pesan kepada anak muda. Terutama mengenai rasa cinta dan hormat terhadap orang tua, yang menjadi cinta paling dasar dalam kehidupan manusia. Pertunjukan ini semakin lengkap dengan berbagai gubahan lagu yang diproduksi sendiri, dengan balutan kontemporer Batak.,Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved

Data Preprocessing

In data preprocessing, I did two tokenization processes. The first was tokenization which was made by myself. This was done to control some tokenizations that Keras Tokenizer cannot execute, i.e.:

  • Remove empty spaces that was found after punctuation tokenization. Example:
    ", Penunjang kualitas pendidikan" -> "  Penunjang kualitas pendidikan" -> "Penunjang kualitas pendidikan"
  • Remove watermark "Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved"
  • Trim more than one space and spaces at the beginning and end of paragraphs.
In [ ]:
# My custom text preprocessing
import re
def preprocessing_text_custom(text):
  regex = "Copyright © 2018 , KLY KapanLagi Youniverse All Rights Reserved"
  final_text = re.sub(regex, '', text)
  final_text = re.sub('[!"#$%&()*+,-./:;“”<=>?@[\\]^_`{|}~\t\n\d]', ' ', final_text)
  final_text = re.sub("\s+", " ", final_text)
  final_text = final_text.strip()
  
  return final_text
In [ ]:
original_data["text_cleaned"] = original_data['text'].apply(preprocessing_text_custom)
In [ ]:
# Divide data into features and labels
DATA_LENGTH = original_data.shape[0]
X_data, y_data = original_data["text_cleaned"].to_numpy(), original_data["category"].to_numpy()
y_data = y_data.reshape((DATA_LENGTH, 1))
In [ ]:
# Text preprocessing from Keras Tokenizer
from keras.preprocessing.text import Tokenizer
tokenizer = Tokenizer(filters='!"#$%&()*+,-./:;“”\'<=>?@[\\]^_`{|}~\t\n', lower=True, split=' ')
tokenizer.fit_on_texts(X_data)

X_data_sequences = tokenizer.texts_to_sequences(X_data)
In [ ]:
# List Index to Word
idx_to_word = tokenizer.index_word

# Print sample for sequence to text converter
def sequence_to_text_checking(sequences, index_to_word, num_of_print):
  import random
  
  for it in range(num_of_print):
    index = random.randint(0, len(sequences) - 1)
    seq_to_text = ' '.join([ index_to_word[i] for i in sequences[index] ])
    print("Text with index " + str(index) + ":\n" + seq_to_text)

sequence_to_text_checking(X_data_sequences, idx_to_word, 5)
Text with index 84:
hiv aids mengancam kehidupan masyarakat kabupaten boven digoel papua yang terletak di wilayah perbatasan republik indonesia ri dengan papua nugini png sebagai wilayah perbatasan dengan tingkat mobilitas penduduk yang tinggi masyarakat di boven digoel sangat rentan akan penyebaran hiv aids sehingga komponen masyarakat baik tingkat nasional maupun internasional harus memberi perhatian serius pada problem kemanusiaan ini sebagai sebuah wilayah perbatasan dengan tingkat mobilitas penduduk antarnegara yang tinggi masyarakat yang bermukim di wilayah ini kini terancam punah akibat penyebaran hiv aids yang signifikan ungkap kepala dinas kesehatan kabupaten boven digoel titus tambaip m kes di tanah merah rabu dia mengatakan hampir setiap hari masyarakat di perbatasan ri png saling melintas batas untuk berbagai urusan baik urusan adat karena mereka memiliki pertalian kekerabatan juga urusan perdagangan jual beli kebutuhan sehari hari dan hasil bumi serta urusan pertanian dan perkebunan mobilitas masyarakat yang melintasi perbatasan ini disertai penyebaran hiv aids semakin hari semakin tinggi selain karena tingkat pendidikan masyarakat masih sangat rendah sehingga kurang memahami secara baik persoalan hidup bersih dan sehat juga karena keterbatasan informasi mengenai penyakit yang mematikan itu hiv aids justru menyebar sangat luas dan cepat di wilayah perkampungan terpencil dan terisolasi di sepanjang tapal batas kedua negara ini karena masyarakat setempat sangat kurang malahan samasekali tidak mendapatkan informasi yang jelas dan komprehensif tentang penyakit itu bersamaan dengan itu masyarakat pun belum terbiasa dengan pola hidup bersih dan sehat selain tersebar di wilayah perbatasan ri dengan png hiv aids pun menyebar di wilayah perusahaan pengolahan kayu dan perkebunan kelapa sawit di lokasi perusahaan kayu dan perkebunan kelapa sawit yang dikelola pt korindo terdapat banyak sekali karyawan yang berasal dari berbagai daerah di indonesia di dalam situasi kehidupan yang jauh dari keramaian dan hiburan kota serta jauh dari keluarga maka tidak tertutup kemungkinan terjadi transaksi seks bebas yang berujung pada terjangkitnya penyakit hiv aids di daerah ini katanya di dalam situasi yang serba sulit ini lanjut titus tambaip pemerintah kabupaten boven digoel terus berupaya dengan kemampuan yang ada untuk mengatasi persoalan kemanusiaan ini namun patut diakui bahwa pemerintah masih mengalami keterbatasan dana sosialisasi bahaya hiv aids keterbatasan tenaga medis dan belum tersentuhnya kegiatan penyuluhan hiv aids oleh lsm peduli masalah kemanusiaan ini kalau kita teliti secara baik maka dapat kita katakana bahwa belum ada lsm peduli aids yang masuk sampai ke wilayah tapal batas ri dengan png khususnya di kabupaten boven digoel untuk membantu menangani bahaya hiv aids katanya selain hiv aids dua penyakit lain yang juga menjadi ancaman kehidupan masyarakat boven digoel yang jumlah pengidapnya semakin banyak adalah malaria dan penyakit kaki gajah filariasis di kabupaten boven digoel sendiri terdapat puskesmas dan satu rumah sakit umum daerah rsud dengan dokter umum dan lima dokter gigi jumlah kasus hiv aids di provinsi papua tercatat terus meningkat data dinas kesehatan provinsi papua triwulan iii per september melaporkan jumlah kasus hiv sebanyak kasus dan aids kasus sebanyak atau sudah meninggal satu hal yang mengkhawatirkan adalah kasus hiv aids terbanyak justru pada kelompok usia produktif tahun yaitu usia yang seksual aktif sekitar persen kasus hiv aids tertinggi terdapat pada kelompok umur tahun sebanyak kasus kelompok umur tahun kasus dan kelompok umur tahun kasus fakta ini memiliki korelasi kuat ancaman masa depan bagi papua epidemi hiv aids di tanah papua sesungguhnya menyebar pada populasi umum apalagi lebih dari persen penyebarannya terjadi hubungan seks tidak aman kondom selama ini diyakini merupakan alat ampuh menghambat penularan infeksi menular seksual ims termasuk hiv meskipun demikian ternyata tingkat penggunaan kondom di indonesia termasuk di tanah papua masih dinilai sangat minim rendahnya tingkat penggunaan kondom antara lain karena lingkungan sosial yang kurang mendukung penggunaan kondom sehingga stigma terhadap kondom tak kunjung hilang pengetahuan masyarakat tentang fungsi dan manfaat kondom pun masih kurang serta rendahnya kesadaran akan pentingnya penggunaan kondom bagi kesehatan pribadi dan pasangan
Text with index 90:
tumbuh bila daya tahan tubuhnya kuat saluran cerna dalam hal ini merupakan portal penting yang perlu dijaga dan dipelihara kesehatannya demikian diungkapkan rienani mahadi praktisi gizi nestle indonesia rabu bila anda ingin agar anak menjadi cerdas perlu dipahami bahwa kecerdasan anak bertumbuh akibat interaksi beragam faktor seperti genetik lingkungan dan stimulasi juga nutrisi dalam hal ini peran orangtua sangatlah penting orangtua harus senantiasa cermat dan waspada mengawasi si kecil saat masih balita si kecil sedang getol getolnya belajar banyak hal baru dari lingkungannya apakah lingkungan sekitar sudah cukup aman dan higienis untuk si kecil di sinilah orangtua berperan dalam menjaga dan memelihara si kecil banyak bakteri jahat yang dengan ganasnya bakal menghambat dan mengganggu pecernaannya untuk itu orangtua mesti jaga jaga melengkapi si kecil dengan tameng dan perlindungan yang kuat saluran cerna perlu dilindungi karena di sinilah seluruh kekuatan dan daya tahan tubuh berada jangan sampai pengabaian bagian ini membuat si kecil menjadi lemah imunitas lemah akan membuat anak mudah sakit dan terganggu proses belajarnya asi merupakan langkah awal yang penting diberikan sebagai perlindungan anak yang tidak meminum asi eksklusif akan lebih rentan terhadap penyakit di sekitar saluran pencernaan seperti diare atau konstipasi dan infeksi usus selanjutnya pencernaan perlu dilindungi dengan probiotik sehingga makin kuat dan sehat probiotik merupakan bakteri bakteri penjaga flora usus para orangtua dapat memperolehnya dari susu yang memang sengaja diberi bahan ini selain susu makanan berupa sayuran juga dibutuhkan untuk memelihara kesehatan pencernaan yang penting orangtua mengontrol asupan makanan yang masuk ke dalam tubuh si kecil baik itu kandungan kalori dan zat besi kurangi jajanan seperi gorengan karena kandungan minyak tidak cocok untuk pertumbuhan si kecil jika ia ingin ngemil cukup berikan sup ayam karena sayuran dan daging yang terdapat di dalamnya sudah cukup bergizi ujar rienani mahadi m
Text with index 50:
cardiac resynchronization therapy tiba tiba menjadi akrab di telinga kita setelah berbagai media massa ramai memberitakan keadaan kesehatan mantan presiden soeharto yang dianggap memerlukan pemasangan crt tulisan ini mengulas apa sebenarnya crt apa indikasi penggunaannya bagaimana cara pemasangannya dan betulkah ia bermanfaat fungsi utama jantung adalah memompa darah yang mengandung zat makanan dan oksigen ke seluruh tubuh kemampuan pompa jantung diukur dengan parameter fraksi ejeksi yang diketahui dengan pemeriksaan ekokardiografi usg jantung nilai normal fraksi ejeksi adalah persen dan bila terjadi penurunan fraksi ejeksi dapat terjadi gagal jantung gj kelemahan pada otot jantung dapat disebabkan oleh berbagai hal salah satu yang paling sering adalah akibat serangan jantung penyakit jantung koroner hipertensi yang tidak terkontrol penyakit katup jantung dan kelainan primer pada otot otot jantung gj merupakan suatu kondisi medis yang sering terjadi dan bersifat serius diperkirakan terdapat lebih dari juta penderita gj di dunia dan semakin meningkat dengan makin bertambahnya harapan hidup serta makin majunya tata laksana berbagai penyakit penyebab gj pada keadaan yang ringan penderita gj mengeluh sesak jika beraktivitas kemudian dengan makin beratnya penyakit keluhan sesak sering timbul pada waktu berbaring bahkan sering pasien mengeluh terbangun tiba tiba saat tidur karena merasa seperti mau tenggelam untuk mengurangi sesaknya pasien berusaha untuk selalu meninggikan kepala pada saat tidur dengan memakai bantal yang lebih banyak tidak jarang pasien mengeluh terbatuk batuk jika tidur gejala lain yang cukup sering didapatkan adalah bengkak pada kaki sebuah survei di eropa menemukan bahwa sekalipun hampir persen dari orang responden tahu atau pernah mendengar soal gj tetapi hanya persen yang mengetahui gejala gejala gj bukan itu saja bahkan mereka juga memiliki konsepsi yang keliru tentang gj bayangkan jika di negara maju saja tingkat pengetahuan dan kesadaran masyarakat tentang gj begitu rendah bagaimana di negara kita padahal gj adalah keadaan yang membawa implikasi begitu luas yaitu penderitaan yang panjang kerapnya rawat inap kualitas hidup yang rendah tidak produktif dan kematian oleh karena itu perlu sosialisasi gj karena pengetahuan dan kesadaran masyarakat akan mengarah pada tata laksana gj yang lebih baik saat ini obat obatan masih merupakan terapi primer untuk gj biasanya penderita gj membutuhkan lebih dari tiga obat untuk memperbaiki fungsi jantung dalam berbagai uji klinik obat obat itu secara signifikan memperbaiki gejala menurunkan kekerapan rawat inap meningkatkan fraksi ejeksi dan bahkan mengurangi mortalitas akan tetapi secara keseluruhan harapan hidup penderita gj belum menggembirakan transplantasi jantung menjadi jalan terakhir tata laksana gj pada pasien dengan kondisi jantung sangat parah dan tidak respons lagi terhadap obat akan tetapi program transplantasi jantung di banyak negara kawasan asia pasifik tidak bertahan lama karena kesulitan mendapatkan donor biaya yang sangat mahal dan perawatan pascatransplantasi yang tidak mudah belum lama ini para ahli mendapatkan bahwa pada hampir persen penderita gj berat terjadi perubahan perubahan sistem listrik jantung yang disebut electrical remodeling perubahan itu mengakibatkan penurunan lebih lanjut kemampuan jantung memompa darah karena ruang ruang jantung tidak sinkron dalam memompa darah disinkroni mekanik sayang sekali obat obat gj yang ada tidak satu pun yang dapat memperbaiki electrical remodeling padahal diyakini bahwa restorasi electrical remodeling akan menyumbangkan perbaikan yang signifikan pada gj belajar dari mekanisme perbaikan sistem listrik pada pemakai alat pacu jantung saat ini telah dikembangkan yang dapat mengembalikan sinkronisasi jantung alat pacu jantung khusus itu disebut crt pada crt lokasi pemacuan adalah kedua bilik dan serambi jantung crt terdiri dari dua komponen yaitu generator dan tiga buah elektrode gambar dan generator disimpan di bawah kulit dada atas sedangkan ketiga elektrodenya masuk ke serambi dan dua bilik jantung melalui pembuluh balik umumnya hanya diperlukan operasi kecil dengan bius lokal untuk pemasangan crt mekanisme resinkronisasi jantung oleh crt adalah dengan mengatur timing aktivasi listrik pada lokasi pemacuan di berbagai ruang jantung sehingga menghasilkan pemompaan darah yang efektif berbagai penelitian besar mengenai efektivitas crt sudah dilakukan pada lebih dari orang pasien pada penelitian care hf cardiac resynchronization heart failure dilakukan pengamatan rata rata bulan pada lebih dari orang gj berat yang dipasang crt didapatkan penurunan angka kematian sebesar persen dan penurunan rawat inap karena perburukan gj sebesar persen dibandingkan dengan pasien tanpa crt di samping itu terbukti bahwa penerima crt memiliki kualitas hidup yang lebih baik mengalami gejala gj yang lebih ringan fraksi ejeksi menjadi lebih baik dan kemampuan aktivitas fisiknya meningkat hasil studi ini makin menguatkan hasil hasil penelitian yang sudah ada sebelumnya di pusat jantung nasional harapan kita hingga saat ini telah dilakukan pemasangan buah crt dengan hasil yang sangat baik pemilihan pasien sebagai kandidat crt harus dilakukan dengan saksama agar alat yang harganya mahal ini betul betul dipasang pada pasien yang tepat dan berhasil guna hal itu perlu dilakukan agar kejadian nonresponder pada pemasangan crt dapat dihindari panduan terbaru mengindikasikan crt untuk gj yang berat walaupun sudah diobati maksimal fraksi ejeksi yang buruk persen diameter bilik kiri mm lebar kompleks qrs pada ekg mm adanya tanda tanda disinkroni mekanik pada pemeriksaan ekokardiografi merupakan kriteria tambahan yang penting untuk pemasangan crt jika indikasi tepat lebih dari persen kematian akibat gagal jantung dapat dihindari bayangkan berapa banyak manusia dapat diselamatkan dengan perantaraan crt pada populasi gj yang mencapai juta orang lebih
Text with index 70:
penyakit aids dan infeksi hiv di asia tempaknya makin memprihatinkan dan mengancam pertumbuhan ekonomi di wilayah ini kekhawatiran ini tidak terlepas dari fakta di lapangan bahwa saat ini ada lebih dari juta wanita di asia bekerja sebagai penjaja seks dan sedikitnya juta pria menjadi pelanggan setianya data yang cukup mencengangkan ini dirilis oleh persatuan bangsa bangsa pbb lewat sebuah laporannya rabu kemarin pbb mengatakan pemerintah negara negara di asia telah gagal mengendalikan epidemik ini dan seharusnya melakukan upaya lebih serius dalam membatasi derasnya gelombang kecenderungan pria yang memuaskan nafsunya lewat jasa prostitusi tidak seperti di afrika ungkap laporan itu penyebaran epidemik di asia ini belum merata dan mungkin dapat dikontrol jika upaya pencegahan dipusatkan pada infeksi yang berkaitan dengan prostitusi penggunaan obat obat terlarang dan homoseksualitas ¨program program untuk meningkatkan penggunaan kondom di antara pekerja seks akan lebih berarti ketimbang upaya pencegahan lainnya dalam mengendalikan infeksi hiv di asia ¨ ungkap laporan yang dikeluarkan komisi aids di asia ¨oleh karena kebanyakan pria pelanggan prostitusi adalah mereka yang telah menikah atau pun belum terdapat angka signifikan wanita yang hanya berhubungan intim dengan suaminya menjadi tertular hiv tujuan efektif dari pencegahan infeksi hiv pada pasangan para pria ini belum dikembangkan di asia padahal jelas jelas sangat penting ¨ tambah laporan tersebut laporan itu juga menyatakan para politisi benar benar gagal untuk mengambil peran dalam mengendalikan diskriminasi dan hal hal tabu yang berkaitan dengan hiv yang bertentangan dengan diskusi publik soal seks dan seksualitas sekretaris jendral pbb ban ki moon yang merilis laporan itu di new york mengaku merasa malu atas stigma stigma yang masih merongrong hiv di asia ia juga prihatin dengan pengaruhnya terhadap ekonomi di wilayah itu di banyak negara asia prostitusi dan homoseksualitas adalah salah satu hal yang dilegalkan ¨aids telah menjadi penyebab utama terbesar akan hilangnya hari hari kerja dan kematian yang berkaitan dengan penyakit ini kami melihat awal dari lingkaran setan yang menyebabkan ancaman terhadap pertumbuhan ekonomi dan kebangkitan sosial serta menyebabkan lebih banyak lagi infeksi ¨ ujarnya laporan itu juga mengatakan bahwa prostitusi adalah penyebab utama dari kasus infeksi baru dan terdapat sekitar juta orang yang mengidap hiv di asia tahun lalu
Text with index 35:
menjelang imlek persiapan permainan barongsai dan liong sudah dimulai menjelang imlek persiapan permainan barongsai dan liong sudah dimulai
In [ ]:
# One Hot Encoding for Label
from sklearn.preprocessing import OneHotEncoder
ohe = OneHotEncoder(sparse=False)
y_data = ohe.fit_transform(y_data)
In [ ]:
# Split data into train and validation
from sklearn.model_selection import train_test_split
X_train, X_valid, y_train, y_valid = train_test_split(X_data_sequences, y_data, test_size=0.1, random_state=50)

Here I do the sequence again for the data sequence. This is taken to achieve consistency of the input data that will be used to train the model because the model I will use must have a fixed number of inputs. In addition, the sequence that I use is useful for records that have data that has an amount below the MAX_LEN that I specify where later for this record will be given a padding to fill the remaining space.

In [ ]:
from keras.preprocessing import sequence
MAX_LEN = 150
X_train = sequence.pad_sequences(X_train, maxlen=MAX_LEN)
X_valid = sequence.pad_sequences(X_valid, maxlen=MAX_LEN)

Deep Learning Model

For the model, I used the Embedding model with 200 data features. Then, I trained the embedding results with Recurrent Neural Network (RNN) combined with Long Short Term Memory (LSTM) of 64 layers. Then, I used Dense layer of 64 using ReLU as my activation function. After that, I used Dropout with a value of 0.2. I used Dense and Dropout for once again with each of them has 128 layers and a value of 0.5. Finally, I used Dense for 2 layers with softmax activation considering this is the output value issued. Then, I used Adam Optimizer to optimize my model and use categorical cross entropy as loss control. This can be done using binary cross entropy but considering I'm using a one hot encoder, I can't use this. For the complete model, you can see below. picture

In [ ]:
NUM_OF_WORDS = len(tokenizer.word_index) + 1

from keras.models import Sequential
from keras.layers import LSTM, Dense, Dropout, Embedding
model = Sequential()
model.add(Embedding(NUM_OF_WORDS, 200, input_length=MAX_LEN))
model.add(LSTM(64, return_sequences=False, dropout=0.1, recurrent_dropout=0.1))
model.add(Dense(64, activation="relu"))
model.add(Dropout(0.2))
model.add(Dense(128, activation="relu"))
model.add(Dropout(0.5))
model.add(Dense(2, activation="softmax"))

model.summary()
model.compile(optimizer="adam", loss="categorical_crossentropy", metrics=["accuracy"])
WARNING:tensorflow:Layer lstm will not use cuDNN kernel since it doesn't meet the cuDNN kernel criteria. It will use generic GPU kernel as fallback when running on GPU
Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
embedding (Embedding)        (None, 150, 200)          1263200   
_________________________________________________________________
lstm (LSTM)                  (None, 64)                67840     
_________________________________________________________________
dense (Dense)                (None, 64)                4160      
_________________________________________________________________
dropout (Dropout)            (None, 64)                0         
_________________________________________________________________
dense_1 (Dense)              (None, 128)               8320      
_________________________________________________________________
dropout_1 (Dropout)          (None, 128)               0         
_________________________________________________________________
dense_2 (Dense)              (None, 2)                 258       
=================================================================
Total params: 1,343,778
Trainable params: 1,343,778
Non-trainable params: 0
_________________________________________________________________
In [ ]:
history = model.fit(X_train, y_train, epochs=10, validation_data=(X_valid, y_valid))
Epoch 1/10
3/3 [==============================] - 6s 730ms/step - loss: 0.6931 - accuracy: 0.4772 - val_loss: 0.6920 - val_accuracy: 0.4000
Epoch 2/10
3/3 [==============================] - 2s 550ms/step - loss: 0.6882 - accuracy: 0.7227 - val_loss: 0.6923 - val_accuracy: 0.3000
Epoch 3/10
3/3 [==============================] - 2s 578ms/step - loss: 0.6825 - accuracy: 0.7178 - val_loss: 0.6916 - val_accuracy: 0.4000
Epoch 4/10
3/3 [==============================] - 2s 550ms/step - loss: 0.6717 - accuracy: 0.7694 - val_loss: 0.6873 - val_accuracy: 0.3000
Epoch 5/10
3/3 [==============================] - 2s 572ms/step - loss: 0.6536 - accuracy: 0.8095 - val_loss: 0.6778 - val_accuracy: 0.5000
Epoch 6/10
3/3 [==============================] - 2s 556ms/step - loss: 0.6067 - accuracy: 0.9599 - val_loss: 0.6553 - val_accuracy: 0.6000
Epoch 7/10
3/3 [==============================] - 2s 550ms/step - loss: 0.5149 - accuracy: 0.9827 - val_loss: 0.5930 - val_accuracy: 0.7000
Epoch 8/10
3/3 [==============================] - 2s 536ms/step - loss: 0.3321 - accuracy: 0.9944 - val_loss: 0.3610 - val_accuracy: 0.9000
Epoch 9/10
3/3 [==============================] - 2s 577ms/step - loss: 0.1793 - accuracy: 1.0000 - val_loss: 0.2833 - val_accuracy: 0.9000
Epoch 10/10
3/3 [==============================] - 2s 539ms/step - loss: 0.1100 - accuracy: 0.9794 - val_loss: 0.5053 - val_accuracy: 0.8000
In [ ]:
import matplotlib.pyplot as plt
plt.figure(figsize=(15, 8))
plt.title("Accuracy: Training vs Validation")
plt.plot(range(1, 11), history.history["accuracy"], label="Training")
plt.plot(range(1, 11), history.history["val_accuracy"], label="Validation")
plt.legend()
plt.show()

From there, we can see that the model that I created tends to be overfitted at first with evidence that the distance between training and validation is quite far. However, starting from the 7th epoch the model began to improve with the accuracy values of training and validation getting closer. In my opinion, this model is good enough even though the preprocessing of the data is not perfect.