✅作者简介:热爱科研的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, :);
⛄ 运行结果
⛄ 参考文献
[1]靖稳峰, 谢思宇, 郭启帆,等. 一种基于LSTM自编码器和正常信号数据的异常检测系统及方法:.
[2]高玉才, 付忠广, 谢玉存,等. 基于BP-LSTM的旋转机械振动信号异常检测模型[J]. 煤矿机械, 2021.