gpt4 book ai didi

machine-learning - Octave 中 fminunc 的输出函数

转载 作者:行者123 更新时间:2023-11-30 08:37:28 25 4
gpt4 key购买 nike

我正在尝试使用 Octave 中的 fminunc() 函数来实现正则化 Logistic 回归算法,以最小化成本函数。正如一般建议,我想将成本函数绘制为 fminunc() 函数迭代的函数。函数调用如下 -

[theta, J, exit_flag] = ...
fminunc(@(t)(costFunctionReg(t, X, y, lambda)), initial_theta, options);

options = optimset('GradObj', 'on', 'MaxIter', 400, 'OutputFcn',@showJ_history);

[showJ-history 是预期的输出函数;我希望我已正确设置 options 参数]。

但是,我在互联网上找不到好的资源来强调如何编写此输出函数,具体来说,fminunc() 传递给它的参数是什么,它返回什么(如果有的话)特别是 fminunc() 所要求的)。

有人可以提及一些有用的链接或帮助我编写输出函数吗?

最佳答案

我想你可以引用the source code 。另请考虑以下示例:

1;
function f = __rosenb (x)
# http://en.wikipedia.org/wiki/Rosenbrock_function
n = length (x);
f = sumsq (1 - x(1:n-1)) + 100 * sumsq (x(2:n) - x(1:n-1).^2);
endfunction

function bstop = showJ_history(x, optv, state)
plot(optv.iter, optv.fval, 'x')
# setting bstop to true stops optimization
bstop = false;
endfunction

opt = optimset('OutputFcn', @showJ_history);
figure()
xlabel("iteration")
ylabel("cost function")
hold on
[x, fval, info, out] = fminunc (@__rosenb, [5, -5], opt);

关于machine-learning - Octave 中 fminunc 的输出函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17598717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com