全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 工业控制 >

工业机械异常检测

时间:2023-05-31 16:31

人气:

作者:admin

标签: 机械  检测 

导读:您怎么知道一台机器是否在正常运行?问题的回答是:通过利用深度学习来检测工业机器的常规振动数据中的异常情况。异常检测有很多用途,而尤其在预测性维护中特别有用。这个深...

您怎么知道一台机器是否在正常运行?问题的回答是:通过利用深度学习来检测工业机器的常规振动数据中的异常情况。异常检测有很多用途,而尤其在预测性维护中特别有用。

这个深度学习的例子讲的是基于双向长短期记忆网络(biLSTM)的自动编码器。虽然这个词很拗口,但它仅表示训练网络来重构“正常”数据。这样,当我们给算法提供一些看起来不同的数据时,重构错误会提示您机器可能需要维护。当您所拥有的数据均为“正常”数据时,自动编码器不失是一个很好的尝试方法。

数据集有两部分:维护前的数据和维护后的数据。从逻辑上讲,我们可以假定维护后的数据是“正常”的(当我们有一个称职的维护团队的情况下!)。但是我们对维护前的数据并不确定。

85d96af6-fb59-11ed-ba01-dac502259ad0.png

以下显示了两个相互叠加在一起的数据样本。

8602a15a-fb59-11ed-ba01-dac502259ad0.png

与其在原始信号上进行训练,不如提取特征区分训练前后的数据,这往往帮助更大。使用Diagnostic Feature Designer应用程序,一次性从所有数据中自动提取特征并对其排序。然后,这个应用程序可以自动创建一个函数generateFeatures,以编程方式重做所有这些工作。

trainFeatures = generateFeatures(trainData);

这就是那个基于biLSTM的自动编码器。

featureDimension = 1;

% Define biLSTM network layers

layers = [ sequenceInputLayer(featureDimension,'Name','in')

bilstmLayer(16,'Name','bilstm1')

reluLayer('Name','relu1')

bilstmLayer(32,'Name','bilstm2')

reluLayer('Name','relu2')

bilstmLayer(16,'Name','bilstm3')

reluLayer('Name','relu3')

fullyConnectedLayer(featureDimension,'Name','fc')

regressionLayer('Name','out') ];

自动编码器是这样工作的:在正常数据上训练网络。如果您把正常的数据传给它,就能很好地重构它。如果您把一些不正常的数据传给它,就无法重构它,并且您会从重构错误中看到提示。

在每个通道的排名前四的特征上训练网络—仅根据正常(维护后)数据。

通过挑选合适的重构误差阈值,算法能以相当高的准确率识别出异常情况。而我们有一些已知为异常的测试数据,可以明确地测试算法的准确率。

预测类别



864d90de-fb59-11ed-ba01-dac502259ad0.png

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信