在決策樹J48的例子中,當我們說樹被修剪或未修剪時,有什麼區別?Weka中的修剪和未修剪的樹是什麼?
7
A
回答
14
未修剪的樹木較大。會發生什麼,基本上樹是根據實現的算法創建的,如果啓用修剪,則額外的步驟將查看可以刪除哪些節點/分支,而不會影響性能太多。
修剪背後的想法是,除了讓樹更易於理解,您可以減少過度訓練數據的風險。也就是說,能夠將訓練數據(幾乎)完全分類,但沒有別的,因爲樹不是學習基本概念,而是學習了訓練數據固有的和特定的屬性。
1
鑑於Weka的是機器學習套件,聽起來這是什麼原因,他們指的是:
http://en.wikipedia.org/wiki/Pruning_(decision_trees)
總之決策樹的修剪似乎是去除可能決定其沒有多少好處。
但是,我沒有使用weka,我不熟悉它。推遲其他答案,看看他們說的話是否有意義。
5
我想補充以下內容給拉爾斯的答案。採取從以下link
許多算法試圖「修剪」,或簡化其結果。修剪產生更少,更容易解釋的結果。更重要的是,修剪可以作爲一種工具來糾正潛在的過度擬合。 ...
J48採用兩種修剪方法。
第一個被稱爲子樹替換。這意味着決策樹中的節點可能會被替換爲一個葉 - 基本上減少了沿某個路徑的測試次數。這個過程從完全形成的樹的葉子開始,向後朝向根。
在J48中使用的第二種類型的修剪被稱爲子樹提升。在這種情況下,節點可以向上移動到樹的根部,替換沿途的其他節點。子樹通常對決策樹模型的影響可以忽略不計。通常沒有明確的方法來預測該選項的實用性,儘管如果誘導過程花費很長時間,嘗試關閉它可能是明智的。這是因爲子樹的提升在計算上可能有些複雜。
相關問題
- 1. 修剪rpart樹
- 2. 更改樹和修剪
- 3. 決策樹修剪
- 4. 修剪決策樹
- 5. 什麼是修剪引導和pl_sql
- 6. 二叉樹的修剪數
- 7. 修剪和WhiteSpaceTrimmer
- 8. PHP修剪不修剪的空間
- 9. 修剪C++決策樹
- 10. CString'修剪':不是會員,爲什麼?
- 11. 如何修剪python中的子樹
- 12. 如何修剪R中的樹?
- 13. 修剪的NSString
- 14. 腓SUBSTR和修剪
- 15. 爲什麼gtk_show_uri修剪我的網址?
- 16. 修剪功能沒有真正修剪
- 17. 爲什麼String在XSLT中被修剪?
- 18. 修剪左小孩。一般樹的C++
- 19. java中的剪裁修剪網址
- 20. 可以在scikit-learn中修改/修剪學過的樹嗎?
- 21. 的Joomla修剪類
- 22. CGImage的修剪alpha
- 23. 修剪掉串
- 24. 修剪BOLD_CLOCKLOG表
- 25. 多行修剪
- 26. 修剪文字
- 27. 修剪()FormCollection值
- 28. 修剪與FILE_IGNORE_NEW_LINES
- 29. 修剪浮動
- 30. 修剪算法
第一句可能是錯的。未修剪的樹木*較大*,對嗎? – stackoverflowuser2010 2012-08-07 21:54:37
哎呀,對,對不起。我會改變這一點。 – 2012-08-08 08:01:37