隨機森林樹是上篇決策樹的進階版,是由多棵決策樹所組合出來的,由於是決策樹的進階版,所以說它的效能、預測能力都很強,也就會更多人去使用這個演算法,原理大致上是由多棵決策樹,加入各種變數的訓練資料,讓他大幅運算最終結果,你能想像的是由各式各樣不同的決策樹所組成的學習模型,它的訓練的過程圖會是下圖所示。
如何建立起一個隨機森林樹
1.定義n的隨機樣本,將從資料集中隨機選取n個資料,取完後放回。
2.從選取的n個資料中,訓練出決策樹。(然後決策樹的方式就跟上一篇所示一樣)
3.重複N次的第1個步驟到第2個步驟。
4.將所有決策樹的結果匯合,看大多數分類在哪,來決定分類的最終結果。
那其實說要產生不同的數據集,才能產生多顆不同的決策樹主要有一些方法:
1.Bagging(全名:Bootstrap Aggregation)
將樣子訓練資料抓一些出來,然後做出一顆決策樹,接著再放回去訓練資料裡面,所以說每一次抓樣本的時候有可能會抓到重複的資料,然後會根據訓練資料的難易度也就是簡單或困難去做權重分配,對於難的資料我們可以加強權重與訓練,希望說可以透過這樣的方式讓決策樹的成果效果更好。
2.Boosting
跟Bagging類似,但它訓練方式是反過來的,它是將我們錯誤的訓練資料重複訓練甚至是加重權重並加強練訊,這就很像是國小國中的時候,你不會的數學題目,將類似的題目一直重複的出給你,讓你越練越上手,訓練模型的時候也是這樣去訓練的。
那今天的內容講到這邊,謝謝觀看!!