Gradient Boosting Decision Trees (GBDT) Klasifikasi Biner adalah model pembelajaran terawasi klasik berbasis Boosting Gradien. Model ini cocok untuk skenario klasifikasi biner.
Sumber daya komputasi yang didukung
Anda hanya dapat menggunakan GBDT Klasifikasi Biner V2 dengan sumber daya komputasi MaxCompute.
Algoritma
GBDT Klasifikasi Biner adalah model pembelajaran terawasi klasik berbasis Boosting Gradien. Algoritma ini digunakan dalam skenario klasifikasi biner.
Prinsip
Model pohon keputusan Boosting Gradien terdiri dari beberapa pohon keputusan. Setiap pohon keputusan sesuai dengan pembelajar lemah. Penggabungan pembelajar lemah ini menghasilkan hasil klasifikasi dan regresi yang lebih baik.
Gambar berikut menunjukkan struktur rekursif dasar dari Boosting Gradien.

Dalam banyak kasus,
adalah pohon keputusan CART,
adalah parameter dari pohon keputusan, dan
adalah ukuran langkah. Setiap pohon keputusan mengoptimalkan fungsi objektif berdasarkan pohon keputusan sebelumnya. Proses ini menghasilkan model yang terdiri dari beberapa pohon keputusan.
Skenario
Algoritma ini mencakup optimasi seperti optimasi orde kedua yang disediakan oleh XGBoost dan pendekatan histogram yang disediakan oleh LightGBM. Algoritma ini memberikan performa tinggi dan interpretasi yang baik, serta dapat digunakan untuk klasifikasi biner umum.
GBDT Klasifikasi Biner V2 mendukung input dalam format vektor jarang dan format kolom fitur ganda. Jika Anda menggunakan format vektor jarang, Anda hanya dapat memilih satu kolom bertipe string. Setiap entri data adalah pasangan nilai-kunci yang dipisahkan oleh spasi, dengan nilai-nilai dipisahkan oleh titik dua. Contoh: 1:0.3 3:0.9. Jika Anda menggunakan format kolom fitur ganda, Anda dapat memilih beberapa kolom bertipe double, bigint, dan string, termasuk fitur numerik dan fitur kategorikal. Algoritma ini mengelompokkan data fitur numerik dan menggunakan strategi pemisahan banyak-vs-banyak untuk memproses fitur kategorikal. Anda tidak perlu melakukan one-hot encoding untuk fitur kategorikal.
Algoritma ini mengharuskan kategori klasifikasi biner bernilai 0 dan 1.
Komponen ini digunakan berpasangan dengan komponen GBDT Prediksi Klasifikasi Biner V2. Setelah menjalankan komponen-komponen ini, Anda dapat menerapkan model yang telah dilatih sebagai layanan online. Untuk informasi lebih lanjut, lihat Terapkan pipeline sebagai layanan online.
Konfigurasikan komponen di Machine Learning Designer
Port masukan
Port (dari kiri ke kanan) | Tipe data | Komponen hulu yang direkomendasikan | Diperlukan |
Data Masukan | Tidak ada parameter yang dikembalikan. | Ya |
Parameter komponen
Tab | Parameter | Diperlukan | Deskripsi | Nilai default |
Fields Setting | Use Sparse Vector Format | Tidak | Menentukan apakah kolom fitur yang digunakan untuk pelatihan dalam tabel input berada dalam format vektor jarang. Dalam format vektor jarang, setiap entri data adalah pasangan nilai-kunci yang dipisahkan oleh spasi. Nilai-nilainya dipisahkan oleh titik dua. Contoh: | Tidak |
Select Feature Columns | Ya | Nama kolom fitur yang dipilih dari tabel input untuk pelatihan. Jika format vektor jarang tidak dipilih, Anda dapat memilih kolom bertipe double, bigint, atau string. Jika format vektor jarang dipilih, Anda hanya dapat memilih satu kolom bertipe string. | Tidak ada parameter yang dikembalikan. | |
Select Categorical Feature Columns | Tidak | Pilih kolom untuk diproses sebagai fitur kategorikal. Kolom yang tidak dipilih diproses sebagai fitur numerik. Parameter ini valid ketika format vektor jarang tidak dipilih. | Tidak ada parameter yang dikembalikan. | |
Select Label Column | Ya | Nama kolom label yang dipilih dari tabel input untuk pelatihan. | Tidak ada parameter yang dikembalikan. | |
Select Weight Column | Tidak | Nama kolom bobot yang dipilih dari tabel input untuk pelatihan. | Tidak ada parameter yang dikembalikan. | |
Parameter Setting | Number of Trees | Tidak | Jumlah pohon dalam model. | 1 |
Maximum Number of Leaf Nodes | Tidak | Jumlah maksimum node daun pada setiap pohon. | 32 | |
Learning Rate | Tidak | Tingkat pembelajaran. | 0,05 | |
Ratio of Samples | Tidak | Proporsi sampel yang dipilih untuk pelatihan. Nilai valid: (0,1]. | 0,6 | |
Ratio of Features | Tidak | Proporsi fitur yang dipilih untuk pelatihan. Nilai valid: (0,1]. | 0,6 | |
Minimum Number of Samples in a Leaf Node | Tidak | Jumlah minimum sampel pada setiap node daun. | 500 | |
Maximum Number of Bins | Tidak | Jumlah maksimum bins yang diizinkan saat mendiskritisasi fitur kontinu. Nilai yang lebih besar menunjukkan pemisahan yang lebih presisi. Pemisahan yang lebih presisi menghasilkan biaya yang lebih tinggi. | 32 | |
Maximum Number of Distinct Categories | Tidak | Jumlah maksimum kategori berbeda yang diizinkan untuk fitur kategorikal. Untuk setiap fitur kategorikal, kategori diurutkan berdasarkan frekuensi. Kategori dengan peringkat lebih besar dari nilai ini digabungkan ke dalam satu bucket. Nilai yang lebih besar menunjukkan pemisahan yang lebih presisi. Pemisahan yang lebih presisi meningkatkan kemungkinan overfitting dan biaya yang lebih tinggi. | 1.024 | |
Number of features | Tidak | Parameter ini valid ketika format vektor jarang dipilih. Tentukan parameter ini sebagai nilai ID fitur maksimum + 1. Sistem secara otomatis memindai data untuk menghitung jika parameter ini dibiarkan kosong. | Angka dihitung secara otomatis berdasarkan data input. | |
Initial Prediction | Tidak | Probabilitas contoh positif. Sistem secara otomatis memindai data untuk memperkirakan jika parameter ini dibiarkan kosong. | Angka dihitung secara otomatis berdasarkan data input. | |
Random Seed | Tidak | Seed acak, yang digunakan untuk pengambilan sampel. | 0 | |
Tuning | Choose Running Mode | Tidak | Pilih Mode Jalankan. Nilai valid:
| MaxCompute |
Number of Instances | Tidak | Jumlah instans yang digunakan untuk menjalankan pekerjaan. | Angka dihitung secara otomatis berdasarkan data input. | |
Memory Per Instance | Tidak | Ukuran memori setiap instans. Satuan: MB. | Angka dihitung secara otomatis berdasarkan data input. | |
Num of Threads | Tidak | Jika multi-threading digunakan, biaya yang lebih tinggi akan dikeluarkan. Dalam banyak kasus, performa tidak meningkat secara linear dengan jumlah thread. Jika lebih banyak thread daripada jumlah thread optimal digunakan, performa menurun. | 1 |
Port keluaran
Port keluaran | Lokasi penyimpanan | Komponen hilir yang direkomendasikan | Tipe data |
Model Keluaran | N/A | Tabel MaxCompute | |
Output Pentingnya Fitur | N/A | Tidak ada parameter yang dikembalikan. Komponen hilir tidak dapat dihubungkan ke komponen berbasis perintah PAI, seperti GBDT Pentingnya Fitur V2. | Tabel MaxCompute |
Perbandingan dengan Pelatihan Klasifikasi Biner PS-SMART
Jika Anda mengalami masalah sulit saat menggunakan komponen Pelatihan Klasifikasi Biner PS-SMART, Anda dapat menggunakan komponen GBDT Klasifikasi Biner V2. Untuk informasi lebih lanjut, lihat Pelatihan Klasifikasi Biner PS-SMART. Tabel berikut menggambarkan fitur dan parameter dari kedua komponen tersebut.
Parameter Pelatihan Klasifikasi Biner PS-SMART | GBDT Klasifikasi Biner V2 |
Use Sparse Format | Use Sparse Vector Format |
Feature Columns | Feature Columns |
Label Column | Label Column |
Weight Column | Select Weight Column |
Evaluation Indicator Type | Tidak didukung. Area under curve (AUC) digunakan secara default. Anda dapat melihat metrik di log pekerja. |
Trees | Number of Trees |
Maximum Tree Depth | Maximum Number of Leaf Nodes: |
Data Sampling Fraction | Ratio of Samples |
Feature Sampling Fraction | Ratio of Features |
L1 Penalty Coefficient | Tidak didukung |
L2 Penalty Coefficient | Tidak didukung |
Learning Rate | Learning Rate |
Sketch-based Approximate Precision | Maximum Number of Bins: |
Minimum Split Loss Change | Minimum Number of Samples in a Leaf Node: tidak dapat dikonversi langsung ke Perubahan Kerugian Minimum untuk Pemisahan, tetapi kedua parameter tersebut dapat digunakan untuk mencegah overfitting. |
Features | Features |
Global Offset | Global Offset |
Random Seed | Random Seed |
Feature Importance Type | Tidak tersedia. Nilai default: gain. |
Cores | Number of Instances: bukan nilai yang sama dengan Core. Kami menyarankan Anda menyesuaikan angka berdasarkan nilai yang dihasilkan secara otomatis oleh sistem. |
Memory Size per Core | Memory per Instance: bukan nilai yang sama dengan Ukuran Memori per Core. Kami menyarankan Anda menyesuaikan angka berdasarkan nilai yang dihasilkan secara otomatis oleh sistem. |