2012-06-02 68 views
10

我已經在谷歌搜索這個問題,我找不到解釋這個算法的一個簡單而詳細的方式。爲什麼C4.5算法使用修剪來減少決策樹,以及修剪如何影響預測精度?

例如,我知道ID3算法不使用修剪好,所以如果你有一個連續的特點,預測成功率會非常低。

所以爲了將C4.5支持連續的特點,它使用的修剪,但是這是唯一的原因是什麼?

我也不能真正理解在WEKA應用,信心的因素究竟是如何影響預測的效率。信心因子越小,算法將進行的修剪越多,但修剪與預測精度之間的相關性如何?你修剪得越多,預測越好或者更糟?

謝謝

回答

18

修剪是一種減少決策樹的大小的方法。這會降低訓練數據的準確性,但是(通常)會增加未看見數據的準確性。它用於緩解overfitting,在那裏你將獲得完美的訓練數據準確度,但是你學習的模型(即決策樹)是如此的具體以至於它不適用於除訓練數據之外的任何其他東西。

在一般情況下,如果增加修剪,訓練集的準確度會降低。然而WEKA確實提供了更好的估計精度的各種事情,即訓練/測試分割或交叉驗證。例如,如果您使用交叉驗證,您會發現修剪可信度因子的某個「最佳位置」,這個修剪可信度因子足以使測試數據中的學習決策樹足夠準確,但不會犧牲過多的準確性訓練數據。然而,這個甜蜜點在哪裏取決於你的實際問題,唯一可以確定的方法是嘗試。