Beton digunakan hampir di setiap pekerjaan konstruksi karena kuat, mudah dibentuk, dan dapat dipakai untuk berbagai kebutuhan bangunan. Dalam pekerjaan lapangan, salah satu hal yang paling diperhatikan adalah kuat tekan beton, yaitu ukuran kemampuan beton menahan tekanan sebelum mengalami kerusakan.
Kuat tekan beton tidak muncul dari satu bahan saja. Nilainya dipengaruhi oleh beberapa hal, misalnya banyaknya semen, air, agregat, bahan tambahan, dan umur beton saat diuji. Perubahan kecil pada komposisi bahan dapat membuat hasil kuat tekan berbeda. Karena itu, data komposisi beton dapat dimanfaatkan untuk melihat perkiraan kekuatan beton yang mungkin dihasilkan.
Analisis ini dibuat sebagai contoh penggunaan data untuk membantu proses prediksi kuat tekan beton. Tujuannya bukan menggantikan uji laboratorium, melainkan memberi gambaran awal mengenai campuran beton mana yang cenderung menghasilkan kuat tekan lebih tinggi atau lebih rendah.
Pada laporan ini digunakan dua model prediksi. Model pertama adalah Regresi Linear sebagai pembanding sederhana. Model kedua adalah Support Vector Regression (SVR) karena metode ini dapat mengikuti pola data yang tidak selalu lurus atau linear. Hasil kedua model kemudian dibandingkan untuk melihat model mana yang memberikan prediksi lebih dekat dengan nilai aktual.
Rumusan masalah dibuat dalam bentuk pertanyaan sederhana agar mudah dipahami, yaitu:
Tujuan umum analisis ini adalah membuat alat bantu prediksi sederhana untuk memperkirakan kuat tekan beton berdasarkan informasi campuran bahan dan umur beton.
Secara lebih rinci, analisis ini bertujuan untuk:
Data pada laporan ini berasal dari Concrete Compressive Strength Dataset yang tersedia di UCI Machine Learning Repository. Data tersebut berisi catatan campuran beton beserta hasil kuat tekannya.
Secara sederhana, setiap baris data menggambarkan satu sampel beton. Di dalamnya terdapat informasi jumlah bahan yang digunakan, umur beton, dan hasil kuat tekan dalam satuan MPa. Dataset ini dipilih karena cocok untuk latihan prediksi: input-nya berupa komposisi beton, sedangkan output yang ingin diperkirakan adalah nilai kuat tekan.
Data diambil langsung melalui tautan resmi UCI menggunakan kode R, sehingga proses analisis dapat dijalankan ulang dari awal.
Unit observasi pada dataset ini adalah sampel campuran beton. Setiap observasi memiliki informasi mengenai komposisi material dan umur beton, kemudian dilengkapi dengan nilai kuat tekan beton.
| Variabel | Peran | Deskripsi | Satuan |
|---|---|---|---|
| cement | Prediktor | Jumlah semen dalam campuran beton | kg/m3 |
| slag | Prediktor | Jumlah blast furnace slag dalam campuran beton | kg/m3 |
| fly_ash | Prediktor | Jumlah fly ash dalam campuran beton | kg/m3 |
| water | Prediktor | Jumlah air dalam campuran beton | kg/m3 |
| superplasticizer | Prediktor | Jumlah superplasticizer dalam campuran beton | kg/m3 |
| coarse_aggregate | Prediktor | Jumlah agregat kasar dalam campuran beton | kg/m3 |
| fine_aggregate | Prediktor | Jumlah agregat halus dalam campuran beton | kg/m3 |
| age | Prediktor | Umur beton saat pengujian | hari |
| strength | Target/Respons | Nilai kuat tekan beton | MPa |
Pada tahap awal, data diimpor ke dalam R, kemudian nama variabel disederhanakan agar lebih mudah digunakan pada proses analisis.
## # A tibble: 6 × 9
## cement slag fly_ash water superplasticizer coarse_aggregate fine_aggregate
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 540 0 0 162 2.5 1040 676
## 2 540 0 0 162 2.5 1055 676
## 3 332. 142. 0 228 0 932 594
## 4 332. 142. 0 228 0 932 594
## 5 199. 132. 0 192 0 978. 826.
## 6 266 114 0 228 0 932 670
## # ℹ 2 more variables: age <dbl>, strength <dbl>
| Karakteristik | Nilai |
|---|---|
| Jumlah observasi | 1030 |
| Jumlah variabel | 9 |
| Jumlah prediktor | 8 |
| Jumlah target | 1 |
| Tipe data dominan | Numerik |
Pemeriksaan struktur data dilakukan untuk memastikan bahwa seluruh variabel memiliki tipe data yang sesuai.
| Variabel | Tipe_Data | Jumlah_Observasi |
|---|---|---|
| cement | numeric | 1030 |
| slag | numeric | 1030 |
| fly_ash | numeric | 1030 |
| water | numeric | 1030 |
| superplasticizer | numeric | 1030 |
| coarse_aggregate | numeric | 1030 |
| fine_aggregate | numeric | 1030 |
| age | numeric | 1030 |
| strength | numeric | 1030 |
Berdasarkan pemeriksaan struktur data, seluruh variabel bertipe
numerik. Hal ini sesuai dengan kebutuhan analisis regresi karena model
akan memprediksi variabel numerik strength menggunakan
delapan prediktor numerik.
Missing value perlu diperiksa agar dapat diketahui apakah diperlukan proses imputasi sebelum pemodelan.
| Variabel | Jumlah_Missing |
|---|---|
| cement | 0 |
| slag | 0 |
| fly_ash | 0 |
| water | 0 |
| superplasticizer | 0 |
| coarse_aggregate | 0 |
| fine_aggregate | 0 |
| age | 0 |
| strength | 0 |
## [1] 0
Hasil pemeriksaan menunjukkan bahwa tidak terdapat missing value pada dataset. Dengan demikian, data dapat langsung digunakan untuk eksplorasi dan pemodelan tanpa proses imputasi.
Statistik deskriptif digunakan untuk memahami rentang, pusat data, dan variasi setiap variabel.
## cement slag fly_ash water
## Min. :102.0 Min. : 0.0 Min. : 0.00 Min. :121.8
## 1st Qu.:192.4 1st Qu.: 0.0 1st Qu.: 0.00 1st Qu.:164.9
## Median :272.9 Median : 22.0 Median : 0.00 Median :185.0
## Mean :281.2 Mean : 73.9 Mean : 54.19 Mean :181.6
## 3rd Qu.:350.0 3rd Qu.:142.9 3rd Qu.:118.27 3rd Qu.:192.0
## Max. :540.0 Max. :359.4 Max. :200.10 Max. :247.0
## superplasticizer coarse_aggregate fine_aggregate age
## Min. : 0.000 Min. : 801.0 Min. :594.0 Min. : 1.00
## 1st Qu.: 0.000 1st Qu.: 932.0 1st Qu.:731.0 1st Qu.: 7.00
## Median : 6.350 Median : 968.0 Median :779.5 Median : 28.00
## Mean : 6.203 Mean : 972.9 Mean :773.6 Mean : 45.66
## 3rd Qu.:10.160 3rd Qu.:1029.4 3rd Qu.:824.0 3rd Qu.: 56.00
## Max. :32.200 Max. :1145.0 Max. :992.6 Max. :365.00
## strength
## Min. : 2.332
## 1st Qu.:23.707
## Median :34.443
## Mean :35.818
## 3rd Qu.:46.136
## Max. :82.599
| Variabel | Minimum | Q1 | Median | Mean | Q3 | Maximum | SD | ash | aggregate |
|---|---|---|---|---|---|---|---|---|---|
| cement | 102.00 | 192.38 | 272.90 | 281.17 | 350.00 | 540.0 | 104.51 | NA | NA |
| slag | 0.00 | 0.00 | 22.00 | 73.90 | 142.95 | 359.4 | 86.28 | NA | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 0.00 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 0.00 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 0.00 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 54.19 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 118.27 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 200.10 | NA |
| fly | NA | NA | NA | NA | NA | NA | NA | 64.00 | NA |
| water | 121.75 | 164.90 | 185.00 | 181.57 | 192.00 | 247.0 | 21.36 | NA | NA |
| superplasticizer | 0.00 | 0.00 | 6.35 | 6.20 | 10.16 | 32.2 | 5.97 | NA | NA |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 801.00 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 932.00 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 968.00 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 972.92 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 1029.40 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 1145.00 |
| coarse | NA | NA | NA | NA | NA | NA | NA | NA | 77.75 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 594.00 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 730.95 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 779.51 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 773.58 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 824.00 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 992.60 |
| fine | NA | NA | NA | NA | NA | NA | NA | NA | 80.18 |
| age | 1.00 | 7.00 | 28.00 | 45.66 | 56.00 | 365.0 | 63.17 | NA | NA |
| strength | 2.33 | 23.71 | 34.44 | 35.82 | 46.14 | 82.6 | 16.71 | NA | NA |
Statistik deskriptif menunjukkan bahwa setiap variabel memiliki skala yang berbeda. Misalnya, variabel agregat memiliki nilai ratusan hingga ribuan, sedangkan superplasticizer memiliki rentang yang lebih kecil. Perbedaan skala ini menjadi salah satu alasan pentingnya standardisasi sebelum membangun model SVR.
| Statistik | Nilai |
|---|---|
| Minimum | 2.33 |
| Kuartil 1 | 23.71 |
| Median | 34.44 |
| Mean | 35.82 |
| Kuartil 3 | 46.14 |
| Maksimum | 82.60 |
| Standar Deviasi | 16.71 |
Variabel strength memiliki rentang nilai yang cukup
lebar. Hal ini menunjukkan adanya variasi kuat tekan beton yang dapat
dipelajari oleh model prediksi.
Distribusi kuat tekan beton memperlihatkan bahwa data memiliki sebaran nilai yang cukup beragam. Sebagian besar observasi berada pada rentang menengah, sedangkan sebagian lainnya memiliki nilai kuat tekan rendah maupun tinggi.
Untuk memperoleh gambaran awal, dilakukan visualisasi hubungan
beberapa prediktor utama dengan variabel target
strength.
Secara umum, jumlah semen cenderung memiliki hubungan positif dengan kuat tekan beton. Namun pola yang terbentuk tidak sepenuhnya linear, sehingga model non-linear dapat menjadi pilihan yang relevan.
Umur beton menunjukkan kecenderungan hubungan positif dengan kuat tekan beton. Beton yang diuji pada umur lebih tinggi cenderung memiliki kuat tekan yang lebih besar karena proses pengerasan berlangsung lebih lama.
Variabel air memiliki pola hubungan yang cenderung berbeda dibandingkan semen dan umur beton. Jumlah air yang terlalu tinggi dapat berkaitan dengan penurunan kuat tekan karena dapat memengaruhi porositas beton.
Visualisasi seluruh prediktor menunjukkan bahwa beberapa variabel memiliki pola yang tidak sepenuhnya linear terhadap kuat tekan beton. Hal ini mendukung penggunaan metode SVR dengan kernel RBF yang lebih fleksibel dibandingkan Regresi Linear.
Analisis korelasi digunakan untuk melihat hubungan linear antarvariabel. Korelasi memberikan gambaran awal, tetapi tidak cukup untuk menjelaskan hubungan non-linear. Oleh karena itu, pemodelan SVR tetap diperlukan untuk mempelajari pola yang lebih kompleks.
Data dibagi menjadi data training dan data testing dengan proporsi 80:20. Data training digunakan untuk membangun model dan melakukan tuning, sedangkan data testing digunakan untuk evaluasi akhir.
| Dataset | Jumlah_Observasi | Proporsi |
|---|---|---|
| Training | 824 | 0.8 |
| Testing | 206 | 0.2 |
Pembagian data dilakukan sebelum pemodelan agar evaluasi akhir dapat dilakukan pada data yang belum digunakan selama proses pelatihan.
SVR merupakan metode yang sensitif terhadap skala variabel. Oleh karena itu, seluruh prediktor numerik distandardisasi menggunakan recipe. Standardisasi dilakukan berdasarkan data training untuk menghindari kebocoran informasi dari data testing.
Regresi Linear digunakan sebagai model baseline. Model ini mengasumsikan bahwa hubungan antara prediktor dan target dapat dijelaskan melalui fungsi linear. Walaupun sederhana, Regresi Linear berguna sebagai pembanding awal untuk menilai apakah metode yang lebih fleksibel mampu memberikan performa lebih baik.
## ══ Workflow ════════════════════════════════════════════════════════════════════
## Preprocessor: Recipe
## Model: linear_reg()
##
## ── Preprocessor ────────────────────────────────────────────────────────────────
## 2 Recipe Steps
##
## • step_zv()
## • step_normalize()
##
## ── Model ───────────────────────────────────────────────────────────────────────
## Linear Regression Model Specification (regression)
##
## Computational engine: lm
Support Vector Regression merupakan metode regresi berbasis konsep Support Vector Machine. SVR berusaha membentuk fungsi prediksi dengan toleransi kesalahan tertentu. Pada analisis ini digunakan kernel radial basis function (RBF) karena kernel tersebut mampu mempelajari pola non-linear pada data.
Parameter yang dituning adalah:
cost, yaitu parameter penalti terhadap kesalahan
prediksi.rbf_sigma, yaitu parameter yang mengontrol bentuk
kernel RBF.## ══ Workflow ════════════════════════════════════════════════════════════════════
## Preprocessor: Recipe
## Model: svm_rbf()
##
## ── Preprocessor ────────────────────────────────────────────────────────────────
## 2 Recipe Steps
##
## • step_zv()
## • step_normalize()
##
## ── Model ───────────────────────────────────────────────────────────────────────
## Radial Basis Function Support Vector Machine Model Specification (regression)
##
## Main Arguments:
## cost = tune()
## rbf_sigma = tune()
##
## Computational engine: kernlab
Tuning dilakukan menggunakan 5-fold cross-validation pada data training. Data testing tidak digunakan dalam proses tuning agar hasil evaluasi akhir tetap objektif.
| cost | rbf_sigma |
|---|---|
| 0.03125 | 0.00007 |
| 0.04549 | 0.00000 |
| 0.06622 | 0.02154 |
| 0.09639 | 0.00000 |
| 0.14031 | 0.00000 |
| 0.20424 | 0.00046 |
| 0.29730 | 0.14678 |
| 0.43277 | 0.00000 |
| 0.62996 | 0.00000 |
| 0.91700 | 0.00001 |
| 1.33484 | 0.00316 |
| 1.94306 | 1.00000 |
| 2.82843 | 0.00000 |
| 4.11721 | 0.00000 |
| 5.99323 | 0.00018 |
| 8.72406 | 0.05623 |
| 12.69921 | 0.00000 |
| 18.48564 | 0.00000 |
| 26.90869 | 0.00000 |
| 39.16971 | 0.00121 |
| 57.01752 | 0.38312 |
| 82.99773 | 0.00000 |
| 120.81591 | 0.00003 |
| 175.86607 | 0.00000 |
| 256.00000 | 0.00825 |
Metrik evaluasi yang digunakan adalah RMSE, MAE, dan R-squared.
| Metrik | Keterangan |
|---|---|
| RMSE | Mengukur akar rata-rata kuadrat kesalahan prediksi; semakin kecil semakin baik |
| MAE | Mengukur rata-rata nilai absolut kesalahan prediksi; semakin kecil semakin baik |
| R-squared | Mengukur proporsi variasi target yang dapat dijelaskan model; semakin besar semakin baik |
Model Regresi Linear dilatih menggunakan data training dan dievaluasi pada data testing.
| .metric | .estimator | .estimate | .config |
|---|---|---|---|
| rmse | standard | 10.8540 | pre0_mod0_post0 |
| mae | standard | 8.3945 | pre0_mod0_post0 |
| rsq | standard | 0.5702 | pre0_mod0_post0 |
Hasil evaluasi Regresi Linear perlu dibaca sebagai performa model pembanding. RMSE dan MAE menunjukkan rata-rata kesalahan prediksi dalam satuan MPa. Jika nilai error masih relatif besar, berarti model linear belum mampu mengikuti seluruh variasi kuat tekan beton. Hal ini wajar karena Regresi Linear hanya membentuk hubungan garis lurus antara prediktor dan target, sedangkan kuat tekan beton dapat dipengaruhi oleh interaksi bahan dan umur beton yang lebih kompleks.
| cost | rbf_sigma | .metric | .estimator | mean | n | std_err | .config |
|---|---|---|---|---|---|---|---|
| 57.0175 | 0.3831 | rmse | standard | 6.1283 | 5 | 0.2849 | pre0_mod21_post0 |
| 8.7241 | 0.0562 | rmse | standard | 6.4366 | 5 | 0.2266 | pre0_mod16_post0 |
| 256.0000 | 0.0083 | rmse | standard | 6.8286 | 5 | 0.1651 | pre0_mod25_post0 |
| 1.9431 | 1.0000 | rmse | standard | 7.4085 | 5 | 0.2900 | pre0_mod12_post0 |
| 0.2973 | 0.1468 | rmse | standard | 8.0301 | 5 | 0.2181 | pre0_mod07_post0 |
| 39.1697 | 0.0012 | rmse | standard | 8.9442 | 5 | 0.2095 | pre0_mod20_post0 |
| 1.3348 | 0.0032 | rmse | standard | 10.1362 | 5 | 0.0679 | pre0_mod11_post0 |
| 120.8159 | 0.0000 | rmse | standard | 10.8678 | 5 | 0.0940 | pre0_mod23_post0 |
| 0.0662 | 0.0215 | rmse | standard | 11.4345 | 5 | 0.2064 | pre0_mod03_post0 |
| 5.9932 | 0.0002 | rmse | standard | 11.7560 | 5 | 0.1483 | pre0_mod15_post0 |
Tabel tuning menampilkan beberapa kombinasi nilai cost
dan rbf_sigma yang dicoba pada proses cross-validation.
Kombinasi terbaik dipilih berdasarkan RMSE terkecil karena RMSE mengukur
besar kesalahan prediksi. Pemilihan parameter dilakukan pada data
training, bukan pada data testing, sehingga evaluasi akhir tetap lebih
objektif.
| cost | rbf_sigma | .config |
|---|---|---|
| 57.01752 | 0.38312 | pre0_mod21_post0 |
Model final SVR dibangun menggunakan parameter terbaik, kemudian dievaluasi pada data testing.
| .metric | .estimator | .estimate | .config |
|---|---|---|---|
| rmse | standard | 6.0189 | pre0_mod0_post0 |
| mae | standard | 3.8755 | pre0_mod0_post0 |
| rsq | standard | 0.8692 | pre0_mod0_post0 |
Model SVR final dievaluasi pada data testing setelah parameter terbaik ditentukan. Nilai RMSE dan MAE menunjukkan seberapa jauh prediksi model dari nilai kuat tekan aktual. Nilai R-squared menunjukkan proporsi keragaman kuat tekan beton yang dapat dijelaskan oleh model. Jika error SVR lebih rendah dan R-squared lebih tinggi dibandingkan Regresi Linear, maka SVR lebih mampu menangkap pola hubungan antara komposisi material, umur beton, dan kuat tekan beton.
| Model | RMSE | MAE | R_Squared |
|---|---|---|---|
| Regresi Linear | 10.8540 | 8.3945 | 0.5702 |
| Support Vector Regression | 6.0189 | 3.8755 | 0.8692 |
Perbandingan model dilakukan dengan prinsip bahwa RMSE dan MAE yang lebih kecil menunjukkan prediksi yang lebih dekat dengan nilai aktual, sedangkan R-squared yang lebih besar menunjukkan kemampuan model yang lebih baik dalam menjelaskan variasi data. Jika SVR unggul pada ketiga metrik tersebut, maka secara empiris SVR menjadi model yang lebih baik untuk kasus prediksi kuat tekan beton pada dataset ini.
Grafik ini memudahkan pembacaan hasil evaluasi secara visual. Pada panel RMSE dan MAE, batang yang lebih rendah menunjukkan kesalahan prediksi yang lebih kecil. Pada panel R-squared, batang yang lebih tinggi menunjukkan kemampuan penjelasan model yang lebih baik. Visualisasi ini memperjelas model mana yang lebih unggul tanpa hanya bergantung pada tabel angka.
Grafik actual vs predicted digunakan untuk melihat apakah prediksi SVR mendekati nilai sebenarnya. Garis diagonal menjadi acuan prediksi sempurna. Titik yang berada dekat dengan garis tersebut menunjukkan prediksi yang akurat, sedangkan titik yang jauh dari garis menunjukkan prediksi yang masih memiliki selisih cukup besar. Apabila sebagian besar titik mengikuti arah garis diagonal, maka model dapat dikatakan memiliki kemampuan prediksi yang baik.
Residual adalah selisih antara nilai aktual dan nilai prediksi. Plot residual digunakan untuk melihat apakah kesalahan prediksi membentuk pola tertentu. Residual yang menyebar di sekitar garis nol menunjukkan bahwa kesalahan model relatif seimbang. Jika terdapat pola melengkung atau sebaran residual yang semakin melebar, hal tersebut dapat menjadi indikasi bahwa masih ada pola data yang belum tertangkap sepenuhnya oleh model.
Histogram residual menunjukkan sebaran besar kesalahan prediksi. Residual yang banyak berada di sekitar nol berarti sebagian besar prediksi mendekati nilai aktual. Jika histogram terlalu menyebar atau memiliki ekor panjang, maka terdapat beberapa observasi yang memiliki kesalahan prediksi cukup besar.
Hasil evaluasi model menunjukkan perbedaan performa antara Regresi Linear dan Support Vector Regression. Regresi Linear berfungsi sebagai model baseline yang mengasumsikan hubungan linear antara prediktor dan kuat tekan beton. Sementara itu, SVR dengan kernel RBF memiliki fleksibilitas lebih tinggi karena mampu mempelajari pola non-linear.
Nilai RMSE dan MAE digunakan untuk menilai besar kesalahan prediksi dalam satuan MPa. Semakin kecil nilai RMSE dan MAE, semakin baik model dalam menghasilkan prediksi yang mendekati nilai aktual. Sementara itu, R-squared digunakan untuk melihat seberapa besar variasi kuat tekan beton yang dapat dijelaskan oleh model.
Pada data testing, Regresi Linear menghasilkan RMSE sebesar 10.854, MAE sebesar 8.394, dan R-squared sebesar 0.57. Sementara itu, SVR menghasilkan RMSE sebesar 6.019, MAE sebesar 3.876, dan R-squared sebesar 0.869.
Berdasarkan nilai tersebut, SVR menurunkan RMSE sekitar 44.55% dan MAE sekitar 53.83% dibandingkan Regresi Linear. Nilai R-squared SVR juga lebih tinggi sebesar sekitar 29.9 poin persentase. Hal ini menunjukkan bahwa SVR memberikan performa prediksi yang lebih baik pada dataset ini.
Data kuat tekan beton memiliki karakteristik hubungan yang tidak sepenuhnya linear. Pengaruh suatu bahan terhadap kuat tekan beton dapat bergantung pada kombinasi bahan lain, rasio air, jumlah semen, serta umur beton. Pola seperti ini sulit dijelaskan sepenuhnya oleh model linear sederhana.
Secara teori, SVR bekerja dengan mencari fungsi prediksi yang tetap
berada dalam batas toleransi kesalahan tertentu. Parameter
cost mengatur seberapa besar penalti yang diberikan
terhadap kesalahan di luar batas toleransi, sedangkan
rbf_sigma mengatur bentuk dan fleksibilitas kernel RBF.
Nilai parameter yang terlalu longgar dapat menyebabkan model kurang
menangkap pola, sedangkan parameter yang terlalu fleksibel dapat membuat
model terlalu mengikuti data training. Karena itu, tuning melalui
cross-validation diperlukan untuk mencari keseimbangan antara akurasi
dan kemampuan generalisasi.
SVR dengan kernel RBF mampu mempelajari pola yang lebih fleksibel karena kernel dapat memetakan data ke ruang fitur yang lebih kompleks. Oleh karena itu, SVR lebih sesuai ketika hubungan antara variabel prediktor dan target tidak berbentuk garis lurus.
Hasil analisis menunjukkan bahwa pendekatan machine learning dapat membantu memprediksi kuat tekan beton berdasarkan komposisi material. Model dengan performa prediksi yang baik dapat digunakan sebagai alat bantu awal dalam memahami bagaimana perubahan komposisi bahan berkaitan dengan kekuatan beton.
Meskipun demikian, hasil model tidak menggantikan pengujian laboratorium. Model prediksi lebih tepat diposisikan sebagai alat pendukung analisis, terutama untuk estimasi awal atau eksplorasi pola pada data historis.
Beberapa keterbatasan dalam analisis ini adalah sebagai berikut.
Berdasarkan hasil analisis, dapat disimpulkan bahwa Concrete Compressive Strength Dataset dapat digunakan untuk membangun model prediksi kuat tekan beton. Dataset terdiri atas variabel numerik yang menggambarkan komposisi material dan umur beton, serta variabel target berupa kuat tekan beton dalam satuan MPa.
Regresi Linear berhasil dibangun sebagai model baseline. Namun, karena hubungan antara komposisi beton dan kuat tekan beton tidak sepenuhnya linear, performa model linear cenderung lebih terbatas. Support Vector Regression dengan kernel RBF memberikan hasil prediksi yang lebih baik dibandingkan Regresi Linear berdasarkan metrik RMSE, MAE, dan R-squared.
Dengan demikian, SVR dapat dinyatakan sebagai model yang lebih sesuai untuk memprediksi kuat tekan beton pada dataset ini. Keunggulan SVR terutama terlihat dari kemampuannya dalam menangkap pola non-linear pada hubungan antara prediktor dan variabel target.
Untuk pengembangan analisis berikutnya, beberapa saran yang dapat dilakukan adalah sebagai berikut.
UCI Machine Learning Repository. Concrete Compressive Strength Dataset. https://archive.ics.uci.edu/dataset/165/concrete+compressive+strength
Yeh, I. C. (1998). Modeling of strength of high-performance concrete using artificial neural networks. Cement and Concrete Research, 28(12), 1797–1808.
James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An Introduction to Statistical Learning with Applications in R (2nd ed.). Springer.
Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning: Data Mining, Inference, and Prediction (2nd ed.). Springer.
Cortes, C., & Vapnik, V. (1995). Support-vector networks. Machine Learning, 20, 273–297.
Vapnik, V. N. (1995). The Nature of Statistical Learning Theory. Springer.
Smola, A. J., & Schölkopf, B. (2004). A tutorial on support vector regression. Statistics and Computing, 14, 199–222.
Chang, C. C., & Lin, C. J. (2011). LIBSVM: A Library for Support Vector Machines. ACM Transactions on Intelligent Systems and Technology, 2(3), 1–27.
Karatzoglou, A., Smola, A., Hornik, K., & Zeileis, A. (2004). kernlab: An S4 Package for Kernel Methods in R. Journal of Statistical Software, 11(9), 1–20.
Kuhn, M., & Silge, J. (2022). Tidy Modeling with R. O’Reilly Media.
Kuhn, M., & Johnson, K. (2013). Applied Predictive Modeling. Springer.
Wickham, H., Çetinkaya-Rundel, M., & Grolemund, G. (2023). R for Data Science (2nd ed.). O’Reilly Media.
R Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing.