BigQuery ML 模型評估總覽
本文說明 BigQuery ML 如何支援機器學習 (ML) 模型評估。
模型評估總覽
您可以使用 ML 模型評估指標,達成下列目的:
- 評估模型與資料的擬合品質。
- 比較不同模型。
- 預測每個模型在特定資料集上的準確度,以利選取模型。
監督式和非監督式學習模型的評估方式不同:
- 監督式學習模型的評估方式明確,評估集是模型尚未分析的資料,通常會從訓練集中排除,然後用於評估模型效能。建議您不要使用訓練集進行評估,因為這樣會導致模型在一般化新資料的預測結果時,效能不佳。這種結果稱為過度擬合。
- 非監督式學習模型的評估較不明確,通常會因模型而異。由於非監督式學習模型不會保留評估集,因此評估指標是使用整個輸入資料集計算而得。
模型評估服務
BigQuery ML 提供下列函式,可計算機器學習模型的評估指標:
模型類別 | 模型類型 | 模型評估函式 | 函式用途 |
---|---|---|---|
監督式學習 | 線性迴歸 提升樹狀結構迴歸因子 隨機森林迴歸因子 DNN 迴歸因子 廣而深迴歸因子 AutoML Tables 迴歸因子 |
ML.EVALUATE |
報表會顯示下列指標:
|
羅吉斯迴歸 提升樹狀結構分類器 隨機森林分類器 DNN 分類器 廣而深分類器 AutoML Tables 分類器 |
ML.EVALUATE |
報表會顯示下列指標:
|
|
ML.CONFUSION_MATRIX |
回報混淆矩陣。 | ||
ML.ROC_CURVE |
不同門檻值的報表指標,包括:
僅適用於二元分類模型。 |
||
非監督式學習 | K-means | ML.EVALUATE |
回報 Davies-Bouldin 指數,以及資料點與所指派群集質心之間的均方距離。 |
矩陣分解 | ML.EVALUATE |
如果是以明確意見回饋為依據的模型,報表會提供下列指標:
|
|
如果是以隱性意見回饋為依據的模型,則會回報下列指標: |
|||
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 陳述式和函式,請參閱下列文件: