XGBoost模型的參數調優


XGBoost算法在實際運行的過程中,可以通過以下要點進行參數調優:

(1)添加正則項:

    在模型參數中添加正則項,或加大正則項的懲罰力度,即通過調整加權參數,從而避免模型出現過擬合的情況。

(2)控制決策樹的層數:

通過葉子結點數目控制決策樹的層數,視乎樣本量大小決定,對於10萬以下

的樣本,一般在1到4之間,而針對更大的樣本量,可以嘗試更深的決策樹層數
發掘隱藏在數據里的一些規律或模式。
(3)設定葉子結點包含的最少樣本數目:

從而防止出現過小的葉子結點,降低預測
(4)增加算法迭代次數:

可有效提高訓練集的預測精度,但若迭代次數過多容易造成
成過擬合
(5)通過收縮步長和列采樣的方法來避免過擬合:

收縮步長即在每一次迭代的過程中,

對擬合的殘差乘以一個收縮系數,從而限制當前迭代過程的學習步長;列
采樣即本次迭代參與優化的特征維度並不是所有的維度,而是通過采樣得到的
維度,更少的選擇會讓算法不容易將訓練集的殘差擬合得過好,從而造成過擬
合;
(6)通過交叉驗證的方法:

來確定模型參數,從而達到預測准確率與防止過擬合之
間的平衡。交叉驗證(Cross-validation)的本質思想是把在某種意義下將原始數
據進行分組,一部分做為訓練集,另一部分做為驗證集,首先用訓練集對分類
器進行訓練,再利用驗證集來測試訓練得到的模型,以此來做為評價分類器的
性能指標。常用的交叉驗證方法是K折交叉驗證,即將樣本分為K個互不相交
的子樣本,一個單獨的子樣本被保留作為驗證模型的數據,其他K-1個樣本用
來訓練。交叉驗證重復K次,每個子樣本驗證一次,平均K次的得到結果來確定最
終模型使用的參數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM