摘要:数据预处理是提升数据质量的重要方法,它主要涉及到数据审计、数据清洗、数据变换、数据集成、其他预处理方法等多个方面,本文主要研究数据清洗中的缺失数据处理方法。本文主要阐述了缺失数据的类型、缺失数据处理所面临的主要问题和挑战、填补缺失数据的方法及数据缺失处理最新的研究趋势,通过分析得出今后对于缺失数据的研究将会逐步回到该数据所属的特定领域,充分结合该领域的特点与规律来对缺失数据进行填补,而不仅仅针对数据本身或基于其统计学上的特征进行填补。
关键词:数据预处理;缺失数据处理;缺失数据填补
1 引言
数据预处理是指在主要的处理以前对数据进行的一些处理[1]。现如今,数据的数量越来越庞大,且来来源多种多样,因此出现数据异常(也称为脏数据)的可能性不断增加。这些脏数据不能直接用于数据分析和数据挖掘,或数据分析和数据挖掘的结果不够理想。为了提升数据分析和数据挖掘的质量,数据预处理的重要性与日俱增,并且已经成为数据科学中的基本步骤。其中,数据预处理主要包含以下几个方面:数据审计、数据清洗、数据变换、数据集成、其他预处理方法等。本文将主要针对数据清洗中的缺失数据处理进行展开。
真实数据集中通常都含有缺失数据,缺失数据的存在会明显地降低算法或模型的有效性,因此,缺失数据处理是一个不可或缺的数据预处理过程。
在处理缺失数据前,了解缺失数据的类型是非常有必要的。缺失数据类型根据缺失随机程度的不同分为完全随机缺失(Missing Completely at Random,MCAR)、随机缺失(Missing at Random,MAR)、非随机缺失(Missing not at Random,NMAR)[2]。这三种类型的缺失数据特征及示例如表1所示。
在现实生活中,虽然非随机缺失相对于其它两种缺失类型来说更加常见,但是处理起来却是最麻烦的。处理非随机缺失时必须遵循一定的假设,即把它先转化成随机缺失,然后再按照随机缺失的机制进行处理[3]。数据集的缺失类型也会影响填充算法的选择及填充的最终效果[4]。
2 主要研究问题
为了尽可能减少缺失数据对算法或模型的有效性的影响,我们必须要针对这些缺失数据进行一定的处理。
针对缺失数据的处理一般分为两类:一类是直接删除含有缺失值的数据点,这种方法简单易操作,但缺点是在缺失比例较高时,该方法会造成信息的大量流失从而降低有效性。另一类是缺失值填补方法,用估计值来代替缺失值。
因此,对于缺失數据的处理主要问题与挑战是:当缺失比例较大时,如何对缺失值进行填补可以达到最好的效果,即对缺失值进行填补要尽量让填补值接近真实值,以避免对经填补后的数据集在分析时与原始数据集分析结果产生偏差。
3 缺失数据填补方法
一般情况,缺失数据填补方法主要分为基于统计学的填补方法和基于机器学习的填补方法[5]。
3.1 基于统计学的填补方法
基于统计学的重构方法有均值填补法、中位数填补法、众数填补法、多项式拟合法、级比生成法、三次样条插值法和递推式非邻均值补全法等。
基于统计学的重构方法较为简便快速,但是填补的数据偏差较大,且忽略了数据之间相关性等[6]。
3.2 基于机器学习的填补方法
机器学习技术包括:K近邻、人工神经网络、支持向量机、决策树和随机森林等。
这些算法都是根据已有数据建立相应模型,然后使用模型来估计该样本的缺失数据。
3.3 填补方法对比
在廖祥超[3]的研究中,他固定样本缺失率为10%,以单个变量随机缺失和多个变量随机缺失两种模式生成相应的缺失数据集,在此基础上用均值、随机、线性回归、多重填补、KNN、决策树、随机森林、支持向量机、神经网络这九个方法进行填补,并从填补误差和建模效果的角度对不同填补结果进行比较。从填补误差的角度看:在个体方面,回归填补法和神经网络填补法得到的值与真实值相等的个数要多于其它的填补方法;但是从整体来看,支持向量机填补法和KNN填补法的平均绝对误差(Mean Absolute Error,MAE)和均方误差(Mean Square Error,MSE)要优于其他方法。在缺失率相同的3个多个变量缺失的数据中,他经过对比发现多重填补法、KNN填补法、随机森林填补法的填补效果要明显高于其它填补方法。
杨弘[7]研究团队针对混合型缺失数据(即同时存在连续变量和分类变量),模拟四种缺失比例(10%、20%、30%、50%)的测试数据,在随机缺失(MAR)假设下采用MissForest(缺失森林算法,一种基于随机森林的一种迭代填补算法)、因子分析(factorial analysis for mixed data,FAMD,基于主成分分析法)、KNN填补法和基于参数调整的链式方程多重填补(multivariate imputation by chained equations,MICE)对测试数据进行缺失值填补。经过对比发现:FAMD与MissForest相比,对分类变量填补表现优越;缺失比例为10%时,FAMD与MissForest表现优于KNN和MICE;缺失比例达到20%时,FAMD明显优于其它三种方法,但是MissForest表现亦可;缺失比例达到30%时,四种模型表现明显下降,处理效果均不太理想;缺失比例达到50%时,虽然FAMD仍有两个变量符合优良标准,但对某些变量估计误差较大,其它三种方法填补均失效。
因此,在对缺失数据进行填补时,我们需要结合实际的缺失数据类型、缺失比例、是否为多变量缺失等多方面因素进行综合考虑,然后选取合适的填补方法进行缺失数据填补以期望达到最优的效果。
4 最新研究
4.1 研究趋势
在中国知网总库(含中文和英文)中检索“缺失数据”或“缺失值”(使用“中英文扩展”),并筛选出与缺失数据处理相关的主要主题,总共检索到5945篇论文,结合中国知网的结果分析功能可以得到关于该研究的一个总体趋势(图1),并结合学科进行分别统计可以得到针对缺失数据在学科上的一個分布情况(图2),最后选取前十分布的学科进行一个趋势统计(图3)。
从图1中可以看出,与缺失数据处理相关的研究论文呈快速上升趋势。这主要是因为近几年整个大数据行业的兴起,使得人们对数据处理的关注度日渐提升,为了能够更加有效地分析与挖掘数据中的规律与价值,人们对数据质量的要求也日益增高,而研究缺失数据处理方法是其中非常重要的一个环节。结合图2可以看出,虽然在数学或计算机领域仍有大量的研究工作以改进各种算法来提升缺失数据填补的效果,但是整体趋势开始一点下降。而在图3中可以看出,在其他学科领域中,针对缺失数据填补方法的研究呈逐年上升的趋势。
4.2 结合特定领域规律的填补方法
通过图3可以发现其他的学科领域在进行数据分析与挖掘时对缺失数据处理的方法越来越重视,且其处理方法并不局限于统计学或机器学习等方法,有很多研究者开始从其数据所属专业领域本身出发,结合其领域中的特定规律与特点以及统计学或机器学习等方法来进行缺失数据的填补。
武佳卉[6]研究团队提出了一种基于物理特性的新能源电力数据填补方法,其主要思想是充分利用新能源出力的物理特性,实现通过已知的新能源场站输出功率求得待填补电场的输出功率,有效改善了数据填补效果。
在姚小龙[8]的研究中,在分析光伏出力特性的基础上,提出了一种基于光伏出力相关性的缺失数据填补方法,在其研究中发现该预测方法能够显著减小预测误差并提升预测精度。
5 总结与展望
现如今大家都是基于当前一些统计学或机器学习算法进行改进以期望得到更优的一种缺失数据填补方法。这些改进算法确实在一定程度上提升了数据填补的效果,但是提升的空间有限。结合第四节的分析,可以得出今后对于缺失数据的研究将会逐步回到该数据所属的特定领域,充分结合该领域的特点与规律来对缺失数据进行填补,深入挖掘分析数据与数据之间或数据集之间的内在规律,并结合这些规律去进行缺失数据的填补,这样所获得的填补效果将会更加贴合真实情况。
参考文献
[1] 百度百科.数据预处理[EB/OL].https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E9%A2%84%E5%A4%84%E7%90%86,2020-12-13.
[2] Wikipedia. Missing data [EB/OL]. https://en.wikipedia.org/wiki/Missing_data,2020-12-13.
[3] 廖祥超.九种常用缺失值插补方法的比较[D].云南师范大学,2017.
[4] 金连.不完全数据中缺失值填充关键技术研究[D].哈尔滨工业大学,2013.
[5] 刘莎,杨有龙.基于灰色关联分析的类中心缺失值填补方法[J].四川大学学报(自然科学版),2020,57(05):871-878.
[6] 武佳卉,邵振国,杨少华,肖颂勇 ,吴国昌.数据清洗在新能源功率预测中的研究综述和展望[J].电气技术,2020,21(11):1-6.
[7] 杨弘,田晶,王可,张青,韩清华,张岩波.混合型缺失数据填补方法比较与应用[J].中国卫生统计,2020,37(03):395-399.
[8] 姚小龙.分布式光伏发电全气象系统及区域出力预测方法研究[D].浙江工业大学,2019.
作者简介:
姚超(1987-),男,湖北武汉人,工程师,硕士,主要研究方向为大数据和软件技术。