- 基于機器學習的數據缺失值填補:理論與方法
- 賴曉晨 張立勇 劉輝 吳霞
- 933字
- 2020-09-24 10:12:20
1.2.1 基于統計學的缺失值填補方法
均值填補是最早使用的一種基于統計學的缺失值填補方法,該方法將樣本屬性分為數值型和非數值型分別進行處理[4]。針對數值型數據,該方法以不完整屬性列中全部現有值的平均值填補該屬性列的缺失值。針對非數值型數據,該方法基于眾數原則,利用不完整屬性列中現有值出現頻率最高的值填補其中的缺失值。該方法在某些情況下能夠取得較好的填補效果,但其在填補過程中忽視了屬性之間的相關性,制約了方法的適用范圍[5]。
回歸填補法基于屬性間的依賴關系建立回歸模型,并根據數據集中的完整記錄求解模型參數[6]。根據屬性間的依賴關系,回歸模型可以分為線性回歸和非線性回歸。線性回歸形式簡單、計算量小,但真實存在的數據集中屬性間大多不遵循線性依賴。非線性回歸通過擬合曲線將各個記錄點光滑地鏈接起來,其中擬合曲線的類型既可以是指數函數(Exponential Function)、對數函數(Logarithmic Function)、冪函數(Power Function)和多項式函數(Polynomial Function)等基本初等函數,也可以是由其中一種或多種函數構成的復合函數。相較于均值填補等忽視樣本間相關性的方法,回歸填補法利用了數據中包含的潛在信息,因而通常其填補精度更高,且適用范圍更廣。
期望最大化(Expectation-Maximization,EM)填補法利用現有數據的邊緣分布對缺失數據進行極大似然估計(Maximum Likelihood Estimate,MLE),從而得到相應的填補值[7]。對于極大似然估計優化目標,該方法采用迭代的方式進行優化求解。每一輪迭代由兩步組成:期望(Expectation)步和最大化(Maximization)步,簡稱E步和M步。E步基于現有數據和待定參數估計缺失值的條件期望并將其作為填補值,M步將條件期望最大化并計算待定參數。在這種迭代式的填補方法中,完整數據得到充分的利用,從而獲得較為精確的填補結果。同時,EM填補法的精度與數據集中缺失率相關,當缺失率太大時,上述迭代優化過程容易陷入局部最優解,不僅會影響填補精度,還會導致方法的收斂速度顯著降低。
多重填補法基于不同的模型或規則為每個缺失值生成多個可能的填補值,并由此生成多個完整數據集,然后使用相同的處理方法對獲得的填補數據集進行統計分析,最后綜合各個分析結果,得到最終的填補值。該方法由Rubin[8]于1978年提出,并經過Meng[9]和Schafer[10]等人的不斷改進。它考慮了由于數據填補而產生的不確定性,相較于上述單一填補(Single Imputation)法具有更高的準確性,但也導致了計算量的明顯增加。