機器學習之隨機森林,供大家參考,具體內容如下
1、Bootstraping(自助法)
名字來自成語“pull up by your own bootstraps”,意思是依靠你自己的資源,稱為自助法,它是一種有放回的抽樣方法,它是非參數統計中一種重要的估計統計量方差進而進行區間估計的統計方法。其核心思想和基本步驟如下:
(1) 采用重抽樣技術從原始樣本中抽取一定數量(自己給定)的樣本,此過程允許重復抽樣。
(2) 根據抽出的樣本計算給定的統計量T。
(3) 重復上述N次(一般大于1000),得到N個統計量T。
(4) 計算上述N個統計量T的樣本方差,得到統計量的方差。
應該說Bootstrap是現代統計學較為流行的一種統計方法,在小樣本時效果很好。通過方差的估計可以構造置信區間等,其運用范圍得到進一步延伸。
2、Bagging (套袋法)
Bagging即bootstrap aggregating(自舉匯聚法)的縮寫,其算法過程如下:
A).從原始樣本集中抽取訓練集。每輪從原始樣本集中使用Bootstraping的方法抽取n個訓練樣本,意思是從原始集合中隨機選擇一個樣本,然后隨機選擇一個樣本來代替這個樣本(在訓練集中,有些樣本可能被多次抽取到,而有些樣本可能一次都沒有被抽中)。共進行k輪抽取,得到k個訓練集。(k個訓練集之間是相互獨立的)
B).每次使用一個訓練集得到一個模型,k個訓練集共得到k個模型。(注:這里并沒有具體的分類算法或回歸方法,我們可以根據具體問題采用不同的分類或回歸方法,如決策樹、感知器等)
3、Boosting(提升法):
其主要思想是將弱分類器組裝成一個強分類器。在PAC(概率近似正確)學習框架下,則一定可以將弱分類器組裝成一個強分類器。關于Boosting的兩個核心問題:
1)在每一輪如何改變訓練數據的權值或概率分布?
通過提高那些在前一輪被弱分類器分錯樣例的權值,減小前一輪分對樣例的權值,來使得分類器對誤分的數據有較好的效果。
2)通過什么方式來組合弱分類器?
通過加法模型將弱分類器進行線性組合,比如AdaBoost通過加權多數表決的方式,即增大錯誤率小的分類器的權值,同時減小錯誤率較大的分類器的權值。而提升樹通過擬合殘差的方式逐步減小殘差,將每一步生成的模型疊加得到最終模型。
4、gradient boosting(梯度提升法):
Boosting是一種思想,Gradient Boosting是一種實現Boosting的方法,它主要的思想是,每一次建立模型是在之前建立模型損失函數的梯度下降方向。損失函數(loss function)描述的是模型的不靠譜程度,損失函數越大,則說明模型越容易出錯。如果我們的模型能夠讓損失函數持續的下降,則說明我們的模型在不停的改進,而最好的方式就是讓損失函數在其梯度(Gradient)的方向上下降。
新聞熱點
疑難解答