Improve NN performance and prediction error

4 Ansichten (letzte 30 Tage)
Ande Mandoyi
Ande Mandoyi am 11 Sep. 2020
Kommentiert: Ande Mandoyi am 12 Sep. 2020
I've been stuck on a homework question for a while now. The question is as follows:
Design a feed forward multi-layer neural network to approximate the function y=sin(x1)+cos(x2).
Here, -5<x1<5 and 0<x2<5. Please use x1 = (rand(1,50)-0.5)*10; x2 = rand(1,50)*5; to get the samples to train the neural network. Finally, please draw the prediction error series y - ynet for the inputs x1=-5:0.1:5 and x2=0:0.05:5.
My code is as follows. I get keep getting large prediction errors for unkknown dataset "input". Please help
x1 = (rand(1,50)-0.5)*10 %training sample one
x2 = rand(1,50)*5; %training sample two
x = [x1;x2];
y=sin(x1)+cos(x2); %targeted output
%feed-forward neural network with one hidden layer
%hidden layer has 10 hidden neurons
%10000 epochs training cycles, stops training when the...
%error is less or equal to 1e-25/ after 10000 epochs
%hidden neurons use a tan sigmoid activation function
%output neurons use a linear activation function
%learning rate = 0.01
%Levenberg-Marquad back-propogation is used
%***********************************************************
net = newff(minmax(x),[10 1],{'tansig','purelin'},'trainlm');
net.trainparam.epochs = 10000;
net.trainparam.goal = 1e-25;
net.trainparam.lr = 0.02;
net = train(net,x,y);
%************************************************************
input1 = -5:0.1:5; %first input
input2 = 0:0.05:5; %2nd input
input = [input1;input2];
y=sin(input1)+cos(input2);
ynet = net(input);
plot(y-ynet) %error series plot
title('Error series plot')
grid
  2 Kommentare
Mohammad Sami
Mohammad Sami am 12 Sep. 2020
Have you tried adding more hidden layers ?
Ande Mandoyi
Ande Mandoyi am 12 Sep. 2020
Yes, does the code look fine though?

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

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

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by