当前位置:网站首页>APReLU:跨界应用,用于机器故障检测的自适应ReLU | IEEE TIE 2020
APReLU:跨界应用,用于机器故障检测的自适应ReLU | IEEE TIE 2020
2020-11-08 21:03:00 【晓飞的算法工程笔记】
> 论文的工作属于深度学习在工业界的应用,借鉴计算机视觉的解决方法,针对机器故障检测的场景提出自适应的APReLU,对故障检测的准确率有很大的提升。论文整体思想应该也可以应用于计算机视觉,代码也开源了,大家可以尝试下
来源:晓飞的算法工程笔记 公众号
论文: Deep Residual Networks with Adaptively Parametric Rectifier Linear Units for Fault Diagnosis
- 论文地址:https://ieeexplore.ieee.org/document/8998530/metrics#metrics
- 代码地址:https://github.com/zhao62/Adaptively-Parametric-ReLU
Introduction
论文讨论的场景是电子设备的错误检测,由于在苛刻环境下长期运行,电子设备经常会不可避免地出现故障,进而造成意外和损失。而振动信号(vibration signal)通常包含由于机器故障引起脉冲和波动,可用来检测设备故障。近期,深度学习方法也被用于电子设备的错误检测中,将振动信号作为输入,输出当前设备是否正常。
主流的分类神经网络使用一组完全相同的非线性变换来处理不同的输入,如图a所示,F、G和H代表非线性变化,$=$代表非线性变换是否相同。对于振动信号场景而言,相同健康状态的机器,由于当前操作不同,反馈的振动信号的差异可能较大,很难将不同波形的归为同一健康状态。相反的,不同健康状态的机器偶然会产生相同的振动信号,神经网络会将其映射到相近的区域,难以区分。综上,固定的非线性变换在振动信号场景中可能会对特征学习能力带来负面的影响,能够自动学习并根据输入信号使用不同的非线性变换是十分有意义的。
论文基于ResNet提出了改进版ResNet-APReLU,如图b所示,根据输入信号赋予不同的非线性变换,具体是通过插入一个类似SE(squeeze-and-excitation)模块的子网来调整激活函数的斜率,能够大幅提升故障检测的准确率。由于论文的场景比较特殊,所以主要学习论文提出的方法,至于应用场景相关的部分和实验部分,就简单地带过就好了。
Fundamentals of classical ResNets
论文以ResNet为基础,ResNet的核心结构如图2a所示,相信各位都很清楚,就不再介绍了。将ResNet应用到机器错误识别中,如图2b所示,输入振动信号,经过网络的特征提取后进行状态识别,判断机器是健康还是处于其它错误状态中。论文的核心是通过改进ReLU进行自适应的非线性变换,原版ReLU可公式化为:
Design of the developed ResNet-APReLU
Design of the fundamental architecture for APReLU
APReLU集成了一个特别设计的子网,有点类似于SE模块,根据输入自适应地预测用于非线性变换的乘法因子,结构如图3a所示,输出channel-wise的ReLU参数,包含以下步骤:
- 用ReLU和GAP将输入特征映射到1D向量,获取正面特征(positive feature)的全局信息。用min(x, 0)和GAP将输入特征映射到另一个1D向量,获取负面特征(negative feature)的全局信息,负面信息可能包含某些有用的故障信息。GAP能够处理信号的偏移问题,将输入特征图信息压缩为两个1D向量,分别代表正面和负面信息。
- 将两个1D向量Concate到一起,进行FC-BN-ReLU-FC-BN-Sigmoid计算,两个FC的输出与输入特征的维度一致,最后sigmoid输出用于公式10的$\alpha \in (0, 1)$因子:
Architecture of the developed ResNet-APReLU for vibration-based gearbox fault diagnosis
基于APEeLU构建新的ResBlock,如图b所示,与原版的ResBlock基本一致,只是将ReLU替换为APReLU进行自适应非线性激活。APReLU的输出大小跟输入大小一样,可以简单地嵌入到各种网络中。完整的网络结构如图c所示,最后输出多个机器状态的预测,计算交叉熵损失,进行梯度下降学习。
Experimental Results
从结果来看,针对机器故障的场景,论文提出的方法是十分有效的。
Conclustion
论文的工作属于深度学习在工业界的应用,借鉴计算机视觉的解决方法,针对机器故障检测的场景提出自适应的APReLU,对故障检测的准确率有很大的提升。论文整体思想应该也可以应用于计算机视觉,代码也开源了,大家可以尝试下。
> 如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】
版权声明
本文为[晓飞的算法工程笔记]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4490761/blog/4708283
边栏推荐
- 程序员都应该知道的URI,一文帮你全面了解
- Newbe.ObjectVisitor Example 1
- Iptables from introduction to mastery
- Mongodb database
- Swagger介绍和应用
- [random talk] JS related thread model sorting
- RSA非对称加密算法
- Why need to use API management platform
- Dynamic relu: Microsoft's refreshing device may be the best relu improvement | ECCV 2020
- 趣文分享:C 语言和 C++、C# 的区别在什么地方?
猜你喜欢
随机推荐
接口测试用例思路总结
Simulink中封装子系统
Experiment 1 assignment
[cloud service] there are so many ECS instances on alicloud server, how to select the type? Best practice note
WordPress网站程序和数据库定时备份到七牛云图文教程
Mycat搭建
Django's simple user system (3)
学会了volatile,你变心了,我看到了
线程池运用不当的一次线上事故
Solution to cross domain problem of front end separation
getBytes之 LengthFieldBasedFrameDecoder服务端解析
Not a programmer, code can't be too ugly! The official writing standard of Python: pep8 everyone should know
第一部分——第2章指针操作
How to deploy pytorch lightning model to production
Dynamic query processing method of stored procedure
简明 VIM 练级攻略
Express framework
采用注解+拦截器的方式进行异步执行的实现方式
CMS垃圾收集器
Select sort