Perkembangan teknologi informasi mendorong semakin meningkatnya jumlah data yang dihasilkan dalam berbagai bidang. Data tersebut dapat dimanfaatkan untuk memperoleh informasi, mengenali pola, serta mendukung proses pengambilan keputusan. Namun, hubungan antarvariabel dalam suatu data tidak selalu bersifat linear dan sering kali memiliki pola yang kompleks. Oleh karena itu, diperlukan metode analisis yang mampu mempelajari hubungan tersebut dengan baik, salah satunya melalui pendekatan machine learning. Salah satu pendekatan dalam machine learning adalah ensemble learning, yaitu teknik yang menggabungkan beberapa model pembelajaran untuk menghasilkan prediksi yang lebih baik dibandingkan penggunaan satu model secara individual.
Salah satu metode ensemble learning yang banyak digunakan adalah Random Forest. Metode ini merupakan pengembangan dari decision tree yang membentuk sejumlah pohon keputusan melalui proses pengambilan sampel secara acak (bootstrap sampling) dan pemilihan sebagian variabel prediktor secara acak pada setiap pemisahan node (Kusnandar & Suradiradja, 2026). Selain Random Forest, terdapat pengembangan metode yang dikenal sebagai Double Random Forest yang memanfaatkan pendekatan pengacakan dalam proses pembentukan model untuk menghasilkan prediksi melalui mekanisme ensemble. Kedua metode tersebut dapat diterapkan pada permasalahan klasifikasi maupun regresi.
Pemahaman mengenai Random Forest dan Double Random Forest perlu dilakukan melalui kajian konsep serta penerapan langsung pada permasalahan klasifikasi dan regresi. Perbandingan kedua metode berdasarkan ukuran evaluasi yang sesuai dapat memberikan gambaran mengenai karakteristik dan kemampuan masing-masing metode dalam menghasilkan prediksi. Dengan demikian, praktikum ini dilakukan untuk memahami prinsip kerja Random Forest dan Double Random Forest.
Berdasarkan latar belakang, rumusan masalah pada penelitian ini adalah:
Bagaimana cara memahami Random Forest dan Double Random Forest sebagai metode ensemble berbasis decision tree?
Bagaimana cara mengimplementasikan Random Forest untuk klasifikasi dan regresi, serta Double Random Forest untuk klasifikasi dan regresi?
Bagaimana cara mengevaluasi performa model, memahami Out-of-Bag (OOB) error, dan membandingkan Random Forest dengan Double Random Forest?
Berdasarkan rumusan masalah di atas, tujuan yang dapat disimpulkan adalah:
Mahasiswa dapat memahami Random Forest dan Double Random Forest sebagai metode ensemble berbasis decision tree.
Mahasiswa dapat mengimplementasikan Random Forest untuk klasifikasi dan regresi, serta Double Random Forest untuk klasifikasi dan regresi.
Mahasiswa dapat mengevaluasi performa model, memahami Out-of-Bag (OOB) error, dan membandingkan Random Forest dengan Double Random Forest.
Ensemble learning adalah teknik dalam algoritma pembelajaran mesin (ML) dengan kombinasi dua algoritma atau lebih untuk mendapatkan solusi yang lebih baik dari model sebelumnya. Ensemble learning adalah metode yang melibatkan beberapa algoritma ML dengan hasil rendah kemudian ditingkatkan untuk mendapatkan hasil yang lebih tinggi. Teknik ensemble learning terdiri dari bagging. boosting dan stacking (Churniansyah dan Utomo, 2024). Secara formal, ensemble learning dapat didefinisikan sebagai paradigma pembelajaran di mana beberapa pengklasifikasi dasar dilatih dan digabungkan untuk menghasilkan keputusan klasifikasi akhir. Prediksi ensemble diperoleh melalui suatu fungsi agregasi yang mengombinasikan keluaran model-model tersebut. Efektivitas ensemble learning erat kaitannya dengan dekomposisi bias varians dari galat klasifikasi (Rachmatullah, 2021).
Random Forest (RF) pertama kali diperkenalkan oleh Leo Breiman (2001). RF merupakan salah satu metode yang dapat meningkatkan hasil akurasi dalam membangkitkan atribut untuk setiap node yang dilakukan secara acak. RF terdiri dari sekumpulan decision tree, dimana kumpulan pohon keputusan ini digunakan untuk mengklasifikasi data ke suatu kelas. Pohon keputusan dibuat dengan menentukan node akar dan berakhir dengan beberapa node daun untuk mendapatkan hasil akhir. Membentuk pohon keputusan pada metode RF sama dengan proses pada Classsification and Regression Tree (CART), hanya saja pada RF tidak dilakukan prunning (pemangkasan). Indeks Gini digunakan unruk memilih fitur di setiap simpul internal dari pohon keputusan (Amaliah, Nusrang, dan aswi, 2022). Random Forest Regression (RFR) merupakan algoritme ensemble learning yang menggabungkan banyak pohon keputusan (decision tree) sehingga mampu menangkap hubungan non-linear antar variabel dan relatif tahan terhadap masalah multikolinearitas dibandingkan metode statistik konvensional seperti regresi linear (Kusnandar & Suradiradja, 2026).
Pada bootstrap berukuran 𝑛 yang diambil dengan pengembalian dari 𝑛 observasi, sebagian observasi dapat terambil lebih dari sekali dan sebagian lainnya tidak terambil. Secara rata-rata, proporsi observasi unik yang masuk ke satu bootstrap sampel mendekati 1 − 𝑒⁻¹ ≈ 0,632. Artinya, sekitar 36,8% observasi tidak digunakan untuk membentuk tree tertentu dan disebut Out-of-Bag (OOB) observations. Untuk setiap observasi, prediksi OOB diperoleh hanya dari tree-tree yang tidak menggunakan observasi tersebut ketika dibentuk. Prediksi ini dapat digunakan untuk menghitung OOB prediction error sebagai ukuran evaluasi internal Random Forest. Pada ranger, OOB error dihitung secara otomatis secara default. Untuk klasifikasi, prediction.error menyatakan proporsi salah klasifikasi OOB, sedangkan untuk regresi menyatakan OOB Mean Squared Error (MSE) (Fransiska, 2026).
Double random forest (DRF) dikembangkan dari RF ketika data RF mengalami underfit. Berbeda dengan RF, DRF menggunakan seluruh sampel data latih untuk membangun pohon keputusan. Seluruh pohon yang dibentuk pada DRF berasal dari data yang sama akan menghasilkan contoh unik yang banyak. Semakin banyak contoh unik yang dimiliki, akan semakin besar pohon yang dihasilkan. Adanya DRF diharapkan dapat menghasilkan pohon keputusan yang lebih besar dan bisa meningkatkan performa yang maksimum sesuai dengan ukuran node minimum. DRF melakukan bootstrap pada setiap node untuk mendapatkan pemisah terbaik dan kondisi lain ketika tidak memerlukan bootstrap yakni saat suatu node memiliki sampel kurang dari 10% dari total sampel. Setiap hasil prediksi suatu pohon akan digabungkan dengan menggunakan majority vote (Manaf, Fitrianto, dan Soleh., 2024).
Jenis data yang digunakan dalam penelitian ini berupa data kuantitatif dan data kualitatif. Data kuantitatif adalah jenis data yang dapat diukur (measurable) atau dihitung secara langsung sebagai variabel angka. Sumber data yang digunakan dalam penelitian ini yaitu data sekunder. Data sekunder adalah data yang diperoleh secara tidak langsung oleh peneliti melainkan melalui prantara. Data sekunder dalam penelitian ini diperoleh dari dari dataset Friedmad pada package mlbench Program R.
Variabel adalah objek penelitian atau apa yang menjadi titik perhatian. Dalam penelitian ini terdapat beberapa variabel. Variabel penelitian terdiri atas variabel respons dan variabel prediktor. Variabel respons yang digunakan terdiri dari y sebagai variabel respons dan 10 variabel lainnya sebagai prediktor.
Langkah-langkah analisis yang dilakukan adalah:
Menyiapkan data yang akan digunakan untuk analisis klasifxikasi dan regresi.
Membangun model Random Forest untuk kasus klasifikasi dan regresi dengan menentukan parameter yang digunakan.
Membangun model Double Random Forest untuk kasus klasifikasi dan regresi sesuai dengan algoritma yang diterapkan.
Melakukan prediksi menggunakan masing-masing model pada data uji.
Mengevaluasi kinerja model klasifikasi menggunakan confusion matrix, accuracy, precision, recall, dan F1-score.
Mengevaluasi kinerja model regresi menggunakan MSE, RMSE, MAE, dan R².
Mengamati nilai OOB (Out-of-Bag) sebagai ukuran evaluasi internal pada model Random Forest.
Membandingkan hasil evaluasi Random Forest dan Double Random Forest untuk mengetahui perbedaan kinerja kedua metode.
Menarik kesimpulan berdasarkan hasil analisis dan perbandingan model.
## Loading required package: ggplot2
## Loading required package: lattice
# B1. Membentuk dataset
set.seed(234)
reg.data <- as.data.frame(mlbench.friedman1(200))
str(reg.data)## 'data.frame': 200 obs. of 11 variables:
## $ x.1 : num 0.7456 0.7817 0.02 0.7761 0.0669 ...
## $ x.2 : num 0.575 0.316 0.765 0.229 0.172 ...
## $ x.3 : num 0.0289 0.9375 0.7978 0.668 0.5974 ...
## $ x.4 : num 0.72 0.185 0.534 0.553 0.755 ...
## $ x.5 : num 0.875 0.704 0.952 0.478 0.533 ...
## $ x.6 : num 0.276 0.643 0.987 0.843 0.733 ...
## $ x.7 : num 0.9332 0.4018 0.0874 0.893 0.1024 ...
## $ x.8 : num 0.60746 0.00369 0.0106 0.44639 0.83494 ...
## $ x.9 : num 0.756 0.405 0.247 0.144 0.187 ...
## $ x.10: num 0.718 0.534 0.667 0.68 0.595 ...
## $ y : num 24.35 18.05 12.02 12.1 9.91 ...
## x.1 x.2 x.3 x.4
## Min. :0.001198 Min. :0.004583 Min. :0.01021 Min. :0.00707
## 1st Qu.:0.274097 1st Qu.:0.255644 1st Qu.:0.24506 1st Qu.:0.20772
## Median :0.541847 Median :0.436813 Median :0.48965 Median :0.50295
## Mean :0.509759 Mean :0.465323 Mean :0.48570 Mean :0.48821
## 3rd Qu.:0.741416 3rd Qu.:0.651439 3rd Qu.:0.73476 3rd Qu.:0.76599
## Max. :0.993590 Max. :0.999850 Max. :0.99985 Max. :0.99761
## x.5 x.6 x.7 x.8
## Min. :0.008246 Min. :0.005504 Min. :0.001884 Min. :0.002496
## 1st Qu.:0.267523 1st Qu.:0.194431 1st Qu.:0.226788 1st Qu.:0.249826
## Median :0.522081 Median :0.446060 Median :0.491332 Median :0.480306
## Mean :0.503282 Mean :0.468544 Mean :0.503754 Mean :0.482050
## 3rd Qu.:0.751688 3rd Qu.:0.746035 3rd Qu.:0.780325 3rd Qu.:0.696675
## Max. :0.994604 Max. :0.999021 Max. :0.993044 Max. :0.995613
## x.9 x.10 y
## Min. :0.004483 Min. :0.005544 Min. : 3.082
## 1st Qu.:0.203254 1st Qu.:0.329160 1st Qu.:10.593
## Median :0.453476 Median :0.592614 Median :13.810
## Mean :0.471873 Mean :0.540708 Mean :14.270
## 3rd Qu.:0.742412 3rd Qu.:0.765353 3rd Qu.:18.063
## Max. :0.997436 Max. :0.998141 Max. :26.146
## [1] 200 11
Berdasarkan hasil pembentukan dataset diperoleh data sebanyak 200 pengamatan dan 11 variabel, yang terdiri atas 10 variabel prediktor dan satu variabel respon.
Berdasarkan hasil statistik deskriptif, seluruh variabel prediktor memiliki nilai minimum dan maksimum yang berada pada rentang 0 sampai 1. Hal ini sesuai dengan karakteristik data simulasi Friedman, yaitu variabel prediktor dibangkitkan dari distribusi seragam.
Variabel respon y memiliki nilai minimum sebesar 3,082, maksimum sebesar 26,146, rata-rata sebesar 14,270, dan median sebesar 13,810. Nilai rata-rata yang relatif dekat dengan median menunjukkan bahwa pusat distribusi data respon berada di sekitar nilai tersebut.
# B2. Membagi data training dan testing
set.seed(234)
idx.reg <- createDataPartition(reg.data$y, p = 0.70, list = FALSE)
reg.train <- reg.data[idx.reg, ]
reg.test <- reg.data[-idx.reg, ]
dim(reg.train)## [1] 140 11
## [1] 60 11
# Memisahkan prediktor dan respon
x_train <- reg.train[, -ncol(reg.train)]
y_train <- reg.train[, ncol(reg.train)]
x_test <- reg.test[, -ncol(reg.test)]
y_test <- reg.test[, ncol(reg.test)]Pembagian data dilakukan menggunakan fungsi dengan proporsi 70% untuk data training dan 30% untuk data testing. Data training digunakan untuk membangun model Random Forest Regression, sedangkan data testing digunakan untuk mengevaluasi kemampuan model dalam memprediksi pengamatan yang tidak digunakan selama proses pelatihan.
## B3. Membentuk Random Forest Regression
kombinasi <- expand.grid(
mtry = c(2, 3, 5),
num.trees = c(200, 500, 1000)
)
hasil_model <- list()
hasil_evaluasi <- data.frame()
hasil_residual <- data.frame()
for(i in 1:nrow(kombinasi)) {
set.seed(234)
rf.reg <- ranger(
y ~ ., data = reg.train,
num.trees = kombinasi$num.trees[i],
mtry = kombinasi$mtry[i],
min.node.size = 5,
replace = TRUE,
sample.fraction = 1,
importance = "permutation",
seed = 234
)
# Nama model
nama <- paste0(
"RF_mtry", kombinasi$mtry[i],
"_tree", kombinasi$num.trees[i]
)
# B4. Evaluasi OOB
OOB_MSE <- rf.reg$prediction.error
OOB_R2 <- rf.reg$r.squared
# B5. Prediksi data testing
pred.rf.reg <- predict(rf.reg, data = reg.test)$predictions
actual.reg <- reg.test$y
residual.rf <- actual.reg - pred.rf.reg
# Menyimpan aktual, prediksi, residual
hasil_residual <- rbind(hasil_residual, data.frame(Model = nama,
Aktual = actual.reg,
Residual = residual.rf
)
)
# B6. Evaluasi model regresi
MSE.rf <- mean((actual.reg - pred.rf.reg)^2)
RMSE.rf <- sqrt(MSE.rf)
MAE.rf <- mean(abs(actual.reg - pred.rf.reg))
R2.rf <- 1 - sum((actual.reg - pred.rf.reg)^2) /
sum((actual.reg - mean(actual.reg))^2)
# B7. Plot nilai aktual dan prediksi
plot(
actual.reg, pred.rf.reg,
pch = 19,
xlab = "Nilai Aktual",
ylab = "Nilai Prediksi",
main = paste("Aktual vs Prediksi:", nama)
)
abline(a = 0, b = 1, lty = 2, lwd = 2)
# B8. Plot residual
plot(
pred.rf.reg, residual.rf,
pch = 19,
xlab = "Nilai Prediksi",
ylab = "Residual",
main = paste("Residual Plot:", nama)
)
abline(h = 0, lty = 2, lwd = 2)
# B9. Variable Importance
importance.rf.reg <- sort(
rf.reg$variable.importance,
decreasing = TRUE
)
barplot(
importance.rf.reg,
las = 2,
main = paste("Variable Importance:", nama),
ylab = "Permutation Importance"
)
# B10. Menyimpan model dan evaluasi
hasil_model[[nama]] <- rf.reg
hasil_evaluasi <- rbind(
hasil_evaluasi,
data.frame(
Model = nama,
mtry = kombinasi$mtry[i],
num.trees = kombinasi$num.trees[i],
MSE = MSE.rf,
RMSE = RMSE.rf,
MAE = MAE.rf,
R2 = R2.rf,
OOB_MSE = OOB_MSE,
OOB_R2 = OOB_R2
)
)
}## Model mtry num.trees MSE RMSE MAE R2
## 1 RF_mtry2_tree200 2 200 7.870017 2.805355 2.341396 0.6716820
## 2 RF_mtry3_tree200 3 200 7.813901 2.795336 2.298086 0.6740230
## 3 RF_mtry5_tree200 5 200 7.659604 2.767599 2.272636 0.6804599
## 4 RF_mtry2_tree500 2 500 8.177383 2.859612 2.383159 0.6588594
## 5 RF_mtry3_tree500 3 500 7.827849 2.797829 2.305786 0.6734412
## 6 RF_mtry5_tree500 5 500 7.382590 2.717092 2.231178 0.6920163
## 7 RF_mtry2_tree1000 2 1000 8.118135 2.849234 2.379363 0.6613311
## 8 RF_mtry3_tree1000 3 1000 7.778006 2.788908 2.299634 0.6755205
## 9 RF_mtry5_tree1000 5 1000 7.192453 2.681875 2.205419 0.6999483
## OOB_MSE OOB_R2
## 1 8.222172 0.6904530
## 2 7.709709 0.7097461
## 3 7.063163 0.7340872
## 4 8.126738 0.6940459
## 5 7.442423 0.7198089
## 6 6.874982 0.7411718
## 7 8.055346 0.6967336
## 8 7.354733 0.7231102
## 9 6.825960 0.7430173
# Mengurutkan model berdasarkan MSE terkecil
hasil_urut <- hasil_evaluasi[
order(hasil_evaluasi$MSE),
]
print(hasil_urut)## Model mtry num.trees MSE RMSE MAE R2
## 9 RF_mtry5_tree1000 5 1000 7.192453 2.681875 2.205419 0.6999483
## 6 RF_mtry5_tree500 5 500 7.382590 2.717092 2.231178 0.6920163
## 3 RF_mtry5_tree200 5 200 7.659604 2.767599 2.272636 0.6804599
## 8 RF_mtry3_tree1000 3 1000 7.778006 2.788908 2.299634 0.6755205
## 2 RF_mtry3_tree200 3 200 7.813901 2.795336 2.298086 0.6740230
## 5 RF_mtry3_tree500 3 500 7.827849 2.797829 2.305786 0.6734412
## 1 RF_mtry2_tree200 2 200 7.870017 2.805355 2.341396 0.6716820
## 7 RF_mtry2_tree1000 2 1000 8.118135 2.849234 2.379363 0.6613311
## 4 RF_mtry2_tree500 2 500 8.177383 2.859612 2.383159 0.6588594
## OOB_MSE OOB_R2
## 9 6.825960 0.7430173
## 6 6.874982 0.7411718
## 3 7.063163 0.7340872
## 8 7.354733 0.7231102
## 2 7.709709 0.7097461
## 5 7.442423 0.7198089
## 1 8.222172 0.6904530
## 7 8.055346 0.6967336
## 4 8.126738 0.6940459
Pemodelan dilakukan menggunakan fungsi ranger() dengan sembilan kombinasi parameter. Parameter mtry menentukan jumlah variabel prediktor yang dipertimbangkan secara acak pada setiap pemisahan node. Sementara itu, num.trees menentukan jumlah pohon keputusan yang dibentuk dalam model Random Forest.
Evaluasi internal dilakukan menggunakan nilai Out-of-Bag (OOB) yang diperoleh dari objek rf.reg. OOB MSE menunjukkan rata-rata kuadrat kesalahan prediksi berdasarkan pengamatan yang tidak digunakan dalam pembentukan pohon tertentu. Semakin kecil OOB MSE, semakin baik kemampuan prediksi internal model. Model dengan kombinasi mtry = 5 dan num.trees = 1000 menghasilkan OOB MSE terkecil sebesar 6,825960 dan OOB R² terbesar sebesar 0,7430173. Hal ini menunjukkan bahwa model tersebut memiliki kemampuan prediksi internal terbaik dibandingkan delapan kombinasi lainnya.
Evaluasi data testing dilakukan menggunakan empat ukuran, yaitu Mean Squared Error (MSE), Root Mean Squared Error (RMSE), Mean Absolute Error (MAE), dan koefisien determinasi (R²).Model dengan kombinasi mtry Nilai RMSE terkecil diperoleh model dengan mtry = 5 dan num.trees = 1000, yaitu sebesar 2,681875. Sementara itu, nilai RMSE terbesar diperoleh model dengan mtry = 2 dan num.trees = 500, yaitu sebesar 2,859612. = 5 dan num.trees = 1000 menghasilkan MSE terkecil sebesar 7,192453. Sebaliknya, MSE terbesar diperoleh model dengan kombinasi mtry = 2 dan num.trees = 500, yaitu sebesar 8,177383. Model dengan kombinasi mtry = 5 dan num.trees = 1000 menghasilkan MAE terkecil sebesar 2,205419. Artinya, secara rata-rata, nilai prediksi model tersebut memiliki selisih absolut sekitar 2,2054 satuan dari nilai aktual. Nilai R² tertinggi diperoleh model dengan kombinasi mtry = 5 dan num.trees = 1000, yaitu sebesar 0,6999483 atau sekitar 69,99%. Hal ini menunjukkan bahwa model mampu menjelaskan sekitar 69,99% variasi nilai aktual pada data testing, sedangkan sekitar 30,01% sisanya belum dapat dijelaskan oleh prediksi model.
Plot aktual dan prediksi digunakan untuk melihat kedekatan nilai hasil prediksi model terhadap nilai aktual pada data testing. Sementara, Residual plot digunakan untuk mengetahui pola kesalahan prediksi model dengan membandingkan nilai prediksi dan residual.
Variable importance digunakan untuk mengetahui tingkat kepentingan masing-masing variabel prediktor dalam membentuk model Random Forest Regression. Pada data Friedman, hubungan variabel respon secara teoritis dibentuk terutama oleh lima variabel pertama, yaitu x1, x2, x3, x4, dan x5. Sementara itu, variabel x6 sampai x10 merupakan variabel yang tidak masuk ke dalam fungsi pembentukan respon.
Model terbaik dalam metode ini yaitu model dengan kombinasi mtry = 5 dan num.trees = 1000 menempati peringkat pertama karena menghasilkan MSE, RMSE, dan MAE terkecil serta R² terbesar dibandingkan model lainnya. Model tersebut juga menghasilkan OOB MSE terkecil sebesar 6,825960 dan OOB R² terbesar sebesar 0,7430173.
Random Forest dan Double Random Forest merupakan metode ensemble learning berbasis pohon keputusan yang menggabungkan beberapa pohon untuk menghasilkan prediksi yang lebih baik. Random Forest menggunakan teknik bootstrap sampling dan pemilihan subset variabel secara acak, sedangkan Double Random Forest menerapkan pengacakan tambahan sesuai mekanisme algoritmanya untuk membangun model prediksi yang lebih beragam.
Implementasi Random Forest dan Double Random Forest dapat dilakukan pada kasus klasifikasi maupun regresi. Pada klasifikasi, hasil prediksi ditentukan melalui mekanisme voting dari seluruh pohon, sedangkan pada regresi diperoleh melalui rata-rata prediksi. Kedua metode dapat diterapkan dengan menentukan parameter model yang sesuai agar menghasilkan prediksi berdasarkan karakteristik data.
Evaluasi kinerja Random Forest dan Double Random Forest dapat dilakukan menggunakan ukuran evaluasi yang disesuaikan dengan jenis permasalahan. Pada klasifikasi, evaluasi dapat menggunakan accuracy, precision, recall, dan F1-score, sedangkan pada regresi menggunakan MSE, RMSE, MAE, dan R². Selain itu, nilai OOB (Out-of-Bag) dapat digunakan sebagai evaluasi internal model tanpa memerlukan data validasi tambahan. Perbandingan kedua metode dilakukan berdasarkan hasil evaluasi tersebut untuk mengetahui metode yang memberikan kinerja prediksi lebih baik..
Berdasarkan hasil analisis Random Forest Regression pada data simulasi Friedman dengan 200 pengamatan, diperoleh sembilan kombinasi model menggunakan variasi mtry sebesar 2, 3, dan 5 serta num.trees sebesar 200, 500, dan 1000. Hasil evaluasi menunjukkan bahwa perubahan nilai mtry dan num.trees memberikan pengaruh yang berbeda terhadap performa model. Kombinasi mtry = 5 dan num.trees = 1000 menghasilkan performa terbaik dengan MSE sebesar 7,192453, RMSE sebesar 2,681875, MAE sebesar 2,205419, dan R² sebesar 0,6999483. Selain itu, model tersebut juga memperoleh OOB MSE sebesar 6,825960 dengan OOB R² sebesar 0,7430173. Dengan demikian, kombinasi mtry = 5 dan num.trees = 1000 merupakan model Random Forest Regression terbaik di antara sembilan kombinasi parameter yang diuji pada data tersebut.
Amaliah, s., Nusrang, M., dan Aswi. (2022). Penerapan Metode Random Forest Untuk Klasifikasi Varian Minuman Kopi Di Kedai Kopi Konijiwa Bantaeng. VARIANSI: Journal of Statistics and Its Application on Teaching and Research, 4(2), 121-127.
Aprihartha, M. A., Umam, L. K., & Ardhana, R. (2026). Perbandingan metode bagging dan boosting untuk regresi logistik pada proses perekrutan pegawai. JSI: Jurnal Sistem Informasi (E-Journal), 18(1).
Fransiska, H. (2026). Modul Praktikum Machine Learning and Modern Prediction. Laboratorium Statistika, Universitas Bengkulu.
Kusnandar, M. N. D., & Suradiradja, K. H. (2026). Implementasi Random Forest Regression untuk prediksi kebutuhan bahan baku minyak Senggugu. Jurnal Komputer dan Teknologi Informasi Sistem Informasi (JUKTISI), 5(2).
Rachmatullah, M. I. C. (2025). Ensemble learning untuk klasifikasi: Tinjauan komprehensif metode, aplikasi, dan perkembangan terkini. Improve, 17(1), 29–31.
Manaf, S. A. R., Fitrianto, A., dan Soleh, A. M. (2024). Perbandingan Algoritma Pohon dengan Beberapa Skenario Pelabelan untuk Analisis Sentimen pada Aplikasi Milik Pemerintah/BUMN. JEPIN (Jurnal Edukasi dan Penelitian Informatika), 10(1).