Kapan Boosting Menang

Kenyataan data tabular: kapan gradient boosting mengungguli deep learning dan kapan tidak.

Daftar isi

Pada data tabular berukuran sedang, gradient boosting kerap menjadi titik awal terkuat tanpa rekayasa fitur yang rumit. Deep learning, yaitu keluarga model berbasis jaringan saraf berlapis, unggul pada ranah data yang berbeda. Topik ini menguraikan kapan boosting menang, kapan deep learning lebih tepat, dan apa arti selisih skor yang sempit pada dataset demo. Pembahasannya ditutup dengan pengukuran tiga model klasik pada satu pembagian dataset breast cancer yang sama.

Mengapa data tabular ramah terhadap pohon#

Data tabular tersusun atas baris observasi dan kolom fitur yang tipenya bercampur, misalnya numerik, kategori, dan tanggal. Pohon keputusan memisahkan data dengan membandingkan nilai fitur terhadap sebuah ambang, sehingga skala fitur tidak berpengaruh dan penskalaan tidak diperlukan. Struktur pohon juga menangkap interaksi nonlinier antarfitur secara otomatis, dan implementasi gradient boosting modern menerima nilai hilang tanpa imputasi terlebih dahulu. Kombinasi sifat tersebut membuat persiapan data untuk boosting menjadi minim.

Pada ukuran ribuan sampai jutaan baris, gradient boosting biasanya mengungguli model linear maupun deep learning pada data tabular, bahkan ketika keduanya diberi penalaan yang wajar. Temuan empiris tersebut terdokumentasi pada studi perbandingan model berbasis pohon dan deep learning untuk data tabular yang dirujuk di akhir topik. Biaya pelatihannya juga murah karena berjalan cepat pada CPU tanpa perangkat keras khusus semacam GPU, dan prediksi atas data baru berupa serangkaian pemeriksaan ambang yang cepat. Pertimbangan performa dan biaya tersebut menjadikan boosting pilihan standar pada pekerjaan data tabular, baik di kompetisi maupun di sistem produksi.

Ranah yang tetap milik deep learning#

Data tak berstruktur seperti gambar, teks mentah, dan audio menyimpan pola lokal berjenjang yang paling efisien ditangkap melalui pembelajaran representasi. Deep learning mempelajari representasinya sendiri dari data mentah, misalnya dari matriks piksel atau deret sampel suara, tanpa fitur yang dirancang lebih dahulu. Boosting tidak mengolah data mentah tak berstruktur karena pohon keputusan membutuhkan fitur yang sudah tersusun. Memaksa pohon mengolah deretan piksel berarti membuang struktur spasial data tersebut. Pada ranah ini deep learning menjadi pilihan yang jauh lebih tepat.

Ukuran data sangat besar juga mengubah pertimbangan ini. Apabila data berlabel tersedia sangat banyak, model deep learning dapat menyamai atau melampaui boosting pada data tabular. Meskipun demikian, biaya pelatihannya jauh lebih mahal, sehingga keunggulan semacam itu tidak lazim pada dataset biasa. Sebaliknya, boosting hanya memiliki segelintir hyperparameter inti sehingga penalaannya cepat, sedangkan arsitektur deep learning menuntut eksperimen yang lebih panjang. Untuk data tabular pada skala biasa, perbedaan biaya tersebut jarang sepadan dengan perbaikan skornya.

Tabel pemilihan model#

Tabel berikut merangkum situasi yang lazim dijumpai beserta pilihan modelnya. Kolom pertama menjabarkan situasi data yang dihadapi, kolom kedua menyebut pilihan yang lazim, dan kolom ketiga menjabarkan alasannya. Dua baris pertama masih berada pada ranah data tabular, sedangkan baris ketiga berpindah ke data tak berstruktur, dan baris keempat menegaskan peran model linear sebagai titik acuan.

SituasiPilihan yang lazimAlasannya
Data tabular kecil hingga menengahModel linear, lalu gradient boostingTanpa penskalaan, tahan fitur campuran, murah dilatih
Data tabular sangat besarXGBoost atau LightGBMHistogram binning dan paralelisasi untuk jutaan baris
Gambar, teks mentah, audioDeep learningPembelajaran representasi dari data mentah
Baseline cepat yang dapat dijelaskanModel linearKoefisien terbaca dan pelatihannya sekejap

Tabel tersebut adalah petunjuk awal, bukan aturan baku. Batas antara ukuran kecil dan besar juga bersifat kabur, karena ukuran sangat besar pada tabel menunjuk jutaan baris, sedangkan dataset demo pada topik ini hanya berisi 569 baris. Karena itu, keputusan akhir tetap diambil dari uji coba pada data masing-masing proyek. Disiplin perbandingan tetap berlaku, yaitu pemisahan data yang sama, metrik yang sama, dan baseline model linear yang dilatih lebih dahulu sebagai titik acuan. Model yang rumit baru layak dipertahankan apabila kemenangannya terbukti pada data validasi, bukan sekadar karena namanya lebih canggih.

Pengukuran pada dataset breast cancer#

Skrip berikut membandingkan tiga model klasik pada pembagian data yang sama, yaitu regresi logistik sebagai baseline linear, random forest, dan gradient boosting. Ketiganya dinilai dengan akurasi pada data uji yang sama persis, sehingga perbandingannya adil. Konfigurasi ketiganya sederhana dan lazim dijadikan titik awal.

python bandingkan-tabular.py
from sklearn.datasets import load_breast_cancer
from sklearn.ensemble import GradientBoostingClassifier, RandomForestClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split

X, y = load_breast_cancer(return_X_y=True)
X_latih, X_uji, y_latih, y_uji = train_test_split(
    X, y, test_size=0.2, stratify=y, random_state=42
)

model = {
    "Regresi logistik     ": LogisticRegression(max_iter=5000),
    "Random forest        ": RandomForestClassifier(n_estimators=200, random_state=42),
    "Gradient boosting    ": GradientBoostingClassifier(
        n_estimators=200, learning_rate=0.1, random_state=42
    ),
}

for nama, m in model.items():
    m.fit(X_latih, y_latih)
    akurasi = m.score(X_uji, y_uji)
    print(f"{nama} : {akurasi:.4f}")
text Keluaran
Regresi logistik      : 0.9649
Random forest         : 0.9561
Gradient boosting     : 0.9561

Ketiga akurasi hanya terpisah sekitar satu baris data uji, karena satu baris dari 114 baris bernilai sekitar 0.9 persen. Urutan ketiga model juga tidak boleh dibaca sebagai peringkat, karena selisihnya berada dalam derau pengukuran. Jarak yang sesempit ini merupakan temuan tersendiri, karena pada dataset demo yang kecil dan bersih, semua model yang layak berakhir di sekitar tingkat kinerja yang serupa.

Kemenangan boosting yang menonjol muncul pada skala dan kerumitan data yang lebih besar, bukan pada dataset demo. Oleh karena itu, klaim bahwa boosting selalu menang perlu dibaca dengan hati-hati. Kesimpulan yang tepat dari pengukuran ini adalah ketiga model sama-sama layak pada data seperti ini. Pilihan akhir ditentukan oleh ukuran data, kebutuhan model yang dapat dijelaskan, serta biaya pemeliharaan.

Ringkasan#

  • Pada data tabular berukuran sedang, gradient boosting biasanya menjadi pilihan terkuat karena tahan fitur campuran, menerima nilai hilang, dan tidak memerlukan penskalaan.
  • Deep learning unggul pada data tak berstruktur seperti gambar, teks, dan audio karena mempelajari representasinya sendiri dari data mentah.
  • Pada dataset demo yang kecil, selisih antar model sering berada dalam batas derau pengukuran, sehingga jarak yang sempit bukan bukti keunggulan salah satu model.
  • Kemenangan boosting menonjol pada skala dan kerumitan data yang lebih besar, dengan biaya pelatihan CPU yang tetap murah.

Referensi#