APP下载

基于LSTM神经网络的缺失数据随机功率谱估计

2023-01-11赵万祥张远进李晓荣

关键词:谱估计训练样本功率

赵万祥,张远进,李晓荣

(1.武汉理工大学 中国应急管理研究中心,湖北 武汉 430070;2.武汉理工大学 安全科学与应急管理学院,湖北 武汉 430070;3.斯旺西大学 工程学院,威尔士 斯旺西 SA28PP)

长期以来,重建丢失数据的离散时间信号或空间信号一直是各个领域感兴趣的话题。缺失数据通常指某个信号中的部分时间点缺失数据。在长期监测过程中,传感器故障不可避免,导致故障节点的监测数据不准确甚至缺失[1-2]。由于传感器损坏、外部环境变化或人为因素等影响,经常会发生数据丢失现象。监测数据的质量是进行功率谱估计的基础,丢失数据的重建是一项重要的研究课题[3-4]。在许多情况下重新采样缺失数据可能很困难。

为解决部分数据缺失的问题,一些方法被提出来,这些方法多数是通过基于已知数据预测缺失数据,包括缺失数据的零值填充法[5]、最小二乘谱分析法[6]、迭代谱去噪法[7]、插值法以及自回归法[8]等。分布回归是恢复缺失数据分布信息的一类常用方法。CHEN等[9-10]采用传统的分布到分布方法用于恢复缺失数据的概率分布,随后又提出分布到翘曲函数的回归方法用来改善传统分布回归方法的外推性能,并提出基于对数分位数密度转换的分布到分布回归方法。基于压缩传感的方法用于无线传感网络的损失数据恢复,适用于具有稀疏性的信号[11],数据恢复误差与信号的稀疏性密切相关,若信号的稀疏性较差,则损失数据的恢复误差较大。该方法通常很耗时,涉及高昂的计算成本,因此用于处理大量数据可行性不强。

显然,在大多数情况下,方法的选择通常取决于已知数据信息,如缺失数据占总数据的比例。深度学习是机器学习领域中的一个研究方向。深度学习模型学习样本数据的内在规律和表示层次,在学习过程中获得的信息对诸如文字、图像和声音等数据的解释有很大帮助。深度学习模型的最终目标是使机器能够像人一样具有分析学习能力,可以识别文字、图像和声音等数据。笔者研究了一种基于神经网络预测缺失数据的方法。首先,对数据集进行处理得到其特征矩阵,并对特征矩阵中的缺失值进行填充;其次,搭建一个合适的神经网络用来学习信号数据的变化趋势;最后,通过训练完毕的神经网络模型和已知数据完成对缺失数据的预测,依据重构的数据记录进行功率谱估计。模拟实验结果显示,在数据缺失30%、50%数据情况下,运用K近邻回归和LSTM神经网络能较好地还原功率谱。

1 平稳随机过程表示和谱估计

随机过程是一簇时间函数。在每一个确定的时刻,是一系列的随机变量组合。而在每一个确定的随机变量组合下,又是确定的样本时间函数。目前能够掌握和应用的主要是平稳随机过程。平稳随机过程在自然界中广泛存在,其性质特殊,利用其统计特性与其参数平移没有显著影响的关系,便于使用数学工具进行分析从而对工程应用进行指导,因此应用广泛。严格平稳随机过程定义过于严格且一般较难实现,因此实际应用中更加关注在二阶矩范围内保持平稳性的一般过程。也就是说,若一个随机过程的均值和方差是常数,自相关函数仅与时间间隔有关,那么这样的随机过程就是广义平稳随机过程,也被称为弱平稳随机过程。因为定义的宽泛和使用的简便,一般提到的平稳随机过程都是指广义平稳随机过程[12]。模拟实验中平稳随机过程记录通过式(1)生成样本记录。

cos(ωnt+Φn)

(1)

(2)

式中:Φn为在区间[0,2π]均匀分布的独立随机相位角;σ的取值为1;b的取值为1;ωu为截止频率,取值为2π;Δω为截止频率ωu的N等分。

2 基于神经网络平稳随机过程模拟

2.1 LSTM神经网络原理

为了对过程记录训练并预测缺失值,采用的方法为LSTM神经网络,LSTM网络结构如图1所示。LSTM神经网络是循环神经网络的改进,将LSTM模块嵌入循环神经网络的隐藏神经元中,是为了解决在反向传播过程中梯度消失和爆炸的问题。LSTM模块能解决该问题是因为其具有循环连接的存储单元,并运用记忆门i、遗忘门f和输出门o来控制信息的传递。c为细胞状态或称为记忆单元,控制信息的传递。xt为当前时刻输入,而ht-1为前一时刻隐藏状态。这些门的存在使得LSTM模块可以存储或更新关键信息,能够在较长的信息传递过程中保持信息不至于梯度消失。LSTM模块核心为细胞状态,其作用类似于传送带,能够将信息保持不变的状态在神经网络层中传递[13]。

图1 LSTM网络结构图

对样本记录进行数据处理,单个训练样本为在均匀时间间隔分布上一定长度的数据,最后一个数据为这个训练样本的标签,其余数据为其特征值,如图2所示。输入数据长度的选择导致在可用唯一训练序列的大小和数量之间进行权衡。与短时间间隔相比,大时间间隔将包含更多关于过程的信息,但是若使用大时间间隔,考虑到训练数据有限,将只有少数唯一的训练样本。神经网络不太可能在训练样本很少的情况下了解数据变化趋势,并且在新数据上测试时表现不佳。相反,如果间隔太小,神经网络将没有足够的信息来学习特征数据之间的相关性。

图2 样本数据处理

输入的数据序列始终以相同的顺序显示。因此,训练样本的数量等于样本点的总数减去输入的数量加上1。每个训练样本都包含一个小的整体数据片段,其中包含指定数量的输入加上一个该数据片段的标签。最后将训练样本的顺序随机化,再输入神经网络进行训练。对于不同的平稳随机过程模拟每次会训练新的神经网络模型,以学习当前过程的数据变化趋势,更好地填充当次模拟中存在的缺失值。对于每个缺失值的预测过程中,预测的数值会不断更新到当前模拟的平稳随机过程,以对数据缺失位置比较靠后的数据进行更好的预测。

2.2 基于缺失数据的平稳随机过程模拟

在存在缺失数据的情况下不能简单地去除训练样本中的间隙并缩短样本,因为要让神经网络学习过程,输入的样本数据必须时间间隔均匀。缺失的数据通过K近邻回归进行填充,并用0值填充与累计分布函数的方法进行对比。具体过程如图3所示。

图3 样本记录缺失数据填充

K近邻回归算法是通过找出一个样本的K个最近的点,将这些邻居的某个或某些属性的平均值赋给该样本,就可以得到该样本对应属性的值。K个最近的点主要通过距离进行度量,常见的3种距离度量方式分别为欧几里得距离、曼哈顿距离和余弦距离。笔者采用的度量方式为欧几里得距离。

首先对模拟的平稳随机过程进行数据处理,得到特征矩阵及其对应的标签。特征矩阵通过K近邻算法进行模型训练,然后利用该模型进行缺失值填充。这种方法的弊端是对于数据集进行划分后,没有标签的数据无法进行缺失值填充。这会导致数据集进行神经网络训练时可用数据数量变少,但运用该方法填充的缺失值较靠近真实值[14]。当经过神经网络训练后,便可利用网络对未填充的数据进行填充,并对利用K近邻方法填充的缺失值重新进行赋值。

累积分布函数方法是在已知数据的分布上用随机值填充缺失数据点,如图4所示。已知数据的累积分布函数(cumulative distribution function,CDF),按照大小顺序对数据进行排序,再利用多项式样条插值连接[15]。随机值ai可以通过式(3)得到。

图4 累积分布函数填充缺失值

ai=F-1(X)U(0,1)

(3)

式中:F-1为基于已知数据的逆累积函数;U(0,1)为从0到1之间的均匀分布中抽取的随机值。

3 数值模拟

通过具体的数值模拟估计缺失数据的平稳随机过程的功率谱。经过神经网络还原后的功率谱,不仅可用于生成蒙特卡罗分析的新过程,还可用于对其他工程应用进行频谱分析,如损伤检测[16]。由于通常很难获得具有单一时间历程的过程的功率谱的平滑近似值,以下示例将假设有多个记录可用。此外,对于预期不包含高频功率的长时间历史数据,可以分割数据以产生相同过程的多个记录。因此,在输入与已知数据的统计数据拟合的初始随机输入集之后,神经网络直接生成随机过程记录,可以为蒙特卡罗分析提供更可靠的模拟集。

3.1 神经网络框架与目标功率谱

为了进一步说明LSTM神经网络的合理性,选择另一种全连接神经网络(fully connected neural network,FNN)与之进行对比。长短期记忆神经网络为5层结构,输入层为LSTM层,具有15个神经元,中间三层隐藏层为LSTM层,具有32个神经元,输出层为全连接层,具有1个神经元。全连接神经网络为3层结构,15个神经元为输入层,13个神经元位于第一隐藏层,7个神经元位于第二隐藏层,1个输出层。两种神经网络框架的建立目的是在尽量短的训练时间下,找到能够学习平稳过程数据记录的最小数量的神经元。

通过式(1)生成25条样本路径,利用神经网络进行训练,该样本路径的功率谱路径与式(4)相兼容。

(4)

式中:σ的取值为1;b的取值为1。

3.2 缺失数据下功率谱估计

根据产生的样本记录利用神经网络训练数据,完成对缺失数据的预测。经过训练后的网络可以填补原始训练样本中的空白,以提供完整、均匀间隔的时间历程,在此基础上可以执行基于FFT的功率谱估计。然后对这些单独的采样路径谱进行平均,得到估计的功率谱。图5和图6显示了25个样本记录下在30%缺失数据的情况下进行的功率谱估计,可以发现在两种神经网络下都是利用K近邻回归填充缺失值进行功率谱估计的效果较好。图7显示了两种神经网络选择K近邻进行缺失值填充的功率谱估计,经过对比可以发现尤其是与LSTM结合后的功率谱估计在30%数据的缺失情况下,十分靠近真实功率谱,观察频率变化可以发现,完整数据与缺失数据几乎是在同一频率下达到功率谱密度最大值处。

图5 30%缺失数据FNN还原功率谱

图6 30%缺失数据LSTM还原功谱

图7 30%缺失数据FNN与LSTM还原功率谱

增大数据缺失比例,分析该方法在多大的缺失比例下仍能够较好地进行功率谱估计。经实验表明在50%缺失数据的情况下,K近邻回归与LSTM相结合的方法仍具有良好的表现。图8和图9显示了25个样本记录下在50%缺失数据的情况下进行的功率谱估计,可以发现在FNN训练下,已经不能够很好地进行功率谱估计,与完整数据的功率谱差距过大。LSTM进行缺失数据的功率谱估计效果要优于FNN,尤其是与K近邻回归结合后,虽然不能十分贴近完整数据的功率谱,但从总体效果来看,已经较好地还原了缺失50%数据下的功率谱。图10显示了两种神经网络选择K近邻进行缺失值填充的功率谱估计,经过对比可以发现与LSTM结合后的功率谱估计在50%数据的缺失情况下,仍然能够较好地还原功率谱。与其他方法相比,K近邻回归与LSTM神经网络结合的方法确实了解平稳过程的潜在光谱特性,即使在50%数据缺失的情况下都得到了较好的谱估计。

图8 50%缺失数据FNN还原功率谱

图9 50%缺失数据LSTM还原功率谱

图10 50%缺失数据FNN与LSTM还原功率谱

4 结论

(1)利用K近邻回归和LSTM神经网络结合的方法来解决平稳随机过程中的数据丢失的功率谱估计问题。在平稳随机过程的模拟测试中,该方法能够学习平稳随机过程并填补缺失数据,数据点的丢失无论如何分布都是可行的。

(2)LSTM能够适应应用类型,而无需定义严格的模型参数,如预期的光谱峰值数或总光谱功率。LSTM神经网络能够学习过程记录,而且与经过功率谱分析与零值填充、累积分布函数值填充再与FNN神经网络相结合的方法的比较表明,LSTM神经网络都是优越的。

(3)当应用于数据比例缺失过大时,网络需要大量的培训,以防止输出模型欠拟合,这可能需要大量计算时间。实验表明,即使数据集中存在50%缺失数据,也能较好地还原目标功率谱。

(4)LSTM神经网络方法依赖于空间相关性,需要已知相邻观测点完整数据。因此所提出的算法不适用大量的连续相邻观测点同时发生数据损失的情况。若相邻观测点的已知信息足够,则该方法对于多观测点同时发生数据损失的情况可以适用。因此,接下来考虑采用其他深度学习模型估计多观测点数据连续丢失的情况。

猜你喜欢

谱估计训练样本功率
『功率』知识巩固
功与功率辨
追本溯源识功率
人工智能
做功有快慢功率来表现
基于MATLAB的无线电信号功率谱仿真与分析
基于最大熵谱估计的某型飞行模拟器动态性能验证
基于多窗谱估计的改进维纳滤波语音增强
基于小波神经网络的网络流量预测研究
宽带光谱成像系统最优训练样本选择方法研究