【基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例4500字】_第1页
【基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例4500字】_第2页
【基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例4500字】_第3页
【基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例4500字】_第4页
【基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例4500字】_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例目录TOC\o"1-3"\h\u24351基于多尺度卷积神经网络的断路器故障诊断与程度评估模型分析案例 1305301.1一维多尺度卷积神经网络 1254601.1.1一维卷积层与多尺度卷积层 128161.1.2池化层 3292191.1.3Dropout层 4319551.1.4全连接层 4205191.1.5激活函数 584301.2模型的结构 680651.3模型流程设计 775511.1.1故障诊断与程度评估模型训练流程 743711.1.2故障诊断与程度评估流程 975891.4模型测试分析 10292351.4.1python环境及库函数的配置 10136091.4.2模型算法的设计 10235751.4.3模型测试结果分析 10171061.4.4模型的可视化分析 11随着近年来深度学习的兴起,作为深度学习的方法之一,卷积神经网络(CNN)也被应用到了故障诊断领域,得到了良好的诊断效果[12]-[14]、[24]-[30]。多尺度卷积神经网络(MSCNN)在CNN的基础上使用多个尺寸的卷积核提取信号中的特征,这进一步提升了网络对信号信息的挖掘能力,可以有效提升故障诊断精度。因此本课题选用一维多尺度卷积神经网络进行故障诊断与程度评估。下面对该模型的结构和训练过程进行具体分析。1.1一维多尺度卷积神经网络1.1.1一维卷积层与多尺度卷积层对于输入数据,在一维卷积层中,进行是一维卷积运算,其大致过程大致如图1.1所示。图1.1卷积运算在卷积层中,上层输出的激活值通过多个卷积核进行卷积运算,并将运算后的结果加上偏置值,然后将加上偏置值后的运算结果输入激活函数,获得下一层的输入激活值。该卷积运算数学表达式为:(3-1)其中为卷积层的第i个输入数据,为其对应卷积层的第j个权重矩阵,为卷积层的第j个偏置项,为输入数据,()为激活函数,为输出激活值。在卷积层处理之前,可以对输入数据进行填充,使用填充可以调整输出的大小,使卷积运算过程中数据的空间大小保持不变。输出大小如公式(3-2)所示:(3-2)其中(H,W)为输入数据大小,(FH,FW)为卷积核大小,P是填充大小,S为步幅大小。而对于多尺度卷积层,它由多个不同尺度的卷积核组成,分别为1×1、3×1、5×1。利用这些卷积核,就可以从上一层输出激活数据中提取多尺度特征,并对这些特征进行组合从而得到下一层的输入。该卷积层的结构如图1.2所示。图1.2一维多尺度卷积层在图1.2中分支B中3×1卷积模块与分支C中3×1卷积模块之前都增加了1×1的卷积模块,而分支D之后也增加了1×1的卷积模块。若输入为10×1×50的一维数据,对于分支B若不包含1×1的卷积模块,且3×1的卷积模块卷积核数量为32,1×1的卷积模块卷积核数量为16,则参数量为3×1×50×32=4800。而包含1×1卷积模块,则参数数量为1×1×50×16+3×1×16×32=2336。可见1×1卷积模块的加入可以有效减少参数量和计算量。该一维多尺度卷积层卷积运算数学表达式如式(3-3)所示:(3-3)其中和分别表示输入激活值和下一层输入激活值,和表示分支对应的卷积核和偏置矩阵及其大小,MaxPooling表示最大池化运算。1.1.2池化层池化是缩小输入数据空间大小的运算,池化层可以通过池化运算达到降低输入数据维度的目的,这能降低网络参数,降低网络计算量。池化层对输入数据之间微小的位置变化具有不错的鲁棒性,当输入数据之间位置发生微小的偏差时,经过池化层池化运算后仍然可以得到相同的运算结果。常见的池化方法主要有Average池化和Max池化,Average池化计算目标区域中的平均值,而Max池化则是计算目标区域中的最大值。这两种池化方式如图1.3所示:图1.3两种池化运算且对于一维输入,池化输入长度m和输出长度n具有以下关系:(3-4)其中s表示步长,表示向下取整。1.1.3Dropout层在Dropout层中,某个神经元的输出会被随机的置零,从而避免网络对一部分神经元过于依赖,同时可以降低网络发生过拟合的概率。Dropout层操作如式(3-5)所示:(3-5)其中和分别为Dropout层的输入和输出,D为大小相同且内部元素全为1的矩阵,为D中不被置零的元素比例。1.1.4全连接层全连接层将上层提取到的特征数据转换为1×n维矩阵并将其输入Softmax分类器。Softmax分类器输出该样本相对于全部故障类型任一类的概率,完成断路器故障类型与故障程度的分类。其正向传播的传播公式如式(3-6)所示:(3-6)其中,为+1层第j个神经元输出的logits值,为+1层第j个与层第i个神经元之间的权值,为层第i个神经元的值,为+1层第j个神经元与层所有神经元的偏置。而Softmax函数的表达式为:(3-7)从公式可知Softmax函数将输入值映射到0-1之间,且映射值的和为1。1.1.5激活函数在一维多尺度卷积神经网络中,各层大多都有激活函数,激活函数的存在可以帮助数据去除冗余,发挥叠加层的优势。常见的激活函数为ReLu函数,该函数在输入数据大于0时直接输出该值,在输入数据小于等于0时,输出0。其数学表达式可以表示为下式:(3-8)图1.4一维多尺度卷积神经网络模型1.2模型的结构经过综合参考文献[32]-[33]中的模型结构,本课题实验搭建的网络模型结构如图1.4所示。模型采用长度N=6000的一维振动信号作为样本输入,样本先通过一个一维卷积层对振动信号特征初步进行提取,然后进入一层一维多尺度卷积层,该层的作用是进一步从各个尺度充分提取振动信号的特征,避免有用信息的丢失;其后进入一个最大池化层,该层的作用是减少向量的长度从而减少全连接层的计算量;接着通过一个全连接层将前面三层得到的特征通过权值矩阵合并成完整的特征图;最后输入输出层,通过Softmax函数进行分类。本文实验搭建的网络模型结构如图1.4所示:当模型确立以后,对于网络各层滤波器的大小与尺寸的选择也尤为重要,这一定程度上影响着网络的性能。对于网络来说,网络模型越复杂,模型的表达能力与处理的能力越强,但随之而来的是网络运算量大,训练难度上升,以及过拟合发生的概率上升,对此,关于在网络参数的设置上需要寻找网络表达能力与网络复杂程度的平衡,对此需要对相应网络参数不断的测试与修改,直到其达到一个较好的效果。本文初步预设的网络各层滤波器大小与尺寸,及当输入信号输入网络后随着各层的处理和运算,信号在各层的数据尺寸变化如表1.1所示:表1.11D-MSCNN模型各层数据层名称分支滤波器Input——1D_Conv—32×64×1Maxpooling—2×11D_MCL分支A32×1×1分支B64×1×1、32×3×1分支C16×1×1、32×5×1分支D32×1×1Fullyconnected——Output——1.3模型流程设计1.1.1故障诊断与程度评估模型训练流程为了对本文预设的一维多尺度卷积神经网络进行训练并测试其诊断准确度,本文将数据以4:1的比例分为训练集与测试集,并将训练集输入一维多尺度卷积神经网络模型进行训练,该训练流程如图1.5所示,分为以下几个阶段:图1.5一维多尺度卷积神经网络训练流程(1)数据预处理。采用小波阈值去噪的方法对原始振动信号进行去噪,达到去除原始振动信号中噪声的目的,这使网络在提取信号特征时排除噪声的干扰,能够更有效的提取信号特征。并将去噪后的原始信号以3:1的比例分为训练集预测集。(2)特征提取。将训练集数据输入本文预设的一维多尺度卷积网络模型,网络首先通过一维卷积层初步提取输入训练集振动信号特征,然后一维多尺度卷积层利用多个尺寸的卷积核对训练集振动信号进行卷积运算,从多尺度提取信号特征,并按深度拼接,输入池化层降维。(3)反向更新。池化层输出结果经两层全连接层获得完整的特征图,经过Softmax函数分类获得输出结果,与标签值比较获得其偏移量,然后根据各层神经元权值误差求取误差梯度反向传播,逐层更新神经元权重,若不满足训练要求则继续从第二步再次开始训练,直到输出结果与标签值的偏移量在允许范围内或达到训练次数上限,完成网络训练。1.1.2故障诊断与程度评估流程实验采用训练好的一维多尺度卷积网络基于测试集数据进行万能式断路器故障诊断与程度评估,该流程如图1.6所示,分为以下几个阶段:图1.6断路器故障诊断与程度评估流程(1)特征提取。将测试集数据输入训练好的的一维多尺度卷积网络模型,网络首先通过一维卷积层初步提取输入训练集振动信号特征,然后利用一维多尺度卷积从多尺度提取振动信号特征,并按深度拼接,输入池化层降维。(2)故障诊断与程度评估。两个全连接层将前面三层得到的特征通过权值矩阵合并,获得完整的特征图,并通过Softmax函数分类获得输出结果。1.4模型测试分析1.4.1python环境及库函数的配置本文模型采用python1.7版本并基于Tensorflow平台搭建,模型采用keras库,通过导入keras库中一维卷积神经网络相关函数,如:Conv1D、Dense、MaxPooling1D等实现模型各层的搭建。针对于多尺度卷积层采用自定义函数实现。本文采用Anaconda软件完成python环境的配置,首先在AnacondaPrompt界面创建版本为python1.7的虚拟环境,其次激活此环境后,利用pip指令实现tensorflow平台及kreas一系列库的安装,最后将python环境配置完善后,通过文本编辑器PyCharm调用此环境,在编辑器中实现程序的编写。1.4.2模型算法的设计在编写各层程序之前,首先需要向程序中导入库函数中模型搭建所必需的函数,如:fromkeras.layersimportConv1D、fromkeras.modelsimportModel等,为其后模型的搭建做好准备。卷积层采用Conv1D函数搭建,并通过设定其设定值实现卷积层参数的设置,如卷积层1,设定其卷积核数目为64,卷积核大小为64x1,步长为10,激活函数采用Relu函数。池化层采用MaxPooling1D函数搭建,同样通过设定其设定值实现池化层参数的设置,如池化层1,设定其卷积核大小为2x1。多尺度卷积层采用自定义函数的方式,利用Conv1D函数和MaxPooling1D函数通过四条分支并行计算,并对其结果按深度进行拼接。全连接层采用Dense函数搭建,通过设定其设定值实现对输出数据尺寸的控制,并采用Relu函数作为激活函数实现去线性化。输出层同样采用采用Dense函数搭建,其设定值与数据标签类型相同,采用softmax函数分类获得实验结果。1.4.3模型测试结果分析实验将训练集与测试集输入一维多尺度卷积网络模型,利用训练集训练网络,其后通过对输入的测试集分类,与其设定值对比,获得测试集诊断精度,并且对测试集输入网络后的损失统计获得测试集损失数据,与此同时对网络数据单批次训练时间进行记录来反映网络的响应速度,实验单批次训练数据为16。本课题实验基于Inteli5-6300HQCPU和NVIDIAGeForceGTX950MGPU平台进行,实验结果如图1.7所示。(a)模型训练集与测试集精度变化(b)模型训练集与测试集损失变化图1.7故障诊断与程度评估模型实验结果由图1.7可知,该网络精度与损失在第80次训练时趋于稳定,且由实验得出网络测试集精度与测试基损失分别为80.6%和0.654,经过分析实验结果发现模型故障诊断与程度评估精度并没有达到本文预期需要的效果。1.4.4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论