決策樹算法指南:應用、優缺點和示例
已發表: 2020-12-10機器學習算法有很多種,每一種都有獨特的應用。 在本文中,我們將了解最流行和最有用的機器學習算法之一,決策樹算法。 我們已經討論了 R 中決策樹的示例,以幫助您熟悉其用法。 讓我們開始吧。
目錄
什麼是決策樹算法?
決策樹是一種有監督的機器學習算法,具有根節點和葉節點。 每個節點代表一個特徵,節點之間的鏈接顯示決策。 每片葉子都代表一個結果。
假設你想去市場買蔬菜。 你有兩個選擇:要么去,要么不去。 如果你不去,你就買不到蔬菜,但如果你去了,你就不得不去市場,這就導致了另一個選擇。 決策樹就是這樣工作的。
決策樹應用
以下是決策樹的一些應用:
營銷:
企業可以使用決策樹通過觀察競爭對手產品和服務的表現來提高其促銷活動的準確性。 決策樹可以幫助細分受眾並支持企業製作具有更高轉化率的更有針對性的廣告。
客戶保留:
公司通過分析他們的行為並發布新的優惠或產品以適應這些行為,使用決策樹來留住客戶。 通過使用決策樹模型,公司還可以計算出客戶的滿意度。
疾病診斷:
決策樹可以幫助醫生和醫療專業人員識別患糖尿病或癡呆等嚴重(或可預防)疾病風險較高的患者。 在這種情況下,決策樹根據特定變量縮小可能性的能力非常有用。
欺詐檢測:
公司可以通過使用決策樹預先識別欺詐行為來防止欺詐。 它可以為公司節省大量資源,包括時間和金錢。
決策樹的優缺點
決策樹算法的優點:
以下是在 R 中使用決策樹的主要優點:
- 比其他模型更容易理解結果。 您可以讓技術團隊對您的決策樹模型進行編程,使其運行速度更快,並且您可以將其應用於新實例。 它的計算根據一個實例進行包含測試,這是一個定性或定量模型。
- 它是非參數的。 由於這個原因,我們問題中存在的自變量不必遵循任何特定的概率分佈。 你可以有共線變量。 無論他們是否具有歧視性,它都不會影響您的決策樹,因為它不必選擇這些變量。
- 他們能夠處理缺失值。 CHAID 將所有缺失值放在一個類別中,您可以將其與另一個類別合併或與其他類別分開。
- 極端的個體值(例如異常值)對決策樹沒有太大影響。 您可以將它們隔離在小節點中,這樣它們就不會影響整個分類。
- 它為您提供了決策過程的出色視覺表示。 決策樹的每個分支都代表可能影響您決策的因素,您可以看到更大的圖景。 您可以使用決策樹來改善團隊中的溝通。
- CART 樹可以直接處理所有變量類型,包括定性、連續和離散變量。
決策樹算法的缺點
- 它不會同時分析所有自變量。 相反,它會按順序評估它們。 因此,樹永遠不會在任何級別修改節點的劃分,這可能會導致樹的選擇出現偏差。
- 如果它靠近頂部,即使修改單個變量也會影響整個樹。 有辦法解決這個問題。 例如,您可以在多個樣本上構建樹並根據均值(或投票)聚合它們; 這稱為重採樣。 但是,它會導致另一組問題,因為它通過使模型更複雜而降低了模型的可讀性。 因此,通過重採樣,您可以擺脫決策樹的最佳品質。 為什麼會出現問題? 假設一個變量具有特定組的所有特性,但它也具有樹分裂所依據的特性。 在這種情況下,這棵樹會因為它具有重要的品質而將其歸入錯誤的類別。
- 決策樹中特定級別的所有節點都依賴於其先前級別中的節點。 換句話說,您如何定義級別“n +1”上的節點完全取決於您對級別“n”上的節點的定義。 如果您在級別“n”的定義是錯誤的,那麼所有後續級別和這些級別中存在的節點也將是錯誤的。
學習:機器學習中的線性回歸

R中的決策樹(示例)
您需要 rpart 在 R 中構建決策樹。我們使用 rpart 進行分類。 在 R 中,您基於生成決策的遞歸分區算法構建決策樹,以及隨之而來的回歸樹。 它有兩個步驟:
- 首先,它將識別一個變量,以盡可能最好的方式將數據分成兩個單獨的組。
- 其次,它將在每個子組上重複上一步中的過程,直到這些組達到特定大小或者如果它不能再對這些子組進行改進。
我們以以下數據為例:
在上面的數據中,你有一輛自行車的時間和加速度。 我們必鬚根據時間預測它的加速度。 我們將通過執行以下操作來做到這一點:
1個圖書館(rpart)
然後加載數據:
1個數據(自行車)
現在,我們將創建一個散點圖:
1情節(加速〜次,數據=自行車)
有一次,我們已經完成了,我們將創建樹:
1mct <- rpart(加速〜次,數據=自行車)
我們的最後一步是繪製圖表:
1地塊(mct)
閱讀:如何創建完美的決策樹?
最後的想法
我們現在在 R 中有一個完美的決策樹模型。您可以在我們的博客上找到更多類似的教程。
如果您有興趣了解有關決策樹、機器學習的更多信息,請查看 IIIT-B 和 upGrad 的機器學習和人工智能 PG 文憑,該文憑專為在職專業人士設計,提供 450 多個小時的嚴格培訓、30 多個案例研究和作業,IIIT-B 校友身份,5 個以上實用的實踐頂點項目和頂級公司的工作協助。
決策樹算法中最重要的特徵是什麼?
決策樹算法是用於決策和風險分析的寶貴工具,通常表示為圖表或規則列表。 使用決策樹算法的簡單性是其最基本的特徵之一。 由於它們是可視的,因此它們易於理解和相關。 即使用戶不熟悉決策樹算法的構建,也可以成功應用。 決策樹算法最常用於根據先前的經驗預測未來事件並幫助做出理性決策。 決策樹算法的另一個重要領域是數據挖掘,其中決策樹被用作分類和建模工具,如下所述。
決策樹算法有多重要?
決策樹算法的重要優點是強制分析決策的所有可能結果並跟踪每條路徑以得出結論。 它生成對每個分支影響的詳細研究,並指出需要更多調查的決策節點。 此外,決策樹算法為每個難度、決策路徑和結果分配了一個唯一值。 這種方法突出了重要的決策路線,降低了不確定性,消除了歧義,並闡明了替代行動方案的財務影響。 當事實信息不可用時,用戶可以使用決策樹算法將選項相互透視,通過使用情況概率進行簡單比較。
決策樹算法基於哪種技術?
決策樹算法基於決策樹技術,可用於分類和回歸問題。 該名稱意味著使用類似流程圖的樹結構來顯示由一系列基於特徵的拆分產生的預測。 它以根節點開始,以葉決策結束。 一棵決策樹由三種節點組成,即通常表示決策節點的正方形、通常用圓圈表示的機會節點和表示末端節點的三角形。