信任域方法的基本思想是,在一个以点为中心的范围内(信任域范围),我们自己建立一个模型函数来近似目标函数,然后利用模型函数来计算极小值。
假设目标函数为:
那么,假设信任域为,在信任域范围内求解目标函数的极小值,就相当于求解:
利用信任域方法来求解目标函数的极小值,也主要分为两步:
1.调整信任域的大小
(一)调整信任域的大小
我们定义:
可以很容易的看出,分子是目标函数的实际减小值,分母是模型函数的减小值。如果说
的值越接近于1,那么就说明模型函数对目标函数拟合的越好。我们可以以此来做为我们调整信任域大小的依据。
我们可以规定一个阈值,如果说
大于这个阈值,并且
已经抵达信任域的边界了,那我们可以考虑增大信任域的范围。
注意:
对信任域大小的调整是一个迭代的过程,并不是一次确认之后就不再修改的。
上面这个式子是不是看起来很熟悉呢,它和牛顿方向看起来很相似。确实,这里
的求法和牛顿方向的求法类似。
是由模型函数对
求导值为0得到的。
对于上面的这种情况,我们就把他叫做整步。
这三个条件的突破点在第二个条件
。它意味着,
为最优解无非两种情况,要么
,此时
等于0,要么
等于0。
此时为整步。
这三个条件提供给我们这样一个信息:当
在信任域范围内最小时,
只有可能有两种情况:
在理解了这三个条件之后,我们可以知道:整步的意思并不是指
,也就是说整步并不意味着
抵达了信任域的边界,它所代表的含义是在信任域内达到了模型函数的极值点。
如有觉得上面有错误,或者有疑问,请评论,我们一起探讨。Thanks for your patience! :)