【机器学习】决策树算法
在前一期介紹搭建結合機器學習的CI/CD管道時,無意中提到了算法分類。在受監督學習的分類中,有一個既適用于回歸又適用于分類的算法,即我們今天要介紹的決策樹算法(CART, Classification and Regression Tree)。
先說一下這兩類算法索要解決的問題,回歸算法指的是當給出一個點集D,用一個函數去擬合這個點集,并且使得點集與擬合函數間的誤差最小,從而近似模擬出應變量與自變量之間的關系。常用的回歸算法有線性回歸和LASSO回歸,前者通俗易懂,較易實現;后者適用范圍更廣,對數據要求更低,容錯更強。(以下是一元線性回歸擬合。)
分類算法顧名思義對于預測結果沒有數值上的偏差,只有對錯之分。嚴格意義上說決策樹更適用于分類算法,對于回歸的預測只能給出數值的可信范圍。
既然叫做決策"樹",那一定是由一個主干節點和多個分叉節點及葉節點組成的,每個分叉都是一個決策,每一片葉子都是一個最終分類或取值(范圍),
相較于其他回歸算法,決策樹的優點在于:
- 便于理解、編譯和展示(小編曾研究LASSO回歸算法,簡直就是天書);
- 可以對變量進行人為篩查和功能篩選;
-
不需要特別的數據準備,對于原始數據的排序、完整性要求不高。
決策樹算法的缺點在于:
- 算法容易過擬合(Overfitting),往往由于為匹配所有樣本而設置過多決策點,其他監督學習算法也會有類似問題,只是決策樹算法更為敏感,算法生成后往往需要“剪枝(Pruning)”;
- 數據一旦有微小偏差就會影響算法穩定性,對于偏差數據往往需要再建立補償算法的偏差樹以保證原樹的穩定性。
基于上述特性,決策樹算法最常被用來預測一些是非問題。例如根據一個人的家庭背景、收入情況判斷償還銀行貸款的能力;抑或根據性別、年齡、身高、體重判斷他能否從某次災難中幸存。
之前說了決策樹算法既適用于回歸問題又適用于分類問題,回歸問題中自變量是連續的,因此回歸(決策)樹根據訓練結果會返回平均預測值。
分類(決策)樹不會考慮數值的近似關系,而將數值單純地理解為符號,只有一模一樣的數才會合并到同一片葉子。
在決策樹算法的設計中,使用越少的決策點越能提高算法的效率,舉個簡單的例子:有以下五個區間,如何用最少的決策點將五個葉子節點給區分開來。(動腦時間開始。5,4,3,2,1...)
以下公布答案,我們從X1變量出發,通過兩層三個決策點的判斷就得出了全部5個葉子節點,您答對了么?
關注公眾號“達摩院首座”,一起開源一起嗨!
總結
以上是生活随笔為你收集整理的【机器学习】决策树算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10 安装selenium和使用
- 下一篇: 专家的修炼之路 —— 德雷福斯模型 Dr