读完需要
速读仅需 2 分钟
请尊重原创劳动成果
转载请注明本文链接
及文章作者:机器学习之心
摘要: GAF-PCNN-BiLSTM、GASF-CNN-BiLSTM、GADF-CNN-BiLSTM的多特征分类预测/故障诊断
1
基本介绍
参考文献
2
数据集
2.2
运行效果
完整代码链接:https://mbd.pub/o/bread/mbd-ZpuTmJ9p
也可扫描二维码:
3
%% Set the hyper parameters for unet training
options = trainingOptions('adam', ... % 优化算法Adam
'MaxEpochs', 1000, ... % 最大训练次数
'GradientThreshold', 1, ... % 梯度阈值
'InitialLearnRate', 0.001, ... % 初始学习率
'LearnRateSchedule', 'piecewise', ... % 学习率调整
'LearnRateDropPeriod',700, ... % 训练100次后开始调整学习率
'LearnRateDropFactor',0.01, ... % 学习率调整因子
'L2Regularization', 0.001, ... % 正则化参数
'ExecutionEnvironment', 'cpu',... % 训练环境
'Verbose', 1, ... % 关闭优化过程
'Plots', 'none'); % 画出曲线
%Code introduction
if nargin<2
error('You have to supply all required input paremeters, which are ActualLabel, PredictedLabel')
end
if nargin < 3
isPlot = true;
end
%plotting the widest polygon
A1=1;
A2=1;
A3=1;
A4=1;
A5=1;
A6=1;
layers0 = [ ...
% 输入特征
sequenceInputLayer([numFeatures,1,1],'name','input') %输入层设置
sequenceFoldingLayer('name','fold') %使用序列折叠层对图像序列的时间步长进行独立的卷积运算。
% CNN特征提取
convolution2dLayer([3,1],16,'Stride',[1,1],'name','conv1') %添加卷积层,64,1表示过滤器大小,10过滤器个数,Stride是垂直和水平过滤的步长
batchNormalizationLayer('name','batchnorm1') % BN层,用于加速训练过程,防止梯度消失或梯度爆炸
reluLayer('name','relu1') % ReLU激活层,用于保持输出的非线性性及修正梯度的问题
% 池化层
maxPooling2dLayer([2,1],'Stride',2,'Padding','same','name','maxpool') % 第一层池化层,包括3x3大小的池化窗口,步长为1,same填充方式
% 展开层
sequenceUnfoldingLayer('name','unfold') %独立的卷积运行结束后,要将序列恢复
%平滑层
flattenLayer('name','flatten')
lstmLayer(25,'Outputmode','last','name','hidden1')
selfAttentionLayer(2,2) %创建2个头,2个键和查询通道的自注意力层
dropoutLayer(0.1,'name','dropout_1') % Dropout层,以概率为0.2丢弃输入
4
嗯,细心的你会发现:https://mbd.pub/o/slowtrain/work
博客专家认证,机器学习领域创作者,2023博客之星TOP50,主做机器学习和深度学习时序、回归、分类、聚类和降维等程序设计和案例分析。
技术交流群:购买博主任意代码或分享博主博文到任意三方平台后即可添加博主QQ进群