“共轭梯度”、“BFGS”、和“L-BFGS”更成熟,更快的方法来优化θ可以用来代替梯度下降。我们建议您不要自己编写这些更复杂的算法(除非您是数字计算方面的专家),而是使用库,因为它们已经经过测试并高度优化。octave提供它们。

我们首先需要一个函数来评价下面的两个函数为了输入θ:

 

我们可以编写一个返回这两个函数的函数:

 

然后我们可以用octave的“fminunc()”算法和“optimset()”功能,创建一个对象包含的选项,我们想把“fminunc()”。

 

我们给函数”fminunc()”我们的成本函数,我们的θ值的初始向量,和“选择”的对象,我们事先创建

posted on 2017-07-23 19:20  郑哲  阅读(115)  评论(0编辑  收藏  举报