BAB I PENDAHULUAN

1.1 Latar Belakang

Ensemble learning merupakan pendekatan machine learning yang menggabungkan beberapa model untuk menghasilkan prediksi. Salah satu metode dalam pendekatan ini adalah boosting, yaitu membangun model secara berurutan untuk memperbaiki kesalahan prediksi model sebelumnya. Pada masalah regresi, Gradient Boosting membentuk model secara bertahap dengan mengoptimalkan fungsi kerugian berdasarkan kesalahan prediksi. Metode ini mampu mempelajari hubungan nonlinier dan interaksi antarvariabel sehingga dapat diterapkan pada berbagai permasalahan prediksi (Lainder & Wolfinger, 2022).

Kinerja Gradient Boosting dipengaruhi oleh pengaturan parameter, termasuk learning rate atau shrinkage, yang mengendalikan kontribusi setiap model baru dalam proses pembelajaran. Pemilihan parameter yang tepat diperlukan untuk memperoleh model dengan kemampuan prediksi yang baik. Zhang dkk. (2022) membahas penentuan panjang langkah adaptif dalam gradient boosting, sedangkan Lundell (2024) mengkaji strategi optimasi parameter pada metode boosted trees. Evaluasi menggunakan cross-validation juga dapat membantu menentukan jumlah iterasi yang sesuai dan mengurangi risiko overfitting (Lainder & Wolfinger, 2022).

1.2 Rumusan Masalah

  1. Bagaimana menerapkan metode Gradient Boosting Regression pada dataset Friedman menggunakan R?
  2. Bagaimana perbandingan jumlah iterasi optimal pada nilai learning rate 0,01, 0,05, dan 0,10 berdasarkan cross-validation?
  3. Model manakah yang memberikan kinerja terbaik berdasarkan MSE, RMSE, MAE, dan R² pada data testing?

1.3 Tujuan

  1. Menerapkan metode Gradient Boosting Regression pada dataset Friedman.
  2. Membandingkan model dengan nilai learning rate 0,01, 0,05, dan 0,10 serta menentukan jumlah iterasi optimal menggunakan cross-validation.
  3. Menentukan model dengan kinerja prediksi terbaik berdasarkan MSE, RMSE, MAE, dan R² pada data testing.

BAB II TINJAUAN PUSTAKA

2.1 Regresi dan Ensemble Learning

Regresi merupakan metode supervised learning yang digunakan untuk memprediksi nilai respons numerik berdasarkan satu atau lebih variabel prediktor. Dalam pemodelan prediktif, data umumnya dipisahkan menjadi data pelatihan dan pengujian. Data pengujian digunakan untuk menilai kemampuan model pada observasi yang tidak digunakan selama pelatihan (James et al., 2021).

Ensemble learning menggabungkan beberapa model untuk menghasilkan prediksi akhir. Pada metode boosting, model dibangun secara berurutan sehingga model berikutnya berupaya memperbaiki kesalahan yang masih tersisa dari model sebelumnya. Gradient Boosting menerapkan prinsip tersebut pada berbagai masalah, termasuk regresi.

2.2 Gradient Boosting Regression

Gradient Boosting merupakan metode ensemble yang membangun model secara bertahap dengan meminimalkan fungsi kerugian. Dalam regresi, residual merupakan selisih antara nilai aktual dan nilai prediksi, yang dirumuskan sebagai:

\[ e_i = y_i - \hat{y}_i \]

Model berikutnya dibentuk untuk mempelajari kesalahan yang masih tersisa, kemudian kontribusinya ditambahkan pada model sebelumnya. Secara sederhana, pembaruan model dapat ditulis sebagai:

\[ f_m(x)=f_{m-1}(x)+\nu h_m(x) \]

dengan \(f_m(x)\) merupakan model pada iterasi ke-\(m\), \(h_m(x)\) adalah weak learner pada iterasi tersebut, dan \(\nu\) merupakan learning rate atau shrinkage. Nilai learning rate mengatur besar kontribusi learner baru terhadap model akhir; nilai yang lebih kecil biasanya memerlukan lebih banyak iterasi untuk mencapai hasil yang baik (James et al., 2021).

Dalam perangkat lunak R, Gradient Boosting dapat diterapkan menggunakan fungsi gbm() dari package gbm. Parameter n.trees menentukan jumlah maksimum pohon, interaction.depth mengatur kedalaman pohon, shrinkage menentukan learning rate, dan cv.folds menentukan jumlah lipatan pada cross-validation.

2.3 Learning Rate dan Metrik Evaluasi Regresi

Learning rate atau shrinkage mengatur besarnya kontribusi setiap pohon terhadap model akhir. Nilai yang kecil membuat pembelajaran berlangsung lebih bertahap dan dapat memerlukan lebih banyak iterasi, sedangkan nilai yang lebih besar tidak selalu menghasilkan performa terbaik. Oleh karena itu, nilai learning rate perlu dibandingkan menggunakan prosedur evaluasi yang sama.

Cross-validation digunakan untuk memperkirakan kinerja model dengan membagi data pelatihan ke dalam beberapa lipatan. Pada praktikum ini, 10-fold cross-validation digunakan untuk menentukan jumlah iterasi optimal pada setiap nilai learning rate. Kinerja model kemudian dievaluasi pada data testing menggunakan MSE, RMSE, MAE, dan R².

MSE mengukur rata-rata kuadrat kesalahan prediksi, RMSE merupakan akar kuadrat MSE, MAE mengukur rata-rata nilai absolut kesalahan, sedangkan R² menunjukkan proporsi variasi respons yang dapat dijelaskan model. Nilai MSE, RMSE, dan MAE yang lebih rendah serta R² yang lebih tinggi umumnya menunjukkan kinerja prediksi yang lebih baik (Hyndman & Koehler, 2006).

BAB III METODE PENELITIAN

3.1 Sumber Data

Data yang digunakan adalah data simulasi Friedman yang dibangkitkan menggunakan fungsi mlbench.friedman1() dari package mlbench pada perangkat lunak R. Data dibangkitkan dengan menetapkan random seed agar proses pembangkitan dan pembagian data dapat direproduksi.

3.2 Variabel Penelitian

Variabel respons adalah y, sedangkan variabel prediktor merupakan variabel x yang tersedia pada dataset Friedman.

Variabel Keterangan
y Variabel respons numerik yang diprediksi
x1–x10 Variabel prediktor pada dataset Friedman

3.3 Langkah-Langkah Analisis

  1. Memanggil package yang diperlukan dan membangkitkan dataset Friedman.
  2. Memeriksa struktur, dimensi, ringkasan, dan nilai hilang pada data.
  3. Membagi data menjadi 70% data training dan 30% data testing.
  4. Membangun model Gradient Boosting menggunakan gbm() dengan nilai shrinkage 0,01, 0,05, dan 0,10.
  5. Menentukan jumlah iterasi optimal setiap model menggunakan 10-fold cross-validation.
  6. Memprediksi respons pada data testing menggunakan jumlah iterasi optimal.
  7. Menghitung MSE, RMSE, MAE, dan R².
  8. Membandingkan hasil evaluasi melalui tabel dan grafik, kemudian menentukan model terbaik.

BAB IV HASIL DAN PEMBAHASAN

4.1 Memuat Package dan Dataset

## [1] 200  11
##        x1                 x2                 x3                x4         
##  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  
##        x5                 x6                 x7                 x8          
##  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  
##        x9                x10                 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
##           x1        x2         x3        x4        x5        x6         x7
## 1 0.74562000 0.5754994 0.02885590 0.7201653 0.8748022 0.2761835 0.93319087
## 2 0.78171242 0.3157821 0.93745388 0.1849746 0.7039934 0.6426889 0.40177800
## 3 0.02003711 0.7646459 0.79777294 0.5338609 0.9515834 0.9873938 0.08742998
## 4 0.77608539 0.2289793 0.66797951 0.5534984 0.4780999 0.8425175 0.89302195
## 5 0.06691009 0.1715219 0.59740948 0.7547957 0.5332404 0.7327976 0.10244557
## 6 0.64479512 0.6473963 0.01351334 0.7894812 0.2376348 0.4302338 0.88236742
##            x8        x9       x10         y
## 1 0.607462891 0.7560942 0.7179672 24.349507
## 2 0.003687496 0.4046106 0.5338439 18.046792
## 3 0.010598118 0.2473974 0.6669937 12.018651
## 4 0.446393069 0.1443539 0.6802987 12.101870
## 5 0.834936006 0.1874371 0.5950115  9.911772
## 6 0.843509237 0.6166422 0.1081932 21.874286

Dataset Friedman yang digunakan terdiri atas 200 observasi dan 11 variabel, yaitu 10 variabel prediktor (\(x_1\) sampai \(x_{10}\)) dan satu variabel respons (\(y\)). Berdasarkan statistik deskriptif, variabel respons memiliki nilai minimum sebesar 3,082 dan maksimum sebesar 26,146, dengan rata-rata sekitar 14,270. Dataset ini digunakan untuk mempelajari hubungan antara variabel prediktor dan respons dalam membangun model regresi Gradient Boosting.

4.2 Pemeriksaan Data

Pemeriksaan Nilai Hilang pada Dataset Friedman
Variabel Jumlah_Missing
x1 0
x2 0
x3 0
x4 0
x5 0
x6 0
x7 0
x8 0
x9 0
x10 0
y 0
## Jumlah observasi: 200
## Jumlah variabel: 11

Hasil pemeriksaan menunjukkan bahwa seluruh variabel memiliki jumlah nilai hilang (missing value) sebanyak nol. Dengan demikian, dataset yang terdiri atas 200 observasi dan 11 variabel memiliki kelengkapan data yang baik sehingga dapat digunakan untuk proses pemodelan tanpa memerlukan penanganan nilai hilang atau penghapusan observasi akibat data yang tidak lengkap.

4.3 Membagi Data Training dan Testing

Pembagian Data Training dan Testing
Data Jumlah_Observasi
Training 140
Testing 60
Total 200

Dataset dibagi menjadi 140 observasi data training atau 70% dan 60 observasi data testing atau 30%. Data training digunakan untuk membangun model Gradient Boosting serta menentukan jumlah iterasi optimal melalui 10-fold cross-validation. Sementara itu, data testing digunakan untuk mengevaluasi kemampuan prediksi model terhadap data yang tidak digunakan selama proses pelatihan. Pembagian data yang sama diterapkan pada ketiga model agar hasil evaluasi dapat dibandingkan secara konsisten.

4.4 Membangun Model Gradient Boosting

Parameter Model Gradient Boosting
Learning_Rate Jumlah_Pohon_Maksimum Kedalaman_Interaksi Jumlah_Fold_CV
0.01 1000 2 10
0.05 1000 2 10
0.10 1000 2 10

Pemodelan dilakukan menggunakan tiga nilai learning rate, yaitu 0,01, 0,05, dan 0,10. Parameter lainnya dipertahankan sama, yaitu distribusi Gaussian, jumlah maksimum 1.000 pohon, kedalaman interaksi sebesar 2, dan 10-fold cross-validation. Pengaturan tersebut memungkinkan perbandingan difokuskan pada pengaruh nilai learning rate terhadap jumlah iterasi optimal dan kinerja prediksi model Gradient Boosting.

4.5 Menentukan Jumlah Iterasi Optimal

Jumlah Iterasi Optimal Berdasarkan 10-Fold Cross-Validation
Learning_Rate Iterasi_Optimal
0.01 999
0.05 328
0.10 372

Hasil 10-fold cross-validation menunjukkan bahwa model dengan learning rate 0,01 memiliki jumlah iterasi optimal sebanyak 999, sedangkan model dengan learning rate 0,05 dan 0,10 masing-masing memiliki 328 dan 372 iterasi. Hasil ini menunjukkan bahwa setiap nilai learning rate menghasilkan jumlah iterasi optimal yang berbeda. Model dengan learning rate 0,01 membutuhkan lebih banyak iterasi dibandingkan kedua model lainnya, tetapi jumlah iterasi yang lebih banyak tidak selalu menghasilkan kinerja prediksi yang lebih baik.

4.6 Prediksi pada Data Testing

Contoh Hasil Prediksi pada Data Testing
Aktual Prediksi_001 Prediksi_005 Prediksi_010
10.2323 11.0178 10.5865 10.3766
11.8453 11.2609 11.0234 11.1206
10.3357 11.6582 11.9963 11.7094
16.7273 15.0943 15.5964 15.2453
25.0771 22.6785 23.3540 24.0425
15.4469 15.7269 16.0533 16.0070
15.6429 14.7249 14.7682 14.5656
7.1108 11.7897 11.9154 12.0347
13.3513 16.1325 15.8161 15.6823
12.8720 14.7686 14.6587 14.3109

Hasil prediksi pada data testing menunjukkan bahwa ketiga model menghasilkan nilai prediksi yang berbeda untuk observasi yang sama. Sebagai contoh, pada observasi pertama, nilai aktual sebesar 10,2323, sedangkan prediksi model dengan learning rate 0,01, 0,05, dan 0,10 masing-masing sebesar 11,0178, 10,5865, dan 10,3766. Pada observasi tersebut, model dengan learning rate 0,10 menghasilkan prediksi yang paling dekat dengan nilai aktual. Namun, penentuan model terbaik tidak cukup hanya berdasarkan satu observasi sehingga diperlukan evaluasi menggunakan seluruh data testing.

4.7 Menghitung Metrik Evaluasi

Perbandingan Metrik Evaluasi Gradient Boosting
Learning_Rate Iterasi_Optimal MSE RMSE MAE R2
0.01 999 4.4962 2.1204 1.6464 0.8124
0.05 328 4.3893 2.0951 1.6264 0.8169
0.10 372 4.0714 2.0178 1.5642 0.8302

Hasil evaluasi menunjukkan bahwa model dengan learning rate 0,01 menghasilkan MSE sebesar 4,4982, RMSE sebesar 2,1204, MAE sebesar 1,6484, dan R² sebesar 0,8124. Model dengan learning rate 0,05 menghasilkan MSE sebesar 4,3893, RMSE sebesar 2,0951, MAE sebesar 1,6264, dan R² sebesar 0,8169. Sementara itu, model dengan learning rate 0,10 menghasilkan MSE sebesar 4,0714, RMSE sebesar 2,0178, MAE sebesar 1,5642, dan R² sebesar 0,8302. Hasil tersebut menunjukkan bahwa model dengan learning rate 0,10 memiliki nilai kesalahan prediksi terendah serta nilai R² tertinggi, yang berarti model mampu menjelaskan sekitar 83,02% variasi variabel respons pada data testing.

4.8 Perbandingan Kinerja Model

Grafik perbandingan kinerja menunjukkan bahwa peningkatan learning rate dari 0,01 menjadi 0,10 diikuti oleh penurunan nilai MSE, RMSE, dan MAE serta peningkatan nilai R². Pola ini menunjukkan bahwa kinerja prediksi model semakin baik pada rentang learning rate yang diuji. Model dengan learning rate 0,10 menghasilkan kesalahan prediksi yang lebih kecil dan kemampuan penjelasan variasi respons yang lebih tinggi dibandingkan model dengan learning rate 0,01 dan 0,05. Meskipun demikian, hasil tersebut berlaku pada konfigurasi parameter dan pembagian data yang digunakan dalam praktikum ini.

4.9 Menentukan Model Terbaik

Peringkat Model Berdasarkan Gabungan Metrik
Learning_Rate Iterasi_Optimal MSE RMSE MAE R2 Rank_MSE Rank_RMSE Rank_MAE Rank_R2 Rata_Rata_Peringkat
3 0.10 372 4.0714 2.0178 1.5642 0.8302 1 1 1 1 1
2 0.05 328 4.3893 2.0951 1.6264 0.8169 2 2 2 2 2
1 0.01 999 4.4962 2.1204 1.6464 0.8124 3 3 3 3 3
## Model terbaik berdasarkan rata-rata peringkat metrik adalah learning rate = 0.1 dengan jumlah iterasi optimal 372.

Berdasarkan rata-rata peringkat dari empat metrik evaluasi, model dengan learning rate 0,10 dan jumlah iterasi optimal sebanyak 372 menempati peringkat pertama. Model ini memperoleh peringkat terbaik pada MSE, RMSE, MAE, dan R². Model dengan learning rate 0,05 menempati peringkat kedua, sedangkan model dengan learning rate 0,01 berada pada peringkat ketiga. Dengan demikian, model Gradient Boosting dengan learning rate 0,10 merupakan model terbaik di antara ketiga konfigurasi yang diuji karena menghasilkan kesalahan prediksi terendah dan nilai koefisien determinasi tertinggi.

BAB V PENUTUP

5.1 Kesimpulan

Berdasarkan hasil praktikum, penerapan Gradient Boosting Regression pada dataset Friedman menunjukkan bahwa perbedaan nilai learning rate memengaruhi jumlah iterasi optimal dan kinerja prediksi model. Berdasarkan 10-fold cross-validation, jumlah iterasi optimal untuk learning rate 0,01, 0,05, dan 0,10 masing-masing adalah 999, 328, dan 372 iterasi. Hasil evaluasi pada data testing menunjukkan bahwa model dengan learning rate 0,10 memiliki kinerja terbaik, dengan MSE sebesar 4,0714, RMSE sebesar 2,0178, MAE sebesar 1,5642, dan R² sebesar 0,8302. Nilai tersebut menunjukkan bahwa model memiliki kesalahan prediksi paling rendah dan mampu menjelaskan sekitar 83,02% variasi variabel respons. Berdasarkan perbandingan keempat metrik evaluasi, learning rate 0,10 menjadi pilihan terbaik di antara konfigurasi yang diuji pada praktikum ini.

5.2 Saran

Praktikum selanjutnya disarankan untuk menguji variasi nilai learning rate yang lebih luas serta parameter lainnya, seperti kedalaman interaksi dan jumlah maksimum pohon, untuk memperoleh konfigurasi model yang lebih optimal. Selain itu, penggunaan beberapa pengulangan pembagian data atau cross-validation berulang dapat dipertimbangkan untuk mengetahui kestabilan kinerja model. Evaluasi tersebut diharapkan dapat memberikan gambaran yang lebih menyeluruh mengenai kemampuan Gradient Boosting dalam menghasilkan prediksi pada data regresi.

DAFTAR PUSTAKA

Hyndman, R. J., & Koehler, A. B. (2006). Another look at measures of forecast accuracy. International Journal of Forecasting, 22(4), 679–688. https://doi.org/10.1016/j.ijforecast.2006.03.001

James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An introduction to statistical learning: With applications in R (2nd ed.). Springer. https://doi.org/10.1007/978-1-0716-1418-1

Lainder, A. D., & Wolfinger, R. D. (2022). Forecasting with gradient boosted trees: Augmentation, tuning, and cross-validation strategies: Winning solution to the M5 Uncertainty competition. International Journal of Forecasting, 38(4), 1426–1433. https://doi.org/10.1016/j.ijforecast.2021.12.003

Leisch, F., & Dimitriadou, E. (n.d.). mlbench: Machine learning benchmark problems [R package]. CRAN. https://CRAN.R-project.org/package=mlbench

Lundell, J. F. (2024). Tuning support vector machines and boosted trees using optimization algorithms. Journal of Data Science, 22(4), 575–590. https://doi.org/10.6339/23-JDS1106

Zhang, B., Hepp, T., Greven, S., dkk. (2022). Adaptive step-length selection in gradient boosting for Gaussian location and scale models. Computational Statistics, 37, 2295–2332. https://doi.org/10.1007/s00180-022-01199-3