All Products
Search
Document Center

Platform For AI:PS-SMART klasifikasi multikelas

Last Updated:Sep 10, 2026

PS-SMART melatih model klasifikasi multikelas menggunakan algoritma berbasis GBDT yang dapat diskalakan hingga miliaran sampel dan ribuan node.

Batasan

  • Kolom target hanya menerima tipe numerik. Konversikan data STRING di tabel MaxCompute sebelum pelatihan. Contoh: konversi Good/Medium/Bad menjadi 0/1/2.

  • Untuk data dalam format KV, ID fitur harus berupa bilangan bulat positif dan nilai fitur harus berupa bilangan real. Konversikan ID fitur berupa string menggunakan komponen serialize. Terapkan rekayasa fitur (seperti diskretisasi) pada nilai fitur kategorikal.

  • Komponen ini dapat menangani ratusan ribu fitur tetapi mengonsumsi sumber daya signifikan dan berjalan lambat. Algoritma GBDT memberikan performa terbaik dengan fitur kontinu. Terapkan one-hot encoding pada fitur kategorikal untuk menyaring fitur dengan frekuensi rendah. Hindari mendiskretisasi fitur kontinu.

  • PS-SMART memperkenalkan keacakan melalui pengambilan sampel data (data_sample_ratio), pengambilan sampel fitur (fea_sample_ratio), aproksimasi histogram, dan urutan penggabungan sketsa. Struktur pohon dapat berbeda di antara pekerja terdistribusi, tetapi performa model tetap serupa. Data dan parameter yang identik dapat menghasilkan hasil yang tidak konsisten antarjalannya.

  • Menambah jumlah computing cores mempercepat pelatihan. Pelatihan hanya dimulai setelah semua server memperoleh sumber daya yang diperlukan. Meminta lebih banyak sumber daya saat kluster sedang padat akan meningkatkan waktu tunggu.

Konfigurasi komponen

Metode 1: Gunakan GUI

Tambahkan komponen PS-SMART multiclass classification ke alur kerja Designer dan konfigurasikan parameternya:

Jenis parameter

Parameter

Deskripsi

Pengaturan kolom

Is sparse format

Format sparse menggunakan spasi untuk memisahkan pasangan KV dan titik dua untuk memisahkan key dan value. Contoh: 1:0.3 3:0.9.

Feature columns

Kolom fitur dari tabel input. Untuk format dense, pilih hanya kolom numerik (BIGINT atau DOUBLE). Untuk format sparse KV di mana key dan value keduanya numerik, pilih hanya kolom STRING.

Label column

Kolom label dari tabel input. Menerima tipe STRING dan numerik. Penyimpanan internal memerlukan tipe numerik, seperti 0 dan 1 untuk klasifikasi biner.

Weight column

Kolom bobot untuk setiap baris sampel. Hanya menerima tipe numerik.

Pengaturan parameter

Number of classes

Jumlah kelas untuk klasifikasi multikelas. Jika diatur ke n, nilai kolom label harus berkisar dari 0 hingga n-1.

Evaluation metric type

Jenis metrik evaluasi: negative log likelihood multikelas dan error klasifikasi multikelas.

Number of trees

Jumlah pohon (bilangan bulat positif). Waktu pelatihan meningkat secara proporsional.

Maximum tree depth

Kedalaman maksimum pohon. Default: 5 (memungkinkan hingga 32 node daun).

Data sampling ratio

Proporsi data yang diambil sampelnya saat membangun setiap pohon. Menghasilkan pembelajar lemah dan mempercepat pelatihan.

Feature sampling ratio

Proporsi fitur yang diambil sampelnya saat membangun setiap pohon. Menghasilkan pembelajar lemah dan mempercepat pelatihan.

L1 penalty coefficient

Koefisien penalti L1. Mengontrol distribusi ukuran node daun. Nilai yang lebih besar menghasilkan distribusi yang lebih seragam. Tingkatkan untuk mencegah overfitting.

L2 penalty coefficient

Koefisien penalti L2. Mengontrol distribusi ukuran node daun. Nilai yang lebih besar menghasilkan distribusi yang lebih seragam. Tingkatkan untuk mencegah overfitting.

Learning rate

Laju pembelajaran. Rentang: (0,1).

Approximate sketch precision

Ambang batas kuantil untuk pembentukan sketsa. Nilai yang lebih kecil membuat lebih banyak bucket. Default: 0.03. Tidak perlu dikonfigurasi manual.

Minimum split loss change

Penurunan loss minimum yang diperlukan untuk membagi sebuah node. Nilai yang lebih besar menghasilkan pemisahan yang lebih konservatif.

Number of features

Jumlah fitur atau ID fitur maksimum. Digunakan untuk estimasi sumber daya.

Global bias

Nilai prediksi awal untuk semua sampel. Disebut juga base score.

Random number generator seed

Seed acak (bilangan bulat).

Feature importance type

Jenis perhitungan pentingnya fitur:

  • Split count: Jumlah kali fitur digunakan untuk pemisahan.

  • Information gain: Informasi yang diperoleh dari fitur.

  • Sample coverage: Jumlah sampel yang dicakup oleh fitur pada node pemisahan.

Eksekusi tuning

Number of cores

Jumlah core komputasi. Sistem mengalokasikan secara otomatis secara default.

Memory size per core

Memori per core (MB). Sistem mengalokasikan secara otomatis. Konfigurasi manual jarang diperlukan.

Metode 2: Gunakan perintah PAI

Panggil perintah PAI dari komponen skrip SQL. Untuk detailnya, lihat Skenario 4: Jalankan perintah PAI dalam komponen skrip SQL.

--Train
PAI -name ps_smart
    -project algo_public
    -DinputTableName="smart_multiclass_input"
    -DmodelName="xlab_m_pai_ps_smart_bi_545859_v0"
    -DoutputTableName="pai_temp_24515_545859_2"
    -DoutputImportanceTableName="pai_temp_24515_545859_3"
    -DlabelColName="label"
    -DfeatureColNames="features"
    -DenableSparse="true"
    -Dobjective="multi:softprob"
    -Dmetric="mlogloss"
    -DfeatureImportanceType="gain"
    -DtreeCount="5"
    -DmaxDepth="5"
    -Dshrinkage="0.3"
    -Dl2="1.0"
    -Dl1="0"
    -Dlifecycle="3"
    -DsketchEps="0.03"
    -DsampleRatio="1.0"
    -DfeatureRatio="1.0"
    -DbaseScore="0.5"
    -DminSplitLoss="0"
--Predict
PAI -name prediction
    -project algo_public
    -DinputTableName="smart_multiclass_input";
    -DmodelName="xlab_m_pai_ps_smart_bi_545859_v0"
    -DoutputTableName="pai_temp_24515_545860_1"
    -DfeatureColNames="features"
    -DappendColNames="label,features"
    -DenableSparse="true"
    -DkvDelimiter=":"
    -Dlifecycle="28"

Modul

Parameter

Wajib

Default

Deskripsi

Parameter data

featureColNames

Ya

Tidak ada

Kolom fitur dari tabel input. Untuk format dense, pilih hanya kolom numerik (BIGINT atau DOUBLE). Untuk format sparse KV di mana key dan value keduanya numerik, pilih hanya kolom STRING.

labelColName

Ya

Tidak ada

Kolom label dari tabel input. Menerima tipe STRING dan numerik. Penyimpanan internal memerlukan tipe numerik. Untuk klasifikasi multikelas, nilai harus berkisar dari 0 hingga n-1, di mana n adalah jumlah kelas.

weightCol

Tidak

Tidak ada

Kolom bobot untuk setiap baris sampel. Hanya menerima tipe numerik.

enableSparse

Tidak

false

Apakah data dalam format sparse. Nilai: true atau false. Format sparse menggunakan spasi untuk memisahkan pasangan KV dan titik dua untuk memisahkan key dan value. Contoh: 1:0.3 3:0.9.

inputTableName

Ya

Tidak ada

Nama tabel input.

modelName

Ya

Tidak ada

Nama model output.

outputImportanceTableName

Tidak

Tidak ada

Nama tabel output untuk pentingnya fitur.

inputTablePartitions

Tidak

Tidak ada

Format: ds=1/pt=1.

outputTableName

Tidak

Tidak ada

Tabel output di MaxCompute. Format biner, tidak dapat dibaca langsung. Hanya dapat diakses melalui komponen prediksi SMART.

lifecycle

Tidak

3

Siklus hidup tabel output (dalam hari).

Parameter algoritma

classNum

Ya

Tidak ada

Jumlah kelas untuk klasifikasi multikelas. Jika diatur ke n, nilai kolom label harus berkisar dari 0 hingga n-1.

objective

Ya

Tidak ada

Jenis fungsi objektif. Untuk pelatihan klasifikasi multikelas, gunakan multi:softprob.

metric

Tidak

Tidak ada

Jenis metrik evaluasi untuk set data pelatihan. Output ditulis ke stdout di area Logview Coordinator. Jenis:

  • mlogloss: Negative log likelihood multikelas (sesuai opsi GUI).

  • merror: Error klasifikasi multikelas (sesuai opsi GUI).

treeCount

Tidak

1

Jumlah pohon (bilangan bulat positif). Waktu pelatihan meningkat secara proporsional.

maxDepth

Tidak

5

Kedalaman maksimum pohon. Rentang: 1 hingga 20.

sampleRatio

Tidak

1.0

Rasio pengambilan sampel data. Rentang: (0,1]. Nilai 1.0 menonaktifkan pengambilan sampel.

featureRatio

Tidak

1.0

Rasio pengambilan sampel fitur. Rentang: (0,1]. Nilai 1.0 menonaktifkan pengambilan sampel.

l1

Tidak

0

Koefisien penalti L1. Nilai yang lebih besar menghasilkan distribusi node daun yang lebih seragam. Tingkatkan untuk mencegah overfitting.

l2

Tidak

1.0

Koefisien penalti L2. Nilai yang lebih besar menghasilkan distribusi node daun yang lebih seragam. Tingkatkan untuk mencegah overfitting.

shrinkage

Tidak

0.3

Laju pembelajaran. Rentang: (0,1).

sketchEps

Tidak

0.03

Ambang batas kuantil untuk pembentukan sketsa. Jumlah bucket: O(1.0/sketchEps). Nilai yang lebih kecil membuat lebih banyak bucket. Gunakan nilai default. Tidak perlu dikonfigurasi manual. Rentang: (0,1).

minSplitLoss

Tidak

0

Penurunan loss minimum yang diperlukan untuk membagi sebuah node. Nilai yang lebih besar menghasilkan pemisahan yang lebih konservatif.

featureNum

Tidak

Tidak ada

Jumlah fitur atau ID fitur maksimum. Digunakan untuk estimasi sumber daya.

baseScore

Tidak

0.5

Nilai prediksi awal untuk semua sampel. Disebut juga global bias.

randSeed

Tidak

Tidak ada

Seed acak (bilangan bulat).

featureImportanceType

Tidak

gain

Jenis perhitungan pentingnya fitur:

  • weight: Split count – jumlah kali fitur digunakan untuk pemisahan.

  • gain: Information gain dari fitur.

  • cover: Sample coverage – jumlah sampel yang dicakup oleh fitur pada node pemisahan.

Parameter tuning

coreNum

Tidak

Dialokasikan sistem

Jumlah core komputasi. Nilai yang lebih besar mempercepat eksekusi.

memSizePerCore

Tidak

Dialokasikan sistem

Memori per core dalam MB.

Penerapan model

Untuk menerapkan model yang dihasilkan oleh komponen PS-SMART sebagai layanan online, tambahkan komponen General-purpose Model Export di hilir komponen PS-SMART. Konfigurasikan parameter komponen tersebut seperti halnya komponen seri PS lainnya. Untuk informasi selengkapnya, lihat General-purpose Model Export.

Setelah eksekusi berhasil, terapkan layanan model di halaman PAI-EAS Model Online Service. Untuk informasi selengkapnya, lihat Deploy a service in the console.