%---Output-----------------------------------------------------------
% sFeat : 特征选择 (instances x features)
% Sf : 特征索引
% Nf : 特征数量
% curve : 适应度曲线
%--------------------------------------------------------------------
clc, clear, close;
% 数据集处理
load data\d01.dat;
load data\d02.dat;
load data\d03.dat;
feat=[d01;d02;d03];
y1=ones(length(d01),1);
y2=2*ones(length(d02),1);
y3=3*ones(length(d03),1);
label=[y1;y2;y3];
% 20% 用于验证集
ho = 0.2;
%
HO = cvpartition(label,'HoldOut',ho);
% 设置参数
N = 3;
max_Iter = 100;
% WOA
[sFeat,Sf,Nf,curve] = jWOA(feat,label,N,max_Iter,HO);
% 绘制曲线
plot(1:max_Iter,curve);
xlabel('迭代次数');
ylabel('适应度');
title('WOA 曲线'); grid on;
% 划分训练集测试集
[XTrain,YTrain, XTest,YTest] = split_train_test(sFeat, label, 3, 0.8);
% 定义 LSTM 网络架构。
% 将输入大小指定为序列大小 28(输入数据的维度)。
% 指定具有 100 个隐含单元的双向 LSTM 层,并输出序列的最后一个元素
% 最后,通过包含大小为 3 的全连接层,后跟 softmax 层和分类层,来指定3个类。
[m,n]=size(sFeat);
inputSize = 1;
numHiddenUnits = 100;
numClasses = 3;
layers = [ ...
sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits,'OutputMode','last')
fullyConnectedLayer(numClasses)
softmaxLayer
classificationLayer]
% 现在,指定训练选项。指定求解器为 'adam',梯度阈值为 1,最大轮数为 100。
% 选择 64 作为小批量大小。
% 将序列长度指定为 'longest'。要确保数据保持按序列长度排序的状态,请指定从不打乱数据。
maxEpochs = 100;
miniBatchSize = 1000;
options = trainingOptions('adam', ...
'ExecutionEnvironment','cpu', ...
'GradientThreshold',1, ...
'InitialLearnRate',0.001, ...
'MaxEpochs',maxEpochs, ...
'MiniBatchSize',miniBatchSize, ...
'Verbose',1, ...
'Plots','training-progress');
for i=1:length(XTrain)
X_Train{:,i}=XTrain(i,:);
end
% 训练 LSTM 网络
% 使用 trainNetwork 以指定的训练选项训练 LSTM 网络。
net = trainNetwork(X_Train,categorical(YTrain),layers,options);
% 测试
for i=1:length(XTest)
X_Test{:,i}=XTest(i,:);
end
YPred = classify(net,X_Test);
% 计算预测值的分类准确度。
acc = sum(YPred == categorical(YTest))./numel(YTest)
figure
confusionchart(YPred,categorical(YTest))
title('混淆矩阵')
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于WOA和深度学习的化工过程故障诊断模型.zip (10个子文件)
gtest.m 421B
sFeat.mat 113KB
data
d03.dat 390KB
d01.dat 390KB
d02.dat 390KB
split_train_test.m 836B
jFitnessFunction.m 696B
WOA-LSTM-net.mat 155KB
Main.m 3KB
jWOA.m 2KB
共 10 条
- 1
大桃子技术
- 粉丝: 361
- 资源: 42
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页