在XGBoost算法原理小結中,我們討論了XGBoost的算法原理,這一片我們討論如何使用XGBoost的Python類庫,以及一些重要參數的意義和調參思路。
本文主要參考了XGBoost的Python文檔 和 XGBoost的參數文檔。
1. XGBoost類庫概述
XGBoost除了支持Python外,也支持R,Java等語言。本文關注於Python的XGBoost類庫,安裝使用"pip install xgboost"即可,目前使用的是XGBoost的0.90版本。XGBoost類庫除了支持決策樹作爲弱學習器外,還支持線性分類器,以及帶DropOut的決策樹DART,不過通常情況下,我們使用默認的決策樹弱學習器即可,本文也只會討論使用默認決策樹弱學習器的XGBoost。
XGBoost有2種Python接口風格。一種是XGBoost自帶的原生Python API接口,另一種是sklearn風格的API接口,兩者的實現是基本一樣的,僅僅有細微的API使用的不同,主要體現在參數命名上,以及數據集的初始化上面。
2. XGBoost類庫的基本使用方式
完整示例參見我的Github代碼。