Algoritma Evaluasi Klasifikasi Multikelas digunakan untuk mengevaluasi efisiensi model klasifikasi yang memproses masalah dengan lebih dari dua kelas. Algoritma ini menyediakan metrik seperti akurasi, laju recall, Skor F1, dan Matriks kebingungan untuk mengukur akurasi klasifikasi setiap kelas. Matriks kebingungan menampilkan hubungan antara kelas yang diprediksi oleh model dengan kelas sebenarnya. Metrik lainnya membantu menentukan keakuratan hasil klasifikasi untuk setiap kelas. Metrik-metrik ini membantu Anda memahami performa model di setiap kelas dan dapat digunakan untuk optimasi model selanjutnya.
Konfigurasikan komponen
Metode 1: Konfigurasikan komponen pada halaman pipeline
Konfigurasikan parameter Multiclass Classification Evaluation komponen pada halaman pipeline Machine Learning Designer di konsol Platform for AI (PAI). Tabel berikut menjelaskan parameter-parameter tersebut.
Tab | Parameter | Deskripsi |
Fields Setting | Original Classification Result Column | Kolom label asli dapat dipilih untuk parameter ini. Maksimal 1.000 kelas didukung. |
Predicted Classification Result Column | Kolom hasil klasifikasi yang diprediksi. Dalam banyak kasus, parameter ini diatur ke prediction_result. | |
Advanced Options | Jika Anda memilih Advanced Options, parameter Predicted Classification Result Column valid. | |
Prediction Result Probability Column | Kolom yang digunakan untuk menghitung log loss model. Dalam banyak kasus, parameter ini diatur ke prediction_detail. Parameter ini hanya valid untuk model random forest. Jika Anda mengonfigurasi parameter ini untuk model lain, mungkin akan terjadi kesalahan. | |
Tuning | Cores | Jumlah inti. Secara default, sistem menentukan nilainya. Parameter ini harus digunakan bersama dengan parameter Memory Size per Core. |
Memory Size per Core | Ukuran memori setiap inti. Satuan: MB. Secara default, sistem menentukan nilainya. |
Metode 2: Gunakan perintah PAI
Konfigurasikan parameter Multiclass Classification Evaluation komponen menggunakan perintah PAI. Anda dapat menggunakan komponen SQL Script untuk memanggil perintah PAI. Untuk informasi lebih lanjut, lihat Skenario 4: Jalankan Perintah PAI dalam Komponen Skrip SQL.
PAI -name MultiClassEvaluation -project algo_public
-DinputTableName="test_input"
-DoutputTableName="test_output"
-DlabelColName="label"
-DpredictionColName="prediction_result"
-Dlifecycle=30;Parameter | Diperlukan | Nilai default | Deskripsi |
inputTableName | Ya | Tidak ada nilai default | Nama tabel input. |
inputTablePartitions | Tidak | Tabel penuh | Partisi yang dipilih dari tabel input untuk pelatihan. |
outputTableName | Ya | Tidak ada nilai default | Nama tabel output. |
labelColName | Ya | Tidak ada nilai default | Nama kolom label asli dalam tabel input. |
predictionColName | Ya | Tidak ada nilai default | Nama kolom label hasil prediksi. |
predictionDetailColName | Tidak | Tidak ada nilai default | Nama kolom probabilitas hasil prediksi. Contoh: |
lifecycle | Tidak | Tidak ada nilai default | Lifecycle tabel output. |
coreNum | Tidak | Ditentukan oleh sistem | Jumlah inti. |
memSizePerCore | Tidak | Ditentukan oleh sistem | Ukuran memori setiap inti. |
Contoh
Tambahkan komponen SQL Script sebagai node ke kanvas dan jalankan pernyataan SQL berikut untuk menghasilkan data pelatihan.
drop table if exists multi_esti_test; create table multi_esti_test as select * from ( select '0' as id,'A' as label,'A' as prediction,'{"A": 0.6, "B": 0.4}' as detail union all select '1' as id,'A' as label,'B' as prediction,'{"A": 0.45, "B": 0.55}' as detail union all select '2' as id,'A' as label,'A' as prediction,'{"A": 0.7, "B": 0.3}' as detail union all select '3' as id,'A' as label,'A' as prediction,'{"A": 0.9, "B": 0.1}' as detail union all select '4' as id,'B' as label,'B' as prediction,'{"A": 0.2, "B": 0.8}' as detail union all select '5' as id,'B' as label,'B' as prediction,'{"A": 0.1, "B": 0.9}' as detail union all select '6' as id,'B' as label,'A' as prediction,'{"A": 0.52, "B": 0.48}' as detail union all select '7' as id,'B' as label,'B' as prediction,'{"A": 0.4, "B": 0.6}' as detail union all select '8' as id,'B' as label,'A' as prediction,'{"A": 0.6, "B": 0.4}' as detail union all select '9' as id,'A' as label,'A' as prediction,'{"A": 0.75, "B": 0.25}' as detail )tmp;Tambahkan komponen SQL Script sebagai node ke kanvas dan jalankan perintah PAI berikut untuk melatih model.
drop table if exists ${o1}; PAI -name MultiClassEvaluation -project algo_public -DinputTableName="multi_esti_test" -DoutputTableName=${o1} -DlabelColName="label" -DpredictionColName="prediction" -Dlifecycle=30;Klik kanan komponen SQL Script dan pilih View Data > SQL Script Output untuk melihat hasil pelatihan.
| result | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | { "ActualLabelFrequencyList": [5, 5], "ActualLabelProportionList": [0.5, 0.5], "ConfusionMatrix": [[4, 1], [2, 3]], "LabelList": ["A", "B"], "LabelMeasureList": [{ "Accuracy": 0.7, "F1": 0.7272727272727273, "FalseDiscoveryRate": 0.3333333333333333, "FalseNegative": 1, "FalseNegativeRate": 0.2, "FalsePositive": 2, "FalsePositiveRate": 0.4, "Kappa": 0.3999999999999999, "NegativePredictiveValue": 0.75, "Precision": 0.6666666666666666, "Sensitivity": 0.8, "Specificity": 0.6, "TrueNegative": 3, "TruePositive": 4}, { "Accuracy": 0.7, "F1": 0.6666666666666666, "FalseDiscoveryRate": 0.25, "FalseNegative": 2, "FalseNegativeRate": 0.4, "FalsePositive": 1, "FalsePositiveRate": 0.2, "Kappa": 0.3999999999999999, "NegativePredictiveValue": 0.6666666666666666, "Precision": 0.75, "Sensitivity": 0.6, "Specificity": 0.8, "TrueNegative": 4, "TruePositive": 3}], "LabelNumber": 2, "OverallMeasures": { "Accuracy": 0.7, "Kappa": 0.3999999999999999, "LabelFrequencyBasedMicro": { "Accuracy": 0.7, "F1": 0.696969696969697, "FalseDiscoveryRate": 0.2916666666666666, "FalseNegative": 1.5, "FalseNegativeRate": 0.3, "FalsePositive": 1.5, "FalsePositiveRate": 0.3, "Kappa": 0.3999999999999999, "NegativePredictiveValue": 0.7083333333333333, "Precision": 0.7083333333333333, "Sensitivity": 0.7, "Specificity": 0.7, "TrueNegative": 3.5, "TruePositive": 3.5}, "MacroAveraged": { "Accuracy": 0.7, "F1": 0.696969696969697, "FalseDiscoveryRate": 0.2916666666666666, "FalseNegative": 1.5, "FalseNegativeRate": 0.3, "FalsePositive": 1.5, "FalsePositiveRate": 0.3, "Kappa": 0.3999999999999999, "NegativePredictiveValue": 0.7083333333333333, "Precision": 0.7083333333333333, "Sensitivity": 0.7, "Specificity": 0.7, "TrueNegative": 3.5, "TruePositive": 3.5}, "MicroAveraged": { "Accuracy": 0.7, "F1": 0.7, "FalseDiscoveryRate": 0.3, "FalseNegative": 3, "FalseNegativeRate": 0.3, "FalsePositive": 3, "FalsePositiveRate": 0.3, "Kappa": 0.3999999999999999, "NegativePredictiveValue": 0.7, "Precision": 0.7, "Sensitivity": 0.7, "Specificity": 0.7, "TrueNegative": 7, "TruePositive": 7}}, "PredictedLabelFrequencyList": [6, 4], "PredictedLabelProportionList": [0.6, 0.4], "ProportionMatrix": [[0.8, 0.2], [0.4, 0.6]]} |
Lampiran
Jika Anda menjalankan komponen Evaluasi Klasifikasi Multikelas pada halaman pipeline, Anda dapat mengklik kanan komponen Evaluasi Klasifikasi Multikelas dan memilih Visual Analysis untuk melihat hasilnya.

