五幅图阐述:机器学习的本质是最优化过程

模型三要素

为了将事物和问题转化为最优化问题数学模型我们需要考虑三个要素:因素变量、约束条件和目标函数。我们根据事物和问题先找到影响模型的所有因素变量,然后再根据目的建立一个目标函数用来衡量系统的效果,最后还要找到客观的限制条件并作为模型的约束。

640?wx_fmt=jpeg
公式

如上公式,实际问题的因素变量其实可以看成是一个n维向量,向量的每个元素都是实数。f0(x)是我们构建的目标函数,我们的目标就是最小化该函数(最大化的情况其实也可以转化为最小化的情况)。fi(x)和hj(x)作为约束函数,分不等式约束和等式约束两类,约束函数用来限制可能空间,如果不存在约束则不需要约束函数。

640?wx_fmt=jpeg
目标函数

人工智能的最优化

最优化与人工智能有什么关系呢?可以这样说:人工智能在本质上也是一个最优化过程,对于我们要实现的智能,也是通过学习以求得最优解。这是一个总的大框架,人工智能的问题到最后几乎都是回到最优解问题。

不管是传统的机器学习还是大热的深度学习,亦或是大有潜力的强化学习,它们的基础核心思想都可以提升到最优化问题。

640?wx_fmt=jpeg
最优化

有约束最优化

前面提到过,最优化问题可能存在约束也可能不存在约束,而且有约束的情况比无约束的情况更加复杂。约束又可以分为不等式约束和等式约束两类,约束的作用就是将最优解的可能空间限制在某些区域。

纵使有了约束情况更加复杂,但我们还是有数学工具可以解决的。对于等式约束的情况,可以引入拉格朗日乘子来解决,可以将原来的目标函数和约束函数一起转化为拉格朗日函数。拉格朗日函数与原来的目标函数拥有共同的最优解,所以只要求解拉格朗日函数的最优解即可。对于不等式约束的情况,处理的方法也类似,只是需要额外满足KKT条件。

以下图为例,假设一共有四个约束条件,它们共同的限制区域为四条不同颜色限定的一个区域。假如上半部分为问题最优解的所有可能空间,而经过约束条件限制后则在区域中。

640?wx_fmt=jpeg
有约束

无约束最优化

无约束的情况一般采用梯度下降法来寻找最优解,所谓梯度是一个向量,梯度的方向就是函数在某点增长最快的方向,梯度的模为方向导数的最大值。而梯度下降的方向就是梯度的反方向,简单地看,梯度下降就好比站在一座山的某个位置上,往周围各个方向跨出相同步幅的一步,能够最快下降的方向。

640?wx_fmt=jpeg
无约束

此外,采用梯度下降法寻找最优解时有可能会找到局部最优解,一旦陷入局部最优后则可能无法跳出来继续寻找全局最优。所以局部最优问题也需要考虑,工程上存在专门的方法用于防止掉进局部最优解。但有时局部最优解和全局最优解差别可能不会很大,而寻找全局最优将会花费很高的代价,此时可以不必关注是否为全局最优。

640?wx_fmt=jpeg
局部最优

推荐阅读

找工作十条禁忌,你知道几个? | 原创

原创 | 程序员学英语必备4大起飞点!

640?wx_fmt=jpeg

Python与算法社区

长按二维码,关注我的公众号

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值