# 正常參數
- booster
- gbtree 樹模型做為基分類器(預設)
- gbliner 線性模型做為基分類器
- silent
- silent=0時,不輸出中間過程(預設)
- silent=1時,輸出中間過程
- nthread
- nthread=-1時,使用全部CPU進行并行運算(預設)
- nthread=1時,使用1個CPU進行運算。
- scale_pos_weight
- 正樣本的權重,在二分類任務中,當正負樣本比例失衡時,設定正樣本的權重,模型效果更好。例如,當正負樣本比例為1:10時,scale_pos_weight=10。
# 模型參數
- n_estimatores
- 含義:總共疊代的次數,即決策樹的個數
- 調參:
- early_stopping_rounds
- 含義:在驗證集上,當連續n次疊代,分數沒有提高後,提前終止訓練。
- 調參:防止overfitting。
- max_depth
- 含義:樹的深度,預設值為6,典型值3-10。
- 調參:值越大,越容易過拟合;值越小,越容易欠拟合。
- min_child_weight
- 含義:預設值為1,。
- 調參:值越大,越容易欠拟合;值越小,越容易過拟合(值較大時,避免模型學習到局部的特殊樣本)。
- subsample
- 含義:訓練每棵樹時,使用的資料占全部訓練集的比例。預設值為1,典型值為0.5-1。
- 調參:防止overfitting。
- colsample_bytree
- 含義:訓練每棵樹時,使用的特征占全部特征的比例。預設值為1,典型值為0.5-1。
- 調參:防止overfitting。
# 學習任務參數
- learning_rate
- 含義:學習率,控制每次疊代更新權重時的步長,預設0.3。
- 調參:值越小,訓練越慢。
- 典型值為0.01-0.2。
- objective 目标函數
- 回歸任務
- reg:linear (預設)
- reg:logistic
- 二分類
- binary:logistic 機率
- binary:logitraw 類别
- 多分類
- multi:softmax num_class=n 傳回類别
- multi:softprob num_class=n 傳回機率
- rank:pairwise
- 回歸任務
- eval_metric
- 回歸任務(預設rmse)
- rmse--均方根誤差
- mae--平均絕對誤差
- 分類任務(預設error)
- auc--roc曲線下面積
- error--錯誤率(二分類)
- merror--錯誤率(多分類)
- logloss--負對數似然函數(二分類)
- mlogloss--負對數似然函數(多分類)
- 回歸任務(預設rmse)
- gamma
- 懲罰項系數,指定節點分裂所需的最小損失函數下降值。
- 調參:
- alpha
- L1正則化系數,預設為1
- lambda
- L2正則化系數,預設為1
記錄一下Xgboost中的參數含義,友善之後用到時回過頭再來檢視,後續還會繼續更新其他模型的參數含義。