基于改进循环神经网络的多数据流缺失值估计
2022-04-01汪广明何滔熊玺卢玉龙王明涛
汪广明 何滔 熊玺 卢玉龙 王明涛
摘 要:为准确估计多传感数据流中的缺失值,提出了一种改进循环神经网络模型。所设计的改进循环神经网络由插值模块和插补模块组成,其中插值模块是在数据流內捕获传感数据之间的时间相关性;插补模块则是基于全连接神经元层在不同数据流之间捕获传感数据值之间的时间相关性。循环神经网络模型还使用Dropout方法进行多重插补以进一步提高估计准确度。基于真实电力设备传感数据的实验,结果表明:所设计改进循环神经网络能够实现缺失传感数据的准确估计。
关键词:缺失值;数据流;循环神经网络;插值模块;插补模块;Dropout
中图分类号:TP39 文献标识码:A
文章编号:1001-5922(2022)02-0108-04
由于传感器失效、采集时间不同步等诸多原因,数据流中存在数据缺失是一个普遍的现象[1]。为确保基于数据流的设备故障诊断、系统运行状态监测等大数据应用的有效性和准确性,需要准确的缺失值估计[2]。
常用的缺失值估计方法是采用回归法、加权估计法、期望最大化算法(EM)以及机器学习算法分析不同时间点的测量值之间的相关性,从而实现缺失值估计[3-5]。将这种方法应用于多数据流的缺失值估计,会忽略不同数据流之间的相关性,容易丢失潜在的重要信息。
为此,本文提出了一种基于改进循环神经网络的多数据流缺失值的估计方法。该循环神经网络由一个插值模块和一个插补模块组成。插值模块的结构是一个基本的双向循环神经网络,通过对单个数据流中缺失值前后时间点上数据的学习实现缺失值估计;插补模块由全连接的单层神经元组成,通过对不同数据流中数据进行学习实现缺失值估计。同时,在该循环神经网络中使用Dropout方法实现多重插补,以进一步降低估计误差。
1 问题表述
考虑由N个实时数据流组成的数据集。对于每个数据集,有一个长度为T的多元时间序列数据流。数据流由时间戳S、测量值X和标签Y组成,从未知基础分布F中采样得到:(S,X,Y)~F。数据流的长度T和数据集的其他组成部分取决于线路n,但暂时不考虑对n的依赖性。
对于每个t,时间戳st∈R表示采集测量值xt的实际时间。为方便计算,假设s1=0;假设实际时间单调增加:st+1>st,其中0≤t
假设有D个测量数据流。将每个测量值视作一个实数,但通常情况下并非每个流在时间点st都有实际传感值,因此将第t个时间戳st的可能传感值集R′记为R′=RU{*}。其中R是数据流d在st处的实际传感值,表示数据流d在st处没有传感值。为方便起见,将所有测量值标准化至区间[0,1]。
对于任意t,如果xdt=*(即数据流d在st处无传感值),则将索引mdt定义为等于0;如果xdt∈[0,1](即数据流d在st处有传感值),则将其索引mdt定义为等于1。设δdt为数据流d自st所经过的实际时间量。δd1=0,然后按照下式对δdt进行递归计算:
标签yt表示在时间戳t(实际时间st)进行电力设备运行状态分类或故障诊断所得到的结果。同样对标签值yt进行标准化处理:yt=0表示无故障或yt=1表示有故障。
由此得到用于标识数据流n的三元数组:时间戳序列、每个时间戳的传感数组(含缺失传感值)和每个时间戳对应的标签数组。数据集可表示为:D = {(S(n), X (n), Y(n)}Nn=1。其中S(n)是标识电力设备的数组;X (n)是电力设备n的传感数组;Y(n)是对应时间戳的标签数组。
选择均方误差作为估计标准。设xdt是缺失传感值,x^dt=fdtS,X是基于已采集的传感数据形成的估计值,则均方误差表示为:Lx^dt,xdt=x^dt-xdt2。
2 改进循环神经网络
设数据流d在时间戳t处存在缺失值,即xdt=*;在时间戳t处的估计传感为值x^dt。常见的缺失值估计方法使用数据流d中相关传感值xdt′(t′≠t)来估计缺失值。显然这种方法忽略了其他相关传感数据流中所隐藏的有用信息。理论上也可通过使用数据集D中的所有传感值来估计该缺失值x^dt,但是这显然将导致计算量过大和过拟合的问题[7]。为此,本文设计一个基于改进循环神经网络的缺失值估计模型,该模型通过高效的分层学习网络有效捕获流内和流之间的数据相关性,实现缺失传感值的准确估计。同时该模型将要学习的传感数据限制在一定时间范围内,以避免过度拟合。改进循环神经网络模型如图1所示。
在图1中,“×”表示缺失测量值;虚线圆圈表示被Dropout的神经元。
改进循环神经网络由插值模块和插补模块两个模块组成,结构如图2所示。
由图2可知,将插补模块放在插值模块之后,以便使用插值模块的输出来提高插补模块的准确性。将一个Dropout层连接到循环神经网络(RNN)是为了产生更多的插补操作,,以进一步降低估计误差。
2.1 误差
缺失值估计的主要目标是最小化估计误差。为此,首先选取一个已经采集并存在于数据集中的测量值xd,然后使用去除了xd的数据流(用D-xdt表示)重建xdt的估计值x^dt,之后计算估计值x^dt和实际测量xdt之间的误差,使用均方误差x^dt-xdt2作为估计误差的评价标准。数据流D的总估计误差L的计算方法为:
2.2 插值模块
插值模块构建了一个在给定数据流中运行的插值函数Φ。xdt的估计值x~dt取决于去除xdt的数据流,记作x~dt=ΦD-xdt。该估计值仅使用来自数据流d的数据,不使用来自其他数据流的数据。使用双向循环神经网络(Bi-RNN)构建Φ[8]。与传统的Bi-RNN不同,输入到隐藏层的时间在前向滞后并在后向提前:在时间点t,前向隐藏状态的输入来自t-1,后向隐藏状态的输入来自t+1。此过程可确保实际值xdt不会自动用于估计x~dt。zdt=[xdt,mdt,δdt]的数学化描述:
式中:f、g是ReLu激活函数[9];箭头表示向前或向后方向。在插值模块中,只捕获每个数据流中的时间相关性。每个数据流的参数是单独学习的,且所需学习的参数数量与数据流的数量呈线性关系。权重矩阵W、U、V是对角线矩阵。
2.3 插补模块
插补模块构建了一个跨流操作的插补函数Ψ。xdt的估计值x^dt取决于不包含传感值xdt的传感数据流,记作x^dt=ΨD-xdt;估计值x^dt只使用时间戳st的数据,而不是其他时间戳的数据。构造函数Ψ以使其独立于t,因此使用全连接层[10-11],插补模块的结构如图2所示。zt=x~t,mt的数学描述:
2.4 多重插补
由于估计缺失值存在不确定性,生成多个估计值并生成多重插补数据集对降低估计误差很有帮助。本文使用Dropout方法生成多重插补数据集。Dropout方法即随机选择完全连接层中的神经元并删除所选神经元及其所有连接[12]。选择丢弃的神经元的方法是根据参数为p的伯努利分布函数从神经元集合中随机选择。参数p的取值范围为(0,1)。在训练阶段,基于总估计误差L和Dropout方法进行参数优化。然后通过在伯努利分布中采样不同的Dropout向量R来生成多个输出ot,最终产生多重插补的效果。
3 实验结果
选取两组水轮发电机组导油槽油位真实传感数据作为实验数据集,估计对象为油位缺失值。为了体现本文提出方法的优势,选取均值法和基于随机森林的迭代插值法(RF)进行对比分析,通过分析不同缺失率下的数据估计误差,评价不同方法的估计精度。
采用均方误差(RMSE)作为评价指标:
RMSE=∑ni=1xreal-x^i2n
采用随机删除策略生成1%、5%、10%、15%、20%、25%和30%的缺失数据集。为保证实验的可靠性,对不同缺失数据集做3次计算,取3次平均值作为最终实验结果。
针对不同缺失数据集采用本文方法、均值法和RF法得到的实验结果如图3所示。
从图3可以看出,相比均值法和RF法,本文方法在不同的缺失率情况下都获得了最好的均方根误差,取得最优的估计效果。
最后选用水轮发电机组的两组轴承瓦温度传感数据集作为对比数据集,进行算法鲁棒性验证。实验结果如图4所示。
由图4可知,本方法在不同的数据集下也能取得较低的均方误差。虽然由于数据集的不同,填补误差有所上升,但总体上仍然保持了较低的填补误差。这反映了本文方法的鲁棒性,具有良好的适应性。
4 结语
缺失值的估计问题是数据预处理过程中不可忽视的问题,对提升大数据应用的有效性具有重要意义。所提出的缺失值估计方法使用改进循环神经网络算法充分挖掘了数据流内和数据流间的数据相关性,实现了多数据流的缺失值估计。在两种属性迥异的测量数据集上实验结果证明,在不同缺失率的情况下,本文所提方法均能够表现出较好的估计精度。
【参考文献】
[1] 赵厚翔,沈晓东,吕林,等.基于GAN的负荷数据修复及其在EV短期负荷预测中的应用[J].电力系统自动化,2021,45(16):143-151.
[2] 李培冠,於志勇,黄昉菀.基于稀疏表示的电力负荷数据补全[J].计算机科学,2021,48(2):128-133.
[3] 郭毅博,牛猛,王海迪,等.基于生成对抗网络的飞机燃油数据缺失值填充方法[J].浙江大学学报(理学版),2021,48(4):402-409.
[4] 闫媞锦,夏元清,张宏伟,等.一种非规则采样航空时序数据异常检测方法[J].航空学报,2021,42(4):558-568.
[5] 邓子畏,唐朝暉,朱红求,等.基于改进EM算法的混凝土泵车数据治理[J].中南大学学报(自然科学版),2021,52(2):443-449.
[6] 胡雪,彭敦陆.张量表达下的多模态交通缺失数据补全算法[J].小型微型计算机系统,2021,42(1):105-110.
[7] 李国,袁闻,王怀超.面向不完备数据的民航旅客流失预测模型[J].计算机工程与设计,2020,41(10):2 884-2 891.
[8] 张若愚,齐波,张鹏,等.面向电力变压器状态评价的油中溶解气体监测数据补全方法[J].电力自动化设备,2019,39(11):181-187.
[9] 陈小波,陈程,陈蕾,等.基于改进低秩矩阵补全的交通量数据缺失值插补方法[J].交通运输工程学报,2019,19(5):180-190.
[10] 关伟,李先通.一种基于K近邻和多元回归的传感器缺失值预测算法[J].公路交通科技,2019,36(3):14-21.
[11] 王守相,陈海文,潘志新,等.采用改进生成式对抗网络的电力系统量测缺失数据重建方法[J].中国电机工程学报,2019,39(1):56-64.
[12] 张峰,宋晓娜,薛惠锋,等.水资源消耗预测的异常值检测及缺失数据填补方法[J].统计与决策,2018,34(16):13-17.