当前位置: 首页 > 专利查询>山东大学专利>正文

一种基于生成对抗网络的时间序列数据填补方法及系统技术方案

技术编号:21971304 阅读:27 留言:0更新日期:2019-08-28 01:26
本发明专利技术公开了一种基于生成对抗网络的时间序列数据填补方法及系统,包括:获取不同缺失率的数据集;对上述的数据集进行归一化处理,将时间序列数据转化为矩阵数据形式;构造滑动窗口,将数据分成若干组;筛选各个组中不缺失数据的行,构造每个组的完成数据集;将各个组中的完成数据集放入生成对抗网络中训练,使生成器和判别器达到平衡,最终生成若干虚拟数据;筛选生成的虚拟数据,将虚拟数据填补到缺失数据中;反归一化数据,最终完成数据填补。本发明专利技术有益效果:引入生成对抗网络,实现了缺失值的训练填补方式,特别适用于时间序列数据缺失值填补;候选填补数据量巨大,可根据填补数据的不同特性来筛选数据从而进行填补。

A Time Series Data Filling Method and System Based on Generating Countermeasure Network

【技术实现步骤摘要】
一种基于生成对抗网络的时间序列数据填补方法及系统
本专利技术涉及时间序列数据缺失值填补的
,特别是涉及一种基于生成对抗网络的时间序列数据填补方法及系统。
技术介绍
本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。时间序列数据是最常见的数据之一,在金融、医疗、交通、气象、海洋等领域均有广泛的应用。然而,由于传感器、传输网络的不稳定性等原因,数据不可避免的会出现缺失值。数据的缺失会造成信息的不完整,从而对后续的分析和处理带来很不利的影响。一般的缺失值的填补方法包括均值填补、多项式拟合,插值法、EM算法、K-means聚类算法、组合完整化等方法。专利技术人发现,时间序列数据包含时间特征,较静态数据填补具有更高的挑战性。因为缺失数据往往与先前数据存在相关性,利用传统的数据填补方法可能会造成较大的误差。
技术实现思路
为了解决上述问题,本专利技术提出一种基于生成对抗网络的时间序列数据填补方法及系统,引入生成对抗网络,实现了缺失值的训练填补方式,特别适用于时间序列数据缺失值填补。在一些实施方式中,采用如下技术方案:一种基于生成对抗网络的时间序列数据填补方法,包括:获取不同缺失率的数据集;对上述的数据集进行归一化处理,根据数据周期,将时间序列数据转化为矩阵数据形式;构造滑动窗口,将数据分成若干组,每组包含所有数据的若干列;筛选各个组中不缺失数据的行,构造每个组的完成数据集;将各个组中的完成数据集放入生成对抗网络中训练,使生成器和判别器达到平衡,最终生成若干虚拟数据;筛选生成的虚拟数据,将虚拟数据填补到缺失数据中;反归一化数据,最终完成数据填补。在另一些实施方式中,采用如下技术方案:一种基于生成对抗网络的时间序列数据填补系统,包括服务器,所述服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的基于生成对抗网络的时间序列数据填补方法。在另一些实施方式中,采用如下技术方案:一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时执行上述的基于生成对抗网络的时间序列数据填补方法。与现有技术相比,本专利技术的有益效果是:引入生成对抗网络,实现了缺失值的训练填补方式,特别适用于时间序列数据缺失值填补。滑动窗口大大减小了数据计算量,降低了对运算设备的要求。在真实的数据缺失中,同一周期中的缺失值往往是集中在一个或者几个中心的,所以通过滑动窗口仅仅对其中缺失的部分进行生成填补,会大大提高填补效率。候选填补数据量巨大,可根据填补数据的不同特性来筛选数据从而进行填补。本专利技术数据填补方法每次会生成完整周期数据,对数据缺失率敏感度相对较低。对于缺失率较高的时间序列数据,具有很好的效果。本专利技术数据填补方法每次会产生大量的虚拟数据,使得数据填补不再是传统方法中只产生一种填补结果。可以根据不同的时间序列数据特征,设置不同的对比方法,以得到不同的数据填补结果,有利于实现更精确的分析预测。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。图1是实施例一中基于生成对抗网络对时间序列数据缺失值填补的具体流程;图2是实施例一中生成对抗网络的模型结构图。具体实施方式应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本专利技术使用的所有技术和科学术语具有与本申请所属
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。实施例一在一个或多个实施方式中,公开了一种基于生成对抗网络的时间序列数据填补方法,如图1所示,包括以下步骤:S1获得不同缺失率的数据集。S2将数据集归一化处理,并根据数据周期构成数据矩阵。S3构造滑动窗口,将数据分成若干组,每组包含所有数据的若干列。S4筛选各个组中不缺失数据的行,构造每个组的完成数据集。S5将各个组中的完成数据集放入生成对抗网络中训练,使生成器和判别器达到平衡,最终生成若干虚拟数据。S6筛选生成的虚拟数据,将虚拟数据填补到缺失数据中。S7反归一化数据,最终完成数据填补。步骤S1中,本实施例中,为了获得不同缺失率的数据集,在获取时间序列数据后,按照给定的缺失率随机删除数据,其中缺失率为缺失数据占总数数据的比重。缺失率可设定为5%、10%、20%、30%。当然,不同缺失率的数据集也可以是直接获取到的。步骤S2中,首先对数据进行归一化处理,进行归一化处理的公式如下:其中ai,j为原始数据,Ai,j为归一化数据,max(ai,j)和min(ai,j)为原始数据的最大值和最小值。进一步的,时间序列数据转化为矩阵数据形式。以小时、天、月、年等周期,分割数据,使每一行数据为一个周期,即小时、天、月、年。步骤S3中,为保证训练数据集中包含足够的数据量,构建滑动窗口,保证每次构建的数据量足够大。滑动窗口中的数据为一组,以组为单位进行数据填补,每一组包含数据的若干列和所有行。列数满足如下公式:其中,n为滑动窗口的宽度即每组数据的列数,x为数据的缺失率,a生成对抗网络所需的最小数据量,推荐为10,b为数据总行数。大量的数据往往意味着大量的计算,而基于生成对抗网络的时间序列数据填补方法所涉及到的计算复杂,这就意味着需要较高性能的计算机才可以完成数据填补工作。滑动窗口则大大减小了数据计算量,降低了对运算设备的要求。此外,在真实的数据缺失中,同一周期中的缺失值往往是集中在一个或者几个中心的,所以通过滑动窗口仅仅对其中缺失的部分进行生成填补,会大大提高填补效率。在数据缺失率不变的情况下,总的采集数据量越大,缺失数据的数量越大。假设缺失率为5%,每一周期存在24个数据,则该周期不缺失的概率为(1-5%)24,其值约等于0.292。如果数据采集更加频繁的话不缺失的概率则会继续减小,这就会造成所有数据中很难找到不缺失的数据用于生成对抗网络(GAN)学习,让该方法失效。滑动窗口则可以减小每次填补的数据量,保证GAN有充足的数据量去学习。步骤S4中,将每组数据分为两部分,即缺失数据部分和非缺失数据部分。这里的数据缺失指的是数据中数据中具有大于等于一个缺失值的行,非缺失数据指的是数据中没有缺失值的行。举例说明如下:假设归一化后的数据矩阵如下表所示,其中每一行为一个数据周期,Na为缺失数据。A1,1A1,2A1,3NaNaNaNaA1,8NaA1,10NaA1,12A1,13A1,14A1,15A2,1A2,2A2,3A2,4A2,5A2,6A2,7A2,8A2,9A2,10A2,11A2,12A2,13A2,14A2,15A3,1A3,2A3,3A3,4NaA3,6A3,7NaA3,9NaA3,11A3,12A3,13A3,14A3,15A4,1A4,2A4,3A4,4A4,5A4,6A4,7A4,8A4,9A4,10A4,11A4,12A4,13A4,14A4,15A5,1A5,2A5,3本文档来自技高网
...

【技术保护点】
1.一种基于生成对抗网络的时间序列数据填补方法,其特征在于,包括:获取不同缺失率的数据集;对上述的数据集进行归一化处理,根据数据周期,将时间序列数据转化为矩阵数据形式;构造滑动窗口,将数据分成若干组,每组包含所有数据的若干列;筛选各个组中不缺失数据的行,构造每个组的完成数据集;将各个组中的完成数据集放入生成对抗网络中训练,使生成器和判别器达到平衡,最终生成若干虚拟数据;筛选生成的虚拟数据,将虚拟数据填补到缺失数据中;反归一化数据,最终完成数据填补。

【技术特征摘要】
1.一种基于生成对抗网络的时间序列数据填补方法,其特征在于,包括:获取不同缺失率的数据集;对上述的数据集进行归一化处理,根据数据周期,将时间序列数据转化为矩阵数据形式;构造滑动窗口,将数据分成若干组,每组包含所有数据的若干列;筛选各个组中不缺失数据的行,构造每个组的完成数据集;将各个组中的完成数据集放入生成对抗网络中训练,使生成器和判别器达到平衡,最终生成若干虚拟数据;筛选生成的虚拟数据,将虚拟数据填补到缺失数据中;反归一化数据,最终完成数据填补。2.如权利要求1所述的一种基于生成对抗网络的时间序列数据填补方法,其特征在于,对数据集进行归一化处理,具体为:其中,ai,j为原始数据,Ai,j为归一化数据,max(ai,j)和min(ai,j)为原始数据的最大值和最小值。3.如权利要求1所述的一种基于生成对抗网络的时间序列数据填补方法,其特征在于,根据数据周期,将时间序列数据转化为矩阵数据形式,具体为:以小时、天、月、年时间周期分割数据,使每一行数据为一个周期。4.如权利要求1所述的一种基于生成对抗网络的时间序列数据填补方法,其特征在于,每一组中包含数据的列数满足:其中,n为滑动窗口的宽度即每组数据的列数,x为数据的缺失率,a为生成对抗网络所需的最小数据量,b为数据总行数。5.如权利要求1所述的一种基于生成对抗网络的时间序列数据填补方法,其特征在于,所述生成对抗网络中,生成器为了学习数据...

【专利技术属性】
技术研发人员:高瑞张道良武传艳张德祯于沛轩
申请(专利权)人:山东大学
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1