需要改进牛顿法的一维搜索

发现一个问题,一旦牛顿法的一维搜索失败,函数不降反升。需要修改代码,从避免被吸引到Hessian非正定的局部极值点。

同时发现昨天做的模型模拟的时候有限差商导数步长设太小了,提高导数步长之后(设成0.05),牛顿法收敛速度明显加快(往往第一次迭代把梯度长度从几十万降到1k左右,第二次迭代进一步降到几十,接下来由于浮点误差(参数增量已经到达10^-6左右),在最优点附近震荡)

另外牛顿法求hessian太慢,可考虑bfgs法或强行固定雅可比矩阵的方法

接下来要开始cocos的学习了……




posted @ 2015-02-15 10:26  dydx  阅读(304)  评论(0编辑  收藏  举报