基于多特征融合和深度学习的振动监测数据异常检测方法

未命名 08-02 阅读:96 评论:0


1.本发明属于结构健康监测技术领域。


背景技术:

2.结构健康监测系统已广泛应用于大跨度桥梁结构,并连续产生大量振动监测数据。对这些数据的快速挖掘和利用是结构健康监测领域的重点。但是由于结构长期处于恶劣的环境之中,会导致传感器或整个监测系统出现各种故障,使得振动监测数据存在多种类型的异常,这严重干扰了结构的分析和评估。此外,当这些异常与地震、船舶碰撞或交通事故等紧急事件相关的数据混合时,它们也会干扰结构健康监测系统的预警能力。因此,识别和定位异常数据是振动数据分析的重要步骤。
3.在常规振动数据异常检测中,需要使用多种信号处理技术来人工检测异常,但人工检测过程需要专家参与并且十分耗时。在现有的自动检测方法中,主要是将振动数据在时域上可视化为图像,并利用计算机视觉技术检测异常数据。但是这种方法仅考虑了历史数据在时域上的异常特征,单一的特征难以对异常数据进行更为精准的分类,使得检测结果准确率较低,并且检测效率低下。


技术实现要素:

4.本发明是为了解决现有的结构异常自动检测方法仅考虑历史数据在时域上的异常特征,导致效率低下、准确率差的问题,现提供基于多特征融合和深度学习的振动监测数据异常检测方法。
5.基于多特征融合和深度学习的振动监测数据异常检测方法,具体为:
6.分别在被测振动监测数据段的上下峰值包络中提取残差序列,并在被测振动监测数据段的功率谱密度分布中提取与所述残差序列长度相同的功率谱密度序列;
7.将所述残差序列和所述功率谱密度序列并联,构建被测数据;
8.将所述被测数据输入至cnn-lstm检测模型中进行检测,获得检测结果。
9.进一步的,上述cnn-lstm检测模型包括输入层、卷积层、池化层、展平层、lstm层和输出层;
10.所述输入层用于将被测数据输入至所述卷积层;
11.所述卷积层采用t个大小为3*2的卷积核m按照步幅1与被测数据每个卷积采样位置的窗口向量进行一维卷积操作,生成t个特征图e;
12.所述池化层用于分别对t个特征图e进行最大池化操作,获得t个特征图c;
13.所述展平层用于将t个特征图c重新排列并进行特征融合,获得时间序列m;
14.所述lstm层用于捕获时间序列m的长期相关性并学习异常特征;
15.所述输出层用于使用softmax激活函数对lstm层捕获的异常特征进行分类,获得所述cnn-lstm检测模型的检测结果。
16.进一步的,获得cnn-lstm检测模型的方法为:
17.在连续的历史振动检测数据中采集l个步长相同的历史数据段,
18.分别提取每个历史数据段的残差序列和功率谱密度序列,
19.将同一历史数据段的残差序列和功率谱密度序列并联构成一个样本,从而将所有历史数据段对应的样本构建为样本集,
20.对样本集中样本的类型进行标记,并将样本集中的样本划分为训练集和验证集;
21.构建cnn-lstm基础模型;
22.利用训练集对cnn-lstm基础模型进行训练;
23.利用验证集对训练好的cnn-lstm基础模型进行验证,判断训练好的cnn-lstm基础模型是否合格,是则获得cnn-lstm检测模型,否则在历史振动检测数据中重新选取历史数据段对cnn-lstm基础模型进行训练。
24.进一步的,上述提取第l个历史数据段的残差序列的具体方法为:
25.分别计算第l个历史数据段内历史数据的上峰值包络曲线yu和下峰值包络曲线y
l

26.利用i个采样窗口对第l个数据段内的历史数据进行划分,并分别计算各采样窗口内的历史数据平均值,分别利用各采样窗口内的历史数据平均值替换所在采样窗口内的异常数据,获得第l个无异常数据段,
27.分别计算第l个无异常数据段内历史数据的上峰值包络曲线xu和下峰值包络曲线x
l

28.利用yu、y
l
、xu和x
l
计算第l个历史数据段内历史数据在时域上的残差序列r
l
=[r1,r2,

,ri],
[0029]
其中,ri为第l个历史数据段内第i个采样窗口的残差值,i=1,2,...,i,l=1,2,...,l,和分别为第l个历史数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络,和分别为第l个无异常数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络。
[0030]
进一步的,在第i个采样窗口内,当历史数据x的值与第i个采样窗口内的历史数据平均值之差大于6σ,则所述历史数据x为异常数据,σ为第i个采样窗口内历史数据的标准差。
[0031]
进一步的,上述提取第l个历史数据段的功率谱密度序列的具体方法为:
[0032]
对第l个历史数据段内的历史数据进行单边功率谱密度估计,获得第l个历史数据段内的历史数据在0~fs2频率范围内的功率谱密度分布p1,其中fs为第l个历史数据段内历史数据的采样频率;
[0033]
提取功率谱密度分布p1中的前i个值构成特征序列p2,并对该特征序列p2中的元素进行归一化,获得第l个历史数据段的功率谱密度序列p
l

[0034]
p
l
=normalize(p2),
[0035]
其中,normalize(
·
)表示归一化函数,i为第l个历史数据段的残差序列的采样窗口数量。
[0036]
进一步的,将第l个历史数据段内历史数据在时域上的残差序列rl与第l个历史数据段的功率谱密度序列p
l
并联,获得第l个样本s
l

[0037]
将l个历史数据段对应的样本构建样本集s=[s1,s2,...,s
l
],l=1,2,...,l。
[0038]
进一步的,上述训练集和验证集中历史数据的数量比为7:3。
[0039]
进一步的,上述cnn-lstm检测模型的目标函数h表达式为:
[0040][0041][0042]
其中,为第l个样本的预测类别为第n类的概率,为第l个样本的真实类别为第n类的概率,为第l个样本的预测类别为第n类时输出层中softmax激活函数的输入,n=1,2,...,n,n为cnn-lstm检测模型分类的类别总数。
[0043]
进一步的,上述特征图e中的第j个元素ej表达式为:
[0044][0045]
其中,f(
·
)为激活函数且表达式为f(α)=max(0,α),α为激活函数的变量,表示元素乘法,wj为第j个卷积采样位置的窗口向量,b为偏置项;
[0046]
将t个特征图c按照列向量并联构成特征矩阵
[0047][0048]
其中,为第t个特征图c上第k个池化采样位置的元素,k为池化采样位置总数,
[0049]
将特征矩阵中所有行的元素排列成为一行,获得时间序列m:
[0050][0051]
本发明针对现有异常振动监测数据检测方法,检测效率和准确率较低的问题,通过提取历史数据的时域和频域上的特征并进行融合,丰富了异常特征信息的同时还降低了模型输入的尺寸以提高计算效率。建立了cnn-lstm模型进行特征序列的分类,进而完成异常振动监测数据检测。相比于常规异常数据检测方法,本发明能够全自动准确地检测各种异常数据。相比于现有计算机视觉方法,本发明更加高效准确,同时具有较强的泛化能力。
附图说明
[0052]
图1为基于cnn-lstm模型的振动监测数据异常检测框架图;
[0053]
图2为典型异常振动数据及其提取的残差序列和psd序列示意图,其中(a)表示正常型、(b)表示离群型、(c)表示单频震荡型、(d)表示缺失型、(e)表示次小值型;
[0054]
图3为模型在训练集和验证集上的检测结果的混淆矩阵,其中(a)表示训练集,(b)表示验证集;
[0055]
图4为模型在测试集上的检测结果分布图;
[0056]
图5为模型在测试集上的检测结果的混淆矩阵;
[0057]
图6为基于多特征融合和深度学习的振动监测数据异常检测方法的流程图。
具体实施方式
[0058]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0059]
参照图6具体说明本实施方式,本实施方式所述的基于多特征融合和深度学习的振动监测数据异常检测方法,具体为:
[0060]
第一,对cnn-lstm检测模型进行训练,训练过程为:
[0061]
在连续的历史振动检测数据中采集l个步长相同的历史数据段,然后分别提取每个历史数据段的残差序列和功率谱密度序列。
[0062]
具体的,提取第l个历史数据段的残差序列的具体方法为:
[0063]
使用局部最大值上的样条线性插值分别计算第l个历史数据段内历史数据的上峰值包络曲线yu和下峰值包络曲线y
l

[0064]
利用i个采样窗口对第l个数据段内的历史数据进行划分,并分别计算各采样窗口内的历史数据平均值。在第i个采样窗口内,当历史数据x的值与第i个采样窗口内的历史数据平均值之差大于6σ,则所述历史数据x为异常数据,σ为第i个采样窗口内历史数据的标准差。利用第i个采样窗口内的历史数据平均值替换第i个采样窗口内的异常数据,进而将所有采样窗口内的异常数据均被其窗口的平均值所替换,获得第l个无异常数据段。
[0065]
再使用局部最大值上的样条线性插值分别计算第l个无异常数据段内历史数据的上峰值包络曲线xu和下峰值包络曲线x
l

[0066]
利用yu、y
l
、xu和x
l
计算第l个历史数据段内历史数据在时域上的残差序列r
l
=[r1,r2,

,ri]。
[0067]
其中,ri为第l个历史数据段内第i个采样窗口的残差值,i=1,2,...,i,l=1,2,...,l。和分别为第l个历史数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络;和分别为第l个无异常数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络。
[0068]
提取第l个历史数据段的功率谱密度序列的具体方法为:
[0069]
对第l个历史数据段内的历史数据进行单边功率谱密度估计,获得第l个历史数据段内的历史数据在0~fs2频率范围内的功率谱密度分布p1,其中fs为第l个历史数据段内历史数据的采样频率,且p1∈r
(nfft2)
×1,nfft为单边功率谱密度估计过程中所使用的离散傅里叶变换点的数量。
[0070]
为了使功率谱密度序列与残差序列长度相同,所以提取功率谱密度分布p1中的前i个值构成特征序列p2,且有
[0071]
对特征序列p2中的元素进行归一化,获得第l个历史数据段的功率谱密度序列p
l

[0072]
p
l
=normalize(p2),
[0073]
其中,normalize(
·
)表示归一化函数,p
l
表示历史数据在0~(infft)fs频率范围内归一化后的功率谱密度分布,可以调整nfft的值来确保提取的功率谱密度序列在研究关注的频率范围内。
[0074]
将第l个历史数据段内历史数据在时域上的残差序列r
l
与第l个历史数据段的功率谱密度序列p
l
进行列向量并联,获得第l个样本s
l
。则l个历史数据段对应的样本构建的样本集s=[s1,s2,...,s
l
]。
[0075]
对样本集中样本的类型进行标记,所述标记类型包括正常型和异常型,所述异常型又包括离群型、单频震荡型、缺失型和次小值型。将样本集中的样本划分为训练集和验证集,所述训练集和验证集中历史数据的数量比为7:3。
[0076]
构建cnn-lstm基础模型,所述cnn-lstm基础模型包括输入层、卷积层、池化层、展平层、lstm层和输出层。
[0077]
所述输入层用于将被测样本数据输入至所述卷积层。
[0078]
所述卷积层采用t个大小为3*2的卷积核m按照步幅1与被测数据每个卷积采样位置的窗口向量进行一维卷积操作,生成t个特征图e。所述特征图e中的第j个元素ej表达式为:
[0079][0080]
其中,f(
·
)为激活函数且表达式为f(α)=max(0,α),α为激活函数的变量,表示元素乘法,wj为第j个卷积采样位置的窗口向量,b为偏置项。
[0081]
所述池化层用于分别对t个特征图e进行最大池化操作,获得t个特征图c。所述最大池化操作中池化核的大小为2*2,步长为2。
[0082]
所述展平层将t个特征图c按照列向量并联构成特征矩阵
[0083][0084]
其中,为第t个特征图c上第k个池化采样位置的元素,k为池化采样位置总数。
[0085]
然后将特征矩阵中所有行的元素排列成为一行,获得时间序列m:
[0086][0087]
所述lstm层用于捕获时间序列m的长期相关性并学习异常特征。
[0088]
所述输出层用于使用softmax激活函数对lstm层捕获的异常特征进行分类,获得检测结果。
[0089]
应用交叉熵损失函数来更新网络参数,网络模型的目标函数h表达式为:
[0090]
[0091][0092]
其中,为第l个样本的预测类别为第n类的概率,为第l个样本的真实类别为第n类的概率,为第l个样本的预测类别为第n类时输出层中softmax激活函数的输入,n=1,2,...,n,n为cnn-lstm检测模型分类的类别总数。
[0093]
利用训练集对cnn-lstm基础模型进行训练,利用验证集对训练好的cnn-lstm基础模型进行验证,判断训练好的cnn-lstm基础模型是否合格,是则获得cnn-lstm检测模型,否则在历史振动检测数据中重新选取历史数据段对cnn-lstm基础模型进行训练,直至获得合格的cnn-lstm检测模型。
[0094]
在得到了合格的cnn-lstm检测模型之后,就可以开始进行检测,具体的检测过程为:
[0095]
分别在被测振动监测数据段的上下峰值包络中提取残差序列,并在被测振动监测数据段的功率谱密度分布中提取与所述残差序列长度相同的功率谱密度序列。
[0096]
将所述残差序列和所述功率谱密度序列并联,构建被测数据。
[0097]
将所述被测数据输入至cnn-lstm检测模型中进行检测,获得检测结果。
[0098]
本实施方式所述的基于多特征融合和深度学习的振动监测数据异常检测方法,从历史振动监测数据中分别提取残差序列和psd序列作为训练样本,丰富了异常特征信息的同时还降低了模型输入样本的大小。将样本输入到卷积神经网络(cnn)提取更高级别的数据特征,同时将历史数据在时域和频域上的特征进行融合;接着利用长短期记忆神经网络(lstm)模型来学习融合后的特征序列的异常特征;最后利用训练好的模型实现振动监测数据的异常检测。
[0099]
具体实施例
[0100]
第一步,来自实际悬索桥结构健康监测系统的加速度数据被用于构建数据集。一个月内连续的历史监测数据以10分钟的间隔分割,采样频率为50hz,单个样本的大小为1*30000。为避免数据集不平衡对识别准确性的影响,最终的数据集构成为:正常型、离群型、单频震荡型、缺失型、次小值型各占20%,总样本数为18000,并按7:3的比例划分为训练集和验证集。
[0101]
第二步,对样本进行特征提取,首先获取历史数据在时域上的残差序列和频域上的psd序列,图2给出了各种典型的振动数据类型及其残差序列和psd序列的示意。可以看出,不同类型的振动数据在时域和频域上有很大的差异,最后构建全部输入样本。
[0102]
第三步,构建具有gpu加速的改进的cnn-lstm模型架构,该模型由python科学套件、tensorflow和keras组建。将得到的残差序列和psd序列组成的12600个训练样本输入到cnn-lstm模型中,由前置的cnn模型进行输入样本的时域特征和频域特征提取和融合,接着由lstm模型进一步学习融合特征时间序列的长期相关性及异常数据特征。通过最小化交叉熵误差来训练模型,采用adam优化器,每批次训练64个样本,辍学率为0.5。重复试验以优化模型参数。当验证集的误差连续在10个周期内增长的时候,说明已经发生了过拟合,训练提前中止。图3(a)和(b)分别是最终的模型在训练集和验证集上分类结果的混淆矩阵,其中对角线上是正确分类样本的数量,括号中是相应类型的召回率,可以看出无论是在训练集和
验证集上分类结果都有很高的准确率。
[0103]
第四步,应用悬索桥的数据集之外的监测数据对训练好的模型进行测试,图4为测试集数据的检测结果分布。显然,这些异常数据在空间和时间上具有一定的分布规则。为了验证所提出方法的可靠性,所有数据都被人工检测并标记,以便与所提出方法的检测结果进行比较。图5显示了所提出方法的检测结果和实际人工检测结果的混淆矩阵,可以看出,该方法在测试集上也有很高的准确率。
[0104]
虽然在本文中参照了特定的实施方式来描述本发明,但是应该理解的是,这些实施例仅仅是本发明的原理和应用的示例。因此应该理解的是,可以对示例性的实施例进行许多修改,并且可以设计出其他的布置,只要不偏离所附权利要求所限定的本发明的精神和范围。应该理解的是,可以通过不同于历史权利要求所描述的方式来结合不同的从属权利要求和本文中所述的特征。还可以理解的是,结合单独实施例所描述的特征可以使用在其它所述实施例中。

技术特征:
1.基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,分别在被测振动监测数据段的上下峰值包络中提取残差序列,并在被测振动监测数据段的功率谱密度分布中提取与所述残差序列长度相同的功率谱密度序列;将所述残差序列和所述功率谱密度序列并联,构建被测数据;将所述被测数据输入至cnn-lstm检测模型中进行检测,获得检测结果。2.根据权利要求1所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,所述cnn-lstm检测模型包括输入层、卷积层、池化层、展平层、lstm层和输出层;所述输入层用于将被测数据输入至所述卷积层;所述卷积层采用t个大小为3*2的卷积核m按照步幅1与被测数据每个卷积采样位置的窗口向量进行一维卷积操作,生成t个特征图e;所述池化层用于分别对t个特征图e进行最大池化操作,获得t个特征图c;所述展平层用于将t个特征图c重新排列并进行特征融合,获得时间序列m;所述lstm层用于捕获时间序列m的长期相关性并学习异常特征;所述输出层用于使用softmax激活函数对lstm层捕获的异常特征进行分类,获得所述cnn-lstm检测模型的检测结果。3.根据权利要求1或2所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,获得cnn-lstm检测模型的方法为:在连续的历史振动检测数据中采集l个步长相同的历史数据段,分别提取每个历史数据段的残差序列和功率谱密度序列,将同一历史数据段的残差序列和功率谱密度序列并联构成一个样本,从而将所有历史数据段对应的样本构建为样本集,对样本集中样本的类型进行标记,并将样本集中的样本划分为训练集和验证集;构建cnn-lstm基础模型;利用训练集对cnn-lstm基础模型进行训练;利用验证集对训练好的cnn-lstm基础模型进行验证,判断训练好的cnn-lstm基础模型是否合格,是则获得cnn-lstm检测模型,否则在历史振动检测数据中重新选取历史数据段对cnn-lstm基础模型进行训练。4.根据权利要求3所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,提取第l个历史数据段的残差序列的具体方法为:分别计算第l个历史数据段内历史数据的上峰值包络曲线y
u
和下峰值包络曲线y
l
,利用i个采样窗口对第l个数据段内的历史数据进行划分,并分别计算各采样窗口内的历史数据平均值,分别利用各采样窗口内的历史数据平均值替换所在采样窗口内的异常数据,获得第l个无异常数据段,分别计算第l个无异常数据段内历史数据的上峰值包络曲线x
u
和下峰值包络曲线x
l
,利用y
u
、y
l
、x
u
和x
l
计算第l个历史数据段内历史数据在时域上的残差序列r
l
=[r1,r2,

,r
i
],
其中,r
i
为第l个历史数据段内第i个采样窗口的残差值,i=1,2,...,i,l=1,2,...,l,和分别为第l个历史数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络,和分别为第l个无异常数据段内第i个采样窗口中历史数据的上峰值包络和下峰值包络。5.根据权利要求4所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,在第i个采样窗口内,当历史数据x的值与第i个采样窗口内的历史数据平均值之差大于6σ,则所述历史数据x为异常数据,σ为第i个采样窗口内历史数据的标准差。6.根据权利要求3所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,提取第l个历史数据段的功率谱密度序列的具体方法为:对第l个历史数据段内的历史数据进行单边功率谱密度估计,获得第l个历史数据段内的历史数据在0~fs/2频率范围内的功率谱密度分布p1,其中fs为第l个历史数据段内历史数据的采样频率;提取功率谱密度分布p1中的前i个值构成特征序列p2,并对该特征序列p2中的元素进行归一化,获得第l个历史数据段的功率谱密度序列p
l
:p
l
=normalize(p2),其中,normalize(
·
)表示归一化函数,i为第l个历史数据段的残差序列的采样窗口数量。7.根据权利要求3所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,将第l个历史数据段内历史数据在时域上的残差序列r
l
与第l个历史数据段的功率谱密度序列p
l
并联,获得第l个样本s
l
,将l个历史数据段对应的样本构建样本集s=[s1,s2,...,s
l
],l=1,2,...,l。8.根据权利要求3所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,所述训练集和验证集中历史数据的数量比为7:3。9.根据权利要求3所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,cnn-lstm检测模型的目标函数h表达式为:lstm检测模型的目标函数h表达式为:其中,为第l个样本的预测类别为第n类的概率,为第l个样本的真实类别为第n类的概率,为第l个样本的预测类别为第n类时输出层中softmax激活函数的输入,n=1,2,...,n,n为cnn-lstm检测模型分类的类别总数。10.根据权利要求2所述的基于多特征融合和深度学习的振动监测数据异常检测方法,其特征在于,特征图e中的第j个元素e
j
表达式为:
其中,f(
·
)为激活函数且表达式为f(α)=max(0,α),α为激活函数的变量,表示元素乘法,w
j
为第j个卷积采样位置的窗口向量,b为偏置项;将t个特征图c按照列向量并联构成特征矩阵将t个特征图c按照列向量并联构成特征矩阵其中,为第t个特征图c上第k个池化采样位置的元素,k为池化采样位置总数,将特征矩阵中所有行的元素排列成为一行,获得时间序列m:

技术总结
基于多特征融合和深度学习的振动监测数据异常检测方法,涉及结构健康监测技术领域。本发明是为了解决现有的结构异常振动数据自动检测方法仅考虑历史数据在时域上的异常特征,导致效率低下、准确率差的问题。本发明从历史振动监测数据中分别提取残差序列和PSD序列作为训练样本,丰富了异常特征信息的同时还降低了模型输入样本的大小。将样本输入到卷积神经网络提取更高级别的数据特征,同时将历史数据在时域和频域上的特征进行融合;接着利用长短期记忆神经网络模型来学习融合后的特征序列的异常特征;最后利用训练好的模型实现振动监测数据的异常检测。监测数据的异常检测。监测数据的异常检测。


技术研发人员:周文松 张秀林
受保护的技术使用者:哈尔滨工业大学
技术研发日:2023.04.20
技术公布日:2023/8/1
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐