Abstract—Rice is one of the main commodities in jaringan saraf. Dengan menambahkan lebih banyak
Indonesian society. The main problem with rice lapisan dan lebih banyak neuron per lapisan, akan
nationally is inflation of rice prices. Therefore, this meningkatkan spesialisasi model untuk
research predicts the price of rice using Multilayer melatih data [1].
Perceptron (MLP) artificial neural network architecture
and deep learning: Long Short Term Memory (LSTM) LSTM merupakan sebuah arsitektur RNN [2]
to anticipate these problems. The data used in this study yang memiliki memory cell. Dengan memory cell,
are real data on rice prices during 2016 - 2019 obtained arsitektur LSTM dapat bekerja lebih baik dibanding
from PT. Food Station. The total dataset is 1307 with the jaringan saraf rekuren biasa, karena memiliki
distribution of 1123 as data train and 184 as test data. kemampuan untuk mengingat informasi untuk periode
The final results obtained in this study are LSTM waktu yang lebih lama, sehingga menjadikannya
superior to MLP, with the value of Root Mean Square algoritma yang lebih baik untuk prediksi data berjenis
Error (RMSE) training data: 0.49 RMSE loss value of time series [3].
test data is 0.27. The most optimal LSTM model from 3
tests conducted, is a model with a number of hidden Penelitian ini bertujuan untuk melakukan prediksi
layers = 16 and epochs = 150 times. dan komparasi model terhadap data time series harga
beras jenis IR-64 kualitas III selama 24 bulan pada
Index Terms—Artificial Neural Network, Deep tingkat grosir yang didapatkan dari website PT.Food
Learning, Forecasting Time Series, Long Short Term Station. Metode yang akan digunakan adalah
Memory (LSTM), Multilayer Perceptron (MLP) komparasi antara jaringan saraf tiruan yaitu Multilayer
Perceptron (MLP) dan deep learning dengan
I. PENDAHULUAN arsitektur Long Short Term Memory (LSTM) yang
akan dibangun dengan environment berbasis bahasa
Beras merupakan komoditi pokok bagi masyarakat
python. Hal ini termasuk sebagai inovasi baru dalam
Indonesia sampai saat ini. Prediksi terhadap harga
perbandingan kedua model jaringan syaraf tiruan
beras sangat diperlukan untuk mewujudkan stabilisasi
dalam bidang deep learning peramalan data time series
harga bahan pokok guna tercapainya ketahanan
terhadap permasalahan yang dibahas, mengingat
pangan nasional, terutama pada masa pandemi Covid-
semakin besarnya data dan kompleksnya kebutuhan
19 seperti sekarang. Tentunya pada masa sulit ini,
akan pengolahan data.
diharapkan harga-harga pangan tetap stabil untuk
menunjang kehidupan masyarakat, terutama beras. Proses dalam penelitian ini adalah mencari nilai
Data harga beras yang dihimpun pemerintah tiap prediksi dengan akurasi terbaik antara model MLP dan
tahunnya, termasuk dalam tipe data time series. LSTM, serta membuat plot perbandingan data test
Banyak metode machine learning tersedia untuk dengan data hasil prediksi. Tingkat keakuratan dari
memprediksi data time series, baik yang memiliki tiap model, akan diukur menggunakan algoritma Root
arsitektur shallow seperti : Principal Component Mean Squared Error (RMSE) sesuai skenario yang
Analysis (PCA), Isomap, dan Support Vector Machine penulis buat.
(SVM), maupun arsitektur deep seperti: Convolutional
Neural Network (CNN), Multilayer Perceptron II. TINJAUAN PUSTAKA
(MLP), dan Long Short Term Memory (LSTM).
Multilayer Perceptrons (MLP) adalah arsitektur A. Multilayer Perceptron (MLP)
perceptron yang paling banyak digunakan untuk Multilayer merupakan bentuk lapisan perceptron
jaringan saraf. Lapisan perceptron digabungkan dan yang digabungkan, dengan menambahkan lebih
membentuk arsitektur multilayer, hal ini memberikan banyak layer dan neuron tiap layer. Multilayer
kompleksitas yang diperlukan dari pemrosesan
Gambar 3. Backpropagation
(4)
untuk mengatasi vanishing problem adalah dengan D. Deep Learning with Keras
menggunakan unit RNN yaitu Long Short Term Keras adalah framework deep learning untuk
Memory (LSTM) [6]. Python yang menyediakan cara mudah untuk
mendefinisikan dan melatih hampir semua jenis
C. Long Short Term Memory (LSTM) model deep-learning. Keras awalnya dikembangkan
LSTM adalah jenis RNN khusus yang bekerja untuk para peneliti, dengan tujuan memungkinkan
lebih baik dalam praktiknya, dikarenakan adanya eksperimen berjalan lebih cepat. Sekarang, Keras
pembaruan dari persamaan dan adanya dinamika adalah framework terpopuler di Kaggle dan berbagai
backpropagation didalamnya [7]. Arsitektur Long kompetisi deep learning dunia [10]. Framework ini
Short Term Memory network (LSTM), seperti terlihat mendukung 2 bahasa data science yang paling
pada gambar 3, memiliki gate yang berfungsi untuk populer yaitu: R and Python [11]. Kelebihan yang
menghapus maupun menambah informasi yaitu forget ditawarkan adalah dengan munculnya fitur-fitur :
gate, output gate, dan input gate. [8]. membuat code berjalan mulus pada CPU atau GPU,
Persamaan yang terbentuk dari forget gate (1), user-friendly API yang membuatnya mudah untuk
input gate (2), output gate (3), lapisan tanh membuat prototipe sebuah deep-learning, dan
menciptakan vektor nilai kandidat baru (4), cell state mendukung model RNN [10].
(5), dan hidden layer (6) adalah:
(1) III. METODE PENELITIAN
(2) Dalam membangun model LSTM ini,
(3) membutuhkan beberapa tahapan proses. Proses-proses
(4) tersebut terdiri dari proses preprocessing data,
(5) inisialisasi parameter, training jaringan LSTM, dan
(6) melakukan uji terhadap data testing. Dalam
pembangunan sistem, dataset yang didapatkan diolah
terlebih dahulu dengan menggunakan teknik
normalisasi min max scaling. Dilakukan inisialisasi
pada setiap parameter, setelah itu dilakukan training
pada arsitektur jaringan saraf yang dibuat sesuai
dengan parameter yang telah ditetapkan. Selanjutnya
dilakukan uji pada model LSTM, hasil dari proses
training terhadap data testing. Proses tersebut terus
diulang hingga mendapatkan model dengan akurasi
yang baik.
Output Gate: secara kondisional Data train dan tes di-reshape menjadi 3 dimensi.
memutuskan apa yang akan dihasilkan
berdasarkan input dan memori blok [6].
B. Inisialisasi Parameter yang digunakan kali ini yaitu LSTM dengan detail
sebagai berikut:
B.1 Model MLP
Digunakan dataset train untuk melatih
Setelah dataset dilakukan preprocessing, dan
model LSTM. Pada tahap awal, model
selanjutnya menentukan inisialisasi parameter dasar.
dibangun dengan menggunakan
Pada MLP yang dibutuhkan antara lain:
fungsi sequential.
Tabel 2. Parameter model MLP Kemudian dibuat model dengan 1 buah layer
Paramater Jumlah LSTM sebagai input layer, dengan dimensi
Total layer 5 (1,1), 1 hidden layer dengan 64 neuron, dan
Input layer 1 layer (64 neuron) output 1 neuron.
Hidden layer 3 layer (128,128,8 neuron)
Output layer 1 neuron Digunakan loss function yaitu RMSE dan
Jumlah epochs 100 optimizer Adam.
Terakhir model dilatih dengan menggunakan
fungsi fit, yang menggunakan parameter
B.2 Model LSTM data train.
Inisialisasi parameter pada LSTM yang akan
dibangun yaitu: Tahap analisis dan perancangan model dilakukan
setelah data melewati tahapan preproccesing. Model
Tabel 3. Parameter model LSTM yang digunakan di penelitian ini, yaitu MLP.
Paramater Jumlah
Total layer 4
D. Testing
Hidden layer 1 layer, 64 neuron Model yang telah dilatih pada proses training,
Jumlah LSTM cell akan diuji dengan menggunakan data test dari proses
128 neuron
(input layer)
preprocessing data. Model akan menghasilkan nilai
Output layer 1 neuron
Jumlah epochs 100 prediksi harga beras. Dilakukan juga proses
perhitungan nilai RMSE pada hasil data train dan
data test.
C. Tahap Analisis dan Perancangan Model D.1 Skenario Pengujian MLP
C.1 Model MLP Skenario pengujian dalam penelitian ini adalah
Tahap analisis dan perancangan model dilakukan menganalisa dampak tiap parameter terhadap akurasi
setelah data melewati tahapan preproccesing. Model yang didapatkan. Parameter yang diuji berupa jumlah
yang digunakan di penelitian ini, yaitu MLP. neuron pada input layer dan besarnya epoch
maksimum untuk menghasilkan bobot MLP yang
Digunakan dataset train untuk melatih optimal. Berikut adalah nilai parameter yang
model MLP. Pada tahap awal, model akan diuji:
dibangun dengan memanggil
fungsi sequential. Jumlah neuron input : 64,128, 256
Kemudian ditambahkan 1 buah layer input Jumlah Epoch : 100, 150, 200
MLP dengan dense 64 neuron, input Dilakukan observasi sebanyak 3 kali. Hal ini
dimension = 1, dan activation = 'relu'. dilakukan karena tidak cukup dilakukan observasi
Ditambahkan 3 hidden layer dengan jumlah hanya sekali saja, karena hasil yang didapatkan bisa
neuron masing-masing 128, 128, dan 8. saja kebetulan baik ataupun buruk.
Pada layer terakhir, yaitu output layer D.2 Skenario Pengujian LSTM
dengan 1 buah neuron.
Skenario pengujian dalam penelitian ini adalah
Digunakan loss function yaitu RMSE dan menganalisa dampak tiap parameter terhadap akurasi
optimizer Adam. yang didapatkan. Parameter yang diuji berupa jumlah
Terakhir model dilatih dengan menggunakan neuron pada hidden layer dan besarnya epoch
fungsi fit, yang menggunakan parameter maksimum untuk menghasilkan bobot LSTM yang
data train. optimal. Berikut adalah nilai parameter yang
akan diuji:
C.2 Model LSTM Jumlah neuron hidden : 64,128, 256
Tahap analisis dan perancangan model dilakukan Jumlah Epoch : 100, 150, 200
setelah data melewati tahapan preproccesing. Model
Dilakukan observasi sebanyak 3 kali. Hal ini time series contohnya harga beras ini, maka
dilakukan karena tidak cukup dilakukan observasi dilakukanlah percobaan untuk mengetahui model
hanya sekali saja, karena hasil yang didapatkan bisa paling optimal.
saja kebetulan baik ataupun buruk.
B. Model LSTM
E. Membandingkan Data Hasil Prediksi dan
Tabel 5. Kombinasi uji coba LSTM
Plotting Data
Tahap akhir yaitu membandingkan data hasil Jumlah
Uji Nilai
neuron Nilai RMSE
prediksi model LSTM dengan data aktual dalam Coba
hidden
epochs RMSE
Tes
sebuah tabel. Nilai train dan prediksi juga ke - Train
layer
divisualisasikan dalam bentuk grafik plot. 1 64 100 0.52 0,35
2 128 150 0.49 0.27
IV. HASIL DAN PEMBAHASAN 3 256 200 0.59 0.37
Berdasarkan data real harga beras yang terdapat
pada FoodStation, dapat dilihat bahwa terdapat
kenaikan harga setiap awal tahun dibanding bulan Berdasarkan lampiran Tabel 5, menunjukkan hasil
lainnya terutama pada tahun 2018. Lonjakan tertinggi bahwa model LSTM dengan jumlah neuron hidden
terdapat pada awal tahun 2018 yang mencapai harga layer= 128 dan epochs= 150, menghasilkan nilai
lebih dari 12.500, diikuti lonjakan awal tahun 2019 RMSE yang lebih kecil dibandingkan dengan
yang juga cukup tinggi. percobaan lainnya. Bisa dikatakan bahwa percobaan
kedua lebih optimal dibanding dengan kedua
percobaan lainnya. Hidden layer mengolah neuron
input dan menghubungkannya dengan neuron output,
sehingga jumlah hidden neuron akan menentukan
nilai output yang dihasilkan oleh unit LSTM.
Jumlah
Uji Dari tabel perbandingan data aktual dan prediksi
neuron Nilai RMSE Nilai RMSE
Coba epochs
ke -
hidden Train Tes MLP, menunjukkan bahwa MLP memprediksi nilai
layer harga dengan rentang yang cukup besar terhadap
1 64 100 52.52 21.14 harga aktual. Nilai error RMSE cukup besar
2 128 150 95.38 39.32 menandakan bahwa model ini kurang efektif dalam
3 256 200 88.98 50.86 mengolah data time series harga beras.
Hasil training model LSTM, maka akan
Berdasarkan lampiran Tabel 4, menunjukkan hasil
dihasilkan nilai prediksi harga dan loss pada bulan
bahwa model MLP dengan jumlah neuron input
selanjutnya yaitu sebagai berikut:
layer= 64 dan epochs= 100, menghasilkan nilai
RMSE yang lebih kecil dibandingkan dengan
percobaan lainnya. Bisa dikatakan bahwa percobaan
pertama lebih optimal dibanding dengan kedua
percobaan lainnya. Jumlah input layer mengolah data
input dan menghubungkannya dengan neuron output.
Tidak ada aturan pasti mengenai jumlah hidden
neuron yang paling optimal dalam memprediksi data
[5] J. Nabi, "Recurrent Neural Networks (RNNs)," [Online]. [8] J. Brownlee, "Time Series Prediction with LSTM Recurrent
Available: https://towardsdatascience.com/recurrent-neural- Neural Network in Python with Keras," 2016.
networks-rnns-3f06d7653a85. [9] L. Zaman, S. S. and M. H. , "Analisis Kinerja LSTM dan
[6] C. Olah, "Understanding LSTM Networks," 27 August 2015. GRU sebagai Model Generatif," vol. 8, p. 143, 2019.
[Online]. Available: http://colah.github.io/posts/2015-08- [10] F. Chollet, Deep Learning with Python, New York: Manning,
Understanding-LSTMs/. 2018.
[7] A. Karpathy, "The Unreasonable Effectiveness of Recurrent [11] F. Chollet and J. J. Allaire, Deep Learning with R, vol. 1,
Neural Networks," 21 May 2015. Manning Publications, 2017.