Yekver
Yekver

Reputation: 5185

Matlab function gradient for fminunc

f = @(w) sum(log(1 + exp(-t .* (phis * w'))))/size(phis, 1) + coef * w*w';
options = optimset('Display', 'notify', 'MaxFunEvals', 2e+6, 'MaxIter', 2e+6);
w = fminunc(f, ones(1, size(phis, 2)), options);

I'm trying to minimize function f, firstly I was using fminsearch but it works long time, that's why now I use fminunc, but there is one problem: I need function gradient for acceleration. Can you help me please construct gradient for function f, coz I always get this warning:

Warning: Gradient must be provided for trust-region algorithm;
  using line-search algorithm instead.

Upvotes: 0

Views: 1628

Answers (1)

Wok
Wok

Reputation: 5303

What you are trying to do is called logistic regression, with a L2-regularization. There are far better ways to solve this problem than a call to a Matlab function, since the log-likelihood function is concave.

You should ask your question in the statistical website, or have a look at my former question there.

Upvotes: 2

Related Questions