2016 - 2024

感恩一路有你

设计算法需要考虑什么 机器学习需要哪些数学基础?

浏览量:3627 时间:2023-06-29 09:08:47 作者:采采

机器学习需要哪些数学基础?

对于搞机器学习的同学来说,高等数学、线性代数和概率论与数理统计是最重要的三门的数学基础了。下面我来分别说明这三方面在机器学习中的作用

一. 高等数学高等数学里面的微积分、牛顿迭代、拉格朗日乘数法、泰勒展开等等知识点在机器学习中都有应用到。例如在逻辑回归模型求梯度时候需要求偏导、优化目标使用的牛顿迭代方法、带约束优化问题的SVM需要用到拉格朗日乘数法等等,还有其它高等数学的知识点在机器学习中或多或少都有体现。

二. 线性代数推荐系统使用的SVD分解、张量分解、非负矩阵分解NMF,PCA主成分分析中求特征值、矩阵运算。下面我贴一下之前我用矩阵求导解最小二乘问题的公式推导过程,可以体会一下线性代数的重要程度。

最小二乘的解,可以通过梯度下降迭代或牛顿迭代方法求解,但也可以基于矩阵求导来计算,它的计算更加简洁高效,不需要大量迭代,只需解一个正规方程组。

总之,线性代数对于机器学习来说比高数还重要。

三. 概率论与数理统计概率论与数理统计那就更重要了,比如朴素贝叶斯分类和概率图模型用到的贝叶斯公式,高斯过程、最大熵模型,采样方法,NLP领域的大部分算法都与概率论相关,像基于LDA的主题模型、基于CRF的序列标注模型、分词系统等等。

所以要搞机器学习,高等数学、线性代数和概率论与数理统计都是必不可少的数学基础。

优化算法有哪些?

优化算法有很多,关键是针对不同的优化问题,例如可行解变量的取值(连续还是离散)、目标函数和约束条件的复杂程度(线性还是非线性)等,应用不同的算法。

对于连续和线性等较简单的问题,可以选择一些经典算法,如梯度、Hessian 矩阵、拉格朗日乘数、单纯形法、梯度下降法等。而对于更复杂的问题,则可考虑用一些智能优化算法,如遗传算法和蚁群算法,此外还包括模拟退火、禁忌搜索、粒子群算法等。

机械本科,要不要转行算法领域?

作为一名科技领域的从业者,我来回答一下这个问题。

首先,目前算法岗位的人才培养主要以研究生教育为主,本科生转向算法岗位具有较大的难度,一方面算法的设计、训练和验证需要数据和算力的支撑,另一方面算法设计领域的迭代速度也比较快,初学者在脱离课题的情况下,学习难度还是比较大的,也很难会深入下去。

算法岗位在大数据和人工智能技术的推动下,近些年来得到了广泛的关注,由于科技企业纷纷布局大数据和人工智能领域,所以曾掀起了算法人才的“争夺战”,但是随着人工智能产品目前依然存在落地难问题,所以目前算法岗位的人才招聘下滑趋势明显。

从2018年和2019年这两届研究生的就业情况来看,算法岗位的招聘数量还是比较少的,以往大热的视觉方向和自然语言处理方向的算法岗位也出现了较为明显的下滑,所以不少相关方向的研究生都转向了开发岗位,这是一个比较明显的变化。所以,在这个大背景下,机械专业的本科生要想转向算法领域,就业可能存在比较大的问题。

算法岗位招聘数量下降并不代表大数据和人工智能的研发放缓了脚步,实际上导致这种情况的主要原因是早期不少科技企业在没有做好实际规划的情况下,就招聘了大量的算法人才,而由于算法设计往往需要一个系统的过程,所以算法人才的岗位迭代速度并没有开发岗位那么快,所以未来算法岗位的招聘将很难再出现大面积爆发的情况。

最后,近两年大数据开发岗位的人才需求量还是比较大的,可以重点考虑一下。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!

算法 问题 岗位 领域 人工智能

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。