机器学习中的最优化方法(一) 无约束优化方法*

机器学习中的最优化方法(一) 无约束优化方法*

掌握常用的优化方法对机器学习算法而言是必不可少的,本文只介绍无约束问题的优化,后续会介绍有约束的情况。
主要介绍以下几个内容:

1 优化概述
2 无约束问题的优化方法
3 梯度下降法
4 牛顿法与拟牛顿法
5 梯度下降法与牛顿法的区别与联系

1.优化概述

设函数f是定义在 R n R^n 上的实值函数,最优化问题的数学模型如下
min f(x) (x∈D)
f称作目标函数,D是可行域,x是可行点

局部最优解:设点 x x^* ∈ D.若存在 x x^* 的一个邻域U( x x^* ),使得如下不等式成立
f( x x^* )<= f(x) (任意的x∈D且x属于 x x^* 的邻域U( x x^* ))
则称 x x^* 是问题的一个局部最优解。

凸集和凸函数:
若集合S属于 R n R^n ,满足 αx+(1-α)y∈S 对于任意的x,y属于S,任意的α∈[0,1],则S是
R n R^n 中的凸集
设S属于 R n R^n 是凸集,若函数f满足 f[αx+(1-α)y] <= αf(x) + (1-α)f(y), 对于任意的x,y属于S,任意的α∈[0,1]都成立,则f是S上的凸函数
凸函数有许多有用的性质,感兴趣可以看看。

2 无约束问题的优化方法
设函数f连续可微分,考察如下无约束最优化问题:
min f(x) (式 1)
为了导出无约束问题的解的最优性条件,先引入下降方向的概念
定义:设x,d 属于 R n R^n ,若存在数 α α^* ,使得f(x+αd)< f(x) 对任意的α ∈(0, α α^* )都成立,则称d是函数f在点x处的一个下降方向。
下降方法可以这样理解:当点从x出发,沿着方向d移动时,函数f的值变化呈单调递减的趋势。
在这里插入图片描述

定理2.1.1给出了函数在点x处的下降方向满足的条件,并给出 了确定下降方向的一种方式。在此基础上,可以构造求解无约束问题式1的下降算法。
求解无约束问题(式1)的下降算法的基本思想是从某个初始点 x ( 0 ) x^{(0)} 出发,按照使目标函数值下降的原则构造点列{ x ( k ) x^{(k)} },即点列满足条件f( x ( k + 1 ) x^{(k+1)} ) < f( x ( k ) x^{(k)} ) 算法的最终目标是使得点列{ x ( k ) x^{(k)} }中的某个点或某个极限点是问题的解。
在这里插入图片描述
通过下降算法的步骤可知:算法最重要的是要确定下降方向步长
定理2.1.1 给出了下降方向的确定方法,接下来讨论步长该如何确定
在优化方法里,步长通常是通过线性搜索算法来找到的。

线性搜索:有两种方式即精确线性搜索非精确线性搜索。具体的搜素方法可参看最优化教材 :数值最优化算法与理论(李董辉 董小娇 万中)

下降算法的收敛性和收敛速度(参看最优化教材:数值最优化算法与理论(李董辉 董小娇 万中))

3.梯度下降法:
在这里插入图片描述

4 牛顿法
在这里插入图片描述

5 梯度下降法与牛顿法的区别和联系:
梯度下降法的迭代
x n + 1 = x n u f ( x n ) x_{n+1}=x_n - uf`(x_n)
牛顿下降法:
在这里插入图片描述
牛顿法下降更快,

猜你喜欢

转载自blog.csdn.net/qq_16608563/article/details/82757086