All Products
Search
Document Center

Platform For AI:XGboost Train

Last Updated:Mar 01, 2026

XGBoost (eXtreme Gradient Boosting) merupakan pengembangan algoritma gradient boosting yang menawarkan peningkatan dalam kemudahan penggunaan dan ketangguhan. Algoritma ini banyak digunakan baik dalam sistem produksi pembelajaran mesin maupun kompetisi, serta mendukung tugas klasifikasi dan regresi.

Komponen XGBoost Train di Platform for AI (PAI) dioptimalkan berdasarkan pustaka open-source XGBoost untuk meningkatkan kemudahan penggunaan dan kompatibilitas dengan platform PAI. Topik ini menjelaskan cara mengonfigurasi komponen XGBoost Train.

Batasan

Komponen XGBoost Train berjalan pada sumber daya komputasi berikut:

  • MaxCompute

  • Flink

  • Deep Learning Containers (DLC)

Format data

Komponen ini menerima data dalam format Table atau LibSVM. Anda menentukan format yang digunakan melalui parameter pada tab Field Setting: gunakan featureCols untuk format Table atau vectorCol untuk format LibSVM. Kedua parameter ini saling eksklusif.

Format tabel

Dalam format Table, setiap baris merepresentasikan sebuah instans data yang terdiri atas nilai fitur dan label.

f0f1label
0.110
0.921

Format LibSVM

Dalam format LibSVM, setiap baris berisi pasangan fitur-nilai jarang menggunakan notasi index:value. Contoh berikut menunjukkan data LibSVM sampel:

2:1 9:1 10:1 20:1 29:1 33:1 35:1 39:1 40:1 52:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 116:1 123:1
0:1 9:1 18:1 20:1 23:1 33:1 35:1 38:1 41:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 105:1 115:1 121:1
2:1 8:1 18:1 20:1 29:1 33:1 35:1 39:1 41:1 52:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 116:1 123:1
2:1 9:1 13:1 21:1 28:1 33:1 36:1 38:1 40:1 53:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 97:1 105:1 113:1 119:1
0:1 9:1 18:1 20:1 22:1 33:1 35:1 38:1 44:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 115:1 121:1
0:1 8:1 18:1 20:1 23:1 33:1 35:1 38:1 41:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 105:1 116:1 121:1

Konfigurasi komponen di konsol PAI

Anda dapat mengonfigurasi komponen XGBoost Train di Machine Learning Designer. Parameter-parameter tersebut dikelompokkan dalam tiga tab:

  • Field Setting: Menentukan struktur data masukan dan lokasi penyimpanan model.

  • Parameter Setting: Mengatur perilaku algoritma pelatihan XGBoost.

  • Execution Tuning: Mengonfigurasi sumber daya untuk pelatihan terdistribusi.

Field Setting

ParameterTypeDeskripsi
labelColStringKolom label.
featureColsString arrayKolom fitur dalam format tabel. Parameter ini saling eksklusif dengan vectorCol. Saat Anda menentukan featureCols, data masukan harus dalam format Table.
vectorColStringKolom vektor dalam format LibSVM. Parameter ini saling eksklusif dengan featureCols. Saat Anda menentukan vectorCol, data masukan harus dalam format LibSVM.
weightColStringNama kolom bobot.
set the model file pathStringPath bucket Object Storage Service (OSS) tempat model yang telah dilatih disimpan.

Parameter Setting

Parameter-parameter ini sesuai dengan hiperparameter standar XGBoost yang mengontrol perilaku pelatihan.

Tujuan pelatihan

ParameterTypeDefaultDeskripsi
The number of rounds for boostingInteger--Jumlah putaran pelatihan (iterasi boosting).
objectiveStringbinary:logisticTugas pembelajaran dan tujuan pembelajaran yang sesuai.
Base scoreFloating-point number0.5Bias global, yang berfungsi sebagai skor prediksi awal untuk semua instans.
The number of classesInteger--Jumlah kelas untuk tugas klasifikasi multi-kelas.

Konstruksi pohon

ParameterTypeDefaultDeskripsi
Tree MethodStringautoAlgoritma konstruksi pohon. Nilai yang valid: auto, exact, approx, hist.
Maximum depth of a treeInteger6Kedalaman maksimum setiap pohon. Peningkatan nilai ini membuat model lebih kompleks dan rentan terhadap overfitting.
Max leavesInteger0Jumlah maksimum node daun yang ditambahkan. Nilai 0 berarti tidak ada batasan.
Grow PolicyStringdepthwiseStrategi penambahan node baru ke pohon. Nilai yang valid: depthwise, lossguide.
Maximum number of discrete bins to bucket continuous featuresInteger256Jumlah maksimum bin diskret untuk bucketing fitur kontinu. Parameter ini hanya berlaku saat Tree Method diatur ke hist.
sketch_epsFloating-point number0.03Mengontrol jumlah bin dalam algoritma sketching. Parameter ini hanya berlaku saat Tree Method diatur ke approx.

Regularisasi

ParameterTypeDefaultDeskripsi
L1 regularization term on weightsFloating-point number0.0Suku regularisasi L1 pada bobot. Nilai yang lebih tinggi menghasilkan model yang lebih konservatif.
L2 regularization term on weightsFloating-point number1.0Suku regularisasi L2 pada bobot. Nilai yang lebih tinggi menghasilkan model yang lebih konservatif.
gammaFloating-point number0.0Reduksi loss minimum yang diperlukan untuk melakukan partisi lebih lanjut pada node daun pohon.
Min child weightFloating-point number1.0Jumlah minimum bobot instans yang diperlukan dalam node anak.
Max delta stepFloating-point number0.0Langkah delta maksimum yang diizinkan untuk setiap node daun. Parameter ini memungkinkan Anda menyesuaikan granularitas pembaruan model.

Tingkat pembelajaran dan pengambilan sampel

ParameterTypeDefaultDeskripsi
etaFloating-point number0.3Tingkat pembelajaran. Nilai yang lebih rendah membuat model lebih tangguh tetapi memerlukan lebih banyak putaran boosting.
scale_pos_weightFloating-point number1.0Rasio untuk menyeimbangkan bobot kelas positif dan negatif. Berguna untuk dataset yang tidak seimbang.
Subsample ratio of the training instancesFloating-point number1Proporsi instans pelatihan yang diambil sampelnya sebelum setiap putaran boosting.
Sampling methodStringGRADIENT_BASEDMetode pengambilan sampel instans pelatihan. Nilai yang valid: GRADIENT_BASED, UNIFORM.
Subsample ratio of columns for each levelFloating-point number1.0Proporsi kolom yang diambil sampelnya untuk setiap level pohon.
Subsample ratio of columns for each node (split)Floating-point number1.0Proporsi kolom yang diambil sampelnya untuk setiap pemisahan node.
Subsample ratio of columns when constructing each treeFloating-point number1.0Proporsi kolom yang diambil sampelnya saat membangun setiap pohon.

Kendala dan distribusi

ParameterTypeDefaultDeskripsi
Interaction constraintsString--Kelompok variabel yang diizinkan untuk saling berinteraksi.
Monotone constraintsString--Kendala monotonisitas untuk setiap fitur.
Tweedie variance powerFloating-point number1.5Varians distribusi Tweedie. Parameter ini hanya berlaku saat objective menggunakan distribusi Tweedie.

Execution Tuning

ParameterTypeNilai validDeskripsi
Number of WorkersBilangan bulat positif[1, 9999]Jumlah node pekerja. Konfigurasikan parameter ini bersama dengan Memory per worker, unit MB.
Memory per worker, unit MBBilangan bulat positif[1024, 64 x 1024]Memori yang dialokasikan untuk setiap node pekerja, dalam satuan MB.

Prosedur

Bagian ini menjelaskan contoh klasifikasi boson Higgs untuk menunjukkan cara menggunakan komponen XGBoost Train di Machine Learning Designer. Pipeline dalam contoh ini dibuat dari template preset. Untuk mempelajari cara membuat pipeline dari template Use XGBoost algorithm to identify the Higgs boson, lihat Create a pipeline from a preset template.

Konversi format output untuk evaluasi

Komponen XGBoost Train menghasilkan string JSON yang diserialisasi dari objek JSON yang dihasilkan oleh pustaka open-source XGBoost. Untuk mengevaluasi prediksi model, Anda harus mengonversi output ini ke format yang dapat diproses oleh komponen evaluasi.

Untuk melakukannya, tambahkan komponen SQL Script sebagai komponen downstream dari komponen XGboost Predict. Komponen SQL Script mengonversi output prediksi ke format yang diperlukan oleh komponen Binary classification Evaluation V2. Gunakan kode SQL berikut:

set odps.sql.udf.getjsonobj.new=true;

select *, CONCAT("{\"0\":", 1.0-prob, ",\"1\":", prob, "}") as detail
FROM (
select *, cast(get_json_object(pred, '$[0]') as double) as prob FROM ${t1})

Referensi