BigQuery ML 模型評估總覽

本文說明 BigQuery ML 如何支援機器學習 (ML) 模型評估。

模型評估總覽

您可以使用 ML 模型評估指標,達成下列目的:

  • 評估模型與資料的擬合品質。
  • 比較不同模型。
  • 預測每個模型在特定資料集上的準確度,以利選取模型。

監督式和非監督式學習模型的評估方式不同:

  • 監督式學習模型的評估方式明確,評估集是模型尚未分析的資料,通常會從訓練集中排除,然後用於評估模型效能。建議您不要使用訓練集進行評估,因為這樣會導致模型在一般化新資料的預測結果時,效能不佳。這種結果稱為過度擬合
  • 非監督式學習模型的評估較不明確,通常會因模型而異。由於非監督式學習模型不會保留評估集,因此評估指標是使用整個輸入資料集計算而得。

模型評估服務

BigQuery ML 提供下列函式,可計算機器學習模型的評估指標:

模型類別 模型類型 模型評估函式 函式用途
監督式學習 線性迴歸

提升樹狀結構迴歸因子

隨機森林迴歸因子

DNN 迴歸因子

廣而深迴歸因子

AutoML Tables 迴歸因子
ML.EVALUATE 報表會顯示下列指標:
  • 平均絕對誤差
  • 均方誤差
  • 均方對數誤差
  • 中位數絕對誤差
  • r2 分數
  • 解釋變異數
羅吉斯迴歸

提升樹狀結構分類器

隨機森林分類器

DNN 分類器

廣而深分類器

AutoML Tables 分類器
ML.EVALUATE 報表會顯示下列指標:
  • 精確度
  • recall
  • 準確率
  • F1 分數
  • 對數損失
  • roc auc
ML.CONFUSION_MATRIX 回報混淆矩陣
ML.ROC_CURVE 不同門檻值的報表指標,包括:
  • recall
  • 偽陽率
  • 真陽性
  • 偽陽性
  • 真陰性
  • 偽陰性

僅適用於二元分類模型。
非監督式學習 K-means ML.EVALUATE 回報 Davies-Bouldin 指數,以及資料點與所指派群集質心之間的均方距離。
矩陣分解 ML.EVALUATE 如果是以明確意見回饋為依據的模型,報表會提供下列指標:
  • 平均絕對誤差
  • 均方誤差
  • 均方對數誤差
  • 中位數絕對誤差
  • r2 分數
  • 解釋變異數
如果是以隱性意見回饋為依據的模型,則會回報下列指標:
PCA ML.EVALUATE 回報總變異解釋率。
自動編碼器 ML.EVALUATE 報表會顯示下列指標:
  • 平均絕對誤差
  • 均方誤差
  • 均方對數誤差
時間序列 ARIMA_PLUS ML.EVALUATE 報表會顯示下列指標:
  • 平均絕對誤差
  • 均方誤差
  • 平均絕對百分比誤差
  • 對稱平均絕對百分比誤差

這個函式需要新資料做為輸入。
ML.ARIMA_EVALUATE 針對以不同 (p、d、q、has_drift) 元組為特徵的所有 ARIMA 候選模型,回報下列指標:

此外,這項功能還會回報季節性、節慶效應,以及尖峰和低谷離群值等其他資訊。

這項功能不需要輸入新資料。

自動評估 CREATE MODEL 則陳述

BigQuery ML 支援在模型建立期間自動評估。視模型類型、資料分割訓練選項,以及是否使用超參數調整功能而定,系統會根據保留的評估資料集、保留的測試資料集或整個輸入資料集計算評估指標。

  • 對於 k 平均值、PCA、自動編碼器和 ARIMA_PLUS 模型,BigQuery ML 會將所有輸入資料做為訓練資料,並根據整個輸入資料集計算評估指標。

  • 對於線性迴歸、邏輯迴歸、提升樹狀結構、隨機森林、DNN、Wide-and-deep 和矩陣分解模型,系統會根據下列 CREATE MODEL 選項指定的資料集計算評估指標:

    使用超參數調整功能訓練這類模型時,DATA_SPLIT_TEST_FRACTION 選項也有助於定義評估指標的計算依據資料集。詳情請參閱「資料分割」一文。

  • 如為 AutoML Tables 模型,請參閱資料分割作業的用途,瞭解如何用於訓練和評估。

如要取得模型建立期間計算的評估指標,請使用評估函式 (例如 ML.EVALUATE),但不要指定輸入資料。如需範例,請參閱未指定輸入資料的 ML.EVALUATE

使用新資料集進行評估

建立模型後,您可以指定新的資料集進行評估。如要提供新資料集,請使用評估函式 (例如 ML.EVALUATE) 搭配指定的輸入資料。如需範例,請參閱ML.EVALUATE,瞭解如何使用自訂門檻和輸入資料。

後續步驟

如要進一步瞭解支援評估的模型的 SQL 陳述式和函式,請參閱下列文件: