CN108197079A - 一种改进的对缺失值插补的算法 - Google Patents
一种改进的对缺失值插补的算法 Download PDFInfo
- Publication number
- CN108197079A CN108197079A CN201611122144.XA CN201611122144A CN108197079A CN 108197079 A CN108197079 A CN 108197079A CN 201611122144 A CN201611122144 A CN 201611122144A CN 108197079 A CN108197079 A CN 108197079A
- Authority
- CN
- China
- Prior art keywords
- missing values
- interpolation
- data
- algorithm
- missing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Z—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
- G16Z99/00—Subject matter not provided for in other main groups of this subclass
Landscapes
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种改进的对缺失值插补的算法,包括:对所有数据进行层次类聚、针对含有缺失值的类,根据是否有缺失值的记录,将记录分为完全数据组m1和缺失数据组m2、将m1中的数据随机分成训练集和测试集,用k种插补方法预测测试集,得出准确度最高的方法、判断此方法是否为弱方法,若是,结合bagging算法得到该类的缺失值插补的函数,若否,该算法为最终算法、运用最终插补函数对该类的缺失值进行插补、判断是否存在还有缺失值的类。所述改进的对缺失值插补的算法会根据数据特有的性质,在众多的缺失值插补方案中,选择比较适合该数据集的方法,利用bagging算法的原理,对比各种方法对缺失值的插补效果,从而得出比较实用该数据的缺失值插补的方法。
Description
技术领域
本发明涉及数据分析预处理领域,具体涉及一种改进的对缺失值插补的算法。
背景技术
当今社会正处于一个大数据时代,在许多问题的研究中,常有数据缺失或无法获得数据的情况发生,导致无法全面有效地运用数据进行分析研究。为了避免对研究造成影响,研究者从设计的阶段就应该开始采取各种措施避免研究过程中产生缺失值,对于已经产生的缺失值,则要尽可能地采取措施进行补救。对缺失数据插补合理的估计值,可减少由于数据缺失导致的估计量偏差,力图构造一个完整数据集,便于统计分析方法的使用。在对缺失值插补的模拟研究中通过比较插补值与真实值的近似度来衡量插补结果。比较常见的缺失值插补方法有:均值替换法、热卡填充法、回归替换法、多重替代法等几十种。研究表明,每种方法有其各自的适用条件和优缺点,数据缺失比例不同的时候,不同方法的填充效果不同。另外,有些方法对数据的分布有很强的依赖性,例如最大似然法,但实际生活中收集到的数据的分布往往难以确定。
由于数据的缺失情况在实际运用中因不同行业,不同变量,不同类型而异,且数据分布情况以及缺失情况不能清晰地确定等,无法确定用哪种方法进行缺失值插补最为合适。在实际运用中往往根据个人主观和以往经验来选择插补方法进行缺失值插补,对缺失值插补的合理性和正确性难以把握,需要一种方案来解决选择插补方法的难题。
鉴于上述缺陷,本发明创作者经过长时间的研究和实践终于获得了本发明。
发明内容
为解决上述技术缺陷,本发明采用的技术方案在于,提供一种改进的对缺失值插补的算法,该算法包括以下步骤:
步骤S1:对所有数据进行层次类聚;
步骤S2:针对含有缺失值的类,根据是否有缺失值的记录,将记录分为完全数据组m1和缺失数据组m2;
步骤S3:将m1中的数据随机分成训练集和测试集,用k种插补方法预测测试集,得出准确度最高的方法,k为自然数;
步骤S4:判断此方法是否为弱算法,若是,结合bagging算法得到该类的缺失值插补的函数,若否,该算法为最终算法;
步骤S5:运用最终插补函数对该类的缺失值进行插补;
步骤S6:判断是否存在还有缺失值的类,若是,回到步骤S2,若否,结束算法。
较佳的,所述步骤S3中的插补方法包括均值替换法,热卡填充法,回归替换法,多重替代法。
较佳的,所述步骤S4中结合bagging算法获得函数的思路为:判断缺失值是否为离散型,若是,则直接根据投票结果对缺失值进行插补,否则,通过得票的平均值对缺失值进行插补。
较佳的,所述步骤S3中采用K-S正态性检验评价不同方法处理后的数据集是否符合正态分布。
较佳的,所述步骤S3中采用Wi lcoxon符号秩和检验比较处理后的数据集与完整数据集的分布是否来自同一总体。
与现有技术比较本发明的有益效果在于:所述改进的对缺失值插补的算法会根据数据特有的性质,在众多的缺失值插补方案中选择比较适合该数据集的方法,利用bagging算法的原理,结合K-S正态性检验和Wi lcoxon符号秩和检验,对比各种方法对缺失值的插补效果,从而得出比较实用该数据的缺失值插补的方法。
附图说明
为了更清楚地说明本发明各实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1是本发明组和算法对缺失值插补整体流程图;
图2是本发明针对数据类型运用bagging算法的流程图。
具体实施方式
以下结合附图,对本发明上述的和另外的技术特征和优点作更详细的说明。
实施例1
如图1所示,本发明为一种改进的对数据缺失值的插补方案,结合现有的插补方法,利用bagging算法的原理,根据数据的特性对插补的各种算法进行选择以及再训练,改进原有的算法,进而达到还原一个完整的、近似真实的数据集的目的。该组和算法对缺失值插补方案包括以下步骤:
步骤S1,对所有数据进行层次类聚。
一定程度上保证同类型的完整数据和缺失数据聚到一起进行分析,更加合理以及便于构造适合缺失插补的模型。
步骤S2,针对含有缺失值的类,根据是否为有缺失值的记录,将记录分为完全数据组m1和缺失数据组m2。
步骤S3,将m1中的数据随机分成训练集和测试集,用k种插补方法预测测试集,得出准确度最高的方法,k为自然数。
在完全数据组中随机挑选一定数量记录作为训练集,一定数量的记录作为测试集,测试集的数据条数应该远小于训练集的测试条数。运用不同的方法结合训练集得出不同的模型,然后用模型预测测试集,运用统计方法计算是否有显著差异,来判断预测的准确与否,以此得出每一个方法预测的准确度,并得出预测准确度最高的方法。用准确度和分布两个方面考察插补效果,采用K-S正态性检验评价不同方法处理后的数据集是否符合正态分布,利用Wi l coxon符号秩和检验比较处理后的数据集与完整数据集的分布是否来自同一总体。
步骤S4,判断此方法是否为弱算法,若是,结合bagging算法得到该类的缺失值插补的函数,若否,该算法为最终算法。
若该方法对样本集的依赖比较强,则可以看作是不稳定的弱分类算法,进而结合bagging框架算法,得出最后的算法,否则,用该方法对应模型的预测结果作为最后的结果。
步骤S5,运用最终插补函数对该类的缺失值进行插补。
步骤S6,判断是否存在还有缺失值的类,若是,回到步骤S2,若否,结束算法。
对存在缺失值的不同的类重复上述步骤得出适合不同数据缺失值的不同的算法对该类的缺失值进行插补。
实施例2
如图2所示,为bagging算法针对不同类型缺失值的不同处理方法。
bagging算法的基本思想:
给定一个弱学习算法和一个训练集,单个弱学习算法准确率不高,将该学习算法使用多次,得出预测函数序列,进行投票,最后结果准确率将得到提高。
步骤S1:从数据集中,分别独立随机的抽取一定数量的数据,形成自助数据集,将这个过程独立重复多次,直到产生很多独立的自助数据集。
步骤S2:每一个自助数据集都被独立的用于训练一个“分量分类器”。
步骤S3:最终的分类判决由这些“分量分类器”各自的判决结果投票决定。
将bagging算法改进用于插补,从数据集中取样(放回选样),训练得到模型Ht,每个模型Ht都得出一个离散值,若缺失值为离散型,则直接根据投票结果对缺失值进行插补,即得票最高的估计值最高的即为未知样本X的插补值,否则,当缺失值为连续型时,通过得票的平均值对缺失值进行插补,即取得票的平均值为未知样本X的插补值。
实施例3
在上述实施方式的基础上,以随机生成含有多个变量的一定量的正态分布数据集为例,利用数据分析软件分别模拟完整数据集和不同缺失率的随机缺失数据,运用上述方法进行插补。
首先,将数据进行层次聚类,对其中有缺失值的类进行分析,将类中的完整数据随机分成训练集和测试集;然后,采用均值替换法,热卡填充法,回归替换法,多重替代法和成组删除法对缺失数据进行处理。
用准确度和分布两个方面考察插补效果,采用K-S正态性检验评价不同方法处理后的数据集是否符合正态分布,采用Wi lcoxon符号秩和检验比较处理后的数据集与完整数据集的分布是否来自同一总体。
针对该数据实验的结果,发现随着缺失率的增大,同一变量相同方法处理后的准确度逐渐降低。当缺失率很小时,多重替代法填充后的准确度最高,故将多重替代法作为bagging算法的训练函数,不断改变训练集和测试集,得出一个较为适合该数据集的新函数,用来作为对该类数据的缺失值进行插补的函数。当缺失率较小时,成组删除法处理后的准确度最高,则测试可以直接使用成组删除法对数据进行插补,而不经过bagging算法的加工。当缺失率较大时,所有方法插补效果均不佳,说明当缺失数据过多时,这些数据在当前的环境下已经失去了可利用的价值,需要探讨更先进的处理方法。
以上所述仅为本发明的较佳实施例,对本发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在本发明权利要求所限定的精神和范围内可对其进行许多改变,修改,甚至等效,但都将落入本发明的保护范围内。
Claims (5)
1.一种改进的对缺失值插补的算法,包括以下步骤:
步骤S1,对所有数据进行层次类聚;
步骤S2,针对含有缺失值的类,根据是否有缺失值的记录,将记录分为完全数据组m1和缺失数据组m2;
步骤S3,将m1中的数据随机分成训练集和测试集,用k种插补方法预测测试集,得出准确度最高的方法,k为自然数;
步骤S4,判断此方法是否为弱算法,若是,结合bagging算法得到该类的缺失值插补的函数,若否,该算法为最终算法;
步骤S5,运用最终插补函数对该类的缺失值进行插补;
步骤S6,判断是否存在还有缺失值的类,若是,回到步骤S2,若否,结束算法。
2.如权利要求1所述改进的对缺失值插补的算法,其特征在于,所述步骤S3中的插补方法包括均值替换法,热卡填充法,回归替换法,多重替代法。
3.如权利要求1所述改进的对缺失值插补的算法,其特征在于,所述步骤S4中结合bagging算法获得函数的思路为:判断缺失值是否为离散型,若是,则直接根据投票结果对缺失值进行插补,否则,通过得票的平均值对缺失值进行插补。
4.如权利要求2或3所述改进的对缺失值插补的算法,其特征在于,所述步骤S3中采用K-S正态性检验评价不同方法处理后的数据集是否符合正态分布。
5.如权利要求2或3所述改进的对缺失值插补的算法,其特征在于,所述步骤S3中采用Wilcoxon符号秩和检验比较处理后的数据集与完整数据集的分布是否来自同一总体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122144.XA CN108197079A (zh) | 2016-12-08 | 2016-12-08 | 一种改进的对缺失值插补的算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122144.XA CN108197079A (zh) | 2016-12-08 | 2016-12-08 | 一种改进的对缺失值插补的算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108197079A true CN108197079A (zh) | 2018-06-22 |
Family
ID=62572597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611122144.XA Pending CN108197079A (zh) | 2016-12-08 | 2016-12-08 | 一种改进的对缺失值插补的算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197079A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446185A (zh) * | 2018-08-29 | 2019-03-08 | 广西大学 | 基于用户聚类的协同过滤缺失数据处理方法 |
CN111611231A (zh) * | 2019-02-25 | 2020-09-01 | 新奥数能科技有限公司 | 设备运行数据的清洗方法、装置、可读介质及电子设备 |
CN111694827A (zh) * | 2020-05-31 | 2020-09-22 | 重庆大学 | 一种电力设备状态监测数据缺失值分类插补方法和系统 |
CN111881420A (zh) * | 2020-08-05 | 2020-11-03 | 华北电力大学 | 一种风电机组运行数据插补方法 |
CN113313194A (zh) * | 2021-06-17 | 2021-08-27 | 西北工业大学 | 一种基于线性插值偏差的推进剂制备数据缺失值填补方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130036082A1 (en) * | 2011-08-05 | 2013-02-07 | International Business Machines Corporation | Multiple imputation of missing data in multi-dimensional retail sales data sets via tensor factorization |
CN104794124A (zh) * | 2014-01-20 | 2015-07-22 | 中国移动通信集团重庆有限公司 | 一种数据缺失补漏的智能实现方法及系统 |
CN105675986A (zh) * | 2016-02-03 | 2016-06-15 | 西安电子科技大学 | 数据缺失时基于时频分析窄带调频信号的到达角估计 |
-
2016
- 2016-12-08 CN CN201611122144.XA patent/CN108197079A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130036082A1 (en) * | 2011-08-05 | 2013-02-07 | International Business Machines Corporation | Multiple imputation of missing data in multi-dimensional retail sales data sets via tensor factorization |
CN104794124A (zh) * | 2014-01-20 | 2015-07-22 | 中国移动通信集团重庆有限公司 | 一种数据缺失补漏的智能实现方法及系统 |
CN105675986A (zh) * | 2016-02-03 | 2016-06-15 | 西安电子科技大学 | 数据缺失时基于时频分析窄带调频信号的到达角估计 |
Non-Patent Citations (4)
Title |
---|
徐科,等: "《金属表面质量在线检测技术》", 30 October 2016, 冶金工业出版社 * |
施彦,等: "《神经网络设计方法与实例分析》", 31 December 2009, 北京邮电大学出版社 * |
王岚,等: "《营销管理数据挖掘的系统设计与实施》", 31 March 2016, 中国书籍出版社 * |
花琳琳,等: "不同缺失值处理方法对随机缺失数据处理效果的比较", 《郑州大学学报(医学版)》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446185A (zh) * | 2018-08-29 | 2019-03-08 | 广西大学 | 基于用户聚类的协同过滤缺失数据处理方法 |
CN109446185B (zh) * | 2018-08-29 | 2021-07-13 | 广西大学 | 基于用户聚类的协同过滤缺失数据处理方法 |
CN111611231A (zh) * | 2019-02-25 | 2020-09-01 | 新奥数能科技有限公司 | 设备运行数据的清洗方法、装置、可读介质及电子设备 |
CN111694827A (zh) * | 2020-05-31 | 2020-09-22 | 重庆大学 | 一种电力设备状态监测数据缺失值分类插补方法和系统 |
CN111694827B (zh) * | 2020-05-31 | 2023-04-07 | 重庆大学 | 一种电力设备状态监测数据缺失值分类插补方法和系统 |
CN111881420A (zh) * | 2020-08-05 | 2020-11-03 | 华北电力大学 | 一种风电机组运行数据插补方法 |
CN111881420B (zh) * | 2020-08-05 | 2024-01-23 | 华北电力大学 | 一种风电机组运行数据插补方法 |
CN113313194A (zh) * | 2021-06-17 | 2021-08-27 | 西北工业大学 | 一种基于线性插值偏差的推进剂制备数据缺失值填补方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108197079A (zh) | 一种改进的对缺失值插补的算法 | |
Zheng et al. | Generalized composite multiscale permutation entropy and Laplacian score based rolling bearing fault diagnosis | |
CN109389145B (zh) | 基于计量大数据聚类模型的电能表生产厂商评价方法 | |
CN110276416A (zh) | 一种滚动轴承故障预测方法 | |
CN108647707B (zh) | 概率神经网络创建方法、故障诊断方法及装置、存储介质 | |
CN107436963B (zh) | 一种基于Copula函数多元退化的O型橡胶密封圈寿命预测方法 | |
CN109271374A (zh) | 一种基于机器学习的数据库健康度打分方法和打分系统 | |
CN105279365A (zh) | 用于学习异常检测的样本的方法 | |
CN111343147B (zh) | 一种基于深度学习的网络攻击检测装置及方法 | |
CN104849650B (zh) | 一种基于改进的模拟电路故障诊断方法 | |
CN101738998B (zh) | 一种基于局部判别分析的工业过程监测系统及方法 | |
CN110020714B (zh) | 模型训练及数据分析方法、装置、设备以及存储介质 | |
CN107037306A (zh) | 基于隐马尔科夫模型的变压器故障动态预警方法 | |
CN108846307B (zh) | 一种基于波形图像的微震与爆破事件识别方法 | |
CN109359550A (zh) | 基于深度学习技术的满文文档印章提取与去除方法 | |
CN102930495B (zh) | 一种基于隐写测评的隐写分析方法 | |
CN107132266A (zh) | 一种基于随机森林的水质分类方法及系统 | |
CN113538353B (zh) | 基于单通道图数据增强和迁移训练残差网络的五相异步电动机滚动轴承故障诊断方法 | |
CN103902798B (zh) | 数据预处理方法 | |
CN110020637A (zh) | 一种基于多粒度级联森林的模拟电路间歇故障诊断方法 | |
CN114783538A (zh) | 一种煤炭灰分预测方法及装置 | |
CN109447153A (zh) | 用于非均衡数据分类的散度-激励自编码器及其分类方法 | |
CN111914490A (zh) | 一种基于深度卷积随机森林自编码的泵站机组状态评价方法 | |
CN111461923A (zh) | 一种基于深度卷积神经网络的窃电监测系统和方法 | |
Ducey | The ratio of additive and traditional stand density indices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180622 |
|
RJ01 | Rejection of invention patent application after publication |