- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我一直在使用 MATLAB fminunc 函数来解决我的优化问题。我想试试 minFunc 包:
http://www.di.ens.fr/~mschmidt/Software/minFunc.html
使用 fminunc 时,我定义了一个函数 funObj.m,它为我提供目标值和任意点“x”处的梯度。它还接受几个外部输入,比如 {a,b,c},它们是矩阵。所以函数原型(prototype)看起来像:
function [objVal,G] = funObj(x,a,b,c)
我想在 minFunc 包中使用相同的设置。从示例中,我认为这应该可行:
options.Method='lbfgs';
f = @(x)funObj(x,a,b,c);
x = minFunc(f,x_init,options);
但是当我这样调用时,我得到一个错误:
Error using funObj
Too many output arguments.
为我的案例调用 minFunc 的正确方法是什么?
**编辑:好的,这是我想与 minFunc 一起使用的示例函数。假设我想找到 a*(b-x)^2 的最小值,其中 a、b 是标量参数,x 也是标量。 MATLAB 目标函数将如下所示:
function obj = testFunc(x,a,b)
obj = a*(b-x)^2;
使用 fminunc(在 MATLAB 中)最小化它的函数调用很简单:
f = @(x)testFunc(x,a,b);
x = fminunc(f,x_init);
这给了我 x = 10 的最小值。现在,我如何使用 minFunc 做同样的事情?
最佳答案
“请注意,默认情况下,minFunc 假定提供梯度,除非‘numDiff’选项设置为 1(用于前向差分)或 2(用于中心差分)。”
错误是因为函数只返回一个参数。您可以将梯度作为第二个参数返回,也可以打开数值差分。
关于matlab - minFunc 包使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22993088/
我一直在使用 MATLAB fminunc 函数来解决我的优化问题。我想试试 minFunc 包: http://www.di.ens.fr/~mschmidt/Software/minFunc.ht
我正在尝试使用 minFunc 训练单层自动编码器,虽然成本函数似乎有所下降,但启用后,DerivativeCheck 会失败。我使用的代码尽可能接近教科书的值,尽管非常简化。 我使用的损失函数是平方
我有以下 Sparse Filtering MATLAB code我想移植到 F#。我知道 F# Type Provider for MATLAB 但不能在这里使用它,因为它会创建对 MATLAB 的
我是一名优秀的程序员,十分优秀!