请教matlab non-linear optimization的问题 (转载)# LeisureTime - 读书听歌看电影
D*6
1 楼
【 以下文字转载自 Statistics 讨论区 】
发信人: Doha2006 (花猫), 信区: Statistics
标 题: 请教matlab non-linear optimization的问题
发信站: BBS 未名空间站 (Fri Jan 7 23:39:25 2011, 美东)
我需要用一个non-linear optimization function来estimate一个model,近似于logit
model,用maximum likelihood estimation。
如果用maxlik,其实这是一个min函数,就是名字叫max,从这个网站下载的,http://www.spatial-econometrics.com/
结果有点奇怪,不是指我的model参数奇怪,而是maxlik输出的结果如下:
CONVERGENCE CRITERIA MET: Change in Objective Function
iteration function value dfunc
0 2301.06004609 1000.00000000
iteration function value dfunc
1 1966.10277862 0.17036610
iteration function value dfunc
2 1965.50818039 0.00030252
iteration function value dfunc
3 1967.81330103 -0.00117141
1.如果用结果result.f查看,就给最后一个iteration的function value,可是明明是
iteration 2的function value才是最小的啊。不止这一个,我随便运行了很多maxlik
,它总是给最后一个iteration作为optimal,可是,有的时候很明显第一个iteration
的value是optimum啊。我糊涂了。是不是我解读错了输出结果?
2.我明白dfunc value接近0是极值,因为那时一阶导数吧。那么如果存在一个情况是前
面的iteration的function value很小,可是导数还很大,说明在往上走,那么即使后
来走到了一个极值,也该回头比比看看是不是最小吧,算法不会这么差吧,一点不回头?
如有解答,十分感谢!
发信人: Doha2006 (花猫), 信区: Statistics
标 题: 请教matlab non-linear optimization的问题
发信站: BBS 未名空间站 (Fri Jan 7 23:39:25 2011, 美东)
我需要用一个non-linear optimization function来estimate一个model,近似于logit
model,用maximum likelihood estimation。
如果用maxlik,其实这是一个min函数,就是名字叫max,从这个网站下载的,http://www.spatial-econometrics.com/
结果有点奇怪,不是指我的model参数奇怪,而是maxlik输出的结果如下:
CONVERGENCE CRITERIA MET: Change in Objective Function
iteration function value dfunc
0 2301.06004609 1000.00000000
iteration function value dfunc
1 1966.10277862 0.17036610
iteration function value dfunc
2 1965.50818039 0.00030252
iteration function value dfunc
3 1967.81330103 -0.00117141
1.如果用结果result.f查看,就给最后一个iteration的function value,可是明明是
iteration 2的function value才是最小的啊。不止这一个,我随便运行了很多maxlik
,它总是给最后一个iteration作为optimal,可是,有的时候很明显第一个iteration
的value是optimum啊。我糊涂了。是不是我解读错了输出结果?
2.我明白dfunc value接近0是极值,因为那时一阶导数吧。那么如果存在一个情况是前
面的iteration的function value很小,可是导数还很大,说明在往上走,那么即使后
来走到了一个极值,也该回头比比看看是不是最小吧,算法不会这么差吧,一点不回头?
如有解答,十分感谢!