Random Forest (隨機森林) 學號:R05546035 姓名:王順達 (4)http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html
~Outline~ 演算法介紹 決策樹 隨機森林 程式碼 Demo!!! 結論 參考資料
隨機森林的前身~決策樹演算法 (Decision Tree) 決策樹演算法:思維最直觀,最簡單的演算法 監督式模型 用於classification及regression 概念:決策樹中每個節點表示一次的分類,而每個分叉路徑則代表某個可能的屬性值(feature類別) 節點有三種: 根節點:只有輸出的邊 內部節點:有輸出也有輸入的邊 葉節點/終端節點:只有輸入的邊
隨機森林的前身~決策樹演算法 喜歡看球賽? Yes No 喜歡看帥哥? 喜歡看帥哥?
隨機森林的前身~決策樹演算法 決策樹如何決定節點順序? Splitting Rule: Information Gain(資訊增益):entropy(亂度)越低的越接近根節點 Entropy = -p * log2 p – q * log2q p:true的比例 q:false的比例 Gini Index : 基尼係數越大的越接近根節點 基尼係數越大,表示越不平均。 Gini Index =p^2+q^2 最常見的splitting rule
缺點:很容易overfitting! 隨機森林的前身~決策樹演算法 優點:訓練速度極快(遠優於其他演算法) 如果沒有對決策樹的成長作限制,決策樹會為每個feature創建節點,使得所有資料得到100%正確的分類
解決方法之一:一棵樹不好,那就用多幾棵吧! Step 1:行採樣 Decision Tree Random Forest
解決方法之一:一棵樹不好,那就用多幾棵吧! Step 2:列採樣(挑選feature) Decision Tree Random Forest c c c d d b d b e a e a e a
解決方法之一:一棵樹不好,那就用多幾棵吧! Step 3:投票 Decision Tree Random Forest c c c d d b d b a e a e a e pineapple apple apple pineapple pineapple
隨機森林演算法 監督式模型 集成學習方法(ensemble method) 用於classification及regression 隨機森林的優點: 訓練速度快 基本由決策樹延伸 在训练完后,它能够给出哪些feature比较重要 採樣過程保證了隨機性,大大降低overfitting 的風險
程式碼
程式碼(max_feature 問題)(1/3)
程式碼(max_feature 問題)(2/3)
程式碼(max_feature 問題)(3/3)
Let’s Demo!!!
結論 通過實做,對於data mining的步驟有深刻的認識 利用scikit可以更方便地實現data mining 初次接觸python coding 對於Window 和python的鬧不和感到很生氣。。。
參考資料 決策樹 Decision trees https://chtseng.wordpress.com/2017/02/10/%E6%B1%BA%E7%AD%96%E6%A8%B9-decision-trees/ 信息增益到底怎么理解呢? https://www.zhihu.com/question/22104055 隨機森林(Random Forest)詳解(轉) https://tw.saowen.com/a/ebd618be5c9028168349494ceeb49ba87e9b3a6d114816697ec0cbcc6cf99ff5 转:机器学习中的算法(1)-决策树模型组合之随机森林与GBDT http://blog.csdn.net/bhj5787/article/details/11480911 機器學習算法之隨機森林(Random Forest) https://kknews.cc/zh-tw/news/brzmvj.html 隨機森林Random Forest https://chtseng.wordpress.com/2017/02/24/%E9%9A%A8%E6%A9%9F%E6%A3%AE%E6%9E%97random- forest/ sklearn.ensemble.RandomForestClassifier http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html