在打包 MATLAB App 时,appdesig​ner设计中包含神经​网络相关程序,但是打​包出来却没有用,是为​什么

1 Ansicht (letzte 30 Tage)
zhi
zhi am 12 Jan. 2024
Beantwortet: Umang Pandey am 23 Jan. 2024
[f,p]=uigetfile({'*.xlsx;*.txt;*.xls;','All Data Files'});
if (ischar(p))
fname = [p f];
A=xlsread(fname);
app.UITable.Data=A;
end
% A=xlsread('test1.xlsx');
% app.UITable.Data=A;
input=A(1:end,1:5);
output=A(1:end,6:7);
insize=size(input,2);
outsize=size(output,2);
%% 划分训练集和测试集
num=size(input,1);
rowrankA = randperm(num); % 随机打乱的数字,从1~行数打乱
input= input(rowrankA, :);%按照rowrank打乱矩阵的行数
output=output(rowrankA, :);
Xtrain=input(1:floor(0.8*num),:);
Ytrain=output(1:floor(0.8*num),:);
Xtest=input(floor(0.8*num)+1:num,:);
Ytest=output(floor(0.8*num)+1:num,:);
%% 训练集归一化
muX = mean(Xtrain,1);
sigmaX = std(Xtrain,0,1);
muT = mean(Ytrain,1);
sigmaT = std(Ytrain,0,1);
Xtrain = (Xtrain - muX) ./ sigmaX;
Ytrain = (Ytrain - muT) ./ sigmaT;
%% 创建网络结构
layers = [
featureInputLayer(insize,"Name","featureinput")
fullyConnectedLayer(10,"Name","fc")
fullyConnectedLayer(outsize,"Name","fc_1")
regressionLayer("Name","regressionoutput")];
%% 设置训练选项
Xtest = (Xtest - muX) ./ sigmaX;
Ytest = (Ytest - muT) ./ sigmaT;
b={Xtest,Ytest};
options = trainingOptions("adam", ...
MaxEpochs=500, ...
Shuffle="every-epoch", ...
Plots="training-progress", ...
Verbose=0 ,...
ValidationData=b);
%% 训练网络
net = trainNetwork(Xtrain,Ytrain,layers,options);
% X1=app.EditField_2.Value;
% X2=app.EditField.Value;
% X3=app.EditField_3.Value;
% X4=app.EditField_4.Value;
% X5=app.EditField_5.Value;
X=[1,1,1,1,1];
X = (X - muX) ./ sigmaX;
Y= predict(net,X);
Y= Y.*sigmaT+muT;
Y=double(Y);
代码在脚本中是这样的

Antworten (1)

Umang Pandey
Umang Pandey am 23 Jan. 2024
Hi Zhi,
You can refer to the following MATLAB answers for more information on how to package your Neural Network app -
Hope this helps!
Best,
Umang

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!