老饼讲解-机器学习 机器学习 神经网络 深度学习
逻辑回归与决策树

【原理】牛顿法求极值

作者 : 老饼 发表日期 : 2022-06-26 14:20:05 更新日期 : 2023-11-10 09:13:59
本站原创文章,转载请说明来自《老饼讲解-机器学习》www.bbbdata.com


牛顿法求极值是一种机器学习中常见的方法,

本文介绍什么是牛顿法求极值,包括一维及多维的情况

通过本文可以理解牛顿求极值的相关理论思路与公式推导



  01.牛顿求极值简介   



本节简单介绍牛顿求极值是什么及本文的讲解思路



      牛顿求极值与本文讲解思路      


牛顿法求极值是一种机器学习中常见的方法,
由于牛顿法利用了二阶导信息,它的迭代速度比梯度下降法要更加快,
但同时,由于二阶导信息的计算量较为复杂,牛顿法的使用往往没有梯度法广泛
本文的讲解思路
由牛顿求极值方法的思想来源于牛顿求根法,
因此,本文的讲解思路先从牛顿求根法开始,如下:
 

 





  02.牛顿法求根   



本节讲解牛顿法求根的原理与流程,它是牛顿求极值的前身



   牛顿法求根的思路  


什么是函数求解
函数求根,即求函数 时   x   的取值.😳

牛顿法求根的思路
牛顿法求根的思路如下

(1) 设初始点为                                                                                                   
(2) 在该点附近函数可用 该点切线   近似替代,   
(3) 用该近似函数 (直线    ) 的解   ​  作为新的解.                      
即迭代公式为:   





    牛顿法求根的迭代方法    


牛顿法求根的迭代方法如下:
(1)  设置一个初始解                                                            
(2)按公式  进行迭代,直到满足退出条件
退出条件:已极度近似0,或者达到最大迭代次数 






   03.一维的牛顿法求极值   



本节讲解一维情况下,牛顿法求极值的公式及推导



      牛顿法求极值的思路    


什么是一维函数求极值
一维函数求极值,即求函数取得极值时 x 的取值😳
牛顿法求极值的思路
利用牛顿法求解一维函数极值的思路有两个:
1. 直接转化为牛顿求根问题        
2. 利用牛顿法的思想进行推导     
下面分别讲解两种思路的具体推导过程



   思路1:直接化为牛顿求根法   


求      的极值,即求 
套用牛顿求根法,可得迭代公式:



   思路2:借用牛顿求根法思路   


现在我们要求取   的极值,
借用牛顿求根法思路如下:

(1) 设初始点为  ​                                                                    

(2) 在该点附近函数可用该点的近似二次曲线替代:                    
    

(3) 用该近似函数   ( 二次曲线) 的极小解作为新的解.          
 
即迭代公式为:  
✍️附:近似二次曲线的解推导 
 该曲线的极值点为其一阶导为0处


 得:  
  ,即 





  04.多维牛顿求极值  



本节讲解牛顿法求解多维函数极值问题的公式及推导



   牛顿求极值-多维迭代方法   


多维函数求极值-问题
求      的极值,  其中,为多维向量

牛顿法求解多维函数极值问题的公式及流程
(1)  设置一个初始解                          
(2)  按以下公式迭代,直到满足终止条件
 
其中:
G为梯度(Gradient)(F的一阶偏导)    
H为Hession矩阵(F的二阶偏导矩阵 )



    推导过程    


多维情况下是类似的
  在 的近似二次曲面为:

  

 该曲面极值点为其一阶导为 0 处:

 
 
即得:
 
 
 
一阶导称为梯度(Gradient),记为G     
二阶导称为Hession矩阵,记为H        
 
则简记为:
 
 综上所述,即可得到多维牛顿法的迭代公式: 
 
 
其中,                                         
G为梯度(一阶导)                 
 的Hession矩阵(二阶导)      









 End 








联系老饼