最近一直想整理一下從boosting到adaboost,再到GDBT再到xgboost最後到lightgbm,順帶也說一下隨機森林各種,因為樹模型在各行各業的模型使用還是挺廣泛的,如果不梳理一下,總覺得缺點什麼,也整理一下自己的思路,話說最近在研究行業,這幾個月看了金融行業裡面的很多細分市場,每一個細分市場都很大,但是研究進去了發現和現實想的不那麼一樣,所以有點失落,還好,如果行業沒有得到肯定,演算法還是比較實在的東西,還是可以整理的。

什麼是集成演算法

按我的理解,集成學習是通過訓練弱幹個學習分類器,並通過一定的結合策略,從而形成強學習器

這裡不得不提的東西,就是網上說的同質學習,異質學習

何為同質學習:所有的個體學習器都是一種類型

何為異質學習:就是和同質相反,所有的個體學習器不完全是一種

同質學習器也會按照個體學習器之間是否依賴關係可以分為兩類,第一個是個體學習器之間存在強依賴關係,一系列個體學習器基本都需要串列生成,代表演算法大部分boosting演算法都是這種

第二個是個體學習器之間不存在依賴關係,一系列演算法可以並行生成,代表演算法是bagging和隨機森林(Random Forest)演算法

隨機森林

隨機森林其實在我的分類裡面有一篇文章介紹,大家可以自己去看

或者我給一個連接吧

jason:隨機森林?

zhuanlan.zhihu.com
圖標

不過還是要說一下cat如果做分類用的guni公式

cat分類有兩種一種回歸,一種分類,回歸可以用最下二乘,分類可以用gini

Gini(D,A)=D1DGini(D1)+D2DGini(D2)

剪枝包括兩種,一種是預剪枝,一種是後剪枝,預剪枝不常用就一筆帶過,預剪枝就是通過提前停止樹的構建而對樹剪枝,預剪枝主要的方法是通過定義樹的高度,定義閥值,當達到某個節點實列小於閥值停止樹的生長,增益值,gini值小於某一個值時停止樹的生長。

後剪枝:

後剪 先構造完整的樹,然後對置信度不高的節點子樹用葉子節點來代替,該葉子的類標記號用該節點子樹中最頻繁的類標記。

介紹boosting

boosting是將弱學習器提升為強學習器的演算法。

接下來的這幾天會完善


推薦閱讀:
查看原文 >>
相关文章