员工姓名:杜雪明
班员工级:交控2017-05班
指导教师:李奕璠
毕设题目:基于卷积神经网络的滚动轴承故障诊断方法研究
一、概况
1.选题意义
滚动轴承是机械设备中最常见的零部件之一。由于过载、疲劳、磨损、腐蚀等原因,轴承在机器操作过程中容易损坏,其性能与工况的好坏直接影响到与之相连的转轴以及安装在转轴上的齿轮乃至整个机器设备的性能。故对于轴承进行故障诊断可减少因轴承损伤而带来的原发性和继发性损失,从而保证生产的周期性、安全性、可靠性。在实际生产中往往都是通过人工经验判断轴承故障,存在着误诊率高、效率低等一系列问题,同时随着设备和工况复杂程度的提高,往往会产生海量的强耦合的多样化的数据。在此,传统的轴承诊断系统往往难以满足快速、精准的识别要求。故需要建立一套较为完备的故障诊断系统来解决上述问题。
近年来,深度学习理论逐渐成为机器学习领域中热门的算法,其利用深度网络结构对输入样本进行层层特征提取,通过每一层的非线性激活函数实现特征的自动提取,实现端到端轴承故障诊断的特征提取和模式识别。利用CNN强大的特征自学能力,建立一套具有高准确性和鲁棒性的诊断系统,从而保证生产的周期性和可靠性。
2.任务分解
根据课题设计目标,采用美国凯斯西储大学(case western reserve university,CWRU)的开放轴承数据库的样本进行实验分析。具体任务分解情况如下:
① 基于卷积神经网络的智能诊断,参考深度学习网络自适应的思想,为避免人工特征提取可能会导致的数据间的相关性以及与故障诊断相关的信息缺失问题,CNN模型输入原始振动信号,直接输出诊断结果,实现端到端的特征识别。对于基于卷积神经网络(CNN)的智能故障诊断模型进行训练以及验证。
② 基于传统神经网络的智能诊断,基于BP网络进行轴承故障诊断模型的建立,控制变量使用与中CNN网络模型相同的训练集、验证集及测试集对于基于传统神经网络的智能故障诊断模型进行训练以及验证。
③ 基于卷积神经网络及传统神经网络的模型训练步骤:
a.根据设计要求及经验确定CNN及BP网络诊断模型结构,包括输入单元数、输出单元数、隐层单元数、卷积层数、卷积核数、以及学习率等参数。
b.根据建立模型的要求和经验对于美国凯斯西储大学(case western reserve university,CWRU)的开放轴承数据库中的数据样本进行数取提取、数据增强、归一化等预处理,划分训练集、验证集、测试集。
c.对于传统神经网络和卷积神经网络模型进行训练,对a中提及的各项参数进行微调,使得模型输出达到预期,训练过程中需合理选择学习率α、正则化系数λ等参数,并探索相关参数与对应分析结果之间的关系。将训练过程利用PCA主成分析,将激活神经元和分类过程可视化。
d.模型应用,利用测试集,对于训练后的模型进行检验,并修正诊断模型中相关参数至达到设计要求。
e.将基于CNN和BP网络结构建立的模型进行分析效果对比。
④算法整合、完成相关论文撰写。
二、已完成工作
本次设计共分为三部分:
1.对于传统神经网络模型训练;
2.基于卷积神经网络的模型训练;
3.传统神经网络模型和卷积神经网络模型训练结果对比。
传统神经网络:
(1)对于美国凯斯西储大学(case western reserve university,CWRU)的开放轴承数据库中的数据样本进行归一化、格式转换等预处理。通过重叠采样完成数据增强。将原始数据进行训练集、验证集、测试集的划分。
图1重叠采样数据增强
(2)完成基本模型框架搭建,对于轴承状态进行了四分类(正常、内圈故障、外圈故障、滚动体故障),训练结果方差和偏差均达到预期要求。
(3)对于模型进行修改,通过Soft max函数实现十分类,并对于隐层单元数、隐层数等一系列参数进行训练,以及对于学习率α等超参数进行训练。训练数据和分类过程可视化。
图2 PCA主成分析可视化
图3传统神经网络模型训练准确率和损失
卷积神经网络:
(1)基于Keras完成了1DCNN模型的搭建,如图4所示,通过预设一定卷积核和一定的Layer初步实现对于滚动轴承状态的十分类。
(2)选择Adam优化器对于模型进行优化,以及对于部分参数及超参数进行调试。训练结果如图5所示。
图4 1DCNN模型框架
图5 卷积神经网络模型训练准确率和损失
三、下一步工作计划
传统神经网络:
(1)继续并对于隐层单元数、隐层数等一系列参数进行训练,以及对于学习率α等超参数进行训练,考率采用不同的优化器改善模型特性。
(2)尝试使用L2正则化、Drop out正则化、交叉验证数据增强等方式改善模型过拟合问题。
卷积神经网络:
(1)对于基于Keras框架完成的1DCNN搭建的模型,进行卷积层、池化层和全连接层的参数训练,以及对于学习率α,正则化系数λ,动态梯度系数等超参数进行训练。
(2)根据Keras框架完成的训练效果,考率是否基于Tensorflow和Torch等框架继续搭建1DCNN模型。
(3)优化器的选择,通过Adam完成初步优化,并选择其他优化器进行模型性能对比。
其它:
(1)进行算法总体整合,将传统神经网络模型和卷积神经网络模型训练结果对比,总结各参数和最终训练结果之间的联系。
(2)完成相关论文的整合撰写等工作。
问题一:关于基于神经网络的模型训练过程中,对于过拟合和欠拟合的理解和认识?
回题答:过拟合和欠拟合是神经网络模型训练中不可回避的问题,它是由于模型的复杂程度、训练的数据量等一系列影响因素决定的。在模型训练中要解决过拟合和欠拟合的问题,就需要把握好方差和偏差的关系,具体关系图6所示。
图6 过拟合与欠拟合与模型复杂程度关系
问题二:对于模型训练过程中过拟合问题,如何处理?
回题答:对于过拟合问题,主要通过从四个方面解决:
1.获取更多的数据,包括从数据源头获取、数据增强、当前数据集生成等。
2.使用合适的模型,通过选择合适的网络结构、调整训练时间、限制训练权值(权重衰减、正则化)、适当增加噪声。
3.结合多种模型融合共同训练,包括:Bagging、Boosting、Dropout等。
4.使用贝叶斯方法。
毕业设计至今开展已有九周之余,从开题到中期,收获了许多新的思路和方法,学习到了许多新的知识和技能。对于深度学习,逐步揭开其神秘面纱,从Coursera上吴恩达机器学习课程初探,到探索深度学习模型训练与各参数和超参数的关系。
通过大量的文献查阅和分析,为搭建的故障诊断系统寻求解决方案。针对所求解问题寻求多种解决途径,基于适当的模型进行系统设计与实现,并结合一定的创新意识,完善系统设计。对设计方案的可行性进行评价和分析,寻求最佳解决方案。通过实验对比、文献综合、归纳整理得到合理有效结论,并对其进行规范表述。在这之中,不仅将前7个学期中的所学知识得以运用,同时也培养了自己的科学素养,为以后的科研打下了良好的基础。
当然,对于现阶段依然存在的问题,也会继续积极探索,寻求新的解决方案,提出自己的想法,并加以验证。