Halaman ini menunjukkan cara mengevaluasi model regresi dan klasifikasi AutoML.
Vertex AI menyediakan metrik evaluasi model untuk membantu Anda menentukan performa model, seperti metrik presisi dan perolehan. Vertex AI menghitung metrik evaluasi menggunakan set pengujian.
Sebelum memulai
Sebelum mengevaluasi model, Anda harus melatihnya.
Cara menggunakan metrik evaluasi model
Metrik evaluasi model menyediakan pengukuran kuantitatif terkait performa model Anda pada set pengujian. Cara Anda menafsirkan dan menggunakan metrik tersebut bergantung pada kebutuhan bisnis dan masalah yang biasa dipecahkan oleh model Anda dalam pelatihan. Misalnya, Anda mungkin memiliki toleransi yang lebih rendah untuk positif palsu daripada negatif palsu, atau sebaliknya. Pertanyaan-pertanyaan semacam ini perlu dipertimbangkan untuk menentukan metrik mana yang akan menjadi fokus Anda.
Mendapatkan metrik evaluasi
Anda dapat memperoleh serangkaian metrik evaluasi agregat untuk model Anda dan, untuk beberapa objektif, metrik evaluasi untuk kelas atau label tertentu. Metrik evaluasi untuk kelas atau label tertentu juga dikenal sebagai slice evaluasi. Konten berikut menjelaskan cara mendapatkan metrik evaluasi gabungan dan slice evaluasi menggunakan konsol Google Cloud atau API.
Konsol Google Cloud
Di konsol Google Cloud, di bagian Vertex AI, buka halaman Model.
Di drop-down Region, pilih region tempat model Anda berada.
Dari daftar model, klik model Anda, yang akan membuka tab Evaluasi model.
Di tab Evaluasi, Anda dapat melihat metrik evaluasi gabungan model, seperti Presisi rata-rata dan Perolehan.
Jika tujuan model memiliki slice evaluasi, konsol akan menampilkan daftar label. Anda dapat mengklik label guna melihat metrik evaluasi untuk label tersebut, seperti yang ditunjukkan pada contoh berikut:
API
Permintaan API untuk mendapatkan metrik evaluasi sama untuk setiap jenis data dan tujuan, tetapi outputnya berbeda. Contoh berikut menunjukkan permintaan yang sama, tetapi responsnya berbeda.
Mendapatkan metrik evaluasi model agregat
Metrik evaluasi model agregat menyediakan informasi tentang model secara keseluruhan. Untuk melihat informasi tentang slice tertentu, cantumkan slice evaluasi model.
Untuk melihat metrik evaluasi model agregat, gunakan
metode
projects.locations.models.evaluations.get
.
Pilih tab di bawah ini untuk objektif Anda:
Klasifikasi
Vertex AI menampilkan array metrik keyakinan. Setiap elemen
menampilkan metrik evaluasi pada nilai confidenceThreshold
yang berbeda
(mulai dari 0 dan hingga 1). Dengan melihat nilai minimum yang berbeda, Anda
dapat mengetahui pengaruh nilai minimum terhadap metrik lainnya seperti presisi dan perolehan.
Pilih tab yang sesuai dengan bahasa atau lingkungan Anda:
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Region tempat model Anda disimpan.
- PROJECT: Project ID Anda.
- MODEL_ID: ID resource model.
- PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.
- EVALUATION_ID: ID untuk evaluasi model (muncul dalam respons).
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Java Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API.
Regresi
Pilih tab yang sesuai dengan bahasa atau lingkungan Anda:
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Region tempat model Anda disimpan.
- PROJECT: Project ID Anda.
- MODEL_ID: ID resource model.
- PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.
- EVALUATION_ID: ID untuk evaluasi model (muncul dalam respons).
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Java Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API.
Membuat daftar semua slice evaluasi (khusus model klasifikasi)
Metode
projects.locations.models.evaluations.slices.list
mencantumkan semua slice evaluasi untuk model Anda. Anda harus
memiliki ID evaluasi model, yang bisa Anda dapatkan saat Anda
melihat metrik evaluasi agregat.
Anda dapat menggunakan slice evaluasi model untuk menentukan performa model pada
label tertentu. Kolom value
mengindikasikan untuk label mana metrik digunakan.
Vertex AI menampilkan array metrik keyakinan. Setiap elemen
menampilkan metrik evaluasi pada nilai confidenceThreshold
yang berbeda
(mulai dari 0 dan hingga 1). Dengan melihat nilai minimum yang berbeda, Anda
dapat mengetahui pengaruh nilai minimum terhadap metrik lainnya seperti presisi dan perolehan.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Region tempat Model berada. Misalnya,
us-central1
. - PROJECT: Project ID Anda.
- MODEL_ID: ID model Anda.
- EVALUATION_ID: ID evaluasi model yang berisi slice evaluasi yang akan dicantumkan.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Java Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API.
Mendapatkan metrik untuk satu slice
Guna melihat metrik evaluasi untuk satu slice, gunakan
metode
projects.locations.models.evaluations.slices.get
. Anda harus memiliki ID slice, yang disediakan saat Anda mencantumkan semua
slice. Contoh berikut berlaku untuk semua tujuan dan jenis
data.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Region tempat Model berada. Misalnya, us-central1.
- PROJECT: Project ID Anda.
- MODEL_ID: ID model Anda.
- EVALUATION_ID: ID evaluasi model yang berisi slice evaluasi yang akan diambil.
- SLICE_ID: ID slice evaluasi yang akan diambil.
- PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.
- EVALUATION_METRIC_SCHEMA_FILE_NAME: Nama file skema
yang menentukan metrik evaluasi yang akan ditampilkan seperti
classification_metrics_1.0.0
.
Metode HTTP dan URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Java Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Node.js Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API.
Metrik evaluasi model
Vertex AI menampilkan beberapa metrik evaluasi yang berbeda, seperti nilai minimum keyakinan, presisi, dan perolehan. Metrik yang ditampilkan Vertex AI bergantung pada objektif model Anda. Misalnya, Vertex AI menyediakan metrik evaluasi yang berbeda untuk model klasifikasi gambar dibandingkan dengan model deteksi objek gambar.
File skema menentukan metrik evaluasi mana yang disediakan Vertex AI untuk setiap objektif.
Anda dapat melihat dan mendownload file skema dari lokasi Cloud Storage
berikut:
gs://google-cloud-aiplatform/schema/modelevaluation/
Metrik evaluasinya adalah:
Klasifikasi
- AuPRC: Area di bawah kurva presisi-perolehan (PR), juga disebut sebagai presisi rata-rata. Nilai ini memiliki rentang dari 0 sampai 1, dengan nilai yang lebih tinggi menunjukkan model yang berkualitas lebih tinggi.
- AuROC: Area di bawah kurva karakteristik operasi penerima. Nilai ini memiliki rentang dari 0 sampai 1, dengan nilai yang lebih tinggi menunjukkan model yang berkualitas lebih tinggi.
- Kerugian log: Entropi silang antara prediksi model dan nilai target. Nilai ini memiliki rentang dari 0 hingga tidak terbatas, dengan nilai yang lebih rendah menunjukkan model yang berkualitas lebih tinggi.
- Nilai minimum keyakinan: Skor keyakinan yang menentukan prediksi yang akan ditampilkan. Model akan menampilkan prediksi yang berada pada nilai ini atau nilai yang lebih tinggi. Nilai minimum keyakinan yang lebih tinggi meningkatkan presisi, tetapi menurunkan perolehan. Vertex AI menampilkan metrik keyakinan pada berbagai nilai minimum untuk menunjukkan pengaruh nilai minimum terhadap presisi dan perolehan.
- Perolehan: Fraksi prediksi dengan class ini yang diprediksi dengan benar oleh model. Perolehan disebut juga sebagai rasio positif benar.
- Perolehan pada nilai 1: Perolehan (rasio positif benar) ketika hanya mempertimbangkan label yang memiliki skor prediksi tertinggi dan tidak berada di bawah nilai minimum keyakinan untuk setiap contoh.
- Presisi: Bagian prediksi klasifikasi yang dihasilkan oleh model dengan benar.
- Presisi pada nilai 1: Presisi ketika hanya mempertimbangkan label yang memiliki skor prediksi tertinggi dan tidak berada di bawah nilai minimum keyakinan untuk setiap contoh.
- Skor F1: Rata-rata harmonis dari presisi dan perolehan. F1 adalah metrik yang berguna jika Anda mencari keseimbangan antara presisi dan perolehan, dan ketika ada distribusi kelas yang tidak merata.
- Skor F1 pada nilai 1: Rata-rata harmonis dari perolehan pada nilai 1 dan presisi pada nilai 1.
- Jumlah negatif benar: Berapa kali model memprediksi kelas negatif dengan benar.
- Jumlah positif benar: Berapa kali model memprediksi kelas positif dengan benar.
- Jumlah negatif palsu (NP): Berapa kali model salah memprediksi kelas negatif.
- Jumlah positif palsu (PP): Berapa kali model salah memprediksi kelas positif.
- Rasio positif palsu: Bagian hasil yang salah diprediksi dari semua hasil yang diprediksi.
- Rasio positif palsu pada nilai 1: Rasio positif palsu jika hanya mempertimbangkan label yang memiliki skor prediksi tertinggi dan tidak berada di bawah nilai minimum keyakinan untuk setiap contoh.
- Matriks konfusi: Matriks konfusi menunjukkan seberapa sering model memprediksi hasil dengan benar. Untuk hasil yang salah diprediksi, matriks akan menampilkan hasil yang diprediksi oleh model. Matriks konfusi ini membantu Anda memahami di bagian mana model Anda "kebingungan" membedakan dua hasil.
- Atribusi fitur model: Vertex AI menunjukkan dampak setiap fitur terhadap model. Nilai diberikan dalam bentuk persentase untuk setiap fitur: makin tinggi persentasenya, makin besar dampak fitur tersebut terhadap pelatihan model. Tinjau informasi ini untuk memastikan semua fitur yang paling penting sesuai untuk data dan masalah bisnis Anda. Untuk mempelajari lebih lanjut lihat Atribusi fitur untuk klasifikasi dan regresi.
Regresi
- MAE: Rataan galat mutlak (MAE) adalah selisih rata-rata mutlak antara nilai target dan nilai yang diprediksi. Metrik ini memiliki rentang dari 0 hingga tidak terbatas, dengan nilai yang lebih rendah menunjukkan model yang berkualitas lebih tinggi.
- RMSE: Galat akar rataan kuadrat adalah akar kuadrat dari rata-rata selisih kuadrat antara nilai target dan nilai yang diprediksi. RMSE lebih sensitif terhadap pencilan dibandingkan MAE. Jadi, jika Anda khawatir dengan galat yang besar, RMSE dapat menjadi metrik yang lebih berguna untuk dievaluasi. Serupa dengan MAE, nilai yang lebih kecil menunjukkan model yang berkualitas lebih tinggi (0 merepresentasikan prediktor sempurna).
- RMSLE: Metrik galat logaritmik akar rataan kuadrat mirip dengan RMSE, tetapi metrik ini menggunakan logaritma natural dari nilai yang diprediksi dan nilai sebenarnya ditambah 1. RMSLE menindak prediksi yang kurang dengan lebih tegas daripada prediksi yang berlebihan. RMSLE juga dapat menjadi metrik yang sesuai jika Anda tidak ingin menindak selisih untuk nilai prediksi yang besar dengan lebih tegas daripada nilai prediksi yang kecil. Metrik ini memiliki rentang dari 0 hingga tidak terbatas, dengan nilai yang lebih rendah menunjukkan model yang berkualitas lebih tinggi. Metrik evaluasi RMSLE hanya ditampilkan jika semua label dan nilai yang diprediksi tidak negatif.
- r^2: r kuadrat (r^2) adalah kuadrat dari koefisien korelasi Pearson antara label dan nilai yang diprediksi. Metrik ini memiliki rentang antara 0 dan 1. Nilai yang lebih tinggi menunjukkan kecocokan yang lebih dekat dengan garis regresi.
-
MAPE: Rataan galat persentase mutlak (MAPE) adalah selisih rata-rata persentase mutlak
antara label dan nilai yang diprediksi. Metrik ini
memiliki rentang antara nol dan tidak terbatas, dengan nilai yang lebih rendah menunjukkan
model yang berkualitas lebih tinggi.
MAPE tidak ditampilkan jika kolom target berisi nilai 0. Dalam hal ini, MAPE tidak terdefinisi. - Atribusi fitur model: Vertex AI menunjukkan dampak setiap fitur terhadap model. Nilai diberikan dalam bentuk persentase untuk setiap fitur: makin tinggi persentasenya, makin besar dampak fitur tersebut terhadap pelatihan model. Tinjau informasi ini untuk memastikan semua fitur yang paling penting telah sesuai untuk data dan masalah bisnis Anda. Untuk mempelajari lebih lanjut, lihat Atribusi fitur untuk klasifikasi dan regresi.
Langkah selanjutnya
Setelah siap untuk membuat prediksi dengan model klasifikasi atau regresi, Anda memiliki dua opsi:
- Membuat prediksi online (real-time) menggunakan model.
- Mendapatkan prediksi batch langsung dari model.
Selain itu, Anda dapat:
- Melihat arsitektur model.
- Mempelajari cara mengekspor model.