How to use weights and bias from Neural Network Toolbox for classification

11 次查看(过去 30 天)
I found a code in Matlab Answers for regression:
x = 0:0.1:10; % input dimension 1x101
y = sin(x); % output dimension 1x101
neurons = 10;
net = feedforwardnet(neurons);
net = train(net,x,y);
outputs = sim(net,x);
w1 = net.IW{1,1};
w2 = net.LW{2,1};
b1 = net.b{1};
b2 = net.b{2};
xx = x;
yy = zeros(size(y));
for ii = 1:length(net.inputs{1}.processFcns)
xx = feval(net.inputs{1}.processFcns{ii},...
'apply',xx,net.inputs{1}.processSettings{ii});
end
for jj = 1:size(xx,2)
yy(jj) = w2*tansig(w1*xx(jj) + b1) + b2;
end
for kk = 1:length(net.outputs{2}.processFcns)
yy = feval(net.outputs{2}.processFcns{kk},...
'reverse',yy,net.outputs{2}.processSettings{kk});
end
How can I change the following equation for a classification problem, for example [x,y] = simpleclass_dataset?
yy(jj) = w2*tansig(w1*xx(jj) + b1) + b2;
Because the input and output dimensions are different from the regression example.
For simpleclass_dataset the input dimension is 2x1,000 and the output dimension is 4x1,000.
Thank you!

采纳的回答

David Franco
David Franco 2020-10-1
I found the answer (output and yy are equal):
% Simulated a Neural Network
clear
close
clc
rng default
[x,y] = simpleclass_dataset;
neurons = 10;
net = feedforwardnet(neurons);
net = train(net,x,y);
outputs = sim(net,x);
% outputs = round(outputs);
figure, plotconfusion(y,outputs)
w1 = net.IW{1,1};
w2 = net.LW{2,1};
b1 = net.b{1};
b2 = net.b{2};
xx = x;
for ii = 1:length(net.inputs{1}.processFcns)
xx = feval(net.inputs{1}.processFcns{ii},...
'apply',xx,net.inputs{1}.processSettings{ii});
end
a1 = tanh(w1*xx + b1);
yy = purelin(w2*a1 + b2);
for mm = 1:length(net.outputs{1,2}.processFcns)
yy = feval(net.outputs{1,2}.processFcns{mm},...
'reverse',yy,net.outputs{1,2}.processSettings{mm});
end
figure, plotconfusion(y,yy)
=)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by