Machine-Learning

解決機器學習中數據缺失問題的方法

  • September 18, 2017

幾乎任何我們想要使用機器學習算法進行預測的數據庫都會發現一些特徵的缺失值。

有幾種方法可以解決這個問題,排除具有缺失值的行,直到它們填充特徵的平均值。

我想使用一種更穩健的方法,它基本上會運行回歸(或另一種方法),其中因變量(Y)將是具有缺失值的每一列,但僅限於表的行包含所有數據,並使用此方法預測缺失值,逐表完成表格並移動到具有缺失值的下一個“列”並重複該方法,直到填滿所有內容。

但這讓我有些懷疑。

為什麼任何列開始?我相信缺失值最小的那個一直到最多的那個

是否存在不值得嘗試完成的缺失值閾值?(例如,如果這個特徵只有 10% 的值被填充,排除它會不會更有趣)

傳統包或其他方法中是否有任何類型的實現對缺失具有魯棒性?

您描述的技術稱為通過順序回歸進行的插補或通過鍊式方程進行的多重插補。該技術由 Raghunathan (2001) 首創,並在名為mice(van Buuren, 2012) 的運行良好的 R 包中實施。

Schafer 和 Graham (2002) 的一篇論文很好地解釋了為什麼均值插補和列表刪除(你稱之為行排除)通常不是上述技術的良好替代品。主要是均值插補不是有條件的,因此可以將插補分佈偏向觀察到的均值。它還將縮小方差,以及對估算分佈的其他不良影響。此外,列表刪除確實只有在數據完全隨機丟失的情況下才會起作用,比如拋硬幣。隨著樣本量的減少,它也會增加抽樣誤差。

上面引用的作者通常建議從具有最少缺失值的變量開始。此外,該技術通常以貝葉斯方式應用(即您的建議的擴展)。在插補過程中更頻繁地訪問變量,而不僅僅是一次。特別是,每個變量都是通過提取其條件後驗預測分佈來完成的,從具有最小缺失值的變量開始。一旦完成數據集中的所有變量,算法再次從第一個變量開始,然後重新迭代直到收斂。作者已經證明該算法是 Gibbs 算法,因此它通常會收斂到變量的正確多元分佈。

通常,因為涉及一些不可檢驗的假設,特別是隨機數據缺失(即是否觀察到數據僅取決於觀察到的數據,而不取決於未觀察到的值)。此外,這些程序可能部分不兼容,這就是為什麼它們被稱為 PIGS(部分不兼容的 Gibbs 採樣器)。

在實踐中,貝葉斯多重插補仍然是處理多元非單調缺失數據問題的好方法。此外,預測均值匹配等非參數擴展有助於放寬回歸建模假設。


Raghunathan, TE, Lepkowski, J., van Hoewyk, J., & Solenberger, P. (2001)。一種使用一系列回歸模型對缺失值進行多重插補的多元技術。調查方法,27(1),85-95。

謝弗,JL 和格雷厄姆,JW(2002 年)。缺失數據:我們對最新技術的看法。心理學方法,7(2),147-177。https://doi.org/10.1037/1082-989X.7.2.147

範布倫,S.(2012 年)。缺失數據的靈活插補。博卡拉頓:CRC 出版社。

引用自:https://stats.stackexchange.com/questions/303722

comments powered by Disqus