IDENTIFIKASI TINGKAT KELAYAKAN HIDUP JENIS MANGROVE DESA PULAU SEMBILAN BERDASARKAN KANDUNGAN AIR
MENGGUNAKAN LONG SHORT TERM MEMORY
SKRIPSI
ARIF MAULANA 141402020
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
2021
IDENTIFIKASI TINGKAT KELAYAKAN HIDUP JENIS MANGROVE DESA PULAU SEMBILAN BERDASARKAN KANDUNGAN AIR
MENGGUNAKAN LONG SHORT TERM MEMORY
SKRIPSI
Diajukan dalam rangka memenuhi tugas dan syarat untuk memperoleh ijazah Sarjana Teknologi Informasi
ARIF MAULANA 141402020
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
2021
i
ii
IDENTIFIKASI TINGKAT KELAYAKAN HIDUP JENIS MANGROVE DESA PULAU SEMBILAN BERDASARKAN KANDUNGAN AIR
MENGGUNAKAN LONG SHORT TERM MEMORY
SKRIPSI
Saya menyatakan bahwa dalam penulisan skripsi ini merupakan hasil penelitian yang saya lakukan dengan usaha sendiri, kecuali di dalamnya beberapa bagian yang memuat kutipan dan ringkasan yang telah disertakan sumbernya masing-masing.
Medan, 21 Desember 2021
Arif Maulana 141402020
iii
UCAPAN TERIMA KASIH
Bersyukur karena Allah SWT terus memberi banyak taufik, kekuatan dan nikmat terbaik sehingga dengan izin-Nya penulis mampu merampungkan penyusunan dan penelitian skripsi ini sebagai salah satu syarat mendapatkan gelar pendidikan Sarjana dari Universitas Sumatera Utara pada Program Studi S1 Teknologi Informasi, Fakultas Ilmu Komputer dan Teknologi Informasi USU.
Terimakasih yang sangat spesial untuk kedua orangtua saya, Arifinsyah dan Jamaliah yang senantiasa memberi dukungan moril dan doa terbaik buat saya.
Rasa hormat dan terimakasih penulis juga haturkan kepada:
1. Bapak Dr. Muryanto Amin, S.Sos., M.Si. selaku Rektor Universitas Sumatera Utara.
2. Ibu Dr. Maya Silvi Lydia, M.Sc. selaku Dekan Fasilkom-TI Universitas Sumatera Utara.
3. Ibu Sarah Purnamawati ST., MSc. selaku Ketua Program Studi S1 Teknologi Informasi USU
4. Bapak Romi Fadillah Rahmat, B.Comp.Sc., M.Sc. selaku Dosen Pembimbing I yang selalu membimbing penulis dalam mengerjakan skripsi ini.
5. Bapak Onrizal, S.Hut, M.Si, Ph.D selaku Dosen Pembimbing II yang telah banyak memberi dukungan, pemikiran, motivasi, kritik dan saran.
6. Seluruh dosen Fasilkom-TI USU yang sudah memberikan ilmu dan pengetahuan.
7. Sahabat seperjuangan yang sudah dianggap layaknya keluarga sendiri yang tidak bisa disebutkan satu persatu, yang sudah membersamai sejak awal perkuliahan, tempat berbagi cerita baik maupun buruk juga yang selalu memberikan support dan energi positif kepada penulis dalam pengerjaan skripsi sampai dengan selesai.
8. Terima kasih dan salam takzim kepada seluruh rekan organisasi PEMA Fasilkom-TI USU, HIMATIF USU, HIMALA USU, VNI SQUAD, yang menjadi tempat penulis dapat tumbuh dan berkembang selama masa perkuliahan.
iv
selalu mengingatkan dan membantu semaksimal mungkin dalam pengerjaan skripsi ini yaitu Muhammad Ibrahim Lubis, Zulfan Effendi S.H, Harris Mahardika S.E, Awi Nanda Wijaksa.
10. Serta rasa terima kasih pula kepada semua pihak yang sudah turut membantu sejak proses pengumpulan data sampai dengan tahap akhir. Terutama kepada Muhammad Fadly Tanjung, S.Kom yang sudah memberikan kontribusi besar dalam penelitian ini.
Tiada yang mampu memberikan balasan terbaik bagi Bapak/Ibu dan rekan-rekan kecuali Allah SWT. Semoga rahmat-Nya senantiasa melimpahi kita semua.
Medan, 21 Desember 2021
Penulis
v
ABSTRAK
Pembuangan limbah oleh masyarakat ke tepi pantai Desa Pulau Sembilan Kecamatan Pangkalan Susu Kab. Langkat menciptakan polusi air dan menyebabkan berkurangnya populasi tanaman mangrove. Untuk memperbaiki populasi tanaman mangrove diperlukan sistem identifikasi kandungan air yang tepat agar penanaman mangrove di Pulau Sembilan tepat sasaran sesuai dengan kandungan zona yang ada. Dalam penelitian ini dilakukan identifikasi algoritma Long Short Term Memory yang menggunakan data kandungan air mangrove di Desa Pulau Sembilan kabupaten Langkat sebagai data training dan data testing. loss dari data training dan data testing saling mendekati dengan loss sebesar 0.014. Dalam penelitian ini, hasil yang diperoleh adalah akurasi sistem mencapai 99% dengan menerapkan kombinasi dari optimizer Adamax dan fungsi aktivasi softmax.
Kata Kunci : identifikasi, kandungan air, tanaman mangrove, machine learning, long short term memory, pulau sembilan
vi
IDENTIFICATION OF MANGROVES VIABILITY LEVEL IN PULAU SEMBILAN VILLAGE BASED ON WATER CONTENT
USING LONG SHORT TERM MEMORY
ABSTRACT
In the Pulau Sembilan Village, Pangkalan Susu, Kab. Langkat, bad waste management by its resident creates water pollution and causes a decrease in the population of mangrove plants. To improve the population of mangrove plants, an appropriate water content identification system is needed so that mangrove planting on Pulau Sembilan is right on target in accordance with the existing zone content. In this study, the identification of the Long Short Term Memory algorithm was carried out using data on the water content of mangroves in Pulau Sembilan Village, Langkat Regency as training data and testing data. loss of training data and testing data are close to each other with a loss of 0.014. In this study, the results obtained are the system accuracy reaches 99%
by applying a combination of the Adamax optimizer and the softmax activation function.
Keywords: identification, water content, mangrove plants, machine learning, long short term memory, Pulau Sembilan
vii
DAFTAR ISI
PERSETUJUAN i
UCAPAN TERIMA KASIH iii
ABSTRAK v
ABSTRACT vi
DAFTAR ISI vii
DAFTAR TABEL x
DAFTAR GAMBAR xi
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Tujuan Penelitian 3
1.4 Batasan Masalah 3
1.5 Manfaat Penelitian 3
1.6 Metodologi Penelitian 3
1.7 Sistematika Penulisan 4
BAB 2 LANDASAN TEORI 6
2.1 Kandungan Air 6
2.2 Tentang pH (Derajat Keasaman) 6
2.3 Suhu Air 7
2.4 Dissolved Oxygen (Oksigen Terlarut/DO) 7
2.5 Ekosistem Mangrove 7
2.6 Machine Learning 8
2.7 Long Short Term Memory 8
2.8 Penelitian yang Terdahulu 12
BAB 3 ANALISIS DAN PERANCANGAN SISTEM 14
3.1 Data 14
viii
3.2 Analisis Sistem 15
3.2.1 Input Error! Bookmark not defined.16
3.2.2 Data Preparation 16
3.2.2.1 Data Cleaning 16
3.2.2.2 Data Labeling 17
3.2.3 Process 17
3.2.3.1 Proses Training 18
3.2.2.1 Proses Testing 18
3.2.4 Output (Hasil Akhir) 19
3.3 Perancangan Sistem Interface 19
3.3.1 Perancangan Sistem Menu 19
3.3.2 Model Halaman Awal Beranda 20
3.3.3 Rancangan Laman Input Data 20
3.3.4 Rancangan Laman Model 21
3.3.5 Susunan Desain Hasil Identifikasi 21
BAB 4 IMPLEMENTASI DAN PEMBAHASAN 22
4.1 Spesifikasi Hardware dan Software 22
4.1.1 Data Spesifikasi Hardware 22
4.1.2 Data Spesifikasi Software 22
4.2 Implementasi Skema Rancangan Aplikasi 23
4.2.1 Laman Beranda 23
4.2.2 Laman Menu Input Data 23
4.2.3 Laman Hasil Training 24
4.2.4 Laman Hasil Identifikasi 25
4.3 Implementasi Data 25
4.4 Prosuderal Operasional 26
4.5 Hasil Pengujian 27
4.5.1 Hasil Accuracy dan Loss LSTM 28
4.5.2 Hasil uji data testing 32
BAB 5 KESIMPULAN DAN SARAN 34
5.1 Kesimpulan 34
5.2 Saran 34
ix
DAFTAR PUSTAKA 35
LAMPIRAN 38
x
DAFTAR TABEL
Tabel 2.1 Penelitian Teredahulu 11
Tabel 3.1 Darta Output dari preprocessing 17
Tabel 4.1 Detail Dataset 27
Tabel 4.2 Jumlah Dataset 29
Tabel 4.3 Parameter yang digunakan untuk pengujian 30
Tabel 4.4 Persentase Zona Mangrove 33
xi
DAFTAR GAMBAR
Gambar 2.1 Zonasi Mangrove 8
Gambar 2.2 Recurrent Neural Network 9
Gambar 2.3 LSTM 9
Gambar 3.1 Dataset Penelitian Ibrahim, 2021 13
Gambar 3.2 Arsitektur Umum 14
Gambar 3.3 Proses Pembersihan Data 15
Gambar 3.4 Perancangan Menu 21
Gambar 3.5 Rancangan Halaman Utama 21
Gambar 3.6 Rancangan Halaman Input Data 22
Gambar 3.7 Rancangan Halaman Tampilan Model 22
Gambar 3.8 Rancangan Halaman Hasil Identifikasi 23
Gambar 4.1 Laman Beranda 25
Gambar 4.2 Laman Menu Input Data 26
Gambar 4.3 Laman Model 26
Gambar 4.4 Laman Grafik Hasil Identifikasi 27
Gambar 4.5 Laman Pemilihan File Input Data 28
Gambar 4.6 Laman File Berhasil Diinput 29
Gambar 4.7 Grafik accuracy training pada algoritma LSTM 30 Gambar 4.8 Grafik loss training pada algoritma LSTM 31 Gambar 4.9 Visualisasi confusion matrix Zona Mangrove 32
Gambar 4.10 Confusion matrix hasil prediksi 32
Gambar 4.11 Evaluasi model f1 score, recall, dan precision 32
Gambar 4.12 Total Data Pada Setiap Zona 32
Gambar 4.13 Persentase Pembagian Zona 33
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Indonesia adalah negara dengan hutan mangrove yang terluas di seluruh dunia, yaitu dengan sekitar 21% dari luas total hutan mangrove dunia. Di negeri ini, tanaman mangrove tersebar di berbagai pulau besar Indonesia mulai dari pulau Sumatera, pulau Jawa, pulau Kalimantan, pulau Sulawesi sampai ke pulau Papua, dengan luas sangat bervariasi bergantung pada kondisi geografis, komposisi dari substrat, kondisi dari hidrologi, serta cuaca dan iklim yang terdapat di berbagai pulau tersebut (Spalding dkk, 2010). Namun demikian, Indonesia juga merupakan Negara penyumbang kerusakan hutan mangrove terbesar dibandingkan negara lainnya. Dengan tingkat kerusakan mencapai 68% populasi, atau sekitar 5,9 juta hektar dari luas keseluruhan hutan mangrove 8,6 juta hektar, ekosistem mangrove Indonesia saat ini berada dalam situasi yang cukup kritis (Ilham et al. 2016). Kementerian kehutanan Republik Indonesia menginformasikan bahwa hutan mangrove kita yang rusak saat ini mencapai 57,6%
(RLPS, 2001).
Mangrove umumnya ditemukan di sepanjang garis pesisir pantai yang terlindungi di daerah tropis dan sub-tropis dimana mangrove dapat memenuhi fungsi sosio-ekonomi (FAO, 2007)
Dewasa ini, jumlah mangrove sudah sangat banyak berkurang. Hal ini disebabkan pemanfaatan hutan mangrove yang berlebihan dan tercemarnya ekosistem mangrove seperti yang ada di Pulau Sembilan Kecamatan Pangkalan Susu Kab.
Langkat. Selain itu, berkurangnya jumlah populasi mangrove juga disebabkan minimnya peran masyarakat dalam mengelola dan melestarikan mangrove.
Untuk pengelolaan dan melestarikan hutan mangrove, diperlukan identifikasi jenis – jenis mangrove dengan menggunakan Machine Learning. Identifikasi ini akan menerapkan Algoritma Long Short Term Memory untuk menentukan jenis – jenis mangrove agar sesuai dengan zona ekosistem yang telah ditetapkan.
2
Berkembangnya teknologi informasi dan internet yang semakin pesat, saat ini berbagai alat dan inovasi baru telah dikembangkan, termasuk teknologi yang digunakan untuk mengetahui atau memonitor tingkat kualitas air (Zhuiykov, 2012).
Pada penelitian sebelumnya (Ibrahim, et al., 2021) membuat suatu alat berupa aplikasi monitoring zona mangrove dengan menggunakan Arduino yang terintegrasi dengan Webbase Services untuk memantau kadar pH, Dissolved Oxygen, suhu udara, suhu dalam air, ketinggian air, dan ORP (jumlah kandungan larutan zat kimia dalam air) yang ditanamkan kedalam zona mangrove untuk dikirimkan datanya menuju server.
Tujuannnya agar dapat mengklasifikasi jenis – jenis mangrove berdasarkan kandungan yang ada pada zona mangrove tersebut.
Sebelumnya penggunaan algoritma Long Short Term Memory untuk mengidentifikasi kandungan air pernah dilakukan oleh (Ridho, 2014) dalam penelitiannya untuk mengidentifikasi tingkat kelayakan hidup ikan endemic pada suatu lokasi diperairan Danau Toba yang diukur berdasarkan kandungan airnya menggunakan Long Short Term Memory dengan hasil pada pengujian dataset Haranggaol menggunakan permodelan menggunakan kombinasi optimizer dan fungsi aktivasi terbaik didapat bahwa tingkat kelayakan hidup ikan sebesar 99.84 % dengan kandungan air yang optimal sebesar 0.07%, kandungan air yang dapat ditoleransi sebesar 99.84%
dan kandungan air yang buruk sebesar 0.07 %.
Berdasarkan pemaparan sebelumnya, penulis mengambil topik penelitian yang dapat membantu mencegah berkurangnya populasi mangrove yang disebabkan pelestarian dan pengelolaan hutan mangrove yang tidak tepat, dengan judul penelitian identifikasi tingkat kelayakan hidup jenis mangrove desa pulau Sembilan berdasarkan kandungan air menggunakan Long Short Term Memory.
1.2 Rumusan Masalah
Pembuangan limbah oleh masyarakat ke tepi pantai Desa Pulau Sembilan Kecamatan Pangkalan Susu Kab. Langkat menciptakan polusi air dan menyebabkan berkurangnya populasi tanaman mangrove. Untuk memperbaiki populasi tanaman mangrove diperlukan sistem identifikasi kandungan air yang tepat agar penanaman mangrove di Pulau Sembilan tepat sasaran sesuai dengan kandungan zona yang ada.
3
1.3 Tujuan Penelitian
Adapun yang menjadi tujuan penelitian yang penulis lakukan ini adalah untuk mengidentifikasi tingkat kelayakan hidup tanaman mangrove pada suatu lokasi zona mangrove yang diukur berdasarkan kandungan airnya menggunakan algoritma Long Short Term Memory dan penelitian ini juga bertujuan untuk mendapat optimizer dan fungsi aktivasi yang paling baik dengan mengombinasikannya satu per satu secara bergantian.
1.4 Batasan Masalah
Agar penelitian ini terfokus dan mendalam, maka ditentukan beberapa batasan masalah dalam proses penelitiannya, yaitu antara lain:
1. Penelitian ini menerapkan algoritma dan fungsi dari Long Short Term Memory (LSTM).
2. Penelitian ini menggunakan data kandungan air zona mangrove yang ada di Desa Pulau Sembilan.
3. Parameter yang digunakan untuk menilai kandungan air yaitu Ph, Dissolved Oxygen, suhu udara, suhu dalam air, ketinggian air, dan ORP (jumlah kandungan larutan zat kimia dalam air).
4. Kandungan air yang diidentifikasi adalah kandungan yang cocok untuk tanaman mangrove.
1.5 Manfaat Penelitian
Manfaat yang ingin diperoleh dari penelitian ini antara lain:
1. Memberikan kesadaran kepada masyarakat sekitar agar dapat lebih menjaga kebersihan kandungan air zona mangrove
2. Untuk kedepannya dapat dilakukan budidaya terhadap tanaman mangrove oleh warga sekitar dan masyarakat luas.
3. Menambah pemahaman untuk penulis tentang penerapan algoritma Long Short Term Memory (LSTM).
1.6 Metodologi Penelitian
Terdapat beberapa metodologi yang dilakukan dalam proses penelitian ini, antara lain:
4
1. Studi Pustaka
Pada tahap ini akan diadakan pengumpulan data untuk mempelajari dan memahami informasi yang berkaitan dengan penelitian seperti kandungan air yang optimal untuk tanaman mangrove serta penggunaan algoritma Long Short Term Memory (LSTM) untuk proses identifikasi
2. Analisis Permasalahan
Pada tahap ini akan dilakukan analisa terhadap informasi yang telah diperoleh dari berbagai sumber yang terkait dengan penelitian, seperti penyesuaian algoritma LSTM untuk identifikasi kandungan air.
3. Perancangan Aplikasi
Pada tahap ini penulis akan melakukan perancangan aplikasi dan arsitektur yang terdapat pada tahap sebelumnya.
4. Penerapan Sistem
Dalam tahap ini akan dilakukan penerapan dari perancangan sistem identifikasi yang sudah dilakukan pada tahap – tahap sebelumnya.
5. Pengujian Sistem
Pengujian sistem, penulis melakukan pengujian terhadap sistem yang dibuat sesuai dengan spesifikasi yang sudah ditetapkan sehingga dapat diketahui sistem yang telah dibuat apakah sudah mencapai hasil yang diinginkan dalam penelitian ini..
6. Pengarsipan Sistem
Pengarsipan sistem atau biasa disebut dokumentasi adalah tahap dimana penulis menyusun arsip dokumentasi sebagai laporan terhadap sistem yang sudah dirancang.
1.7 Sistematika Penulisan
Tata penulisan dalam penelitian skripsi ini dibagi ke dalam 5 bagian, yaitu:
BAB 1: PENDAHULUAN
Pemaparan mengenai alasan kenapa alasan kepana judul ini dipilih yang kemudian hal tersebut menjadi rumusan masalah, penentuan batasan masalah, butir-butir tujuan, butir-butir manfaat, metodologi yang digunakan, serta susunan penulisan diulas lengkap dalam bab ini.
BAB 2: LANDASAN TEORI
5
Melalui kegiatan studi pustaka yang penulis lakukan, didapat teori yang relevan untuk melengkapi penulisan pada bab landasan teori. Teori-teori yang penulis gunakan adalah yang sesuai dengan masalah dalam penelitian ini. Pemrosesan Bahasa alami dengan algoritma LSTM untuk identifikasi jenis mangrove.
BAB 3: ANALISA DAN PERANCANGAN
Penjabaran mengenai analisa dan pengaplikasian algoritma Long Short Term Memory dalam identifikasi jenis tanaman mangrove dijelaskan pada bab ini. Pembahasan mengenai konstruksi umum serta proses identifikasi algoritma LSTM yang memakai bahasa pemograman Python dipaparkan secara mendalam di bagian ini.
BAB 4: IMPLEMENTASI DAN PEMBAHASAN
Bagian ini disusun dengan penjelasan mengenai penerapan hasil analisa dan penyusunan rancangan yang tercantum pada Bab 3. Bagian ini bertujuan untuk mendapatkan penjelasan bahwa metode yang digunakan telah sesuai. Pada bagian ini dijabarkan hasil dari proses uji sistem/aplikasi yang telah dikerjakan.
BAB 5: KESIMPULAN DAN SARAN
Setelah memaparkan hasil dalam bab pembahasan, selanjutnya penulis merangkum simpulan hasil penelitian serta saran yang bermanfaat untuk penelitian serupa pada bab ini.
BAB 2
LANDASAN TEORI
2.1 Kandungan Air
Air atau zat yang memiliki rumus kimia H2O, merupakan suatu molekul kimia yang tersusun dari dua atom hidrogen, yang secara kovalen terikat pada satu atom oksigen (Ball, 2005). Secara umum kandungan air adalah Hidrogen dan Oksigen, tetapi dalam keadaan tertentu kandungan tersebut dapat bertambah bergantung kepada jenis dan sumber air, misalnya air sungai akan berbeda dengan air laut, air danau berbeda dengan air hujan, dan seterursnya. Air merupakan zat paling esensial yang dibutuhkan oleh makhluk hidup (Umanitoba, 1997). Air juga merupakan zat pelarut yang mempunyai sifat sangat efektif dan mampu melarutkan berbagai zat lainnya dalam jumlah yang cukup banyak. Ikatan hidrogen pada air yang menyatu dapat melampaui kekuatan dari luar yang mampu memecah ikatan-ikatan yang ada.
2.2 Tentang pH (Derajat Keasaman)
pH adalah suatu nilai ukur yang umum dikenal untuk mengukur tingkat keasaman suatu ekosistem. Parameter pH menentukan perhitungan logaritma negatif dari konsentrasi ion-ion hydrogen yang terlepas dalam suatu cairan yang ada. Menghitung atau menentukan pH suatu perairan adalah salah satu cara paling efektif untuk mengetahui kestabilan ekosistem perairan (Simanjuntak, 2009).
pH dalam perairan beragam mulai dari datangnya air dari arah pegunungan, melalui sungai, sampai bermuara ke laut. Semakin menuju laut nilainya akan semakin tinggi (semakin bersifat basa). Secara umum air laut dibagi kedalam 2 bagian yaitu, air laut bersifat basa (pH diatas 7) dan air laut bersifat asam (pH dibawah 7). Pada nilai pH sangat asam, atau yang memiliki nilai lebih rendah (<4), sebagian besar tumbuhan air akan mati dan tidak dapat tumbuh karena gagal bertoleransi terhadap pH rendah (Susana, 2009). Menurut Wantasen (2013), dalam penelitiannya menyebutkan bahwa rentang toleransi pH berada dalam kisaran angka 6 ± 9.0 dan pH yang cukup optimal bisa didapatkan pada angka sekitar 7.0 ± 8.5. Dengan demikian, semakin baik kondisi
7
suatu ekosistem perairan, maka akan semakin baik pula dalam mendukung kestabilan ekosistem mangrove.
2.3 Suhu Air
Suhu air berperan penting dalam mengendalikan kondisi ekosistem tumbuhan diperairan. (Nontji, 2005) menyebutkan, penyebaran dan aktivitas berbagai organisme air sebagian besar ditentukan pula oleh tingkat suhu air. Proses fisik, kimia dan biologi biota air, atau ekosistem tumbuhan juga dipengaruhi karena adanya perubahan suhu air
2.4 Dissolved Oxygen (Oksigen Terlarut/DO)
Secara umum oksigen terlarut dapat ditemukan pada lapisan permukaan, hal ini dikarenakan oksigen dari udara didekatnya dapat dengan mudah berdifusi dan larut ke bagian air laut (Hutabarat dan Evans, 1985). Kebutuhan berbagai Organisme terhadap oksigen terlarut, sangat relatif dan bervariasi bergantung pada situasi, jenis, lingkungan, stadium dan aktifitasnya (Gemilang, et al., 2017).
Oksigen terlarut, dengan tingkatan dan konsentrasi pada batas tertentu juga dapat mengindikasikan telah terjadinya perubahan kualitas suatu ekosistem perairan, semakin rendah tingkat konsentrasinya maka akan semakin rendah pula tingkat kualitas ekosistem perairan tersebut (Anonim, 1998). Melalui beberapa proses seperti difusi udara, proses fotosintesis oleh fitoplakton atau tumbuhan air, oksigen terlarut dapat terbentuk di dalam air laut. Adanya oksigen terlarut ini di dalam air laut mententukan baik tidaknya keberlangsungan hidup mikroorganisme air laut yang bersifat aerobik (Susana, 2009).
2.5 Ekosistem Mangrove
Hutam mangrove di Indonesia merupakan hutan mangrove dengan luas terbesar di dunia, dengan luas wilayah sekitar 425 juta hektare. Namun, laju kerusakan hutan mangrove di Indonesia juga sangat tinggi. Luas hutan tanaman mangrove yang berada di Indonesia diperkirakan telah berkurang 2,15 juta Ha dari total sebelumnya (Chandri et al.,2019)
(Michelle et al., 2011) Zonasi mangrove dari laut ke darat umumnya terdiri atas zona seaward zone, mid zone, dan landward zone. Secara alami mangrove memiliki
8
layak hidup di kondisi ekosistem mangrove. Zonasi tersebut ditunjukkan pada Gambar 2.1.
Gambar 2.1. Zonasi Mangrove (Sumber : Michelle et al., 2011)
2.6 Machine Learning
Dalam pendekatan AI (Artificial Intelligence), machine learning (ML) atau biasa diketahui pembelajaran mesin banyak digunakan untuk mengambil alih pekerjaan manusia dengan tujuan untuk menuntaskan masalah atau menjalankan otomatisasi.
Proses kerja manusia coba ditirukan dalam proses ML serta mengeneralisasinya. Proses pelatihan, training atau pembelajaran merupakan ciri dari machine learning. Proses pada machine learning yaitu komputer mengenali data lalu mempelajarinya sehingga yang dihasilkan adalah sebuah pola dimana proses input (masukan) – output (keluaran) dilakukan tanpa memasukkan baris program yang disusun secara khusus. Oleh sebab itu, machine learning memerlukan data training, yaitu data yang digunakan untuk dipelajari.
2.7 Long Short Term Memory
Arsitektur yang mengalami evolusi atau perubahan dari Recurrent Neural Network (RNN) adalah LSTM (Long Short Term Memory). Pada 1997 Schmidhuber dan Hochreiter yang memperkenalkannya pertama kali. Arsitektur LSTM terus dikembangkan oleh banyak peneliti di banyak bidang seperti pada forecasting dan speech recognition bahkan hingga penelitian ini dilaksanakan.
9
Gambar 2.2 Recurrent Neural Network
Melalui Gambar 2.2 dapat diketahui model RNN yang mempunyai kekurangan.
Kekurangan terjadi pada inputan X0, X1 yang mempunyai jarak informasi yang jauhnya cukup signifikan dengan Xt, Xt+1. Sehingga jika ht+1 membutuhkan informasi tambahan yang sesuai untuk X0, X1, RNN tidak mampu untuk belajar menyambungkan informasi dikarenakan seiringnya waktu berjalan memori terdahulu yang tersimpan akan semakin tidak bisa digunakan karena telah tertimpa atau tergantikan dengan memori terbaru. Pertama kali pada 1994, Bengio yang menemukan kekurangan ini.
Sedangkan yang tidak mempunyai masalah tersebut adalah LSTM, karena LSTM mampu mengorganisasi memori untuk setiap input-nya melalui penggunaan memory cells dan gate units sebagai yang mengatur memori dalam neuron.
2.7.1 Memory cells dan gate units
Penjelasan yang berkaitan dengan mengapa LSTM lebih unggul adalah dengan adanya memory cell dan gate units. Pada setiap neuronsnya LSTM mempunyai memory cells dan gate units, dimana fungsinya adalah untuk menata memori pada setiap neurons ..
Gambar 2.3 LSTM
Melalui gambar di atas dapat dilihat bagaimana dalam setiap neurons LSTM yang bekerja, terlihat proses memory cells berfungsi pada setiap neurons. Kemudian pada gambar di atas terlihat juga gates units memiliki fungsi aktivasi yang terdiri empat proses pada setiap input-an pada neurons. Empat proses Gates units yang telah disebutkan adalah output gates , forget gates, cell gates, dan input gates.
Proses dimana informasi dalam setiap data input akan dikelola dan difilter mana
10
Penjelasan dari pembuatan model LSTM bisa dilihat melalui proses dibawah ini:
a. Menentukan seluruh fungsi gates unit yang terdapat di setiap neurons. Secara berurutan, nilai fungsi gates akan didapatkan dari nilai forget gates dengan persamaan :
tanh(𝑥) = 2𝜎(2𝑥) – 1 (2.1) Dengan nilai x adalah data masukan dan nilai e adalah konstan matematis.
b. Fungsi dari nilai input gates dapat dihitung melalui persamaan dari (2.2) dan persamaan (2.3).
𝑓𝑡 = 𝜎 (𝑊𝑡.[ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑓) (2.2) Keterangan:
𝜎 : Fungsi sigmoid 𝑓𝑡 : Forget gate
ℎ𝑡−1 : Nilai dari output sebelum orde ke-t 𝑊𝑡 : Nilai dari weight untuk forget gate 𝑏𝑓 : Nilai bias pada forget gate
𝑥𝑡 : Nilai dari input pada orde ke-t
Dalam persamaan ini, terdapat 2 fungsi dalam input gate, yang pertama adalah fungsi yang digunakan untuk menentukan sel yang perlu di-update; nilai tersebut ditentukan melalui tingkat lapis sigmoid, yang dapat dilihat pada persamaan berikut:
𝑖𝑡 = 𝜎 (𝑊𝑖.[ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑖) (2.3) Keterangan:
𝜎 : Fungsi sigmoid 𝑖𝑡 : Input gate
ℎ𝑡−1 : Nilai output sebelum orde ke-t 𝑊𝑖 : Nilai weight untuk input gate 𝑏𝑖 : Nilai bias pada input gate 𝑥𝑡 : Nilai input pada orde ke-t
c. Hitung fungsi cell gates dengan persamaan (2.4)
11
Keterangan:
𝑇𝑎𝑛ℎ : Fungsi tanh
𝐶̂𝑡 : Nilai baru yang ditambahkan ke cell state ℎ𝑡−1 : Nilai dari output sebelum orde ke-t 𝑊𝑐 : Nilai dari weight untuk cell state 𝑏𝑐 : Nilai bias pada cell state
𝑥𝑡 : Nilai input pada orde ke-t
d. Hitung fungsi output gates melalui persamaan dari (2.5) dan persamaan (2.6) 𝐶𝑡 = 𝑓𝑡 ∗ 𝐶𝑡−1 + 𝑖𝑡 ∗ 𝐶̂𝑡 (2.5) Keterangan:
𝑓𝑡 : Forget gate
𝐶𝑡 : Nilai baru yang ditambahkan ke cell state 𝑖𝑡 : Input gate
𝐶𝑡−1 : Cell state sebelum orde ke-t
𝐶̂𝑡 : Nilai baru yang ditambahkan ke cell state
𝑂𝑡 = 𝜎 (𝑊𝑜. [ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑜) (2.6) Keterangan:
𝜎 : Fungsi sigmoid 𝑂𝑡 : Output gate
ℎ𝑡−1 : Nilai dari output sebelum orde ke-t 𝑊𝑜 : Nilai dari weight untuk output gate 𝑏𝑜 : Nilai bias pada output gate
𝑥𝑡 : Nilai dari input pada orde ke-t
e. Nilai output akhir sel didefinisikan sebagai:
ℎ𝑡 = 𝑂𝑡 ∗ 𝑡𝑎𝑛ℎ(𝐶𝑡) (2.7) Keterangan:
𝑂𝑡 : Output gate
ℎ𝑡 : Nilai output orde ke t 𝐶𝑡 : Cell state
𝑇𝑎𝑛ℎ : Fungsi tanh
12
2.8 Penelitian yang Terdahulu
Adapun penelitian yang telah ada sebelumnya, yang juga mengimplementasikan LSTM antara lain seperti (Ridho, 2018) yaitu, mengidentifikasi level keberlangsugam hidup dari ikan endemik di wilayah Danau Toba melalui kandungan airnya, dengan menggunakan algoritma yang sama. Penelitian ini, menggunakan data kandungan air yang berasal dari tiga wilayah dengan algoritma LSTM, yang mendapatkan hasil akurasi dengan tingkat mencapai 99% yang mengkombinasikan fungsi aktivasi Relu dengan optimizer Adamax, dimana hasil identifikasi yang diperoleh mendapatkan nilai sebesar 99.84 % kandungan air yang dapat diterima.
(Yuanyuan, et al., 2017) Melakukan penelitian untuk memprediksi kualitas air dengan menggunakan metode LSTM neural network, diperoleh hasil bahwa LTSM mampu memprediksi kualitas air Danau Taihu yang diukur setiap bulan dari tahun 2000 hingga 2006 dengan performa yang baik dan akurasi yang tepat, didapatkan hasil RMSE terbaik dengan 15 neurons di hidden layer dan epoch sebanyak 25.
(Ibrahim, 2021) melakukan penelitian tentang Real Time Monitoring untuk memantau kadar kandungan pada air di zona mangrove dengan menggunakan teknologi Wireless Sensor Network dimana data yang telah dikumpulkan oleh sensor akan langsung diupload menuju cloud server sehingga data-data tersebut dapat dilihat oleh pengguna sistem melalui webbase ataupun aplikasi android.
(Zhao, 2017) Pada penelitian tersebut dijelaskan menggunakan LSTM untuk memprediksi tren saham. Pada penelitian tersebut dijelaskan, prediksi tren saham mencapai akurasi 83,91% pada CSI 300. Dengan menggunakan fungsi-fungsi time - weighted, metode ini mengungguli model-model lain dan dapat disamaratakan dengan indeks saham yang lain.
Tabel 2.1. Penelitian Terdahulu No Nama
Peneliti Tahun Tema Keterangan
1 Atmanatha
n 2017
Real Time Monitoring System For Water Polution
In Lake Toba
Kondisi air danau toba pada tanggal 26 Juni 2016 berada
pada level waspada
13
2 Ridho 2018
Identifikasi Kandungan Air di
Danau Toba Menggunakan
LSTM
Hasil yang didapat bahwa tingkat kelayakan hidup ikan
sebesar 99.84 % dengan kandungan air yang optimal sebesar 0.07%, kandungan air yang dapat ditoleransi sebesar 99.84% dan kandungan air yang
buruk sebesar 0.07 %.
3 Muhamma
d 2018
Identifikasi Level Aman Kualitas
Udara Saat Beraktivitas Menggunakan
LSTM
Hasil akhir yang didapat menunjukkan tingkat akurasi yang tinggi menggunakan model
dan kombinasi optimizer, fungsi aktivasi.
loss function yang tepat, yaitu 98% untuk mengidentifikasi
kualitas udara yang aman untuk beraktivitas.
3 Zhao, et al 2017
Sequential Fault Diagnosis Based on LSTM Neural
Network
Melakukan perbandingan dengan algoritma lainnya dan
mendapatkan akurasi sebesar 98,7% menggunakan
permodelan LSTM
4 Chonghule
, et al 2017
Real Time Monitoring Of Water By Use Of Internet Of Things
Dengan mengukur kandungan dan ketinggian air, kita dapat memprediksi kualitas air dengan
lebih murah dan effisien
6 Jasman 2020
Implementasi LSTM Dalam Mengidentifikasi Berita Hoax Dalam
bahasa Inggris di Media Sosial
Hasil penelititan menunjukkan bahwa metode LSTM lebih unggul dibanding metode SVC,
Logistic Regression, dan MNB
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Pada bagian ini akan dibahas tentang implementasi dari algoritma Long Short Term Memory dalam mengidentifikasi kandungan ar mangrove. Bab ini turut menjabarkan data yang dipakai serta proses menormalkan data. Selain itu, dibahas juga proses pelatihan (training) dan percobaan (testing) dari output yang dihasilkan bersumber pada data hasil dari proses menormalkan data.
3.1 Data
Sumber data yang akan dipakai dalam melakukan uji penelitian ini menggunakan format file CSV (Comma Separated Value), Data terdiri dari 10 atribut diantaranya ketinggian air, suhu air, suhu udara, kelembapan udara, tds, orp, do, ph, datetime, dan lokasi. Data bersumber dari penelitian yang dilakukan oleh (Ibrahim, 2021) mengenai monitoring kandungan air zona mangrove di Desa Pulau Sembilan.
Tabel 3.1 Dataset penelitian Ibrahim, 2021
15
Data tersebut didapat dengan merekam hasil pengukuran kualitas air menggunakan sensor yang dihubungkan dengan Arduino dan beberapa komponen seperti SRF04 sensor, GSM + Gprs Shield , DS18B20 Waterproof Temprature Sensor, DHT11 Air Temprature and Humidty Sensor, TDS Sensor, ORP Sensor, Dissolved Oxygen Sensor, SEN0161 DFrobot PH Sensor. Data tersebut direkam dan dikumpulkan pada tanggal 15 April 2021 selama 15 hari secara berturut – turut.
3.2 Analisis Sistem
Adapun cara yang penulis ajukan untuk mengidentifikasi jenis mangrove terdapat beberapa proses. Dalam penelitian ini, proses-proses yang dilakukan adalah mengambil data dari seluruh sumber data yang telah ditentukan, selanjutnya terdapat proses awal pre-processing yang dilakukan baik secara otomatis melalui aplikasi dan secara manual untuk memastikan ketepatan data, dengan demikian dapat dilanjutkan untuk memproses pembentukan dari suatu model Long Short Term Memory (LSTM). Pembahasan langkah-langkah secara detail pada bagian selanjutnya. Arsitektur umum yang dibentuk bisa dilihat pada gambar berikut:
16
Adapun penjelasan dari gambar di atas, antara lain:
3.2.1 Input
Tahap awal yang dilakukan adalah mempersiapkan input berupa dataset mangrove yang terdiri dari 10 atribut yaitu ketinggian air, suhu air, kelembapan udara, tds, orp, do, pH, datetime, dan lokasi yang berjumlah 2342 baris yang nantinya akan dibersihkan melalui proses pre-processing. Data yang digunakan merupakan data penelitian oleh (Ibrahim, 2021)
3.2.2 Data Preparation
Data preparation atau bisa disebut data preprocessing adalah proses normaliasi yang dilakukan terhadap dataset agar sesuai dengan nilai yang telah ditetapkan.
Dalam penelitian ini, tahap data preparation dibagi menjadi 2 tahap antara lain, data cleaning, dan data labeling.
3.2.2.1 Data Cleaning
Pada data cleaning dilakukan proses seleksi data untuk memeriksa data yang berulang serta menghilangkan dan memperbaiki instance atau feature yang salah pada dataset.
Data yang salah akan dibuang karena mampu mengurangi tingkat akurasi. Proses cleaning ini dapat di gambarkan pada Gambar 3.3.
Gambar 3.3. Proses pembersihan data
Berdasarkan Gambar 3.3, pertama dataset akan dimuat terlebih dahulu, kemudian akan dilakukan pengecekan setiap baris apakah berupa angka desimal (float) atau tidak secara berulang sebanyak baris yang ada pada dataset. Apabila terdapat
17
angka 0. Begitu seterusnya sampai baris terakhir data. Selanjutnya paramater data yang tidak akan digunakan dalam penelitian akan di delete seperti ketingian air, suhu udara, kelembapan udara, tds, dan orp. Sehingga hanya menyisakan parameter pH, suhu air dan DO.
3.2.2.2 Data Labeling
Proses terakhir dari data preparation yaitu data labeling, dimana pelabelan data dilakukan untuk menentukan output berdasarkan feature yang digunakan yaitu suhu udara, pH dan Dissolved Oxygen (DO).
Setelah proses data preparation selesai maka file akan disimpan kedalam CSV baru yang terdiri dari 4 kolom, yaitu pH, suhu air, DO dan label. Output dari proses dapat terlihat pada tabel berikut:
Tabel 3.1 Hasil Data Output dari preparation
pH Suhu Air DO Label
8.83 29.94 29.32 3
8.65 29.34 29.13 3
8.21 29.12 28.98 3
7.94 29.27 28.48 3
3.2.3 Process
Pada tahap process dilakukan dua bagian yaitu proses testing dan proses training. Data dibagi menjadi 2, 70% data untuk testing dan 30% data untuk validation. Selanjutnya pembuatan model berdasarkan parameter yang di input.
Jumlah node pada neural network terlebih dahulu ditentukan, terkhusus pada hidden layer, sebab hidden layer memiliki peran penting dalam menghitung hasil akhir dari neural network. Pada penelitian ini permodelan yang digunakan menggunakan LSTM yang memiliki 3 hidden layer.
18
3.2.3.1 Proses Training
Pada proses training dilakukan permodelan LSTM yang diawali dengan menentukan banyaknya hidden layer (layer tersembunyi), tingkatan neuron dan jumlah epoch yang akan dipakai.
Kemudian proses training akan di jalankan, dimana model akan dilatih menggunakan data training yang telah disediakan. Data latih akan diproses dengan permodelan yang sudah dibuat yaitu lstm model. Dimana pada lstm model data akan masuk ke neuron melalui hidden layer.
Pada satu neuron data yang terletak pada cell state akan melalui forget gate untuk ditentukan apakah data tersebut akan disimpan atau dibuang, dimana penentuannya ditentukan melalui fungsi aktivasi dan dua kondisi. Apabila hasilnya berupa 0 maka data pada cell state akan dibuang dan apabila hasilnya 1 maka data akan pertahankan. Selanjutnya data pada cell state akan dilanjutkan melalui input gate yang mana input gate ini memiliki dua fungsi yaitu untuk mengupdate atau menambahkan data pada cell state
Setelah dimodifikasi dan ditambahkan diperbaharui data pada cell state akan dilanjutkan mealui output gate. Dimana data pada cell state akan diubah untuk disampaikan pada neuron selanjutnya melalui hidden layer selanjutnya dan akan terus berlangsung sebanyak nilai epoch yaitu 10. Dalam penelitian ini, data yang tersimpam di dalam cell state berupa, ph, suhu, do dan label dimana data inilah yang akan berpengaruh pada pengidentifikasian mangrove.
Bobot dan bias akan terus diperbaharui untuk memperoleh model yang sesuai.
Setelah satu literasi process training selesai, maka dilakukan proses validasi untuk mengetahui kinerja model hasil training.
Training result akan divalidasi setiap batch dengan dataset validation untuk melihat apakah hasil yang diberikan sesuai dengan nilai yang sebenarnya. Proses validasi akan menghasilkan error yang disebut loss. Output dari proses ini yaitu sebuah model neural network yang disebut learned model yang sudah selesai di training yang nantinya akan di load kembali ketika akan melakukan proses testing. Selain itu total akurasi dan loss juga akan tercetak pada setiap akhir proses training.
19
3.2.3.2 Proses Testing
Setelah model diperoleh dari proses training, selanjutnya dilakukan pengujian menggunakan sumber data testing yang sudah didapat dari proses preparation.
learned model dimuat kembali dan menghitung hasil keluaran berdasarkan parameter-parameter yang diberikan pada saat proses training yang sudah ada didalam learned model. Tahap ini dilakukan untuk dapat mengetahui efektifitas dari algoritma Long Short Term Memory (LSTM) dalam melakukan proses identifikasi.
3.2.4 Output (Hasil Akhir)
Adapun output dari keseluruhan tahapan dengan LSTM adalah persentase tingkat kelayakan hidup tanaman mangrove Pulau Sembilan yang dibagi dalam 3 zona, dan dimuat dalam bentuk diagram dan tabel
3.3 Perancangan Sistem Interface
Pada penelitian ini menggunakan desain interface atau antarmuka sebagai proses pelatihan (training) dan pengujian (testing) dalam mengidentifikasi tingkat kelayakan hidup tanaman mangrove Desa Pulau Sembilan.
3.3.1 Perancangan Sistem Menu
Rancangan menu pada sistem yang akan dibuat dapat dilihat melalui gambar di bawah ini:
Gambar 3.4 Perancangan Daftar Menu
20
3.3.2 Model Halaman Awal Beranda
Desain beranda akan muncul ketika awal mula running sistem. Pada halaman ini menampilkan NIM dan nama penulis, logo USU dan Judul dari Aplikasi itu sendiri.
Bentuk rancangan akan terlihat seperti gambar berikut :
Gambar 3.5. Rancangan Sketch Halaman Utama 3.3.3 Rancangan Laman Input Data
Tampilan laman input data adalah laman dimana pengguna dapat mengunggah data yang mau ditentukan nilai output-nya. Rancangan dari laman tersebut dapat dilihat pada:
21
Gambar 3.6. Sketsa Laman Unggah File 3.3.4 Rancangan Laman Model
Pada bagian ini sistem akan menampilkan nilai model yang dihasilkan oleh aplikasi beserta confusion matrix, grafik akurasi dan loss. Detail dari bagian ini dapat dilihat pada gambar berikut:
Gambar 3.7. Sketsa Laman Untuk Menampilkan Model 3.3.5 Susunan Desain Hasil Identifikasi
Hasil identifikasi adalah laman akhir yang akan menampilkan grafik identifikasi dan nilai dari hasil identifkasi. Bentuk sketsa dapat dilihat pada gambar berikut:
Gambar 3.8. Sketsa Laman Hasil Identifikasi
BAB 4
IMPLEMENTASI DAN PEMBAHASAN
Dalam bagian ini dibahas mengenai proses penerapan arsitektur Long Short Term Memory sebagai algoritma yang digunakan dalam mengidentifikasi tanaman mangrove Pulau Sembilan.
4.1 Spesifikasi Hardware dan Software
Melalui skema rancang sistem yang telah ditentukan sebelumnya, untuk mendapatkan hasil dari pengujian sistem implementasi algoritma Long Short Term Memory dalam mengidentifikasi tanaman mangrove Pulau Sembilan berbasis phyton ini, diperlukan dukungan dari berbagai perangkat keras dan perangkat lunak dengan spesifikasi minimal antara lain:
4.1.1 Data Spesifikasi Hardware
Berikut adalah data spesifikasi hardware yang akan digunakan pada penelitian ini:
1. Intel Processor® Core™ i7-4210U CPU 2.4 GHz.
2. RAM sebesar 16.00 GB DDR3.
3. Hardisk berkapasitas 1000 TB.
4.1.2 Data Spesifikasi Software
Sedangkan untuk spesifikasi software yang akan digunakan pada penelitian ini, adalah:
1. Sistem Operasi yang digunakan adalah ubuntu 20.
2. Menggunakan bahasa pemrograman Python dengan versi 3.7.3 3. Virtual GPU NVIDIA CUDA Development 9.0
4. Jupyter Notebook
5. Microsoft Visual Studio Code
4.2 Implementasi Skema Rancangan Aplikasi
Adapun tampilan dari antarmuka yang akan diterapkan dalam aplikasi ini adalah sebagai berikut:
4.2.1 Laman Beranda
Saat sistem dijalankan, laman beranda ini akan muncul pertama kali. Laman beranda bisa dilihat sebagai berikut:
Gambar 4.1 Laman Beranda 4.2.2 Laman Menu Input Data
Bagian ini berfungsi untuk mengunggah sumber data yang nantinya akan diproses oleh aplikasi untuk membuat suatu model yang akan diidentifikasi. Format .csv merupakan format data yang akan digunakan, dimana dalam pengujian ini terdapat ketentuan data uji kolom data tanggal harus berada pada field pertama data. Tampilan Laman Menu selengkapnya dapat dilihat sebagai berikut:
24
Gambar 4.2 Laman Menu Unggah File
4.2.3 Laman Hasil Training
Di bagian model, sistem akan menghitung data dan kemudian menampilkan suatu grafik akurasi dan loss serta visualisasi confusion matrix hasil dari training. Tampilan lengkap laman ini dapat dilihat pada gambar berikut:
Gambar 4.3 Laman Model Data
25
4.2.4 Laman Hasil Identifikasi
Data hasil identifikasi berdasarkan model ditampilkan pada laman ini. Dimana, data yang ditampilkan berupa diagram dan tabel pembagian persentase zona. Selengkapnya laman dari hasil identifikasi ini dapat dilihat pada gambar berikut:
Gambar 4.4 Laman Hasil dan Grafik Identifikasi
4.3 Implementasi Data
Sumber data dalam penelitian ini adalah berupa data real time kandungan air zona mangrove di Pulau Sembilan. Data yang akan diteliti ini awalnya tersimpan dalam format Excel dengan ekstensi .xlsx yang selanjutnya akan diubah terlebih dahulu ke dalam format .csv (Comma Sepparated Value). Sumber data yang telah didapatkan ini, selanjutnya akan masuk dalam tahapan proses awal pre-processing dan akan menghasilkan data testing dan training, dengan hasil lengkap yang dapat dilihat pada tabel di bawah ini:
26
Tabel 4.1 Detail Dataset
No Nama File Jumlah Baris Ukuran File
1 Data Mangrove 2342 195 KB
4.4 Prosuderal Operasional
Selanjutnya, bagian pelaksanaan prosedur ini akan memaparkan langkah demi langkah yang dalam penggunaan aplikasi. Pada tahap awal, user akan menemukan laman beranda seperti pada gambar 4.1. di laman beranda ada tombol ‘mulai’ yang akan mengantarkan user ke halaman unggah file seperti pada gambar di atas (4.2). Pada halaman ini, pengguna akan memasukan dataset yang akan diidentifikasi. Data yang diinput harus dengan format csv atau xlsx. Selanjutnya pengguna akan menekan
‘choose file’ yang nantinya membuka direktori komputer untuk memilih sumber data yang ingin diidentifikasi, prosedur lengkap dari proses ini dapat diketahui pada gambar di bawah ini:
Gambar 4.5 Laman Memilih File Sumber Data
Setelah pengguna menentukan sumber data yang akan diproses oleh aplikasi, maka data tersebut selanjutnya akan masuk ke dalam aplikasi seperti yang terlihat pada
27
Gambar 4.6 Laman Sumber Data berhasil di input
Setelah sumber data terkirim ke aplikasi, pengguna dapat melanjutkan proses dengan memilih ‘Run Testing’, lalu file akan diproses oleh sistem. Selanjutnya, sistem akan menampilan hasil model dalam bentuk grafik dan table identifikasi tingkat kelayakan hidup mangrove seperti yang terlihat dalam gambar 4.4.
4.5 Hasil Pengujian
Hasil yang didapatkan dari identifikasi tingkat kelayakan hidup jenis mangrove Desa Pulau Sembilan berdasarkan tingkat kandungan air dengan menerapkan Long Short Term Memory (LSTM) akan dipaparkan pada bagian ini. Proses pengujian ini menggunakan 2342 record data. Setelah dataset ditentukan, maka kita akan masuk ke tahapan pre-processing, kalau dataset sudah baik kemudian dilanjutkan dengan membaginya menjadi 70% training dan 30% testing.
Tabel 4.2 Jumlah Dataset
No Data Jumlah
1 Training 1639 baris
28
2 Testing 703 baris
Sebelum melakukan training dan testing, ditentukan terlebih dahulu paramater yang ditunjukkan pada Tabel 4.3.
Tabel 4.3 Parameter yang digunakan untuk pengujian Optimizer Activation Epoch Learning
Rate
Batch
Size Neuron Loss
Adam Softmax 10 0,001 52 100 Categorical
Crossentropy
4.5.1 Hasil Accuracy dan Loss LSTM
Berdasarkan hasil pengujian yang sudah dilakukan algoritma Long Short Term Memory (LSTM), didapatkan hasil nilai accuracy training dan loss training seperti gambar berikiut :
Gambar 4.7 Grafik accuracy training pada algoritma LSTM
29
Pada Gambar 4.7. menunjukkan bahwa model sudah cukup baik dengan akurasi sebesar 0.994 atau 99%, bahwa akurasi dari model data training dengan data testing memiliki kemiripan yang dekat sehingga dalam pengujian ini overfitting tidak terjadi pada aplikasi.
Gambar 4.8 Grafik loss training dan loss testing pada algoritma LSTM
Pada gambar 4.8 bisa disaksikan bahwa loss dari data training dan data testing saling mendekati dengan loss sebesa 0.014. Nilai loss training dan loss validation pada algoritma LSTM menjadi landai dan grafik berhimpit di antara epoch ke-2 hingga epoch ke-10, sehingga tidak terjadi overfitting. Hal ini menandakan bahwa model yang dibuat cukup akurat.
30
Gambar 4.9 Visualisasi confusion matrix Zona Mangrove
Sebelum pengujian data testing, dilakukan identifikasi jumlah data dari setiap zona mangrove. Result menunjukkan data landward zone lebih mendominasi dengan total 1485 data dibandingkan mid zone 752 data dan seaward berjumlah 105 data, selengkapnya dari hasil perbandingan ini dapat diketahui pada gambar confusion matrix di bawah:
31
Gambar diatas merupakan gambaran dari hasil prediksi menggunakan model yang telah di training sebelumnya. Confusion matrix didapat melalui pengujian antara data label yang sebenarnya dan data label hasil prediksi. Dari hasil tersebut dapat kita lihat bahwa true positive dari hasil prediksi menunjukkan hasil yang baik untuk setiap label yang mana untuk seaward zone 97% label berhasil diprediksi, selanjutnya mid zone dengan 99%, dan landward zone adalah 100%. Dari hasil tersebut dapat disimpulkan bahwa model training menunjukkan hasil yang bagus untuk melakukan prediksi. Untuk selanjutnya ditampilkan nilai f1 score, precision, dan recall pada Gambar 4.11 untuk melakukan evaluasi terhadap model yang ditraining.
Gambar 4.11 evaluasi model f1 score, recall, dan precision
Pada Gambar 4.11 dapat dilihat bahwa nilai f1 score, recall, dan precision menunjukkan hasil yang sangat baik. Sebelum pengujian data testing, dilakukan identifikasi jumlah data dari setiap zona mangrove. Result menunjukkan data landward zone lebih mendominasi dengan total 1485 data dibandingkan mid zone 752 data dan seaward berjumlah 105 data seperti yang terlihat pada Gambar 4.12
32
Gambar 4.12 Total data pada setiap zona
4.5.2 Hasil uji data testing
Pada tahapan ini, peneliti melakukan pengujian terhadap model data testing yang dibuat.
Hasil yang diperoleh melalui tahap pengujian ini tertera pada gambar berikut ini:
Gambar 4.13 Persentase pembagian zona
33
Berdasarkan gambar 4.11 dapat dilihat bahwa terdapat 3 Zona dalam peneltian ini yaitu Seaward Zone, Mid Zone dan Landwad Zone. Persentase pembagian zona ini juga dapat diketahui melalui tabel berikut:
Tabel 4.4 Persentase Zona Mangrove
Tabel diatas menjelaskan hasil dari identifikasi mangrove berdasarkan kandungan di pulau sembilan yang dibagi dalam 3 zona. Terlihat bahwa Landward Zone mendominiasi dengan hasil 70%, Mid Zone 20% dan Seaward Zone 1
No Lokasi Persentase 1 Seaward Zone 10.00%
2 Mid Zone 20.00%
3 Landward Zone 70%
BAB 5
KESIMPULAN DAN SARAN
Pada bagian terakhir ini, penulis akan menyampaikan beberapa poin penting dari simpulan penelitian yang diperoleh serta saran pengembangan hasil penelitian yang dapat dilakukan ke depannya dalam proses identifikasi tingkat kelayakan hidup jenis mangrove dengan menggunakan algoritma Long Short Term Memory.
5.1 Kesimpulan
Berdasarkan hasil pengujian dari identifikasi algoritma Long Short Term Memory, yang telah digunakan untuk mengidentifikasi jenis tanaman mangrove Desa Pulau Sembilan, didapat beberapa kesimpulan, yaitu :
1. Berdasarkan pemaparan implementasi dan pembahasan, dapat disimpulkan bahwa identifikasi tingkat kelayakan jenis tanaman mangrove menggunakan data penelitian sebelumnya (Ibrahim, 2021) bisa dilakukan dengan baik menggunakan algoritma Long Short Term Memory.
2. Dari hasil pengujian menggunakan algortima Long Short Term Memory didapatkan hasil akurasi yang mencapai angka 0.994 atau 99%, melalui implementasi dan kombinasi fungsi aktivasi softmax dengan optimizer Adamax.
3. Long Short Term Memory mampu melakukan proses training dan testing 60 epoch dalam durasi waktu 1 menit.
5.2 Saran
Berikut adalah saran penulis agar penelitian berikutnya dapat berkembang lebih baik:
1. Pengembangan yang melakukan kombinasi atau menggabungkan metode Long short Term Memory dengan metode-metode lainnya agar mendapatkan hasil penelitian dengan kemungkinan yang memiliki akurasi lebih baik lagi.
2. Penggunaan dataset dengan paramater yang lebih bervariasi.
35
DAFTAR PUSTAKA
Adnan S Wantasen, (2013). “Kondisi kualitas perairan dan substrat dasar sebagai factor pendukung aktivitas pertumbuhan mangrove di pantai pesisir Desa Basaan I, Kabupaten Minahasa Tenggara”.
Ahmad, Rudi, Rusdi. (2016). “Status Ekologi Mangrove Pulau Sembilan, Kabupaten Langkat Provinsi Sumatera Utara”.
Andi Aprilianto, Retno Kusumaningrum, (2020). “Hoax Detection In Indonesian Languange Using Long Short-Term Memory Model,”.
Ball, P. (2005). Water and life: Seeking the solution.
Ecological study on mangrove forest in East Coast of North Sumatra
Eka Sapta, Budi Utomo, Yunasfi. (2016). “Identifikasi jenis-jenis mangrove yang bermanfaat secara ekonomi bagi masyarakat di Pulau Sembilan dan Pulau Kampai, Kabupaten Langkat”.
Food and Agricultural Organization. (2007). The World’s Mangroves 1980-2005, A Thematic Study Prepared in the Framework of the Global Forest Assessment 2005. Rome: FAO Forestry Paper.
Habib Faizal Fadli, Ahmad Fathan Hidayatullah, (2021). “Identifikasi Cyberbullying pada Media Sosial Twitter Menggunakan Metode LSTM dan BiLSTM,”.
Huang, M., Zhang, T., Wang, J. and Zhu, L., (2015) September. A new air quality forecasting model using data mining and artificial neural network. In Software Engineering and Service Science (ICSESS), 2015 6th IEEE International Conference on (pp. 259-262). IEEE
Ibrahim, (2021). “Klasifikasi dan monitoring zona mangrove secara real time dengan menggunakan Wireless Sensor Network,”.
Index, A.Q., (2015). A guide to air quality and your health. USA: EPA.
Jasman Pardede, Raka Gemi Ibrahim, (2020). “Implementasi Long Short -Term Memory Untuk Identifikasi Berita Hoax Berbahasa Inggris Pada Media Sosial,”.
Koedsin W, Vaiphasa C. 2013. Discrimination of Tropical Mangroves at the Species Level with EO-1 Hyperion Data. Remote Sensing. 5: 3562-3582.
doi:10.3390/rs5073562
36
Michelle, Jane, Len J, Joanna (2011). “Vulnerability of mangroves, seagrasses and intertidal flats in the tropical Pacific to climate change”
Muhammad Furqan, Romi Fadhillah Rahmat, Sarah Purnamawati (2018). “Identifikasi Kualitas Udara Yang Aman Untuk Beraktivitas Menggunakan Long Short Term-Memory”
Olah, C. (2015, 8 27). Understanding LSTM Networks. Retrieved 8 11, 2018, from github: https://colah.github.io/posts/2015-08-Understanding-LSTMs/
Putri, E. 2013. “Identifikasi Kerusakan Pesisir Akibat Konversi Hutan Hutan bakau Menjadi Lahan Tambak Di Kawasan Pesisir Kabupaten Cirebon. Skripsi . Unpad. Bandung.”
Onrizal, Cecep Kusmana. (2007). “Ecological Study On Mangrove Forest in East Coast of North Sumatra”
Qing Hong Zou, dkk. (2020). “A Water Quality Prediction Method Based On The Multi- time Scale Bidirectional Long Short-Term Memory Network,”.
Rao, A. dan Spasojevic, N. 2016. Actionable and Political Text Classification using Word Embeddings and LSTM.
Ridho Fariha, Romi Fadhillah Rahmat, Indra Aulia, (2018). “Identifikasi Tingkat Kelayakan Hidup Ikan Endemik Danau Toba Berdasarkan Kandungan Air Menggunakan Long Short Term Memory,”.
Samuel, A. L. (1959). Machine Learning.
Sugiarto, B. and Sustika, R., (2016). “Data classification for air quality on wireless sensor network monitoring system using decision tree algorithm”. In Science and Technology-Computer (ICST), International Conference on (pp. 172-176).
IEEE.
Supardjo, M.N. 2008. :Identifikasi Vegetasi Mangrove Di Segoro Anak Selatan, Taman Nasional Alas Purwo, Banyuwangi Jawa Timur. Jurnal Saintek Perikanan”
Vol.03 No.02 2008 : 9-15
Susanto dan Asriningrum, W. (2012). “Penginderaan Jauh dengan Nilai Indeks Faktor Untuk Identifikasi Mangrove di Batam. Jurnal Berita Dirgantara Lapan”, Vol 12 No.3 hlm 104-109
Walter, A., & Barbanti, L. (2001). Temperature, heat content, mixing and stability in Lake Orta: a pluriannual investigation.
Welch, E. B. (1980). Ecological Effects of Waste Water.
37
Yepes, A.J. (2017). Word Embeddings and recurrent neural networks based on LongShort Term Memory nodes in supervised biomedical word sense disambiguation. Journal of Biomedical Informatics, 73, 137-147.
Yusuf, Randy Erfa, Anton Siswo (2020). “Sistem Pendukung Keputusan Penyiraman Tanaman Cabai Dengan Memanfaatkan Kecerdasan Buatan Mengunakan Algoritma LSTM”.
38
LAMPIRAN
from flask import Flask, flash, redirect, url_for, render_template, request
from werkzeug.utils import secure_filename import pickle
import sys,os,itertools import pandas as pd import numpy as np import matplotlib matplotlib.use('Agg')
import matplotlib.pyplot as plt import seaborn as sns
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, LSTM, BatchNormalization
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from tensorflow.keras.models import Model from tensorflow.keras.models import load_model from keras.utils.np_utils import to_categorical from sklearn.preprocessing import LabelEncoder
from sklearn.model_selection import train_test_split from sklearn.metrics import confusion_matrix
import tensorflow as tf
from collections import Counter
import plotly
import plotly.express as px
import plotly.graph_objects as go import plotly.offline as pyo
ALLOWED_EXTENSIONS = set(['xlsx','csv'])
39
secret_key = os.urandom(12)
DETECT_FOLDER = 'static' app = Flask(__name__)
app.secret_key = secret_key
app.config['UPLOAD_FOLDER'] = DETECT_FOLDER app.config['MAX_CONTENT_LENGTH'] = 1024 * 1024
def prediction_mangroove(file_path):
splitfile = file_path.split(".") if splitfile[-1] == "xlsx":
data_raw = pd.read_excel(file_path) else:
data_raw = pd.read_csv(file_path)
data_raw.columns = ["ketinggianAir", "suhuAir", "suhuUdara",
"kelembapanUdara", "tds", "orp", "do", "ph", "label"]
X = data_raw.iloc[:,0:9]
X = to_categorical(X) print(X[0])
load = load_model("model.h5") y_predicted = load.predict(X)
predicted = np.argmax(y_predicted,axis=1)
target_names = ['Seaward Zone', 'Mid Zone', 'Landward Zone']
print(predicted)
loc_pred = count_predict(predicted)
new_predict = pd.DataFrame(data={'lokasi': target_names, 'total':loc_pred})
new_predict['precentage'] = (new_predict['total'] / new_predict['total'].sum()) * 100
visualize_class(new_predict['precentage'].to_list())
return predicted, target_names,
40
def training_mangroove(file_path):
splitfile = file_path.split(".") if splitfile[-1] == "xlsx":
data_raw = pd.read_excel(file_path) else:
data_raw = pd.read_csv(file_path)
data_raw.columns = ["ketinggianAir", "suhuAir", "suhuUdara",
"kelembapanUdara", "tds", "orp", "do", "ph", "label",
"lokasi"]
X = data_raw.iloc[:,0:9]
y = data_raw.iloc[:,-1]
X = to_categorical(X) y = to_categorical(y)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, stratify=y, random_state=42)
X_train.shape, X_test.shape, y_train.shape, y_test.shape
model = Sequential()
model.add(LSTM(100, input_shape=(9, 720))) model.add(Dense(4, activation="softmax"))
model.compile(loss="categorical_crossentropy",optimizer="
adam", metrics=["accuracy"]) model.summary()
history =
model.fit(X_train,y_train,epochs=10,validation_data=(X_te st,y_test),verbose=1)
testing = model.evaluate(X_test, y_test) y_pred = model.predict(X_test)
actual = np.argmax(y_test,axis=1) predicted = np.argmax(y_pred,axis=1) cm = confusion_matrix(actual, predicted) visualize_loss(history)
41
target_names = ['Seaward Zone', 'Mid Zone', 'Landward Zone']
plot_confusion_matrix(cm,target_names,normalize=True)
return testing[0], testing[1]
def count_predict(predicted):
one = 0 two = 0 three = 0
for val in predicted:
if val == 1:
one+=1 elif val == 2:
two+=1 elif val == 3:
three+=1
return [one, two, three]
def save_confusion(cm):
plt.subplots(figsize=(15,8))
sns.heatmap(data=cm, center=0, annot=True)
plt.savefig("./static/plot/{}".format("confusion_matrix.p ng"))
plt.clf()
def plot_confusion_matrix(cm, classes,
normalize=False,title='Confusion matrix',cmap=plt.cm.Blues):
#Add Normalization Option if normalize:
cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]
print('Normalized confusion matrix') else: