APP下载

缺失数据处理方法综述

2021-11-07张兰秋月

电脑知识与技术 2021年25期

张兰秋月

摘要:伴随着信息技术的飞速发展,城市越来越智能化。万物互联,不同的传感器随时产生着大量的数据,这些数据广泛地应用于后续的数据挖掘、机器学习等领域。然而在数据收集过程中无法避免数据的缺失。文中介绍了当前缺失数据恢复领域面临的问题和挑战,阐述了缺失数据定义及缺失数据分类机制,针对上述两类缺失值处理方法进行传统方法的总结,最后探究深度学习如DBN(深度置信网络)、GAN(生成式对抗网络)在缺失数据恢复领域的新进展。

关键词:数据缺失;缺失数据分类机制;数据插补;GAN

中图分类号:TP301      文献标识码:A

文章编号:1009-3044(2021)25-0048-03

1引言

1.1  面临的挑战

在数据的收集、传输、存储场景中,由于各种不可抗的因素,会造成部分数据丢失的情况,这种现象也被称为数据缺失。数据缺失的现象是从出现数据统计就出现的,但最初并未引起学者们的重视 [1]。随着信息技术的发展我们进入了信息时代,各行各业产生的数据呈爆发增长的态势,这些数据存在一些新的特点,如数据的体量特别庞大,且具有强耦合性、高维的特点;大量由传感器产生的数据不确定很强;同一个数据集中,数据类型多样;测量过程中由于整个系统的复杂性导致的多时变性与不完整性。故传统的数据恢复方法已经不能解决如高维数据缺失的问题。

数据缺失的情况不仅仅会在科学研究过程中出现,在常规的面向群体的调查中也会存在,我们将一些没有办法直接获得和因为设备故障等客观原因丢失的数据叫做缺失数据。数据缺失会对下游分析任务如:机器学习中的分类聚类、数据分析挖掘和潜在知识发现带来严重的阻碍。究其原因,数据缺失不仅会降低数据的有效性,还会导致整个数据分析任务不精准,产生错误的分析结果,因此对缺失数据的处理显得极其重要。

1.2 缺失数据分类

数据缺失按照其缺失的形式如图1所示[2]。我们按照这种分类方法能够直观的认识数据集中不同数据之间的关系,明确数据集中存在的数据和缺失数据是如何构成的。

第二种分类方法关注缺失值在数据中的分布情况,具体描述如表1所示。

其中随机缺失如公式(1)所示,数据集Y缺失值数据Ymis的概率与其本身没有关系,但与其观测到的值Yobs有关。

完全随机缺失如公式(2)所示,其中缺失数据Ymis与观测到的数据Yobs没有任何关系。

2缺失值处理方法

2.1删除法

2.1.1成列删除与成对删除

成列删除的思想是:在任意个案中存在某个变量的缺失,便简单地将该个案所有数据从分析中排除,也称为个案删除[3]。低于5%的缺失个案可以被认为是MAR,此时通过传统方法中的成列删除是比较安全合理的。

对应的成对删除的思想是:不直接删除存在数据缺失的个案,在对其他无缺失变量进行计算时纳入计算,又称成对删除为可得个案分析。假设数据为MCAR,成对删除在大样本中会接近無偏差,与成列删除相比将会产生更有效的估计值。

2.2插补法

2.2.1均值插补

从数据属性角度讲,可以分成定距型和非定距型两类。我们可以将定距属性的平均值进行缺失数据的补充。相似的对于非定距属性,插补的值由平均值更换为数据中出现次数最多的值即众数。由于均值只有一个,所以该方法又被称为单一均值插补。填补值如公式(3)所示:

但由于该方法插补的数据也是来自分布中的数值,将带来处理后的数据方差与数据实际的方差不同的问题。

同类均值插补与均值插补类似,差异在于同类均值插补会先使用聚类模型对数据进行聚类处理,再使用跟缺失数据为同一类型的数据均值进行缺失数据的插补[4]。显然,同类均值插补和单一均值插补相比更为精准,但仍存在一定问题,插补的同类数据会引起自相关,在一定场景下会影响后续的分析。

2.2.2极大似然估计

在数据缺失类型为MAR的情况下,我们可以利用极大似然估计对缺失值进行填补[5]。通常情况,我们需要最大化似然度来求参数的最优值。公式(4)表示含隐变量的极大似然公式,要求得似然度需要对不可观测的隐变量zi进行求和或积分,这使得优化公式(4)非常困难。

为了解决上述问题, EM(最大期望)算法扩展了极大似然估计,解决了极大似然估计问题很难得到解析解的问题[2]。在大样本的情况下[6],使用EM算法比简单的删除和单值插补更有用,但其也有计算复杂,收敛速度比较慢的缺点。

2.2.3多重插补

多重插补又被称为多值插补,理论基础为贝叶斯估计[7]。它认为缺失的值是随机的,并且来自于已观测到的值。具体操作时,在已得到的待插补值上混合不同的噪声数据,形成多组待插补值,随后根据具体场景需求,选取最合适的一组进行缺失值填补。

3深度学习应用于数据修复

3.1深度置信网络应用于传感器数据恢复(DBN)

深度置信网络又可以称其为一个概率生成模型[8]。深度置信网络结构如图2所示,通俗来讲,网络可分为隐藏层和可见层,各层之间有连接,通过放入数据训练,隐藏层可输出和可见层相关的数据特征。

在大型监控系统中,部署了不同位置的传感器来收集大量有用的时间序列数据,这有助于实时数据分析及其相关应用。但是,受硬件设备本身的影响,传感器节点通常无法工作,导致收集的数据不完整的常见现象。Jing、Hai等人用深度置信网络DBN提取这些时空相关数据的高级特征表示,最后通过单层神经网络基于这些特征预测缺失的数据随后进行数据插补[9]。

3.2循环生成式对抗网络应用于医疗数据恢复

生成式对抗网络(Generative Adversarial Nets,GAN)包含生成器和鉴别器两个部分[10],具体结构如图3所示。生成式对抗网络的训练过程非常有趣,生成器和鉴别器之间相互对抗。生成器的任务是生成一个与真实数据相似的假数据,鉴别器的任务则是从数据中将生成器产生的假数据识别出来。