融合IMR-WGAN的时序数据修复方法

2024-03-05 01:41孟祥福马荣国
小型微型计算机系统 2024年3期
关键词:时序噪声误差

孟祥福,马荣国

(辽宁工程技术大学 电子与信息工程学院,辽宁 葫芦岛125105)

0 引 言

大数据技术普遍应用在工业工程、社会科学、新能源等领域.随着数据采集设备的普及使用,海量的工业数据夜以继日的产生,其中时间序列数据(Time Series Data)是工业大数据最广泛和最基础的数据形式.对基于采样时间点的工业时序数据进行挖掘和知识提取,能够为系统运行状态的控制、分析和规划提供重要的数据论证.从数据库系统提取到的工业数据因技术故障等客观因素或人为误差等主观因素而广泛存在数据质量问题,若直接采用未清洗的异常数据建模,会严重影响模型预测能力和数据分析结果,进而限制了对工业数据特征的深入挖掘和知识提取,同时带来大量人力物力成本的损耗.修复数据异常和优化数据质量,可以提高模型的预测能力,进而提升系统的服务质量并增强系统的预测与防止风险能力,保障后续的数据分析阶段得到精准的分析结果,从而促进工业大数据分析技术的发展.

随着物联网和大数据等人工智能技术的发展,工业领域对数据的挖掘更有利于代替人力监测系统运行状态并提高生产效率.然而,由于工业数据具有多源性、大容量、持续采样等特点导致工业时序数据目前普遍存在各种数据异常,如峰值误差、连续误差和数据缺失等常见的各种数据质量问题.即使在极其可靠的航空领域和金融领域,其数据异常的概率依然在5%左右[1].在数据挖掘的研究工作中,超过90%的数据分析师要花费至少40%的工作时间用于修复数据异常从而提高数据质量[2].同时,数据修复作为数据预处理环节的必要步骤,在数据挖掘等领域有着广泛应用.因此,数据修复已经逐渐成为有效清洗异常数据,提高数据质量的一种重要手段.只有在高质量的工业数据集基础上进行建模预测,才能实现可信任和智能化的大数据分析技术.

下面结合实例说明时序数据异常情况及数据修复的重要性.图1展示了采集时间为某日上午10:45~11:00(采样频率为30秒)的辐照度数据.理论上辐照度随太阳辐射增强而逐步增加,但因辐照仪故障和数据传输不稳定等种种因素会导致采集到的数据出现数据异常.图中圆圈图标点线为可信任数据,矩形图标点线为数据库实际存储值即包含异常值在内的数据,倒三角图标点线为修复后的时序数据.

图1 辐照仪采集的异常数据及修复数据Fig.1 Anomaly data and repair data collected by irradiator

从图1中可以看出,在10:46:30时刻,辐照度由874.93W/m2瞬间上升880W/m2,明显偏离真实值序列趋势,产生了单点峰值误差;在10:49:00~10:54:00采样时间内,辐照度走势出现了持续性误差,异常数值分布在880W/m2左右.数据修复任务就是将采集到的异常值修复为靠近真实数据分布的数值.如在10:46:30时刻的辐照度由880W/m2修复为875.23W/m2,10:48:30时刻的辐照度由880.16W/m2修复为875.54W/m2,其余时刻的辐照度修复情况如图所示.可以看出,修复后的辐照度数据显著接近真实值数据分布.若利用未修复辐照度数据建模,会导致模型的预测功率显著偏低.

基于上述研究现状,针对带有时间标记的工业时序数据质量问题,本文提出了基于奖励机制的改进IMR[3]与改进Wasserstein 生成对抗网络[4](Iterative Minimum Repairing and Wasserstein Generation Adversarial Network with abnormal and Truth reward punishment mechanism,IMR_WGAN-AT)混合模型的时序数据修复方法.基于多模块组合的StackGAN[5]论证了混合模型方法使得模型有效解决了梯度不稳定和模式崩塌现象.

本文将时序数据修复任务分为数据预处理阶段和数据修复阶段,主要贡献如下:

1)在数据预处理阶段,与现有基于机器学习的修复方法在数据预处理环节直接丢弃异常数据的方法不同,本文提出保留异常数据并进行信息标注及归一化处理,用于充分挖掘异常数据与真实值数据之间存在的特征约束,并减少不同时序属性量纲对修复准确度的影响.

2)提出了近邻参数裁剪规则,并引入了时间注意力机制和递归多步预测方法.数据修复阶段主要分为粗糙噪声样本模块与模拟时序概率分布模块.粗糙噪声样本模块任务由基于近邻参数裁剪规则的IMR[3]方法利用异常值与真实值之间的误差通过最小二乘法获得修复参数矩阵,并利用近邻参数裁剪规则与修复公式迭代生成噪声向量;在模拟时序概率分布模块的生成器设计了基于动态时间注意力机制的时间注意力网络层,用于提取时序特征权重,并与门控循环单元网络串联组合捕捉窗口周期内的时序依赖特征,同时引入递归多步预测方法从而提高生成器修复数据的质量.

3)提出了异常值与真实值(Abnormal and Truth,AT)奖励机制与基于权重的均方误差(Weighted Mean Square Error,WMSE)损失函数.为解决判别器识别样本数据的能力过强或过弱的异常训练情况,即判别器无法有效区分真实样本和生成样本,提出了AT奖励机制.AT奖励机制对识别出的伪真实数据分配高奖励,增强判别器的识别能力.对伪生成样本分配低奖励,惩罚判别器的识别能力;WMSE损失函数可以优化数据集中极端数值导致的误差波动,在有效降低生成器捕捉时序数据中极端数值特征的同时仍然保留加倍惩罚极端数值的能力,从而优化生成器的表达能力.AT奖惩机制与WMSE损失函数更好的控制了生成器生成修复数据的生成细节与生成质量,并有效解决了模型训练过程中的梯度不稳定以及模式崩塌问题.

本文后续内容结构安排为:第1节介绍工业时序数据修复领域的相关工作.第2节给出与本文研究相关的基础定义,对时间序列、连续误差、峰值误差、修复点评价标准、近邻参数裁剪规则和修复问题进行解释,并提供问题形式化定义.第3节提出了IMR_WGAN-GP混合时序数据修复模型,并将修复过程分为数据预处理和数据修复两个阶段阐述本文的创新点及工作过程,包括具体算法等.第4节通过多个数据集上的实验在数据修复准确度与模型稳定性与现有方法进行了对比分析.第5节总结了全文工作.

1 相关工作

近年来工业时序数据大量产生但时序数据会在数据采集、数据传输、数据录入等过程不可避免的产生诸如连续误差、峰值误差、数据缺失、时标不齐等种种异常,限制了对工业领域数据的深入分析.因此,工业时序数据的异常点检测和异常修复正逐渐成为数据挖掘领域的研究热点和难点.

工业大数据除了具有规模大、类型杂和质量低等基本特征,还具有多模态、强关联和高通量等新特征[6],这导致了当时序数据出现质量问题时往往不是单一场景的,单点峰值误差、连续误差与数据缺失等异常场景往往是伴随出现的.大多数现有数据清洗方法只针对单一的某种误差场景,在多种场景并存时数据清洗效果不符合建模需求.

基于约束的数据修复算法.Zhang[7]等人针对峰值误差数据修复提出的速度约束方法与基于关系型数据库领域具 有NP-hard时间复杂度的修复算法不同,它将数据修复转换为线性规划问题,并提出基于置信区间选择合适速度约束的方法修复数据.但仅考虑了单一区间的速度约束,易因检测修复不足而不能达到较优的修复效果.Gao[8]等人提出的多区间速度约束时序数据修复方法成功解决上述方法的弊端.根据多区间速度约束生成各数据点的修复候选点集合,采用动态规划方法选取最优解.基于速度约束的修复方法可以有效地修复峰值误差,但方法是基于邻近连续点进行修复的,故数据出现连续误差时,修复精度明显低于其他类型修复方法.同时,基于约束的方法也会因约束阈值设置的过于宽松或严格而导致修复精度不高.

基于统计的数据修复算法.基于统计的修复方法有效解决了基于约束的方法在修复连续误差场景下的明显弊端.Zhang等人参考ARX[9]支持外生输入的时序数据清洗模型,在充分利用标注信息并结合数据中的时序关联特性与数据修复最小变化原则[10]的情况下,提出了基于最小二乘法的最小迭代修复模型[3](Iterative Minimum Repairing,IMR),通过最小二乘法计算修复参数矩阵,并结合修复公式迭代清洗数据.此方法是基于前一个修复点是可信任的前提下进行修复的,即若前一个点修复不准确,则导致该异常片段数据整体修复精度不高.基于统计的方法因平滑修复机制导致对时间步长较远的异常值修复准确率较低.

基于机器学习的数据修复算法.Lago[11]等人得出结论,基于机器学习的数据修复方法比其他类型方法可以取得更高的修复准确度.Mahdieh Ataeyan[12]等人提出了基于约束和集成学习的数据修复方法,主要利用数据库存储规则的特殊性与显性函数依赖关系,为每个属性分别构建贝叶斯、决策树和多层感知机网络的集成模型用于修复数据.若数据特征之间无明显函数依赖但存在隐性特征关联,则模型修复能力明显降低.为了充分利用时序数据之间的隐性特征关联,Hu[13]等人首次将生成对抗网络模型引入到数据修复领域并提出改进型深度修复生成对抗网络(Deep data repair Generation Adversarial Network,DrGAN),利用一维卷积神经网络(One-dimensional convolutional neural networks,ConV1D)捕捉特征之间的隐性依赖,用于修复不同数据丢失率场景下的数据.但DrGAN因不同煤热、煤质和流体特性等数据集独有特性导致模型的迁移能力较差,且未在梯度稳定方面做出改进,仍易出现梯度消失情况.在有少量数据点可用时,Bashar[14]等人提出了TAnoGAN(Time Series Anomaly Detection with Generative Adversarial Networks,TAnoGAN)方法用于时序数据异常点检测领域,通过逆映射将序列映射到潜在空间并重建序列,重建损失用于估计异常分数.Dan等人将基于遗传算法的MAD-GAN[15](Multivariate Anomaly Detection for Time Series Data with Generative Adversarial Networks,MAD-GAN)模型用于多变量时序数据异常检测,对多个数据流之间的复杂多变量相关性进行整体建模.将多元时间序列数据划分为一个滑动窗口的子序列,同时重构损失函数.但是在确定最佳子序列及模型稳定方面未做出改进.Geiger[16]等人提出了基于生成对抗网络的无监督时序数据异常检测方法TadGAN(Time Series Anomaly Detection Using Generative Adversarial Networks,TadGAN),通过引入周期一致性损失训练缓解生成器与判别器的矛盾,并试验了逐点和基于窗口的方法重构误差以缓解梯度不稳定和模式崩塌问题.工业系统通常是源源不断地产生数据,需要专家提供正确标签并反馈到模型中,使模型主动学习到数据的变化.因此充分挖掘异常数据与真实值数据之间的特征约束并反馈到模型中,与缓解梯度消失或梯度爆炸和模式崩塌问题对于提高模型的精度与稳定性均是尤为重要的.

基于上述研究现状,针对工业时序数据出现连续误差、单点峰值误差和数据缺失3种数据异常并存的场景时,本文提出了融合奖励机制的IMR_WGAN-GP混合模型的时序数据修复方法.在保留异常数据并进行信息标注及归一化处理后,采用基于近邻裁剪规则的IMR[3]方法处理数据并输出噪声向量.同时引进时间注意力机制提取时序特征权重,并与GRU网络串联组合挖掘时序数据特征.设计AT奖励机制和WMSE损失函数用于提高判别器识别真实样本和生成样本的能力,反向优化生成器修复数据的细节和质量,且有效解决了梯度异常及模式崩塌问题.

2 问题定义

定义1.(时间序列数据)时间序列数据指在不同时间标记上收集到的数据,用于描述现象随时间变化的情况.在一条数据序列X={x1,x2,…,xi,…,xm},xi表示第i个数据点,同时每个数据点xi都有一个时间标记ti.

比如,例1中的辐照度时序数据,描述了采样时间为10:45~11:00(采样频率为30秒)的辐照度变化情况,数据点x1=874.4122W/m2对应时间标记t1=10:45:00,以此类推,每一个时间标记ti都有对应的数据点xi.

定义2.(连续误差)连续误差是指时间序列数据中出现了一段持续性偏离真实值序列趋势的异常数据段.

比如,例1中连续时序数据段x8~x18明显偏离整体真实值趋势,称为连续误差数据.

定义3.(峰值误差)峰值误差是指时间序列数据中出现了少量显著偏离真实值序列趋势的异常数据点,峰值可为正峰值或负峰值,即峰值误差数据相对真实值序列相对向上或向下偏离.

比如,例1中出现的单点正峰误差x4明显偏离原有时序数据趋势,称为峰值误差数据或单点峰值误差数据.

定义4.(修复点评价标准)假设时间序列X内的xi为异常点,Y表示修复后的序列,每个yi为标注的真实值或xi点的修复值.修复任务就是将时间标签ti对应的异常点xi修复为yi,判定成功修复的评价标准遵循数据修复领域内最小变化原则[10],定义为:

(1)

其中,w表示修复窗口的序列长度,0≤i=l,l+1,…,l+w≤m.如图1所示,原数据点x3修复为y3,修复前后时间标签t3保持不变,在迭代修复过程中,该点的最小修复距离为D(x3,y3)=|y3-x3|=4.77.

定义5.(近邻参数裁剪规则)近邻参数裁剪规则是指在每次迭代修复过程中将数据集中明显偏离真实值序列趋势的数值强制修改为[-v,v],即修复值与真实值之间的D(xi,yi)大于该窗口内真值序列最大值与最小值之间的距离D(xtruthmin,xtruthmax),且当修复值与真实值之间的误差小于零,即修复值位于真实值的下方,则将该点修复值强制更改为(-v).当修复值与真实值之间的误差大于零,即修复值位于真实值的上方,则将该点修复值强制更改为v,可按式(2)裁剪.

(2)

定义6.(时序数据修复问题的目标)时序数据修复问题的目标具体是指给定一个多种误差场景并存的时间序列数据X,其中包含多段异常数据序列,修复问题是将异常数据修复为尽量贴近真实值的数据,同时数据清洗前后时间标签ti保持不变.如图1中存在峰值误差x4和连续误差段数据x8~x18.矩形图标点线中表示异常数据,经过模型修复后的序列数据如倒三角图标点线所示.相较于异常值序列,修复后的数据序列已经显著贴近真实值数据序列.

3 IMR_WGAN-GP时序数据修复模型

本节将修复工作分为数据预处理和数据修复两个阶段,总体框架如图2所示.为了提高模型的修复能力,在数据预处理阶段保留异常数据并对时序数据整体进行信息标注及归一化处理;数据修复阶段分为粗糙噪声样本和模拟时序概率分布两个模块.首先,在噪声样本模块通过异常值与真实值之间的差值求得参数估计矩阵,利用最小二乘法计算出修复参数矩阵,结合基于近邻裁剪规则的修复公式迭代生成噪声向量;然后,噪声向量作为模拟时序概率分布模块的噪声输入,生成器与判别器进行二元极大极小对抗训练.此时模型输出候选修复数据并通过修复点评价标准(第2节定义4)进行评估,候选修复数据通过评估后,此时模型达到纳什均衡状态,模型训练完成;最后,保存模型参数文件并输出修复序列.

图2 时序数据修复过程框架图Fig.2 Framework diagram of the time series data repair process

3.1 数据预处理阶段

受到基于统计的IMR[3]时序数据修复中利用异常数据的思想启发,且现有基于机器学习时序数据修复方法对异常数据的处理方式是直接丢弃或者忽视,从而降低了数据修复准确度.故本文选择保留异常数据并对完整时序数据进行信息标注且同时进行归一化操作.

1)信息标注

信息标注是指对工业时序数据中异常值和真实值进行人工标注或自动标注,标注后的异常数据与真实值共同拼接成特征向量.

异常值对应的真值可以通过人为标注或自动标注.比如,准确的位置信息是由用户实际打卡并在地图上人为标记;周期性的自动标注发生在部分工业场景下,比如精确的传感器在相对较长的周期内采集准确的数据(作为标注值),而人为因素或数据传输故障可能会持续产生不可靠的数据序列[17].

2)归一化

由于不同特征的监测数据具有不同的量纲,即数值相差较大,且模型的激活函数敏感区间也是有限的.为减小因量纲不同造成的模型预测精度问题,在输入模型之前,对原始数据进行归一化操作,归一化公式为[18]:

(3)

式中xmin、xmax分别表示对应特征原始真实值数据中的最小值与最大值,X*代表归一化的数据.

3.2 数据修复阶段

数据修复阶段是IMR_WGAN-GP完成时序数据修复的核心阶段,该阶段的任务是进一步挖掘时序数据真实值与异常值、同一特征内部的时序数据及不同特征之间的动态时序依赖特征,进而提高生成器修复数据的质量.数据修复阶段框架如图2所示,主要由基于近邻参数裁剪规则的改进IMR[3]方法组成的粗糙样本模块和融合AT奖励机制与时间注意力机制的WGAN-AT组成的模拟时序概率分布模块组合而成.

3.2.1 粗糙噪声样本模块

为了生成质量更好的噪声向量,在IMR[3]的基础上提出了近邻参数裁剪规则.首先,根据异常值与真实值之间的参数估计矩阵按式(4)获取修复参数矩阵;其次,按修复式(5)利用参数矩阵与前一个数据点进行迭代修复;最后,结合近邻参数裁剪规则(式(2))在每次迭代中将修复值与真实值之间的D(xi,yi)大于该特征真实值序列内部最大值与最小值之间的距离D(xtruth_min,xtruth_max)的数值强制更改为[-v,v].参数估计矩阵式和修复式分别如下:

(4)

(5)

3.2.2 模拟时序分布模块

粗糙噪声样本模块输出的噪声向量作为该模块的生成器输入,生成器主要由动态时间注意力层、GRU和Dense网络构成.判别器由Conv1D、Flatten和Dense网络及AT奖励机制和梯度惩罚构成,其中损失函数为本文设计的WMSE函数.前者代表通过噪声样本模块生成的噪声向量学习真实值时序数据分布生成模拟样本,后者代表判断输入样本为真实样本的概率.为了获得真实但“非真实”的数据,IMR_WGAN-AT在判别器和生成器网络之间进行二元极大极小博弈.

1)生成器

生成器的目标是通过输入噪声样本生成模块生成的噪声向量,向真实数据分布映射并生成同概率分布的修复值.本方法的修复值生成过程借鉴了时序预测中的递归多步超前预测原理.因此,在生成器中,需要定义与数据预处理阶段同步的输入步长并定义输出步长,生成器的输入将是一个三维数据,即批次大小、特征和输入步长,生成器输出将是输出步长大小的数据.

为了构建一个性能良好的生成器,选择引入动态时间注意力机制设计时间注意力网络并与GRU网络组合挖掘窗口周期内不同时间步长的真实值与异常值、同一特征内部的时序数据及不同特征之间的潜在关联,从而使得模型在修复过程中能根据权重大小给予特征不同程度的关注.图3展示了IMR_WGAN-AT的主要网络结构,初始工业数据集经噪声生成模块初次修复后生成粗糙噪声向量,动态时间注意力网络层与三层GRU层作为主网络架构,后串联三层Dense层,其中最后一层Dense的神经元数量将与要预测的输出步长相同.判别器的主网络架构由三层ConV1D和Dense层组成,AT奖励机制的样本数据来自于生成器的生成数据与真实工业数据,并与WMSE等损失函数共同反向优化生成器修复数据.

图3 生成器和判别器网络结构图Fig.3 Generator and discrim inator network structure diagram

噪声向量进入生成器内部后,在下述的小模块中更新参数并根据损失函数不断优化生成器的修复数据质量.

(1)动态时间注意力模块

(6)

(7)

(8)

(2)计算隐藏状态

(9)

(10)

(11)

最终记忆状态:ht=(1-zt)⊙ht-1+zt⊙h′t

(12)

其中σ(.)表示Sigmoid激活函数,Wz、Wr、W分别为对应状态的参数矩阵.

(3)递归多步预测方法

为了更好地结合时序数据的周期性和提高数据利用率,本文引用时间序列预测中的递归多步超前预测方法生成修复数据.时间序列数据为挖掘不同步长的时序依赖特性而需预测多个时间步长,称为多步时序预测.

以例1中的数据阐述递归多步预测方法,现令滑动窗w内包含数据x5~x10为[875.9985,875.0094,875.1409,880.1603,880.5120,880.6442],对应的真实值序列为[875.9985,875.0094,875.1409,875.1603,875.2421,875.5354],步长为3,其中点x8~x10为未知待修复点.用本文方法根据[875.9985,875.0094,875.140]将x8修复为y8即875.5385,然后将预测值当为特征值递归修复,即根据[875.0094,875.1409,875.5385]将x9修复为y9即875.5526.

(4)生成器模型输出

(13)

式中,ψ(.)表示带有Adam激活函数的GRU层,WGRU分别表示生GRU网络中的权值矩阵.

(5)生成器的损失函数

生成器的损失函数(式(14))能够描述生成的样本与真实样本的相似性,具有低生成器损失的样本通常能够提供良好的样本质量.因此生成器可以通过优化损失函数学到真实样本分布并生成相似分布的样本数据.

G_Loss=-Ex~PG[D(G(z))]

(14)

其中,PG代表生成器的生成数据分布,z代表噪声数据.

2)判别器

判别器的目标是鉴定输入到判别器的样本是否来自真实样本数据Xreal并输出标量分数.标量分数解释为输入数据的真实程度,即分数越高,判别器的输入数据来自真实样本空间的可能性越大.具体网络结构如图3所示,判别器的主架构由善于挖掘时序特征的Conv1D网络构成.为了使判别器可以精准的完成目标任务,本文设计了Abnormal and Truth奖励机制和基于权重的误差损失函数Weighted Mean Square Error.

(1)Abnormal and Truth奖励机制

(15)

AT=(-1)ξδ*Ex~PATdata(D(G(x))+D(x))

(16)

其中η是奖励空间中真实样本和生成样本的混合比例,x是从奖励空间的数据中提取的数据.ξ表示控制奖励式分配高奖励或低奖励,δ表示奖励的程度.G(.)表示生成器,D(.)表示判别器.

图4和图5分别展示了例1中数据集在相同参数下是否加入AT机制训练1000次的损失函数.图4展示判别器和生成器的损失值从46.8迅速下降到0.1附近,判别器与生成器在第350轮左右达到伪纳什均衡状态,代表此时生成器的修复数据完美欺骗判别器并被判定为真数据,判别器在训练初期识很容易达到了高准确性.图5展示了模型加入了AT奖励机制后,在训练初期判别器的损失值最高为24.7,大幅提高了判别器的判别能力,判别器和生成器在第215轮左右逐渐达到纳什均衡.可以看出,在训练时加入AT机制,明显精确了判别器的识别样本能力.第4节的实验表明,模型加入AT奖励机制后,判别器的判定能力更精确,反向优化生成器生成的样本质量更好.

图4 生成器和判别器原始损失值Fig.4 Generator and discriminator raw loss values

图5 加入AT机制的生成器和判别器损失值Fig.5 Generator and discriminator loss values added to the AT mechanism

(2)Weighted Mean Square Error损失函数

不同类型的工业时序数据集即使在正常数值范围内也会在时间周期内出现极端值,如零或相对整体趋势较高的数据.在第4节的辐照度数据集中,辐照度当日5点~20点的有效数值区间可能为0~900W/m2,其余时间均为零.现有损失函数对极端值过于宽松或敏感,造成判别器的损失过大或过小,导致判别能力下降,从而导致生成器的生成样本分布仍然远离真实数据分布.基于权重的均方误差(Weighted Mean Square Error,WMSE)作为损失函数可以有效减缓时序数据集中极端值产生的波动且依然保留加倍惩罚极端误差的能力,可以更好的控制生成器生成样本的细节,故可用式(17)表示.第4节的实验证明,采用WMSE作为损失函数,可以更好地反向优化生成器参数,从而生成更准确的修复数据.

(17)

式中yi作为异常值的修复值,xi作为异常值对应的真实值.

(3)梯度惩罚

|f(x1)-f(x2)|≤K|x1-x2|

(18)

GP=λEx~Ppenatly[(‖∇xD(x)‖2-K)2]

(19)

(20)

其中K表示权重限制,λ代表梯度惩罚力度,Ppenalty、Pdata和Pz分别代表梯度惩罚空间的分布、真实样本分布和噪声分布.

3)训练过程

为了实现更好的修复准确度,粗糙噪声样本模块先迭代训练生成噪声向量;模拟时序概率分布模块接收噪声向量后的训练过程大概如下:每轮训练,通常先训练判别器num次,后相应的训练一次生成器.同时利用Checkpoint机制及时保存网络权重,增大模型训练过程中的容错能力.具体训练过程如下:

步骤1.输入经过信息标注和归一化后的时序数据,首先根据异常值与真实值之间的误差获得参数矩阵,其次根据最小二乘法计算出修复参数估计矩阵,最后根据修复公式和近邻裁剪规则生成修复数据,迭代多次后生成噪声向量.

步骤4.从生成样本空间PG和真实样本空间Pdata随机抽取样本组成惩罚样本空间Ppenalty,对Ppenalty内的所有数据按式(19)裁剪网络权重;

步骤5.WMSE作为判别器的损失函数进行更新,得到的损失值与GP和AT奖励机制共同作为总的判别器损失参与训练,同时利用Checkpoint机制分节点保存模型文件;

步骤6.重复步骤1~5进行训练,生成器与判别器的网络参数在每个步骤利用合适的激活函数和正则损失反向传播更新网络的参数,判别器与生成器在对抗中进行极大极小博弈;

步骤7.经过上述过程,最终在多次训练中选择准确度最高的修复数据作为模型的输出Y,即该模块的数据修复点与真值点的距离D(X,Y)最小,且模型达到纳什均衡.

算法1.IMR_WGAN-GP修复算法

输出:数据修复结果序列Y、模型参数文件

//利用迭代修复模块生成噪声样本.

1. fori← 0 toiterationsdo://获取修复参数矩阵.

5.returnYz
//以生成器和判别器单次对抗训练为例.

6.fori← 0 toepochsdo:

7. whileθ不收敛 do:

//从真实数据空间Pdata中抽取n个样本.

//从噪声样本模块生成的噪声样本中随机获取噪声数据zi.

//更新判别器参数,引入AT奖励机制与GP梯度惩罚,并用WMSE作为损失函数.

//生成AT机制的输入数据空间ATdata

12.AT=δ*Ex~PATdata(D(G(x))+D(x))

13.GP=λEx~Ppenatly[(‖∇xD(x)‖2-K)2]

14.θd←θd+lr∇VD(θd)+AT+GP

//更新生成器参数.

16.θG←θG-lr∇VD(θG)

17.Y←G(θG,x)

18. end while

19.ReturnY

4 性能实验评价

为验证本文所提出的时序数据修复方法的先进性,本节选择4个数据集依据数据修复的评价标准进行实验评估,同时将实验结果与多个现有修复方法进行对比.具体实验环境、实验数据、评价标准、实验结果以及现有方法对比分析如下所述.

4.1 实验设置

1)实验环境

本文使用Python和SQL语言在如下环境下对各部分内容进行实现,深度学习框架为 TensorFlow 2.1.0版本.处理器为AMD Ryzen 7 4800H with Radeon Graphics,显卡为NVIDIA GeForce RTX 2060 6GB,内存为32GB 3200MHz.

2)实验参数和基准方法

训练批次bathsize大小为128,训练轮数epoch为10000,初始迭代次数iterations为10000,迭代次数的选择取决于修复函数在迭代次数内是否收敛.GRU层的记忆单元维度分别为8,256,128.为防止传播过程中参数过拟合,故在GRU层增加0.001的L2正则化约束,Dropout等于0.2,选择学习率为0.001的Adam为优化器.Conv1D层中卷积核尺寸设置为8,32,64,采用alpha为0.01的LeakyReLu激活函数,确保网络从不同维度和不同时间间隔内获取多种特征.经过多轮不同参数对比实验发现,当梯度惩罚中的λ为10,AT奖励机制中的δ为4时,判别器的识别能力最准确,且反向优化生成器的修复能力最强.判别器与生成器参数迭代更新比例为8∶1.

本文选择了4种基准方法与IMR_WGAN-GP进行对比实验,分别是基础的GRU、GAN、原始IMR以及未融合AT奖励机制与WMSE损失函数的IMR_WGAN.为保证实验结果的公平性,对比实验模型均选取相同的超参数和训练批次大小.

3)实验数据

本文采用一个人工合成数据集、一个公开数据集及两个真实数据集进行实验对比.合成数据集含2457组数据9824个数据点,数据序列随时间标记的变化呈现不同的变化趋势.公开数据集ILD(http://db.csail.mit.edu/labdata/labdata.html,ILD)记录了从2月28日~4月5日遍布因特尔实验室角落的54个传感器以31秒为采样频率记录的温度、湿度、电压等测量指标.本文选取2号传感器从3月1日~3月3日约4229组数据29603个数据点.上述数据集无错值点,采用文献[8]的方法通过随机生成新的数据值作为异常值代替原有真实值.带有误差的真实数据集1为重庆地区某矿山井下同一个监测点(FC 3-5号层1070西翼回风巷粉尘)的8月4日~8月5日的包含真实误差在内的粉尘气体监测值,共包含以50秒为采样频率的1584组数据14256个数据点.带有误差的真实数据集2为某地区光伏电站辐照仪多个传感器以15min为采样频率全年的辐照度数据,本文选取9月5日~11月5日的5952组数据共29760个点.为了更准确的验证本文提出的修复方法,对人工数据集和ILD数据集进行不同异常率的实验对比,其中异常率为10%表示该数据集中有10%的数据点被随机替换为异常值.

4.2 评价标准

单一的评价标准在模型的实际应用方面存在局限性,很难全面综合衡量评估模型能力.本文采用RMSE、MAE、MAPE和MSE 4种模型性能评价标准来衡量不同修复模型的修复能力与模型稳定性.计算方式如下所示:

(21)

(22)

(23)

(24)

其中,令yi作为异常值的修复值,xi作为异常值对应的真实值.

RMSE、MAE、MAPE和MSE共4个模型评价指标的取值范围都是[0,+∞),均方根误差RMSE是指参数的估计值与参数的真实值之差的平方的期望的开方,用于评价数据的变化程度,取值越小,说明模型的拟合数据能力越强.MSE与RMSE只是在数值中未进行开方运算,但功能与之类似;平均绝对误差MAE是样本绝对误差的平均值,用于反映预测值误差的实际情况,取值越小,说明模型得到的预测结果越贴近真实值.MAPE与MAE类似.RMSE、MAE与MSE数值越小,代表误差越大.MAPE为0%表示完美模型,MAPE数值越大则表示模型效果越差.其中,当式(23)中出现分母为零时,MAPE评价标准不可用.

4.3 实验结果

本文选择一个人工合成数据集、一个公开数据集、两个真实数据集对包括IMR_WGAN-GP在内的多种数据修复方法在RMSE、MAE、MAPE、MSE的评价指标进行了实验对比,验证了本文方法的数据修复准确度与模型稳定性均领先于对比数据修复方法.

1)人工合成数据集

由图6的4个子图可发现,原始数据集经过修复后,RMSE、MAE、MAPE和MSE实验指标均下降,即数据集质量更优.基于统计的基础IMR方法与基于机器学习的GRU、基础GAN、IMR_WGAN、IMR_WGAN-GP方法的修复效果在不同的异常率下的数据修复能力各有千秋.基于统计的修复与基于机器学习的修复相比并没有处于绝对的劣势,基于机器学习的GRU、基础GAN、IMR_WGAN、IMR_WGAN-GP在同一异常率下数据的修复能力没有绝对优势.

图6 合成数据集的各项评价标准图Fig. 6 Graphs of various evaluation criteria for artificial dataset

图6(a)和图6(d)展示了合成数据集的初始和各修复方法的RMSE和MSE.在异常率为10%的情况下,IMR方法修复准确度低于基于机器学习的修复方法,且因此时数据中异常数据较少,GAN、GRU、IMR_WGAN与IMR_WGAN-GP方法的修复效果相差不大.在异常率为20%的时候,修复方法出现了与其他异常率下修复效果不一致的趋势.IMR方法的数据修复准确度大于GAN方法的修复数据准确度,同时GRU的修复效果略好于IMR_WGAN-GP的修复效果.这是因为该异常率下数据集误差趋势变化比较剧烈且集中,GRU修复方法因其善于挖掘长时间间隔的依赖数据反而学习不到数据集中出现的剧烈变化趋势,IMR_WGAN-GP因捕捉不同时间间隔的特征能力过强,导致数据修复结果不如GRU的修复效果平滑.同时可以看出,在其他异常率情况下,随着异常数据的增多,各方法的修复能力均呈现下降趋势.其中IMR_WGAN-GP方法在修复过程中保持绝对领先的模型优势即RMSE和MSE最小.

图6(b)和图6(c)展示了各方法的修复值与真实值之间的MAE和MAPE指标.从图中可看出,在异常率为10%的时候,IMR方法的MAE和MAPE指标总体高于基于机器学习的方法的评价指标,同时GAN、GRU、IMR_WGAN与IMR_WGAN-GP的MAE相差不大.在时序数据集出现的误差趋势剧烈变化时(即异常率为20%),IMR与基础的GAN的MAE相似,IMR_WGAN-GP与GRU的预测能力类似.随着异常率的增加,基础GAN修复模型与GRU修复模型的MAE总体上升同时差距不大,但均远高于本文方法的MAE.总体而言,IMR_WGAN-GP在相同异常率下的数据修复能力与模型稳定性均优于现有方法.

2)ILD数据集

图7的4个子图展示了IMR_WGAN-GP、IMR_WGAN、IMR、GRU和GAN修复方法在ILD的修复准确度和模型稳定性的表现.与在合成数据集实验结论类似,随着异常率的增加,本文提出的方法与其他修复方法一样,模型的修复能力与稳定性均呈下降趋势,但在相同异常率情况下,数据修复的准确度和模型稳定性总体表现效果均优于其他修复方法.图7(a)和图7(d)可以看出,在异常率为10%时,IMR在ILD数据集上的修复效果并没有很大的提升,GAN、GRU、IMR_WGAN与IMR_WGAN-GP混合模型的RMSE与MSE指标接近.在异常率为20%和40%时,IMR与GAN和GRU的修复效果没有特别明显的差距,代表此刻数据集中的连续误差比较多.

图7 ILD数据集的各项评价标准图Fig.7 Evaluation standard diagram of ILD dataset

结合图7(b)和图7(c),在异常率为50%时,IMR_WGAN-GP混合模型的MAPE低于IMR和IMR_WGAN的MAPE,这表示此时文本所提方法的模型稳定性略差.综合多种数据修复方法在公开数据集ILD上的实验效果来看,本文所提的IMR_WGAN-GP混合模型时序数据修复方法修复数据的准确度相较于其他数据修复方法更高,更适用于后续的数据分析及算法建模.

3)矿山巷道气体检测数据集

为了验证本文提出的IMR_WGAN-GP时序数据修复方法在具有真实误差数据集中的实用性,本文选取了重庆某矿山的FC 3-5号层1070西翼回风巷粉尘监测点在8月4日~8月5日的粉尘气体监测值,数据集内包含有连续误差和峰值误差等多种数据异常,在此数据集上开展包括IMR_WGAN-GP、IMR_WGAN、IMR、GAN、GRU在内的多种修复方法进行实验对比,最终得出表1实验结果.

表1 各方法在粉尘数据集的修复评价标准表Table 1 Table of remediation evaluation criteria for each method in the dust dataset

从表中可发现,未经修复的数据集中的RMSE、MSE与MAE均较大,经过修复方法修复后,数据质量得到了明显的优化.其中,基于机器学习的GRU与基础GAN的修复准确度较数据集初始准确度有显著的提升,基于统计分析的基础IMR修复方法提升的数据质量相对GRU与GAN优化的质量并不明显.引入AT奖励机制和重构损失函数后,IMR_WGAN-GP的修复效果显著优于IMR_WGAN,即经过IMR_WGAN-GP混合模型修复后的修复值与真实值之间的误差最小,即RMSE、MAE与MSE均是最小(粉尘气体监测真实值会出现零值,故MAPE评价指标不可用).综合上述时序数据修复方法在实验数据集上的表现,本文所提出的修复方法不仅在合成数据和公开数据集上取得了明显的修复效果,在具有真实误差的数据集上的修复效果也是有效的.

4)辐照度数据集

为了进一步验证本文提出的IMR_WGAN-GP时序数据修复方法在真实误差数据集的实用性,本文针对包含真实数据异常的光伏电站辐照度数据集使用多种数据修复方法进行实验对比,最终得出表2的RMSE、MSE、MAE的评价标准结果(在时间周期内正常的辐照度数据也会出现零值,故MAPE评价指标不可用).

表2 各方法在辐照度数据的修复评价标准表Table 2 Table of restoration evaluation criteria for each method in the irradiance data

从表2中可发现,数据集的初始RMSE、MAE和MSE在经过修复后均呈现降低趋势,表明各修复方法修复辐照度数据后均有效解决了数据集中的异常数据,并提高了数据质量.其中,本文所提的数据修复方法的RMSE和MSE均是最低,即表现出了最优的模型稳定性.IMR_WGAN-GP的略低基础GAN、GRU和IMR_WGAN修复方法的MAE,表示修复值与真实值之间的波动比较大.但从整体实验效果对比来看,本文所提的数据修复方法IMR_WGAN-GP混合模型在具有异常的真实数据集仍然表现出了优秀的修复能力,进一步验证了本文修复方法在时序数据修复领域的领先性.

5 总结和展望

带有时间标记的时序数据在各个领域的数据管理与分析问题中显现出至关重要的价值.时序数据的数据特点和实际存在的质量问题,给数据清洗研究的方法策略和算法设计均带来了更多挑战.本文的工作主要针对数据清洗存在的时序问题、错误关联的研究难点,结合峰值误差、连续误差、数据缺失综合场景下的数据质量问题,以关系型数据和工业时间序列数据为主要研究对象,提出了基于奖励机制的IMR_WGAN-GP混合时间序列数据修复模型.该方法在数据预处理阶段选择保留异常数据并进行信息标注和归一化操作,在数据修复阶段的工作是在IMR的基础上提出了近邻参数裁剪规则,利用改进的IMR方法构成粗糙噪声样本生成模块并同步输出噪声向量.在模拟时序概率分布模块,生成器采用本文设计的动态时间注意力网络层和GRU网络层来捕捉时序数据不同时间步长的动态依赖和非线性特性,并结合Dense网络层共同挖掘时序数据真实值序列的概率分布.利用Conv1D和Dense层构建判别器的网络层,并提出AT奖励机制和WMSE损失函数,并结合梯度惩罚共同优化判别器的判别能力,更好的控制生成器生成的样本细节和样本质量.在合成数据集、公开数据集和真实数据集上的实验结果表明,本文所提出的修复方法能够同时有效修复3种数据异常场景并存的数据异常问题,并且可取得领先的修复准确度和模型稳定性.

工业时间序列数据具有体量大、采样速度快、多样性强等特点,这对数据清洗技术在精准性、实时性、可靠性等方面提出了更多诉求.面对当前研究工作需求,本文的未来研究内容展望如下:1)如何实现在保证模型解决场景多样和修复精确率的前提下实现实时处理流数据;2)如何实现针对包括时标异常在内的更多数据异常场景下的同步数据修复技术.

猜你喜欢
时序噪声误差
基于时序Sentinel-2数据的马铃薯遥感识别研究
基于Sentinel-2时序NDVI的麦冬识别研究
角接触球轴承接触角误差控制
噪声可退化且依赖于状态和分布的平均场博弈
Beidou, le système de navigation par satellite compatible et interopérable
压力容器制造误差探究
控制噪声有妙法
一种毫米波放大器时序直流电源的设计
九十亿分之一的“生死”误差
一种基于白噪声响应的随机载荷谱识别方法