工业机械异常检测
Rachel是MathWorks预测性维护的产品经理。
瑞秋这周选的是使用AutoEncoder的工业机械异常检测她提交了!今天的精选是在深度学习预测性维护在MATLAB EXPO 2021上发表演讲。
你怎么知道机器是否运转正常?这是本周的选择旨在回答的问题,通过使用深度学习来检测工业机器正常振动数据中的异常。异常检测有很多用途,但它在预见性维护。
本例以基于lstm的双向自动编码器的形式使用深度学习。这有点拗口,但它只是训练一个网络来重建“正常”的运行数据。这样,当我们向算法输入一些看起来不同的数据时,重构错误将表明存在问题——可能机器需要维护。当你确信所有的数据都是“正常”数据时,自动编码器是一个很好的方法。
数据集有两个部分:来自右侧的数据之前维护,数据从右后维护。我们可以在维护后逻辑上逻辑地假设数据“正常”(即,如果我们有一个称职的维护团队!)我们不太确定数据之前。
这是数据集的两个样本成员彼此顶部覆盖。
它通常有助于提取能够在数据之前和之后区分的功能来提取能够更好地区分的功能。使用诊断特征设计师应用程序一次自动从所有数据中提取和排名功能。然后,该应用程序可以自动创建功能生成食物以编程方式重做这些工作。整洁!
训练费用=生成细分(TrainData);
这是Bilstm AutoEncoder。
featureDimension = 1;%定义biLSTM网络层图层= [sequentInputLayer(特色主控,'名称'那'在') bilstmLayer (16'名称'那“bilstm1”)剥离('名称'那“relu1”)Bilstmlayer(32,'名称'那“bilstm2”)剥离('名称'那'relu2') bilstmLayer (16'名称'那'bilstm3')剥离('名称'那'relu3')全连接列(特工主控,'名称'那“俱乐部”)回归层('名称'那'出去')];
AutoEncoder工作如下:在正常数据上培训网络。如果你然后通过它的正常数据,它就能够重建它真的很好。如果您传递它看起来不正常的东西,则无法重建它,并且您将能够在重建错误中看到它。
从每个频道的前四个排名特征列车 - 从正常(维护后)数据中培训。
通过挑选重建误差的正确阈值,算法识别具有相当高精度的异常。在这种情况下,我们有一些我们知道的测试数据是异常的,因此我们可以明确测试算法精度。非常好!
在您自己的数据上尝试此方法,看看您的想法在评论中。
发布了MATLAB®R2021B
- 类别:
- 挑选
评论
要发表评论,请点击在这里登录您的MathWorks帐户或创建新的。