本頁說明如何使用模型評估指標,評估 AutoML 預測模型。這些指標會透過量化方式,評估模型在測試集的效能。如何解讀及使用這些指標,取決於您的業務需求及模型接受訓練解決的問題。舉例來說,您對偽陽性的容忍度可能低於偽陰性,反之亦然。這類問題會影響您著重的指標。
事前準備
評估模型前,您必須訓練模型,並等待訓練完成。
使用控制台或 API 檢查訓練工作的狀態。
Google Cloud 控制台
在 Google Cloud 控制台的 Vertex AI 專區,前往「訓練」頁面。
如果訓練工作的狀態為「訓練中」,請繼續等待訓練工作完成。如果訓練作業的狀態為「已完成」,即可開始評估模型。
API
選取與語言或環境對應的分頁標籤:
REST
使用任何要求資料之前,請先替換以下項目:
- LOCATION:模型儲存的區域。
- PROJECT:您的專案 ID。
- TRAINING_PIPELINE_ID:訓練管道的 ID。
HTTP 方法和網址:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/trainingPipelines/TRAINING_PIPELINE_ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/trainingPipelines/TRAINING_PIPELINE_ID"
PowerShell
執行下列指令:
$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/trainingPipelines/TRAINING_PIPELINE_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
取得評估指標
您可以取得模型的匯總評估指標。以下內容說明如何使用 Google Cloud 控制台或 API 取得這些指標。
Google Cloud 控制台
在 Google Cloud 控制台的 Vertex AI 專區,前往「Models」頁面。
在「Region」(地區) 下拉式選單中,選取模型所在的地區。
從模型清單中選取你的模型。
選取模型版本號碼。
在「評估」分頁中,您可以查看模型的匯總評估指標。
API
如要查看匯總模型評估指標,請使用 projects.locations.models.evaluations.get
方法。
選取與語言或環境對應的分頁標籤:
REST
使用任何要求資料之前,請先替換以下項目:
- LOCATION:模型儲存的區域。
- PROJECT:您的專案 ID。
- MODEL_ID:模型資源的 ID。模型訓練成功完成後,訓練管道中會顯示 MODEL_ID。請參閱「事前準備」一節,取得 MODEL_ID。
HTTP 方法和網址:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
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
執行下列指令:
$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
您應該會收到如下的 JSON 回應:
模型評估指標
架構檔案會決定 Vertex AI 為每個目標提供的評估指標。
您可以從下列 Cloud Storage 位置查看及下載結構定義檔案:
gs://google-cloud-aiplatform/schema/modelevaluation/
預測模型的評估指標如下:
- MAE:平均絕對誤差 (MAE) 是目標值與預測值之間的平均絕對差異。這個指標的範圍從零到無限大,值越低代表模型品質越好。
-
MAPE:平均絕對百分比誤差 (MAPE) 是標籤和預測值之間的平均絕對百分比差異。這項指標的範圍介於零到無限大之間,值越小代表模型品質越好。
如果目標資料欄含有任何 0 值,系統就不會顯示 MAPE。在這種情況下,MAPE 未定義。 - RMSE:均方根誤差是目標與預測值之間均方差的平方根。RMSE 對離群值比 MAE 更敏感,所以如果您擔心大型誤差,RMSE 可作為更實用的評估指標。RMSE 和 MAE 一樣,值越小代表模型品質越高 (0 代表完美預測因子)。
- RMSLE:均方根對數誤差指標與均方根誤差類似,但會使用預測值和實際值的自然對數加 1。均方根對數誤差對低估的懲罰比高估更重。如果不想對大預測值與小預測值的差異施加不同程度的懲罰,這也是個不錯的指標。這項指標的範圍從零到無限大,值越低代表模型品質越高。只有在所有標籤和預測值皆為非負數時,系統才會傳回 RMSLE 評估指標。
- r^2:r 平方 (r^2) 是標籤與預測值之間的皮爾森相關係數平方,這項指標的範圍介於 0 到 1 之間。值越高,表示越接近迴歸線。
-
Quantile:百分比分位數,表示觀察到的值低於預測值的機率。舉例來說,在 0.2 分位數,觀察到的值應有 20% 的時間低於預測值。如果您指定
minimize-quantile-loss
做為最佳化目標,Vertex AI 就會提供這項指標。 -
觀察到的分位數:顯示在指定分位數中,實際值低於預測值所占的百分比。如果您指定
minimize-quantile-loss
做為最佳化目標,Vertex AI 就會提供這項指標。 -
縮放的彈珠損失:特定分位數的縮放彈珠損失。
值越低代表模型在指定分位數的品質越高。如果您指定
minimize-quantile-loss
做為最佳化目標,Vertex AI 就會提供這項指標。 - 模型特徵歸因: Vertex AI 會顯示各項特徵對模型的影響程度。系統會為每個特徵提供百分比值,百分比越高,代表該特徵對模型訓練的影響越大。請檢閱這項資訊,確保所有最重要的特徵對您的資料和業務問題具有合理意義。詳情請參閱「預測功能中的特徵歸因」。