采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
波波老师,我最近要参加一场面试,面试要求说的熟悉最优化算法和理论基础,请问波波老师什么程度算是熟悉最优化算法,看完您的课程了解基本概念算是熟悉最优化算法基础了嘛?还有波波老师,您能推荐几个面试常考的最优化算法吗?目前只熟悉最小二乘法和梯度下降法
这个课程没有专门讲解最优化理论,所以如果面试方特别强调了最优化理论,而不是机器学习的话,这个课程是不够的。这个课程主要集中在机器学习的算法层面,由于定位是入门课程,甚至很多算法内部涉及的优化问题都省略了。
但其实,最优化本身是比较泛的一个概念,在不同的语境中,可能代表不同的算法类别。整体,可以简单分为:
1. 无约束优化算法
梯度下降法就是典型。除此之外,牛顿法也比较基础。其他无约束优化算法。可以在网上搜索“无约束优化算法”了解更多。
2. 带约束优化算法
通常,整个《运筹学》领域研究的,都是带约束优化算法,比如线性规划,二次规划,动态规划等等。可以在网上搜索“带约束优化算法”了解更多。
另外,和机器学习离得比较近的,是凸优化。最小二乘,线性规划,二次规划等等,都可以放到凸优化的篮子里。如果你的岗位是机器学习的话,对理论基础这么强调的话,可以考虑找本凸优化的材料看看。
3. 智能算法
以回溯法作为基础,进行改造进行搜索,主要包括:分支限界,A*(启发式搜索),遗传算法,模拟退火,等等等等。这一类算法通常都会在人工智能的课本中介绍(注意,是人工智能,不是机器学习)。这个世界最权威的人工智能教材是这本:https://book.douban.com/subject/6730363/
整体,上面列举的 3)和1)2)不是一个类别,但都可以叫做最优化算法。除此之外,其他一些学科,比如博弈论中,也包含求解最优化问题的思路。这就是我最初说,“最优化本身是比较泛的一个概念”的原因。
不过上面我已经列举出了很多经典的优化算法,有兴趣可以研究一下。
加油!:)
非常感谢!
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.4k 19
3.4k 17
2.9k 15
1.6k 15
1.4k 14