梯度算法求步长的公式_优化算法综述

本文深入探讨计算机视觉图像配准中的优化算法,重点介绍基础数学知识,包括梯度、黑塞矩阵、雅各比矩阵和泰勒公式。讨论一阶和多阶优化算法,如牛顿法、割线法、共轭梯度法等,并详细解析步长确定的各种方法,如黄金分割法、斐波那契数列和二分法。同时,文章涉及神经网络的优化算法,如反向传播,并概述多种优化策略在解决多元拟合问题中的应用。
摘要由CSDN通过智能技术生成

70a1cc1ce0030acb0fd16956857118fd.png

本文主要对计算机视觉图像配准中搜索空间算法引发讨论,即当图片配准后,讨论下一步怎么办,往哪个方向,多大步长的进行搜索。是一种优化算法

本文将介绍设计到的基本的数学知识、一阶优化算法、针对多阶方程的梯度下降法以及他的改进、牛顿法以及他的改进,神经网络的优化算法等。

本文所有的知识全部来自于B站一位老师的讲解视频以及《优化算法》,现在本人也有许多不理解之处,后续会慢慢修改,接下来的文章我将用最简单的语言解释这复杂的算法

zhimg_answer_editor_file_pdf.svg
最优化导论 第4版.pdf
32.7M
·
百度网盘
哔哩哔哩 ( ゜- ゜)つロ 乾杯~ Bilibili​space.bilibili.com

基础数学知识:基础数学知识

1、梯度

导数相信大家都知道了,作用在一元方程中名字通常就叫斜率,作用在二元方程中,针对X,就是对X的偏导;针对Y,就是对Y的偏导。对X的二次导,对Y的二次导数等等。

梯度:就是对X、Y、Z等偏导的数组。他的现实中的意义就是在多维度的平面中,观察他的下降趋势。

类似于登山,对自己坐标做一个XY坐标轴,梯度就是当前X方向、Y方向的倾斜程度,判断山是否倾斜的一个量化

2、黑塞矩阵

黑塞矩阵是什么?简单来说就是在多维的情况下对梯度的导数,我们可以看出,一个N元方程做一次导数,变成了n维的数组,这个时候,对n维的数组再做一次导数,就变成了NXN的矩阵。这就是黑塞矩阵。

3、雅各比矩阵

雅各比矩阵,他的运算并不是对X、Y等求偏导,而是针对n维的向量函数的

简单理解就是:黑塞矩阵式=雅各比矩阵(一阶偏导数组)

4、泰勒公式

后面我们方式涉及到牛顿法、伪牛顿法等,都是以泰勒公式为核心

泰勒公式简单来说就是,把任意一个方程,都可以写成很多很多项的和

f2e648738423022269c3389d2a0804f0.png
泰勒公式

我们可以看到里面由一次导数、二次导数等等,我们是否可以利用它来进行极值点的判断

Tip:他们有什么用?

众所周知:导数,表示一个曲线的变化趋势,二阶导数表示一阶导数的变化趋势问题,简单的求极值问题中,导数为零表示有极大或者极小值,这个情况下,二阶导数的正负表示函数的凹凸性,进一步判断这个点是极大值还是极小值。

推广到多维中,多个方向->梯度数组;两两配合的二阶导数,变成了一个N*N的矩阵->黑塞矩阵


极值点的条件

1、一阶必要条件:

当在内部时:

要求所有的导数全等于0

3b59e3632fd7dbd591a6770c81b898c6.png

694631a30c794ac0a61650f5692d1423.png
梯度数组全为0

当在边界时:

同样,在可行方向上,全等于零

8a1bae4fc5204ea20bfc57a9ef909f55.png

694631a30c794ac0a61650f5692d1423.png

2、二阶必要条件

如下面公式

94453cf9d68141b565d539c0620039bd.png
引入黑塞矩阵,d为方向向量

此时:d表示方向向量,H表示黑塞矩阵。右面是证明过程。

3、充分必要条件:

上述并不是充分条件。因为黑塞矩阵可能不是正定的(本征值不一定为正数)

何时?:当一阶导数等于零,H大于零


迭代算法的基础知识

首先,我们需要知道什么是迭代算法,迭代算法类似于我们通过条件求解出的结果,变成了下一步的条件,并且以相同的方式进行求解。也就是一个螺旋向上的过程。

优化算法的要素:

起始点的选择:选用所有的极值点(导数为零的点)、尽可能的接近目标、选择

方向的确定就是我们说讨论的优化算法:目标函数【分割】、一阶导数【二分法】、二阶导数【牛顿法等】

步长的确定:其表示每一次迭代的距离。

目标是否能够达成:收敛条件、总能量是否足够小【每一次优化后,是否变化的不明显】、步长是否足够的小【结构是否稳定】、导数是否足够小【变化趋势变化不明显】


优化算法:黄金分割法【一维】【一维无方向,确定步长】

本方法的根本思路就是:二维平面,一元函数,对其进行结果的逼近方法。类似于二分法。他的前提条件是:是一个单峰函数

8993dc48131752e31fb975e91d511af9.png
不断地对极值逼近

我们自己算一个函数值,这个时候就可以建立一元二次函数:

de104d3bccd024acf1151f3dba4f218d.png

如图发现,这个数就是黄金分割比例


优化算法:斐波那契数列【步长】

我们进一步对黄金分割法进行更大的优化
我们每次压缩的比例ρ是变化的,这个时候迭代的关系:

54899f034e0272bf09800c019c5ff7b7.png

那么怎么样选取可变的ρ呢?

数学家告诉我们:斐波那契数列(1、2、3、5、8、13等)

0.618-0.5


优化算法:二分法【步长】

需要一个额外的信息:一阶导数的正负,决定他往哪儿去。

这个时候用二分法,压缩比最大

c78c3bd76011988e7f69b266b50bc9fb.png

bbbf9b9fe46c2570d293029f59610cf5.png

优化算法:牛顿法与割线法【一维】【步长】

注:他是基于二次型目标函数,是找关键点的第一步

步骤:

泰勒展开:

83482c7fc9c2a582b68828af36b751a2.png
泰勒展开式

求:

a85854a0cd57bbb2355dc916de4b4646.png
目标函数

对其求导:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值