最优化理论为什么那么重要? 机器学习可以认为是给定了一些初始化的参数,然后通过训练,不断优化这些参数,优化参数的过程就是学习的过程,而如何去优化,寻找到最佳的参数,得到最好的模型,就是最优化发挥作用的过程。
前文讲到最优化的数学表达为:
在优化问题中,最常见的就是凸优化。因为它具备非常优秀的特性,且在大神们的研究下,很多优化问题转换成了凸优化问题。
凸优化具备的特性有:
a、凸优化问题中局部最优解为全局最优解
b、凸优化理论中的拉格朗日对偶为凸优化算法的最优性与有效性提供了保证
那什么是凸优化问题? 先了解一下凸集和凸函数。
凸集:若集合C内任意两点间的线段均在集合C内,则称集合C为凸集
只有第一个是 凸集 。
凸函数:函数f上任意两点的连线”在“函数f这两点之间函数f图像”的上面的话,这样的函数就是凸函数。
如果一个函数是凸函数,则该函数的图像上方区域一定是凸集。反过来也成立,即:如果一个函数图像的上方区域是凸集,则该函数是凸函数。
由此可知,为什么凸函数的局部最优为全局最优。
一些常见的凸函数
最优化的过程通常大家比喻成爬山(下山的过程),目标就是以最快的速度达到山底。
最优化的基本可以表示为:给定初始点
xk
xk
xk
确定搜索方向
dk
,即按照一定规则画方法确定f在
xk
处的下降方向
确定步长因子
αk
,使得目标函数有一定的下降
令
xk+1
=
xk
+
αk
dk
xk+1=xk+αkdk
不断迭代,直到
xk+1
满足某种某种停止条件,即得到最优解
xk+1
最优化中的问题中,大部分都是在寻找各种各样的方法确定步长和方向,使得迭代的速度尽可能快,得到的解尽可能是最优的解。
最优化,为学习指明了方向和‘进度’,往哪个方向进行学习调整,这是优化理论在机器学习中扮演的角色。如果没有优化理论,机器的学习还得在黑暗中进行很长时间的毫无目的的摸索。
领取专属 10元无门槛券
私享最新 技术干货