Missing-Data
決策樹學習算法如何處理缺失值(幕後)
決策樹學習算法用來處理缺失值的方法有哪些。
他們是否只是簡單地使用稱為缺失的值來填補空缺?
謝謝。
各種決策樹使用了幾種方法。簡單地忽略缺失值(如 ID3 和其他舊算法所做的)或將缺失值視為另一個類別(在名義特徵的情況下)並不能真正處理缺失值。然而,這些方法被用於決策樹開發的早期階段。
缺失數據的實際處理方法在評估拆分時不使用具有缺失值的數據點。但是,當創建和訓練子節點時,這些實例會以某種方式分佈。
我知道以下將缺失值實例分配給子節點的方法:
- 全部轉到已經擁有最多實例數的節點(CART,不是主要規則)
- 分配給所有子節點,但權重減小,與每個子節點(C45 等)的實例數成正比
- 隨機分佈到只有一個子節點,最終符合分類分佈(我已經看到在 C45 和 CART 的各種實現中以更快的運行時間)
- 構建、排序和使用代理將實例分發到子節點,其中代理是輸入特徵,最類似於測試特徵如何將數據實例發送到左或右子節點(CART,如果失敗,則使用多數規則)