【信号检测】基于LSTM实现工业机器信号数据异常检测附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

个人主页:Matlab科研工作室

个人信条:格物致知。

更多Matlab仿真内容点击

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机  电力系统

⛄ 内容介绍

旋转机械运行环境恶劣,振动信号易受外界干扰,因此实现振动状态的异常检测较为困难.神经网络技术能够从大量的振动数据中自动提取故障特征,相对于人工提取故障特征,工作量大为减少.结合长短时记忆(LSTM)网络对时间序列数据具有的超强感知与处理能力,采用LSTM网络进行异常检测.​

⛄ 部分代码

Load Features and Labels

In the previous section, we extracted highly ranked features from our data. The dataset we looked at previously was actually only a small subset of a much larger dataset that is not included in this example. It is always a good idea to train your algorithm on as much data as possible. 

Here, we will load in the 12 features that were previously extracted from the larger dataset of 17,642 signals.

load("FeatureEntire.mat")

head(featureAll)

The data has two labeled states: Before & After. These refer to data collected before and after maintenance. We will assume that the data collected after maintenance represents a normal (healthy) operating state. We may not be able to say the same for the before data -- because we were performing scheduled maintenance, this data may be either normal or abnormal. 

Split into Training and Test Datasets

We will automatically partition the data into a training set to train the autoencoder, and an independent test set to test the performance. cvpartition does the partitioning for us automatically. 

% rng(0) % set for reproducibility

idx = cvpartition(featureAll.label, 'holdout', 0.1);

featureTrain = featureAll(idx.training, :);

featureTest = featureAll(idx.test, :);

⛄ 运行结果

【信号检测】基于LSTM实现工业机器信号数据异常检测附matlab代码_第1张图片

【信号检测】基于LSTM实现工业机器信号数据异常检测附matlab代码_第2张图片

【信号检测】基于LSTM实现工业机器信号数据异常检测附matlab代码_第3张图片

⛄ 参考文献

[1]靖稳峰, 谢思宇, 郭启帆,等. 一种基于LSTM自编码器和正常信号数据的异常检测系统及方法:. 

[2]高玉才, 付忠广, 谢玉存,等. 基于BP-LSTM的旋转机械振动信号异常检测模型[J]. 煤矿机械, 2021.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

你可能感兴趣的:(信号处理,matlab,lstm,开发语言)