MATLAB R2007b: отображать конечные веса и смещения в коде MLP - PullRequest
0 голосов
/ 12 мая 2019

Я создал код для обучения многослойного персептрона в MATBAL R2007b, и мне нужна команда, чтобы показать мне окончательные веса и окончательное смещение сети после обучения шаблонов.Я не могу использовать команду wb = getwb(net), которая входит в версию R2010, потому что я должен использовать эту более старую версию Matlab.

Код:

clear all
close all
clc
disp('Creating the input patterns x...')
x = [0 0; 0 1; 1 0; 1 1]'
pause(1);
disp('Creating the desired outputs (targets)y...')
yd = [0 1 1 0]
pause(1); disp('Creating network with 2 units in hidden layer.')
% 2 Neurons in the hidden layer.
nnet = newff(x,yd,2,{'tansig','tansig'});
pause(1);
disp('Training the network...')
nnet = train(nnet, x, yd);
disp('Testing the patterns')
y=sim(nnet,[0 0; 0 1; 1 0; 1 1]')

Мне действительно это нужно, и я полагаю, что это простая команда, потому что окончательные веса и смещения уже сохранены внутри функции, но мне нужно показать это.Любая помощь?

1 Ответ

1 голос
/ 16 мая 2019

В итоге я нашел те команды, которые работают в каждой версии Matlab, старой и новой:

weight_final = net.IW{1,1} %here is a variable receiving the final weights vector, 
%notice that "{1,1}" coordinates changes according to the number of inputs and outputs.
bias_final = net.b{1} %here is a variable receiving the final bias vector. 
% "{1}" also changes according to the number of inputs/outputs.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...