Regression function of Neural Networks

조회 수: 1 (최근 30일)
b
b 2012년 5월 11일
I wrote a code for neural network for my project but, i could not find the regression function as a result. My code is;
inputs = initial1';
targets = output';
hiddenLayerSize = 6;
net = fitnet(hiddenLayerSize);
net.inputs{1}.processFcns = {'removeconstantrows','mapminmax'};
net.outputs{2}.processFcns = {'removeconstantrows','mapminmax'};
net.divideFcn = 'dividerand';
net.divideMode = 'sample';
samplenet.divideParam.trainRatio = 80/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 5/100;
net.trainFcn = 'trainbr'; % Bayesian regularization
net.performFcn = 'mse'; % Mean squared error
net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ...
'plotregression', 'plotfit'};
[net,tr] = train(net,inputs,targets);
outputs = net(inputs);
errors = gsubtract(targets,outputs);
performance = perform(net,targets,outputs)
  • My network is running without an error. but Could not find the regression of the variables.
  댓글 수: 5
Greg Heath
Greg Heath 2012년 5월 13일
I still do not know what you mean.
Are you looking for the mathematical equation that produces the same output as the net?
Greg
b
b 2012년 5월 14일
Actually, yes.
I need the mathematical equation of regression.
How can i find that?
Thanks

댓글을 달려면 로그인하십시오.

채택된 답변

Greg Heath
Greg Heath 2012년 5월 15일
In general, there is no way to get "the function for each variable".
If you vary one variable with all of the other variables fixed, the result depends on the particular combination of the fixed values.
There are N combinations of I-dimensional input data. If you take each input vector, hold I-1 variables fixed and vary the remaining one over it's range, you would get N different functions for that single variable. Plotting those N functions on one plot would probably not yield enough visual information to make it worthwhile. Doing this for each variable would probably not be very enlightning.
However, there are ways to estimate the relative importance of each variable. For example, you can scramble the N values of a single variable and record the resulting error. Repeat this a number (10?,20?,30?) of times and record the summary statistics (e.g., min/median/mean/std/max) of the MSE.
The ranking of the I means and medians of the variables should yield a reasonable understanding of the importance of each variable.Hope this helps.
Greg

추가 답변 (2개)

Ketan
Ketan 2012년 5월 12일
You can view the general structure of your network with the VIEW function:
view(net);
The IW, LW, and b Network properties store the weights and biases.
  댓글 수: 1
b
b 2012년 5월 13일
I have these but in ANN, there should be a code for the regression function of variables. I actually need this code or etc.

댓글을 달려면 로그인하십시오.


Greg Heath
Greg Heath 2012년 5월 13일
See my answer in the recent Answers post titled:
Write code for NN using the Weight and Bias data retrieved from the NN tool box
Hope this helps.
Greg
  댓글 수: 1
b
b 2012년 5월 13일
I changed my code to "net."
I have a regression shown in NN figure as approximately 0.7
But i could not get the function for each variable.
Thanks..

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Sequence and Numeric Feature Data Workflows에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by