04 数学基础 | 不畏浮云遮望眼:最优化方法
王天一

从本质上讲,人工智能的目标就是最优化:在复杂环境与多体交互中做出最优决策。几乎所有的人工智能问题最后都会归结为一个优化问题的求解,因而最优化理论同样是人工智能必备的基础知识。
最优化理论(optimization)研究的问题是判定给定目标函数的最大值(最小值)是否存在,并找到令目标函数取到最大值(最小值)的数值。如果把给定的目标函数看成连绵的山脉,最优化的过程就是判断顶峰的位置并找到到达顶峰路径的过程。
要实现最小化或最大化的函数被称为目标函数(objective function)或评价函数,大多数最优化问题都可以通过使目标函数 最小化解决,最大化问题则可以通过最小化 实现。
实际的最优化算法既可能找到目标函数的全局最小值(global minimum),也可能找到局部极小值(local minimum),两者的区别在于全局最小值比定义域内所有其他点的函数值都小;而局部极小值只是比所有邻近点的函数值都小。
理想情况下,最优化算法的目标是找到全局最小值。但找到全局最优解意味着在全局范围内执行搜索。还是以山峰做例子。全局最小值对应着山脉中最高的顶峰,找到这个顶峰最好的办法是站在更高的位置上,将所有的山峰尽收眼底,再在其中找到最高的一座。
可遗憾的是,目前实用的最优化算法都不具备这样的上帝视角。它们都是站在山脚下,一步一个脚印地寻找着附近的高峰。但受视野的限制,找到的峰值很可能只是方圆十里之内的顶峰,也就是局部极小值。
当目标函数的输入参数较多、解空间较大时,绝大多数实用算法都不能满足全局搜索对计算复杂度的要求,因而只能求出局部极小值。但在人工智能和深度学习的应用场景下,只要目标函数的取值足够小,就可以把这个值当作全局最小值使用,作为对性能和复杂度的折中。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《人工智能基础课》,新⼈⾸单¥59
《人工智能基础课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(17)
- 最新
- 精选
- 斌这些知识的掌握程度要求是什么样的呢?仅仅只是理解?还是需要掌握公式?或者更高?
作者回复: 微积分和线性代数是并行的,概率论需要用到微积分,数理统计又要用到概率论。但它们的依赖关系不太强,其实可以同时学习。 公式是需要掌握的,这个掌握在于理解数学背后的含义,并且能运用到新问题当中。
9 - hockidoggy在我看来,启发式算法具有类似归纳法的思想,更多的是以结果检验为导向,而不是以理论方法决定探索的策略。而搜索式算法往往需要预先选择某个定理公式作为算法实现的指导。 基于上述理解,启发式算法似乎更适合探索周期短,或者容易分割进行阶段性检验的场景。
作者回复: 这个理解有道理,很多情况下启发式算法就是黑盒,通过不断试错逼近最优解。目前看来,深度神经网络其实也是个黑盒。
5 - 听天由己首先,祝老师和大家新年快乐,感谢遇见~2018 年我还有很长的路要走,希望与大家共同成长。 其次,今天的学习有些烧脑,基本思想容易掌握,可是后面关于启发式算法的介绍就有些难了。 从直觉上看,我能够理解启发式算法产生的动机与优势,让机器更快更高效地找到符合生存法则的最优解,而不是在搜索式算法中只是在约束条件下进行计算。因而,我认为启发式算法会更有前景,一方面是具备一定的后验知识,模拟自然界的状态与结果,更有目的性,另一方面提升算法性能与效率。希望随着后面的知识与补充资料能够学习更多的实例,当然如果有类比,我们理解起来就就更方便了。
作者回复: 但启发式算法设计的难度也更大,毕竟生物的进化经历了百万年的进程,其中有太多的未解之谜。
24 - Sdylan【搜索式算法与启发式算法优劣】两者都是为了找到局部最优解,启发式算法以结果为导向,可能会出现基因突变小概率事件,会导致出现不好的结果,反而不如搜索式算法。能否将两者结合做一个组合法?
作者回复: 启发式算法其实也是搜索,是依赖经验的碰运气式的搜索,相比之下,基于梯度的这些方法更像是地毯式搜索,两者相结合的话,就是在搜索效率和解的最优性上做些折中。
2 - Shawn有木有推荐书书籍呀,纯理论的也可以,非数学专业。谢谢
作者回复: 专栏里有一篇专门讲参考书的,可以翻一翻,每一个模块都有相应的书
1 - 图南日晟这篇文章让我想起了运筹学112
- 冲天很好,基本能听懂。对于任何问题,从量化它到优化它,从问题的抽象到问题的具体表达,再到怎么更好去看待这个问题,背后的逻辑就是数学各学科的连接融合,更深层次的逻辑就是怎么认识世界和改造世界。6
- 杨家荣极客时间 打卡第一天(2/21): <<人工智能基础课04>> 最优化方法 独立思考,回答老师问题:在最优化方法中,基于数学定理的搜索式算法和基于仿生学原理的启发式算法,哪一种能够在人工智能的发展中发挥更大的作用呢? 参考诸多文章:最优化算法有三要素:变量(Decision Variable)、约束条件(Constraints)和目标函数(Objective function) 我觉得,最优化问题,基于特定的环境,用特定的处理方法,不一定哪个都能通吃全局; 今日所学:优化算法分类: 精确算法(绝对最优解)和启发式算法(近似算法); 精确算法包括线性规划、动态规划、整数规划和分支定界法等运筹学中的传统算法,其算法计算复杂性一般很大,只适合于求解小规模问题,在工程中往往不实用。 启发式方法指人在解决问题时所采取的一种根据经验规则进行发现的方法。其特点是在解决问题时,利用过去的经验,选择已经行之有效的方法,而不是系统地、以确定的步骤去寻求答案 。 领域搜索算法分为两类:局部搜索法(爬山算法)和指导性搜索法(SA、GA、EP、ES和TS); 群体智能算法:粒子群算法(PSO),蚁群算法(ACO),人工蜂群算法(ABC),人工鱼群算法(AFSA),混洗蛙跳算法(SFLA),烟花算法(FWA),细菌觅食优化(BFO),萤火虫算法(FA);2
- 杨家荣群体智能(全局最优)1
- 上善若水目前只能求局部极值,还是有约束条件的1
收起评论