How to use a trained neural network as objective function in fminsearch?

7 views (last 30 days)
I have trained a neural network, with input x that is a matrix 12x22000 and a target t 1x22000, and i have got an output y 1x22000, now i want to optimaize one element of my output with the tool fminsearch but i don't know how to write the objective function 'fun'.
What should i put as 'fun'?
x = input;
t = output;
trainFcn = ['trainlm'];
hiddenLayerSize = 50;
net = feedforwardnet(hiddenLayerSize,trainFcn);
net.divideFcn = ['divideblock'];
net.performFcn = 'mse';
[net,tr] = train(net,x,t);
y = net(x);
%now i want use fminsearch(fun,x0,options)

Sign in to comment.

Accepted Answer

Matt J
Matt J on 20 Sep 2022 unlikely to be able to handle 12 unknowns well. You should probably use fminunc if you have the Optimization Toolbox. Either way, the 'fun' input would be,
fun=@(x) net(x);

More Answers (0)

Community Treasure Hunt

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

Start Hunting!