本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
調校XGBoost模型
自動模型調校,又稱為超參數調校,會透過在您的訓練和驗證資料集上,執行許多測試超參數範圍的任務,來尋找最佳版本的模型。您可以選擇三種類型的超參數:
-
學習
objective
功能,用於在模型訓練期間最佳化 -
eval_metric
,用於在驗證期間評估模型效能 -
一組超參數和一系列值,各別用於自動調校模型
您可以從演算法計算的評估指標集中,選擇評估指標。自動模型調校會搜尋所選擇的超參數,以找出產生之模型可最佳化評估指標的值組合。
注意
0.90 XGBoost 的自動模型調校只能從 Amazon 取得 SageMaker SDKs,不能從 SageMaker 主控台取得。
如需模型調校的詳細資訊,請參閱使用 自動模型調校 SageMaker。
演算法運算的評估指標 XGBoost
XGBoost 演算法會計算下列指標,以用於模型驗證。調校模型時,請選擇這些指標的其中之一以評估模型。如需有效eval_metric
值的完整清單,請參閱XGBoost學習任務參數
指標名稱 | 描述 | 最佳化方向 |
---|---|---|
validation:accuracy |
分類率,計算方式為 #(正確)/#(所有案例)。 |
最大化 |
validation:auc |
曲線下的區域。 |
最大化 |
validation:error |
二元分類錯誤率,計算方式為 #(錯誤案例)/#(所有案例)。 |
最小化 |
validation:f1 |
分類準確性的指標,計算方式為精確度和回呼的調和平均值。 |
最大化 |
validation:logloss |
不記錄的機率。 |
最小化 |
validation:mae |
絕對平均值錯誤。 |
最小化 |
validation:map |
平均值的平均精度。 |
最大化 |
validation:merror |
多類別分類錯誤率,計算方式為 #(錯誤案例)/#(所有案例)。 |
最小化 |
validation:mlogloss |
多類別分類的不記錄機率。 |
最小化 |
validation:mse |
均方錯差。 |
最小化 |
validation:ndcg |
正規化的折扣累計收益。 |
最大化 |
validation:rmse |
均方根錯誤。 |
最小化 |
可調XGBoost超參數
使用下列超參數調整XGBoost模型。對最佳化XGBoost評估指標影響最大的超參數為:alpha
、min_child_weight
、subsample
、 eta
和 num_round
。
參數名稱 | 參數類型 | 建議範圍 |
---|---|---|
alpha |
ContinuousParameterRanges |
MinValue:0、 MaxValue:1000 |
colsample_bylevel |
ContinuousParameterRanges |
MinValue:0.1、 MaxValue:1 |
colsample_bynode |
ContinuousParameterRanges |
MinValue:0.1、 MaxValue:1 |
colsample_bytree |
ContinuousParameterRanges |
MinValue:0.5、 MaxValue:1 |
eta |
ContinuousParameterRanges |
MinValue:0.1、 MaxValue:0.5 |
gamma |
ContinuousParameterRanges |
MinValue:0、 MaxValue:5 |
lambda |
ContinuousParameterRanges |
MinValue:0、 MaxValue:1000 |
max_delta_step |
IntegerParameterRanges |
[0, 10] |
max_depth |
IntegerParameterRanges |
[0, 10] |
min_child_weight |
ContinuousParameterRanges |
MinValue:0、 MaxValue:120 |
num_round |
IntegerParameterRanges |
[1, 4000] |
subsample |
ContinuousParameterRanges |
MinValue:0.5、 MaxValue:1 |