網(wǎng)絡(luò)系統(tǒng)的價值跟用戶數(shù)量成重慶seo排名
機器學(xué)習 | Python實現(xiàn)GA-XGBoost遺傳算法優(yōu)化極限梯度提升樹特征分類
目錄
- 機器學(xué)習 | Python實現(xiàn)GA-XGBoost遺傳算法優(yōu)化極限梯度提升樹特征分類
- 基本介紹
- 模型描述
- 程序設(shè)計
- 參考資料
基本介紹
XGBoost的核心算法思想基本就是:
不斷地添加樹,不斷地進行特征分裂來生長一棵樹,每次添加一個樹,其實是學(xué)習一個新函數(shù)f(x),去擬合上次預(yù)測的殘差。當我們訓(xùn)練完成得到k棵樹,我們要預(yù)測一個樣本的分數(shù),其實就是根據(jù)這個樣本的特征,在每棵樹中會落到對應(yīng)的一個葉子節(jié)點,每個葉子節(jié)點就對應(yīng)一個分數(shù)。最后只需要將每棵樹對應(yīng)的分數(shù)加起來就是該樣本的預(yù)測值。
模型描述
- 不斷地枚舉不同樹的結(jié)構(gòu),然后利用打分函數(shù)來尋找出一個最優(yōu)結(jié)構(gòu)的樹,接著加入到模型中,不斷重復(fù)這樣的操作。這個尋找的過程使用的就是貪心算法。選擇一個feature分裂,計算loss function最小值,然后再選一個feature分裂,又得到一個loss function最小值,你枚舉完,找一個效果最好的,把樹給分裂,就得到了小樹