只是想澄清一件事:只要它們在不同的「分支」中,相同的屬性可以出現在決策樹中多次?可以在決策樹中多次出現「拆分屬性」?
3
A
回答
5
由於顯而易見的原因,在同一分支中使用相同的決定是沒有意義的。
在不同的分支上,這個推理顯然不成立。
考慮經典的XOR(x,y)問題。您可以使用雙層決策樹來解決它,但是您需要在兩個分支中的相同屬性上進行分割。
If x is true:
If y is true: return false
If y is false: return true
If x is false:
If y is true: return true
If y is false: return false
另一個例子如下:假設你的數據在x = [0; 1]中是正數,而在外部是負數。一棵好樹將如下:
If x > 1: return negative
If x <= 1:
If x >= 0: return positive
If x < 0: return negative
這是不一樣的決定,所以它可以有意義的使用x兩次。
4
一般來說,只要保持「樹」的結構,就可以做任何你想做的事情。它們可以通過多種方式進行定製,雖然可以有冗餘,但不會削弱其有效性。
二元屬性不應在同一個早午餐中出現兩次,這將是多餘的。但是,連續的屬性可以多次出現在同一分支中。
1
如果該屬性是分類的,則不能將其用作多次拆分屬性。如果屬性是數字的,原則上可以多次使用,但是標準決策樹算法(C4.5算法)不以這種方式實現。
以下描述基於屬性都是分類的假設。
從解釋的角度來看,決策樹是可以解釋的,標記的實例如何可以通過從根到樹葉使用的屬性(以及屬性的值)來解釋。因此,在樹的一個分支中有重複的屬性是沒有意義的。
從算法的角度來看,一旦選擇屬性作爲拆分屬性,則屬性將不會再基於屬性選擇準則被選擇,例如,信息增益將爲0.這是因爲所有實例在被屬性過濾後都會具有相同的屬性值。再次使用該屬性不能爲分類帶來更多信息。
相關問題
- 1. 微軟商業智能 - 決策樹 - 「決策樹沒有發現模型拆分」
- 2. Classifcation /決策樹和選擇拆分
- 3. 是否可以在scikit-leanr決策樹中設置拆分值的精度?
- 4. 找到決策樹的最佳屬性
- 5. 決策樹和連續值屬性
- 6. 如何分割CART決策樹算法中的連續屬性?
- 7. 如何指定決策樹中的拆分?
- 8. 決策樹學習可以「半監督」
- 9. 隨機決策樹分類
- 10. 表達式樹來拆分屬性值
- 11. 多目標決策樹
- 12. 可觀察與決策樹
- 13. 決策樹可視化
- 14. 決策樹在樹決策中保持使用Y變量
- 15. 使用scikit的多輸出分類決策樹
- 16. J48決策樹
- 17. 決策樹jQuery
- 18. 如何處理C4.5(J48)決策樹中缺少的屬性值?
- 19. scikit學習決策樹導出graphviz - 決策樹中錯誤的類名稱
- 20. 是否可以通過scikit-learn指定在決策樹中分割的順序?
- 21. 決策樹。噪聲策略
- 22. Adaboost決策樹/樹樁
- 23. PHP決策樹實現(ID3或C4.5)
- 24. 增量式決策樹C++實現
- 25. 用決策樹邏輯實現程序
- 26. Adaboost實現與決策樹樁
- 27. 如何處理決策樹中的多個分類特徵?
- 28. 什麼是決策樹中的多元分類?
- 29. 決策樹問題解決
- 30. 拆分ArrayList屬性
這個問題似乎是無關緊要的,因爲它是關於機器學習的。 – sashkello
@sashkello有3404個問題tagged [tag:machine-learning] ... –
@ Anony-Mousse所有這些都應該與編程密切相關(好吧,很多老問題可能不會)。這個問題應該去http://stats.stackexchange.com因爲它沒有編程方面。 – sashkello