全部产品
Search
文档中心

Platform For AI:Regresi Logistik untuk Klasifikasi Multikelas

更新时间:Jul 02, 2025

Algoritma regresi logistik umumnya digunakan untuk klasifikasi biner. Platform for AI (PAI) memungkinkan Anda menggunakan algoritma regresi logistik untuk klasifikasi multikelas. Komponen Regresi Logistik untuk Klasifikasi Multikelas mendukung format data jarang dan padat.

Konfigurasikan komponen

Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi komponen Regresi Logistik untuk Klasifikasi Multikelas.

Metode 1: Konfigurasikan komponen pada halaman pipeline

Anda dapat mengonfigurasi parameter komponen Regresi Logistik untuk Klasifikasi Multikelas pada halaman pipeline di Machine Learning Designer dari Platform for AI (PAI). Machine Learning Designer sebelumnya dikenal sebagai Machine Learning Studio. Tabel berikut menjelaskan parameter tersebut.

Tab

Parameter

Deskripsi

Fields Setting

Training Feature Columns

Kolom fitur yang dipilih dari sumber data untuk pelatihan. Kolom dengan tipe DOUBLE dan BIGINT didukung.

Catatan

Maksimum 20 juta fitur didukung.

Target Columns

Kolom objektif dalam tabel input.

Sparse Format

Menentukan apakah data input dalam format jarang.

Parameters Setting

Regularization Type

Nilai valid: L1, L2, dan None.

Maximum Number of Iterations

Jumlah maksimum iterasi. Nilai default: 100.

Regularization Coefficient

Jika parameter Tipe Regularisasi disetel ke None, parameter ini tidak valid.

Minimum Convergence Deviance

Deviasi konvergensi minimum. Nilai default: 0,000001.

Metode 2: Gunakan perintah PAI

Konfigurasikan parameter komponen menggunakan perintah PAI. Anda dapat menggunakan komponen SQL Script untuk memanggil perintah PAI. Untuk informasi lebih lanjut, lihat SQL Script.

PAI -name logisticregression_multi
    -project algo_public
    -DmodelName="xlab_m_logistic_regression_6096"
    -DregularizedLevel="1"
    -DmaxIter="100"
    -DregularizedType="l1"
    -Depsilon="0.000001"
    -DlabelColName="y"
    -DfeatureColNames="pdays,emp_var_rate"
    -DgoodValue="1"
    -DinputTableName="bank_data"

Parameter

Diperlukan

Deskripsi

Nilai default

inputTableName

Ya

Nama tabel input.

Tidak tersedia

featureColNames

Tidak

Kolom fitur yang dipilih dari tabel input untuk pelatihan.

Catatan

Maksimum 20 juta fitur didukung.

Semua kolom dengan tipe data numerik

labelColName

Ya

Nama kolom label yang dipilih dari tabel input.

Tidak tersedia

inputTablePartitions

Tidak

Partisi yang dipilih dari tabel input untuk pelatihan. Tentukan parameter ini dalam salah satu format berikut:

  • partition_name=value

  • name1=value1/name2=value2: partisi multi-level

Catatan

Jika Anda menentukan beberapa partisi, pisahkan mereka dengan koma (,).

Tabel penuh

modelName

Ya

Nama model keluaran.

Tidak tersedia

regularizedType

Tidak

Tipe regularisasi. Nilai valid: l1, l2, dan None.

l1

regularizedLevel

Tidak

Koefisien regularisasi. Jika parameter regularizedType disetel ke None, parameter ini tidak valid.

1.0

maxIter

Tidak

Jumlah maksimum iterasi algoritma L-BFGS (Limited-memory BFGS).

100

epsilon

Tidak

Kesalahan konvergensi. Parameter ini menentukan kondisi untuk menghentikan algoritma L-BFGS. Jika selisih log-likelihood antara dua iterasi kurang dari nilai yang ditentukan oleh parameter ini, iterasi algoritma L-BFGS dihentikan.

1.0e-06

enableSparse

Tidak

Menentukan apakah data input dalam format jarang. Nilai valid: true dan false.

false

itemDelimiter

Tidak

Pemisah yang digunakan untuk memisahkan pasangan key-value ketika data dalam data input dalam format jarang.

,

kvDelimiter

Tidak

Pemisah yang digunakan untuk memisahkan keys dan values ketika data dalam tabel input dalam format jarang.

:

coreNum

Tidak

Jumlah core.

Ditentukan oleh sistem

memSizePerCore

Tidak

Ukuran memori setiap core. Satuan: MB.

Ditentukan oleh sistem

Contoh

  1. Eksekusi pernyataan SQL berikut untuk menghasilkan data pelatihan:

    drop table if exists multi_lr_test_input;
    create table multi_lr_test_input
    as
    select
        *
    from
    (
        select
            cast(1 as double) as f0,
            cast(0 as double) as f1,
            cast(0 as double) as f2,
            cast(0 as double) as f3,
            cast(0 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(1 as double) as f1,
                cast(0 as double) as f2,
                cast(0 as double) as f3,
                cast(0 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(0 as double) as f1,
                cast(1 as double) as f2,
                cast(0 as double) as f3,
                cast(2 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(0 as double) as f1,
                cast(0 as double) as f2,
                cast(1 as double) as f3,
                cast(1 as bigint) as label
    ) a;

    Tabel berikut menyediakan data pelatihan yang dihasilkan dalam tabel multi_lr_test_input.

    f0

    f1

    f2

    f3

    label

    1.0

    0.0

    0.0

    0.0

    0

    0.0

    0.0

    1.0

    0.0

    2

    0.0

    0.0

    0.0

    1.0

    1

    0.0

    1.0

    0.0

    0.0

    0

  2. Jalankan perintah PAI berikut untuk mengirimkan parameter komponen Regresi Logistik untuk Klasifikasi Multikelas:

    drop offlinemodel if exists multi_lr_test_model;
    PAI -name logisticregression_multi
        -project algo_public
        -DmodelName="multi_lr_test_model"
        -DitemDelimiter=","
        -DregularizedLevel="1"
        -DmaxIter="100"
        -DregularizedType="None"
        -Depsilon="0.000001"
        -DkvDelimiter=":"
        -DlabelColName="label"
        -DfeatureColNames="f0,f1,f2,f3"
        -DenableSparse="false"
        -DinputTableName="multi_lr_test_input";
  3. Jalankan perintah PAI berikut untuk mengirimkan parameter komponen Prediksi:

    drop table if exists multi_lr_test_prediction_result;
    PAI -name prediction
        -project algo_public
        -DdetailColName="prediction_detail"
        -DmodelName="multi_lr_test_model"
        -DitemDelimiter=","
        -DresultColName="prediction_result"
        -Dlifecycle="28"
        -DoutputTableName="multi_lr_test_prediction_result"
        -DscoreColName="prediction_score"
        -DkvDelimiter=":"
        -DinputTableName="multi_lr_test_input"
        -DenableSparse="false"
        -DappendColNames="label";
  4. Lihat tabel multi_lr_test_prediction_result.

    label

    prediction_result

    prediction_score

    prediction_detail

    0

    0

    0.9999997274902165

    {"0": 0.9999997274902165, "1": 2.324679066261573e-07, "2": 2.324679066261569e-07}

    0

    0

    0.9999997274902165

    {"0": 0.9999997274902165, "1": 2.324679066261573e-07, "2": 2.324679066261569e-07}

    2

    2

    0.9999999155958832

    {"0": 2.018833979850994e-07, "1": 2.324679066261573e-07, "2": 0.9999999155958832}

    1

    1

    0.9999999155958832

    {"0": 2.018833979850994e-07, "1": 0.9999999155958832, "2": 2.324679066261569e-07}