转自:https://blog.csdn.net/qq_39422642/article/details/78816637网络
概要:机器学习
1. 凸优化的定义
1.1 凸优化
1.2 全局最优化与局部最优化函数
2. Least-squares and linear programming(最小二乘与线性规划)
2.1 最小二乘
2.2 线性规划工具
3. 最优化方法的通常结构学习
4. 优化理论在机器学习,深度学习中扮演的角色优化
1.优化的定义spa
1.1 凸优化.net
最优化问题目前在机器学习,数据挖掘等领域应用很是普遍,由于机器学习简单来讲,主要作的就是优化问题,先初始化一下权重参数,而后利用优化方法来优化这个权重,直到准确率再也不是上升,迭代中止,那到底什么是最优化问题呢?3d
它的通常形式为:xml
第一个为优化的目标,即最小化目标函数f(x),而带大于号或小于号的,则是约束条件。咱们但愿找到一个知足约束条件的x∗,使得对于任意的z知足约束条件:
有
而x∗就是咱们所求的最后结果。
至关于你要从上海去北京,你能够选择搭飞机,或者火车,动车,但只给你500块钱,要求你以最快的时间到达,其中到达的时间就是优化的目标,500块钱是限制条件,选择动车,火车,或者什么火车都是x。
知足全部约束条件的点集称为可行域,记为X,又能够写为:
,s.t表示受限于(subject to)。
在优化问题中,应用最普遍的是凸优化问题:
咱们称这样的优化问题为凸优化问题。
用图像来表示就是:
函数上方的点集就是凸集,函数上任意两点的连线,仍然在函数图像上方。
一句话说清楚就是:但愿找到合适的x,使得f0(x)最小。
1.2 全局最优化与局部最优化
全局最优化指的是在知足条件约束的状况下,找到惟一的一个点知足最大值或者最小值。
局部最优化指的是在知足条件约束的状况下,有可能找到一个局部最大/小点,但不是全局最大或者最小的点。
用图像表示为:
2.Least-squares and linear programming(最小二乘与线性规划)
关于这两个问题的更详细的例子会在接下来的文章中说到,此次只是简单的介绍一下咱们的内容。
2.1 最小二乘
最小二乘问题是无约束的优化问题,一般能够理解为测量值与真实值之间的偏差平方和:
这个问题既然没有约束条件,那应该怎么求解呢?咱们的目标是求解出最好的x,观察这个式子能够发现,这个式子必定是大于等于0的,因此这样的最优化问题,咱们能够把它转成线性方程来求解:
AT为A的转置,所以根据矩阵的逆:
能够把上式表示为:
加权的最小二乘问题:
权值均为正数,表明每个 对结果的影响程度。
正则化的最小二乘问题:
ρ是人为的选择的,用来权衡 最小化 的同时,使得
没必要太大的关系。
2.2 线性规划
另外一类重要的优化问题是线性规划,它的目标函数和约束条件都是线性的:
用画图的方法,就是根据条件,画出可行域,而后将目标函数在可行域上移动,直到获得最大值。
3.最优化方法的通常结构
最优化的过程,至关于登山,如图:
但愿找到一个点列xk使得他的函数值是一直减小的,直到到达某一中止条件或者达到最小值的点xk.
用数学上的术语能够表示为:
从这里能够看到不一样的步长和不一样的搜索方向组成了不一样的优化方法,这就是最优化理论中所讨论的。f是xk的函数,搜索方向dk是f在xk是f在xk处的降低方向,即dk知足:
或者
而最优化的基本能够表示为:给定初始点xk
不断迭代,直到xk+1知足某种某种中止条件,即获得最优解xk+1
最优化中的问题中,大部分都是在寻找各类各样的方法肯定步长和方向,使得迭代的速度尽量快,获得的解尽量是最优的解。
4.优化理论在机器学习,深度学习中扮演的角色
凸优化,或者更普遍的说,是最优化理论,在目前的机器学习,数据挖掘,或者是深度学习的神经网络中,都要用到。
他的地位至关于人的脊背同样的,支撑着整个模型的学习过程。由于模型,通俗来讲就像人学习思考同样,咱们本身知道本身该学什么,该怎么学,发现本身的知识学错了以后怎么调整,但计算机可没有人这么聪明,知道学什么,往哪里学。
而最优化,就是告诉模型应该学什么,怎么学的工具。模型学习的每每都是一个映射函数,也就是模型中的参数W,这个参数的好坏,得看答案才能知道,但知道本身错了以后,该往哪里学,怎么学,怎么调整,这就是优化理论在其中扮演的角色。若是没有优化理论,那么模型是不知道该怎么学习的,也就是没有了最优化,模型的学习永远都是停滞不前的,这下你知道最优化理论的重要性了吧。