你的温柔像羽毛,\textbf{你的温柔像羽毛,}
秘密躺在我怀抱。\textbf{秘密躺在我怀抱。}
你的微笑像拥抱,\textbf{你的微笑像拥抱,}
只有我能看到。\textbf{只有我能看到。}
你的香味在徘徊,\textbf{你的香味在徘徊,}
我舍不得离开。\textbf{我舍不得离开。}
我坚持学单纯的小孩,\textbf{我坚持学单纯的小孩,}
只想看守这份爱。\textbf{只想看守这份爱。}
——畅宝宝的傻逼哥哥\textbf{——畅宝宝的傻逼哥哥}

对于许多优化问题,其目标函数是函数向量的形式

f=[f1(x) f2(x) ⋯ fm(x)]T

\mathbf{f}=[f_1(\mathbf{x})\ f_2(\mathbf{x})\ \cdots\ f_m(\mathbf{x})]^T

其中fp(x),p=1,2,…,mf_p(\mathbf{x}),p=1,2,\ldots,m是x\mathbf{x}的函数且互相独立,要求的解就是同时使fp(x)f_p(\mathbf{x})为零的点x\mathbf{x}。

对于这样的问题,我们可以构造如下的实值函数

F=∑p=1mfp(x)2=fTf

F=\sum_{p=1}^mf_p(\mathbf{x})^2=\mathbf{f}^T\mathbf{f}

如果用多维无约束算法最小化FF,那么相当于用最小二乘最小化函数fp(x)f_p(\mathbf{x})。

一种求解上面问题的方法是高斯-牛顿法,这个方法基于前面介绍的牛顿法。

因为有多个函数fp(x)f_p(\mathbf{x})且每个都依赖于xi,i=1,2,…,nx_i,i=1,2,\ldots,n,那么存在一个梯度矩阵

J=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢∂f1∂x1∂f2∂x1⋮∂fm∂x1∂f1∂x2∂f2∂x2⋮∂fm∂x2⋯⋯⋯∂f1∂xn∂f2∂xn⋮∂fm∂xn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥

\mathbf{J}= \begin{bmatrix} \frac{\partial f_1}{\partial x_1}&\frac{\partial f_1}{\partial x_2}&\cdots&\frac{\partial f_1}{\partial x_n}\\ \frac{\partial f_2}{\partial x_1}&\frac{\partial f_2}{\partial x_2}&\cdots&\frac{\partial f_2}{\partial x_n}\\ \vdots&\vdots&&\vdots\\ \frac{\partial f_m}{\partial x_1}&\frac{\partial f_m}{\partial x_2}&\cdots&\frac{\partial f_m}{\partial x_n} \end{bmatrix}

称为雅可比矩阵,函数的总数mm可以超过变量的总数nn,即雅可比不需要必须为方阵。

FF分别对xix_i求导可得

∂F∂xi=∑i=1m2fp(x)∂fp∂xifor i=1,2,…,n

\frac{\partial F}{\partial x_i}=\sum_{i=1}^m2f_p(\mathbf{x})\frac{\partial f_p}{\partial x_i}\quad\text{for}\ i=1,2,\ldots,n

用矩阵形式表示为

⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢∂F∂x1∂F∂x2⋮∂F∂xn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥=2⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢∂f1∂x1∂f1∂x2⋮∂f1∂xn∂f2∂x1∂f2∂x2⋮∂f2∂xn⋯⋯⋯∂fm∂x1∂fm∂x2⋮∂fm∂xn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢f1(x)f2(x)⋮fm(x)⎤⎦⎥⎥⎥⎥

\begin{bmatrix} \frac{\partial F}{\partial x_1}\\ \frac{\partial F}{\partial x_2}\\ \vdots\\ \frac{\partial F}{\partial x_n}\\ \end{bmatrix}= 2 \begin{bmatrix} \frac{\partial f_1}{\partial x_1}&\frac{\partial f_2}{\partial x_1}&\cdots&\frac{\partial f_m}{\partial x_1}\\ \frac{\partial f_1}{\partial x_2}&\frac{\partial f_2}{\partial x_2}&\cdots&\frac{\partial f_m}{\partial x_2}\\ \vdots&\vdots&&\vdots\\ \frac{\partial f_1}{\partial x_n}&\frac{\partial f_2}{\partial x_n}&\cdots&\frac{\partial f_m}{\partial x_n} \end{bmatrix} \begin{bmatrix} f_1(\mathbf{x})\\ f_2(\mathbf{x})\\ \vdots\\ f_m(\mathbf{x}) \end{bmatrix}

因此FF的梯度(用gF\mathbf{g}_F表示)可以表示为

gF=2JTf

\mathbf{g}_F=2\mathbf{J}^T\mathbf{f}

假设fp(x)∈C2f_p(\mathbf{x})\in C^2,那么

∂2F∂xi∂xj=2∑p=1m∂fp∂xi∂fp∂xj+2∑p=1mfp(x)∂fp∂xi∂xj

\frac{\partial^2F}{\partial x_i\partial x_j}=2\sum_{p=1}^m\frac{\partial f_p}{\partial x_i}\frac{\partial f_p}{\partial x_j}+2\sum_{p=1}^mf_p(\mathbf{x})\frac{\partial f_p}{\partial x_i\partial x_j}

其中i,j=1,2,…,ni,j=1,2,\ldots,n。如果fp(x)f_p(\mathbf{x})的二阶导可以忽略,则我们有

∂2F∂xi∂xj≈2∑p=1m∂fp∂xi∂fp∂xj

\frac{\partial^2F}{\partial x_i\partial x_j}\approx2\sum_{p=1}^m\frac{\partial f_p}{\partial x_i}\frac{\partial f_p}{\partial x_j}

所以FF的海森矩阵(用HF\mathbf{H}_F表示)可以化简为

HF≈2JTJ

\mathbf{H}_F\approx2\mathbf{J}^T\mathbf{J}

因为现在FF的梯度与海森矩阵已知,所以接下来就能用牛顿法求问题的解,类比前面可得

xk+1=xk−αk(2JTJ)−1(2JTf)=xk−αk(JTJ)−1(JTf)

\begin{align*} \mathbf{x}_{k+1} &=\mathbf{x}_k-\alpha_k(2\mathbf{J}^T\mathbf{J})^{-1}(2\mathbf{J}^T\mathbf{f})\\ &=\mathbf{x}_k-\alpha_k(\mathbf{J}^T\mathbf{J})^{-1}(\mathbf{J}^T\mathbf{f}) \end{align*}

其中αk\alpha_k是最小化F(xk+αdk)F(\mathbf{x}_k+\alpha\mathbf{d}_k)的α\alpha值,随着kk不断增大,相邻的线搜索会使FkF_k减小且xk\mathbf{x}_k越来越接近x∗\mathbf{x}^*。当xk\mathbf{x}_k位于x∗\mathbf{x}^*的邻域时,函数fp(xk)f_p(\mathbf{x}_k)可以用泰勒级数的线性近似准确表示,上面的海森矩阵就是FkF_k海森矩阵的准确表示并且该方法会迅速收敛。如果函数fp(x)f_p(\mathbf{x})是线性的,FF是二次的,那么上面的海森矩阵就是海森矩阵,一次迭代就能求出问题的解。

如果HF\mathbf{H}_F是奇异的,那么该方法与牛顿法类似也会失效。然而可以用牛顿法当中提到的修正法来修正。

漫步最优化三十四——高斯-牛顿法相关推荐

  1. 漫步最优化三十五——共轭

    我对你的喜欢像玻璃,\textbf{我对你的喜欢像玻璃,} 透明的能被你看穿.\textbf{透明的能被你看穿.} 我对你的思念像影子,\textbf{我对你的思念像影子,} 傍晚时分就被拉长.\te ...

  2. 漫步最优化二十四——二分搜索

    你喜欢有小情绪,\textbf{你喜欢有小情绪,} 像夜晚的月亮,\textbf{像夜晚的月亮,} 但各有各的精彩.\textbf{但各有各的精彩.} 你情感丰富,\textbf{你情感丰富,} 时常 ...

  3. 漫步最优化三十九——Fletcher-Reeves法

    你的目光像桥梁,\textbf{你的目光像桥梁,} 指引我通往你心路的捷径.\textbf{指引我通往你心路的捷径.} 你的魅力像磁铁,\textbf{你的魅力像磁铁,} 加快我靠向你身边的步伐.\t ...

  4. 漫步最优化三十八——非二次函数最小化

    你独一无二的声音,\textbf{你独一无二的声音,} 穿越了繁杂喧嚣,\textbf{穿越了繁杂喧嚣,} 回荡在我的脑中.\textbf{回荡在我的脑中.} 你独一无二的声音,\textbf{你独一 ...

  5. 漫步最优化三十六——基本共轭方向法

    用我的眼神,\textbf{用我的眼神,} 拍下你的睫毛,\textbf{拍下你的睫毛,} 你微笑的嘴角.\textbf{你微笑的嘴角.} 你的微笑像毒药,\textbf{你的微笑像毒药,} 却洋溢着 ...

  6. 漫步最优化三十二——最速下降法

    爱需要勇气,\textbf{爱需要勇气,} 但是也许是天意,\textbf{但是也许是天意,} 让我爱上你,\textbf{让我爱上你,} 也许轮回里早已注定,\textbf{也许轮回里早已注定,} ...

  7. 漫步最优化三十——非精确线搜索

    说明:今天10.24,祝程序员们节日快乐,呜啦啦啦\textbf{说明:今天10.24,祝程序员们节日快乐,呜啦啦啦} 爱上一个人后,\textbf{爱上一个人后,} 发现自己变得主动了,\textb ...

  8. 漫步数学分析三十四——链式法则

    求导中最重要的一个方法是链式法则,例如为了求(x3+3)6(x^3+3)^6的导数,我们令y=x3+3y=x^3+3,首先求y6y^6的导数,得到6y56y^5,然后乘以x3+3x^3+3的导数得到最 ...

  9. 漫步微积分三十四——体积计算:圆柱壳法

    还有一种去体积的方法,往往它比上篇文章的方法更加方便. 为了理解这种方法,考虑图1左边所示的区域,也就是,第一象限数轴和所示示曲线y=f(x)y=f(x)围成的区域.如果这个区域绕xx轴旋转,那么图中 ...

最新文章

  1. RDKit相关文章汇总
  2. 《编码:隐匿在计算机软硬件背后的语言(美)》读书笔记六
  3. 2020知到python语言应用答案_2020年知到APPPython语言应用第四单元章节测试答案
  4. 前端学习(2262)vue造轮子框架搭建
  5. Django no such table: django_session错误解决办法
  6. 【第8篇】Python爬虫实战-批量删除csdn私信记录
  7. 我的 2018 年终总结
  8. linux后台执行脚本(产生日志和不产生日志)(大神请留言)
  9. Java集合(List Map)
  10. 2011-寒假 linux 学习笔记
  11. C语言程序设计(谭浩强)学习总结
  12. SQL注入风险高,手写 SQL 须谨慎
  13. 简单计算机病毒黑屏,电脑被木马病毒侵袭,黑屏了怎么处理
  14. 移动交互设计:提示语设计总结
  15. 5WHY分析法 学习笔记
  16. 摩羯座 计算机专业,为什么说摩羯座是一个很“作”的星座?
  17. 970万,看美女是如何炼成巨贪的!
  18. 混合模式程序集是针对“v1.1.4322”版的执行时生成的,在没有配置其它信息的情况下,无法在 4.0 执行时中载入该程序集。...
  19. python 提示按任意键退出_详解Python实现按任意键继续/退出的功能 python请按任意键继续 什么意思...
  20. 如何找出zeppelin的登入帳號密碼?

热门文章

  1. 开启sqlplus中执行计划
  2. linux服务器禁止ping和允许ping的方法
  3. PHP加速 eAccelerator配置和使用指南
  4. 学习一下戴戒指的含义[转]
  5. windows2003 iis 配置 php
  6. 面试:对象的生命周期
  7. NTA高性能Flow负载均衡及其应用
  8. 面试精讲之面试考点及大厂真题 - 分布式专栏 18 谈谈怎么理解幂等,接口如何保证幂等
  9. CentOS 7 odoo12 部署
  10. 国外开源的PACS服务器