Artificial Neural Network (ANN) merupakan salah satu metode kecerdasan buatan yang meniru cara kerja jaringan saraf manusia dalam mengolah informasi melalui hubungan antarneuron. Metode ini memiliki kemampuan untuk mempelajari pola hubungan yang kompleks dan tidak linier sehingga dapat diterapkan dalam berbagai permasalahan analisis data, baik regresi maupun klasifikasi. Pada kasus regresi, ANN digunakan untuk memperkirakan nilai numerik berdasarkan variabel masukan, sedangkan pada kasus klasifikasi digunakan untuk mengelompokkan data ke dalam kategori tertentu. Fleksibilitas tersebut menjadikan ANN sebagai salah satu metode yang dapat digunakan untuk menyelesaikan permasalahan prediksi dan pengelompokan data (Huda & Handayani, 2023).
Penerapan ANN dapat dibedakan menjadi dua jenis permasalahan, yaitu regresi dan klasifikasi. Regresi digunakan untuk memodelkan hubungan antarvariabel dengan output berupa nilai numerik, sedangkan klasifikasi digunakan untuk mengelompokkan data ke dalam kategori tertentu berdasarkan karakteristik yang dimiliki. Dalam penerapannya, ANN memiliki beberapa komponen utama, yaitu input layer, hidden layer, dan output layer yang saling terhubung melalui bobot. Proses pembelajaran dilakukan dengan menyesuaikan bobot jaringan berdasarkan kesalahan prediksi sehingga model dapat menghasilkan keluaran yang sesuai dengan pola data.
Proses pembelajaran dilakukan dengan menyesuaikan bobot jaringan berdasarkan kesalahan prediksi sehingga model dapat menghasilkan keluaran yang sesuai dengan pola data. Dalam membangun model ANN, diperlukan perangkat lunak yang mampu mendukung proses pengolahan data, pembentukan arsitektur jaringan, pelatihan model, hingga evaluasi hasil pemodelan. Salah satu perangkat lunak yang dapat digunakan adalah bahasa pemrograman R karena menyediakan lingkungan komputasi statistik dan berbagai paket yang mendukung analisis data serta pemodelan machine learning. Implementasi ANN menggunakan R memungkinkan proses analisis dilakukan secara sistematis, mulai dari persiapan data, pembagian data menjadi data pelatihan dan pengujian, penentuan struktur jaringan, hingga proses prediksi. Dengan demikian, penggunaan R dapat membantu memahami tahapan implementasi ANN baik untuk permasalahan regresi maupun klasifikasi.
Berdasarkan latar belakang di atas, adapun rumusan masalah yang dapat disimpulkan sebagai berikut:
Adapun tujuan penelitian ini yaitu:
Adapun manfaat yang didapatkan dari penelitian ini adalah sebagai berikut: 1. Bagi penulis: a. Dapat memberikan informasi serta pengetahuan tentang model Artificial Neural Network (ANN) untuk kasus regresi dan klasifikasi. b. Menerapkan ilmu atau wawasan baru mengenai program R-Studio. 2. Bagi pembaca: a. Menambah ilmu pengetahuan dan pemahaman tentang model Artificial Neural Network (ANN) untuk kasus regresi dan klasifikasi. b. Menjadi rujukan bagi peneliti selanjutnya.
Adapun batasan masalah pada penelitian ini yaitu lakukan ANN regresi
dengan hidden neuron = c(10, 20, 30) dengan data
training 80% dan testing 20%. Kemudian buat dengan
maxit = (250, 500). Kemudian interprestasikan
output dengan jelas. Gunakan data Iris,
Friedman, Breast Cancer, dan lain-lain.
Machine learning merupakan cabang kecerdasan buatan yang berfokus pada pengembangan algoritma dan model yang memungkinkan komputer untuk belajar dari data, mengenali pola, serta membuat prediksi atau keputusan tanpa pemrograman langsung (Farhan, Puspasari, & Gasim, 2025). Secara umum, algoritma machine learning dikategorikan ke dalam supervised learning, unsupervised learning, dan reinforcement learning, dengan supervised learning sebagai pendekatan utama untuk tugas klasifikasi dan regresi karena menggunakan data berlabel. Dalam konteks supervised learning, tujuan utamanya adalah memodelkan fungsi yang mendasari hubungan statistik antara variabel fitur dan variabel target, seperti yang diformulasikan pada Persamaan (2.1) (Rashidi dkk., 2023).
\[ Y = f(X) + \varepsilon \tag{2.1} \] ## 2.2 Artificial Neural Network (ANN)
Artificial Neural Network (ANN) atau jaringan saraf tiruan merupakan salah satu metode dalam machine learning yang terinspirasi dari mekanisme kerja jaringan saraf biologis manusia. ANN dirancang untuk mempelajari pola dan hubungan antara variabel input dan output melalui proses pembelajaran berdasarkan data. Metode ini memiliki kemampuan dalam mengenali pola, memodelkan hubungan yang kompleks, serta menangani hubungan nonlinier yang sulit dijelaskan menggunakan pendekatan statistik konvensional (Lesmana, 2025).
ANN bekerja dengan menghubungkan sejumlah neuron buatan yang saling berinteraksi melalui bobot (weight) dan bias. Setiap neuron menerima masukan, melakukan perhitungan matematis, kemudian menghasilkan keluaran melalui fungsi aktivasi. Proses tersebut berlangsung secara berulang selama pelatihan hingga jaringan mampu mengenali pola data yang diberikan. Dengan mekanisme pembelajaran tersebut, ANN dapat digunakan untuk berbagai keperluan, seperti prediksi nilai numerik, peramalan, pengenalan pola, dan pengelompokan kategori (Huda & Handayani, 2023).
Proses pengolahan informasi pada suatu neuron secara matematis dapat dinyatakan sebagai berikut (Fransiska, 2026):
\[ y = f\left(\sum_{i=1}^{p} w_{i}x_{i} + b\right) \tag{2.2} \] dengan \(x_i\) merupakan masukan ke-\(i\), \(w_i\) adalah bobot yang menghubungkan masukan ke-\(i\) dengan neuron, \(b\) adalah bias, \(f\) merupakan fungsi aktivasi, dan \(y\) adalah keluaran neuron. Persamaan ini menunjukkan bahwa neuron menghitung kombinasi linier dari seluruh masukannya, menambahkan bias, lalu menerapkan fungsi aktivasi untuk menghasilkan keluaran. Beberapa fungsi aktivasi yang umum digunakan dalam ANN antara lain sebagai berikut (Fransiska, 2026):
Pemilihan fungsi aktivasi pada lapisan keluaran disesuaikan dengan jenis permasalahan yang dihadapi, misalnya fungsi linear untuk regresi dan fungsi sigmoid atau softmax untuk klasifikasi (Fransiska, 2026).
Pembelajaran dilakukan dengan menggunakan data pelatihan, di mana jaringan secara iteratif mengubah parameter-parameternya untuk meminimalkan kesalahan prediksi. Algoritma yang umum digunakan untuk melatih jaringan feedforward adalah backpropagation (Lusia dkk., 2025). Pembaruan bobot dan bias dilakukan berdasarkan gradien yang telah dihitung dengan menggunakan algoritma optimasi (Maszeri dkk., 2025). Secara umum, pembaruan bobot menggunakan gradient descent dapat dituliskan sebagai berikut (Fransiska, 2026):
\[ w_{ij}(t+1) = w_{ij}(t) - \eta \frac{\partial L}{\partial w_{ij}} \tag{2.8} \] dengan \(w_{ij}(t)\) adalah bobot pada iterasi ke-\(t\), \(\eta\) adalah laju pembelajaran (learning rate) yang menentukan seberapa besar perubahan bobot pada setiap iterasi, dan \(\frac{\partial L}{\partial w_{ij}}\) adalah gradien fungsi kerugian terhadap bobot tersebut. Persamaan ini menunjukkan bahwa bobot diperbarui ke arah yang berlawanan dengan gradien untuk meminimalkan nilai kerugian.
ANN digunakan untuk menyelesaikan dua jenis permasalahan utama, yaitu regresi dan klasifikasi, yang dibedakan berdasarkan bentuk keluarannya. Pada regresi, ANN memprediksi variabel respons berupa nilai numerik kontinu dan umumnya menggunakan fungsi aktivasi linear pada lapisan keluaran agar nilai prediksi sesuai dengan rentang variabel respons. Pada klasifikasi, ANN memprediksi variabel respons berupa kategori, apabila klasifikasi biner menggunakan satu neuron dengan fungsi sigmoid, sedangkan klasifikasi multikelas menggunakan fungsi softmax dengan jumlah probabilitas seluruh kelas sama dengan 1 (Fransiska, 2026).
Evaluasi performa model merupakan tahap penting untuk mengukur sejauh mana model mampu memprediksi data dengan benar, dan ukuran evaluasi harus disesuaikan dengan jenis permasalahan, yaitu ukuran galat untuk data numerik dan ukuran ketepatan klasifikasi untuk data kategorik. Pada permasalahan regresi, evaluasi dilakukan dengan membandingkan nilai aktual dan nilai hasil prediksi menggunakan metrik yang mengukur besarnya deviasi prediksi. Salah satu metrik yang umum digunakan adalah Mean Squared Error (MSE) yang dihitung sebagai rata-rata kuadrat selisih antara nilai aktual dan nilai prediksi (Rashidi dkk., 2023). MSE dirumuskan sebagai berikut:
\[ MSE = \frac{1}{n}\sum_{i=1}^{n}\left(y_{i} - \hat{y}_{i}\right)^{2} \tag{2.9} \] dengan \(y_i\) adalah nilai aktual observasi ke-\(i\), \(\hat{y}_i\) adalah nilai prediksi observasi ke-\(i\), dan \(n\) adalah jumlah observasi. Nilai MSE yang semakin kecil menunjukkan bahwa prediksi model semakin mendekati nilai aktual, sehingga model dinilai semakin baik. Selain MSE, Mean Absolute Percentage Error (MAPE) juga digunakan untuk mengukur galat prediksi dalam bentuk persentase, yang dirumuskan sebagai berikut (Fransiska, 2026):
\[ MAPE = \frac{1}{n}\sum_{i=1}^{n}\left|\frac{y_{i} - \hat{y}_{i}}{y_{i}}\right| \times 100\% \tag{2.10} \] dengan \(y_i\) adalah nilai aktual, \(\hat{y}_i\) adalah nilai prediksi, dan \(n\) adalah jumlah observasi. MAPE menyatakan galat relatif terhadap nilai aktual sehingga memudahkan interpretasi tingkat akurasi prediksi dalam satuan persen.
Jenis data yang digunakan dalam penelitian ini adalah data numerik, yaitu data yang menunjukkan nilai pengukuran dalam bentuk angka. Seluruh variabel pada data tersebut, baik variabel respons maupun variabel prediktor, bertipe numerik. Data yang digunakan berasal dari hasil pembangkitan data simulasi Friedman yang disajikan dalam bentuk angka.
Sumber data yang digunakan dalam penelitian ini adalah data sekunder.
Data sekunder merupakan data yang telah tersedia dari pihak lain dan
dapat dimanfaatkan kembali untuk keperluan penelitian. Dataset
Friedman diperoleh dari package mlbench pada
perangkat lunak R. Dataset tersebut terdiri atas 500
observasi.
Variabel merupakan karakteristik atau atribut yang dapat diukur maupun diamati dalam suatu penelitian. Penelitian ini menggunakan sebelas variabel, yaitu \(X_1\), \(X_2\), \(X_3\), \(X_4\), \(X_5\), \(X_6\), \(X_7\), \(X_8\), \(X_9\), \(X_{10}\), dan \(y\). Variabel \(y\) berperan sebagai variabel respons yang bertipe numerik. Sepuluh variabel lainnya berperan sebagai variabel prediktor yang bertipe numerik dengan skala 0 sampai 1.
Berikut merupakan algoritma penelitian pada batasan masalah:
Pada tahap awal analisis dilakukan pemanggilan beberapa library yang
diperlukan dalam proses implementasi Artificial Neural Network
(ANN) menggunakan bahasa pemrograman R. Library
nnet digunakan untuk membangun dan melatih model jaringan
saraf tiruan, baik untuk permasalahan regresi maupun klasifikasi.
Selanjutnya, library NeuralNetTools digunakan
untuk membantu visualisasi dan interpretasi struktur jaringan saraf,
seperti hubungan antar-neuron dan bobot jaringan yang
terbentuk. Sementara itu, library mlbench
digunakan untuk menyediakan dataset yang dapat dimanfaatkan
dalam proses pembelajaran dan pengujian model. Pemanggilan ketiga
library tersebut bertujuan untuk mendukung seluruh tahapan
analisis, mulai dari penyediaan data, pembentukan model ANN, hingga
visualisasi hasil pemodelan.
# Membangkitkan dan mengeksplorasi data
set.seed(30)
friedman <- mlbench.friedman1(500, sd = 1)
friedman <- data.frame(friedman$x, y = friedman$y)
head(friedman)## X1 X2 X3 X4 X5 X6 X7
## 1 0.09878282 0.2337198 0.8134364 0.2166913 0.1648171 0.129914033 0.3524098
## 2 0.48823179 0.4146609 0.5733046 0.1702545 0.9194502 0.374660176 0.6136658
## 3 0.36403673 0.8958963 0.8568022 0.9256487 0.7059385 0.307438324 0.2934860
## 4 0.42061913 0.4226774 0.3797753 0.9379595 0.6445702 0.457480700 0.5718492
## 5 0.30096439 0.2268191 0.1342575 0.8008052 0.5857520 0.497444816 0.2342272
## 6 0.14763513 0.7056860 0.3146560 0.2459586 0.9210742 0.003689917 0.3407659
## X8 X9 X10 y
## 1 0.2300168 0.07910943 0.03245699 6.131172
## 2 0.3131174 0.90087988 0.55327314 12.476395
## 3 0.3992220 0.63464270 0.04383683 23.027661
## 4 0.7831769 0.89313336 0.47230876 18.675205
## 5 0.1832471 0.54873081 0.07798014 15.987934
## 6 0.5749358 0.11233936 0.39338890 9.874722
## X1 X2 X3 X4
## Min. :0.001377 Min. :0.0001353 Min. :0.002613 Min. :0.002803
## 1st Qu.:0.199486 1st Qu.:0.2368477 1st Qu.:0.248252 1st Qu.:0.224867
## Median :0.450658 Median :0.5074854 Median :0.471229 Median :0.495703
## Mean :0.473834 Mean :0.5006868 Mean :0.491370 Mean :0.494514
## 3rd Qu.:0.729503 3rd Qu.:0.7551165 3rd Qu.:0.755294 3rd Qu.:0.759337
## Max. :0.999493 Max. :0.9998430 Max. :0.996637 Max. :0.998739
## X5 X6 X7 X8
## Min. :0.003269 Min. :0.001808 Min. :0.001806 Min. :0.003325
## 1st Qu.:0.232835 1st Qu.:0.262993 1st Qu.:0.251932 1st Qu.:0.238626
## Median :0.495492 Median :0.533648 Median :0.475157 Median :0.502035
## Mean :0.483932 Mean :0.512196 Mean :0.484222 Mean :0.504746
## 3rd Qu.:0.735052 3rd Qu.:0.750860 3rd Qu.:0.721226 3rd Qu.:0.762835
## Max. :0.998573 Max. :0.999912 Max. :0.998182 Max. :0.999145
## X9 X10 y
## Min. :0.003881 Min. :0.001582 Min. : 1.681
## 1st Qu.:0.281453 1st Qu.:0.260162 1st Qu.:10.355
## Median :0.492720 Median :0.486876 Median :13.971
## Mean :0.500908 Mean :0.502648 Mean :13.938
## 3rd Qu.:0.720268 3rd Qu.:0.754341 3rd Qu.:17.731
## Max. :0.999320 Max. :0.998455 Max. :29.243
## [1] 500
Pada tahap ini dilakukan pembangkitan data menggunakan fungsi
mlbench.friedman1() dari paket mlbench dengan
jumlah sebanyak 500 pengamatan dan standar deviasi sebesar 1. Penggunaan
set.seed(30) bertujuan agar data yang dibangkitkan
menghasilkan nilai yang konsisten ketika proses dijalankan kembali. Data
yang dihasilkan kemudian diubah menjadi bentuk data frame
dengan variabel prediktor X1 hingga X10 dan variabel respons y.
Berdasarkan hasil eksplorasi menggunakan fungsi head() dan
summary(), diketahui bahwa dataset terdiri atas 10 variabel
prediktor dan 1 variabel respons. Seluruh variabel prediktor memiliki
nilai minimum mendekati 0 dan maksimum mendekati 1, dengan nilai
rata-rata yang berada di sekitar 0,5. Sementara itu, variabel respons y
memiliki nilai minimum sebesar 1,681, maksimum sebesar 29,243, dan
rata-rata sebesar 13,938. Berdasarkan fungsi nrow(),
diketahui bahwa jumlah keseluruhan data adalah 500 pengamatan. Dengan
demikian, dataset Friedman1 memiliki struktur data
numerik yang dapat digunakan untuk membangun model Artificial Neural
Network (ANN) pada kasus regresi.
# Menormalisasi variabel prediktor dengan min-max
normalisasi <- function(x) (x - min(x)) / (max(x) - min(x))
prediktor <- setdiff(names(friedman), "y")
friedman[prediktor] <- lapply(friedman[prediktor], normalisasi)
# Membagi data menjadi data latih (80%) dan data uji (20%)
set.seed(30)
index <- sample(1:nrow(friedman), round(0.8 * nrow(friedman)))
train <- friedman[index, ]
nrow(train)## [1] 400
## [1] 100
Pada tahap ini dilakukan normalisasi terhadap seluruh variabel
prediktor menggunakan metode Min-Max Normalization. Normalisasi
bertujuan untuk menyamakan skala nilai setiap variabel prediktor ke
dalam rentang 0 hingga 1 sehingga proses pembelajaran model ANN dapat
berjalan lebih optimal. Fungsi normalisasi diterapkan pada variabel X1
hingga X10, sedangkan variabel respons y tidak dilakukan normalisasi.
Selanjutnya, dataset dibagi menjadi data training dan
data testing dengan proporsi 80% dan 20%. Pembagian data
dilakukan menggunakan fungsi sample() dengan
set.seed(30) agar hasil pembagian data tetap konsisten
ketika program dijalankan kembali. Berdasarkan hasil pembagian,
diperoleh sebanyak 400 pengamatan sebagai data latih dan 100 pengamatan
sebagai data uji dari total 500 pengamatan. Data latih digunakan untuk
membangun dan melatih model ANN, sedangkan data uji digunakan untuk
mengevaluasi kemampuan model dalam melakukan prediksi terhadap data yang
tidak digunakan selama proses pelatihan.
# Menentukan formula ANN regresi
i <- names(train)
form <- as.formula(
paste(
"y ~",
paste(i[!i %in% "y"], collapse = " + ")
)
)
# Menentukan kombinasi hidden neuron dan maxit
neuron_set <- c(10, 20, 30)
maxit_set <- c(250, 500)
hasil <- data.frame()
model_list <- list()
# Membangun model ANN regresi untuk setiap kombinasi
for (n in neuron_set) {
for (m in maxit_set) {
set.seed(30)
nn <- nnet.formula(
form,
size = n,
data = train,
linout = TRUE,
maxit = m,
trace = FALSE,
MaxNWts = 5000
)
# Melakukan prediksi pada data uji
predict_regresi <- predict(
nn,
newdata = test,
type = "raw"
)
# Menghitung error prediksi
error <- test$y - as.numeric(predict_regresi)
# Evaluasi model menggunakan MSE dan MAPE
MSE <- mean(error^2)
MAPE <- mean(abs(error / test$y)) * 100
hasil <- rbind(hasil, data.frame(
Hidden_Neuron = n,
Maxit = m,
MSE = round(MSE, 4),
MAPE = round(MAPE, 4)
))
model_list[[paste0("size", n, "_maxit", m)]] <- nn
}
}Pada tahap ini dilakukan pembentukan model Artificial Neural
Network (ANN) untuk kasus regresi menggunakan paket
nnet pada bahasa pemrograman R. Pemodelan diawali dengan
menentukan formula yang terdiri atas variabel respons y dan variabel
prediktor X1 hingga X10. Selanjutnya, dilakukan percobaan menggunakan
kombinasi jumlah hidden neuron sebanyak 10, 20, dan 30
neuron serta jumlah iterasi maksimum (maxit) sebanyak
250 dan 500 iterasi sehingga diperoleh enam kombinasi model ANN. Proses
pelatihan dilakukan menggunakan fungsi nnet.formula()
dengan parameter linout = TRUE yang menunjukkan bahwa model
digunakan untuk memprediksi nilai numerik. Setelah proses pelatihan
selesai, model digunakan untuk memprediksi 100 data pengujian. Hasil
prediksi kemudian dibandingkan dengan nilai aktual untuk memperoleh
nilai kesalahan. Evaluasi performa setiap model dilakukan menggunakan
metrik Mean Squared Error (MSE) dan Mean Absolute
Percentage Error (MAPE). Seluruh hasil evaluasi disimpan dalam
objek hasil, sedangkan model yang terbentuk disimpan dalam
model_list untuk memudahkan perbandingan dan penentuan
kombinasi arsitektur ANN dengan tingkat kesalahan prediksi paling
rendah.
## Hidden_Neuron Maxit MSE MAPE
## 1 10 250 1.3440 7.7310
## 2 10 500 1.4750 8.1948
## 3 20 250 22.7449 37.2492
## 4 20 500 22.7449 37.2492
## 5 30 250 14.1214 17.7962
## 6 30 500 17.8284 17.1441
# Menentukan model terbaik berdasarkan MSE terkecil
terbaik <- hasil[which.min(hasil$MSE), ]
terbaik## Hidden_Neuron Maxit MSE MAPE
## 1 10 250 1.344 7.731
Pada tahap ini dilakukan perbandingan terhadap seluruh kombinasi
model ANN regresi berdasarkan nilai MSE dan MAPE yang telah diperoleh
sebelumnya. Pemilihan model terbaik dilakukan dengan mempertimbangkan
nilai MSE terkecil sebagai kriteria utama. Berdasarkan hasil evaluasi,
diperoleh model terbaik dengan jumlah hidden neuron sebanyak 10 dan
iterasi maksimum (maxit) sebanyak 250. Model tersebut
menghasilkan nilai MSE sebesar 1,344 dan MAPE sebesar 7,731%.
Selanjutnya, model terbaik disimpan dalam objek nn_terbaik
untuk digunakan pada tahap analisis berikutnya. Dengan demikian,
kombinasi 10 hidden neuron dan 250 iterasi dipilih sebagai
model ANN regresi terbaik berdasarkan nilai MSE terkecil.
Gambar 4.1 Arsitektur ANN model terbaik
## $struct
## [1] 10 10 1
##
## $wts
## $wts$`hidden 1 1`
## [1] -7.80407461 3.97295491 3.90657000 -0.17396073 -0.78351109 -0.06593324
## [7] -0.49037317 0.27819712 -0.29358838 0.19766728 -0.16585979
##
## $wts$`hidden 1 2`
## [1] -5.096052 50.530500 -8.537806 -4.836132 22.589075 -23.204094
## [7] -56.893822 -28.349058 -80.967380 -68.763807 -68.400139
##
## $wts$`hidden 1 3`
## [1] -2.108907615 -0.684835751 -0.533478304 2.072070884 0.491185102
## [6] 0.128283359 -0.228118865 0.006764879 -0.068352883 0.025990380
## [11] 0.027273642
##
## $wts$`hidden 1 4`
## [1] 0.38305935 -0.58508541 -0.86674031 -2.30429779 0.28034844 0.15636053
## [7] -0.31855706 0.09950462 -0.21328695 0.15220661 0.10857648
##
## $wts$`hidden 1 5`
## [1] -3.65939476 3.09534195 2.66895382 0.28950093 0.38776621 0.37857588
## [7] 0.41802565 -0.13315090 0.02139233 -0.17443405 -0.17106942
##
## $wts$`hidden 1 6`
## [1] -19.628609 -9.424175 -7.961362 9.175944 1.360703 -5.978203
## [7] 8.810297 -2.111998 2.272506 5.880087 -9.060686
##
## $wts$`hidden 1 7`
## [1] -4.3488225 13.1119051 1.1995530 1.9186722 0.1667808 -0.3011422
## [7] 2.3145486 -0.6424809 1.5695887 -0.3176131 -0.9521594
##
## $wts$`hidden 1 8`
## [1] -1.6381979 -2.6205101 7.7149223 1.3584583 0.3721878 0.4652638
## [7] 1.7469109 -0.0192204 1.1701574 -0.9991334 0.1094388
##
## $wts$`hidden 1 9`
## [1] -22.908856 -28.724249 -5.424186 10.100647 30.317514 47.092379
## [7] -55.946561 34.093638 22.317970 43.845995 -26.338034
##
## $wts$`hidden 1 10`
## [1] -6.458966 29.668200 -22.979148 11.242072 5.615700 -48.325822
## [7] -9.465050 2.933432 -68.675193 -59.971086 -68.102589
##
## $wts$`out 1`
## [1] -31.1746167 -43.6368970 72.8824550 47.3022718 49.8953592 30.1049526
## [7] -7.6468565 5.4420428 8.5658348 0.9493977 29.6052564
Gambar 4.1 memperlihatkan struktur arsitektur model ANN terbaik yang
memiliki 10 neuron pada lapisan input, 10
neuron pada satu lapisan tersembunyi, dan 1 neuron
pada lapisan output. Susunan jaringan tersebut ditunjukkan
melalui keluaran $struct dengan struktur 10-10-1. Model ini
memiliki total 121 bobot, yang terdiri atas 110 bobot penghubung dari
lapisan input ke lapisan tersembunyi dan 11 bobot dari lapisan
tersembunyi ke lapisan output, termasuk bobot bias.
Selanjutnya, keluaran neuralweights menunjukkan nilai bobot
pada masing-masing neuron tersembunyi, dengan elemen pertama
sebagai bias dan sepuluh elemen berikutnya sebagai bobot yang berasal
dari variabel X1 hingga X10. Bobot yang dihasilkan memiliki rentang
nilai cukup besar, yaitu sekitar -185 hingga 190. Beberapa
neuron, khususnya neuron pertama, ketiga, kedelapan,
kesembilan, dan kesepuluh, memiliki nilai bobot relatif besar
dibandingkan neuron lainnya. Kondisi tersebut mengindikasikan adanya
kemungkinan beberapa neuron mengalami saturasi pada fungsi aktivasi
sehingga perlu diperhatikan dalam interpretasi perilaku model.
Gambar 4.2 Variable importance model terbaik
Variable importance menggambarkan besarnya peran
masing-masing variabel prediktor dalam menghasilkan prediksi model.
Fungsi olden digunakan untuk menghitung tingkat kepentingan
setiap prediktor berdasarkan kombinasi bobot koneksi antara lapisan
input, lapisan tersembunyi, dan lapisan output.
Semakin tinggi batang variabel yang ditampilkan pada Gambar 4.2, semakin
besar kontribusi variabel tersebut terhadap hasil prediksi model.
Artificial Neural Network (ANN) merupakan salah satu metode pembelajaran mesin yang dapat digunakan untuk menganalisis hubungan antara variabel prediktor dan variabel respons, baik dalam permasalahan regresi maupun klasifikasi. Oleh karena itu, diperlukan pemahaman mengenai konsep, tahapan penerapan, serta implementasi metode ANN menggunakan perangkat lunak R. Selain itu, evaluasi kinerja model juga perlu dilakukan untuk mengetahui kemampuan model dalam menghasilkan prediksi, dengan menggunakan ukuran evaluasi MSE dan MAPE pada regresi serta accuracy dan precision pada klasifikasi.
Berdasarkan seluruh tahapan analisis yang telah dilakukan, penerapan
metode Artificial Neural Network (ANN) menggunakan R diawali
dengan pembentukan data simulasi Friedman1 sebanyak 500
pengamatan yang terdiri atas 10 variabel prediktor dan satu variabel
respons. Selanjutnya, dilakukan normalisasi data prediktor menggunakan
metode Min-Max serta pembagian data menjadi 80% data training
dan 20% data testing. Pemodelan ANN dilakukan dengan
mengombinasikan variasi jumlah neuron pada lapisan tersembunyi dan
jumlah iterasi (maxit) sehingga diperoleh enam model yang kemudian
dievaluasi menggunakan nilai MSE dan MAPE. Berdasarkan hasil evaluasi,
model terbaik diperoleh pada kombinasi 10 neuron dan 250 iterasi dengan
nilai MSE sebesar 1,344 dan MAPE sebesar 7,731%. Model tersebut memiliki
arsitektur jaringan 10-10-1 dengan total 121 bobot, termasuk bobot bias.
Selain itu, analisis variable importance menggunakan fungsi
olden dilakukan untuk mengetahui kontribusi masing-masing
variabel prediktor terhadap hasil prediksi. Dengan demikian, metode ANN
dapat diterapkan untuk pemodelan regresi serta mampu menghasilkan
prediksi dengan tingkat kesalahan yang dapat dievaluasi melalui nilai
MSE dan MAPE.
Laporan praktikum ini melakukan pemograman R. Dalam hal ini perlu memahami sintak yang diperlukan dalam hal pengerjaannya ini agar tidak terjadi error pada programnya. Dan juga sangat perlu memahami tentang metode Artificial Neural Network.
Farhan, M., Puspasari, S., & Gasim, G. (2025). Analisis Sentimen Supporter Sriwijaya FC Berbasis Manchine Learning. Jurnal Algoritme, 6(1), 37–49. https://doi.org/10.35957/algoritme.v6i1.11288
Fransiska, H. (2026). Modul Praktikum Machine Learning and Modern Prediction. Bengkulu: Laboratorium Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Bengkulu.
Huda, D. N., & Handayani, S. (2023). Prediksi nilai ujian dengan Artificial Neural Network. REMIK: Riset dan E-Jurnal Manajemen Informatika Komputer, 7(1), 157–165.
Lesmana, D. (2025). Pengaplikasian deep learning dengan desain arsitektur JST untuk tugas regresi dan klasifikasi. Elektronika Sistem Senjata, 6(1), 1–17.
Lusia, D. A., Semathea, K., Sumarminingsih, E., & Efendi, A. (2025). PERBANDINGAN METODE JARINGAN SARAF TIRUAN, FUZZY, DAN ANFIS PADA PERAMALAN DATA INFLASI INDONESIA. Jurnal Teknologi Informasi dan Ilmu Komputer, 11(3), 653–660.
Maszeri, Mokhlis, Shohibuddin, M., Badriyah, K., Qomaruddin, Utami, T. H., Shohir, Hamdani, Rafiuddin, Fahmi, A. S., Listiana, H., Munawwarah, F., Mahendra, Y., Timamah, I., Jannah, F., & Permatasari, I. D. (2025). DEEP LEARNING DALAM PENDIDIKAN DAN ARTIFICIAL INTELLEGENCE. Yayasan Putra Adi Dharma.
Rashidi, H. H., Albahra, S., Robertson, S., Tran, N. K., & Hu, B. (2023). Common statistical concepts in the supervised Machine Learning arena. Frontiers in Oncology, 13(1), 1–14. https://doi.org/10.3389/fonc.2023.1130229