程序员学习机器学习算法需要具备哪些数学知识?

pexels-photo-360591.jpeg

AIUST.Com按:时下,随着人工智能、机器人、大数据热度上升;业界需要的人才缺口也非常大,不少高校也于近年开设了此类专业。但培养需要一定的周期。业界的需求,亦从不少程序员中招聘。但不少程序员只具备高中的数学知识(即初等数学),亦有不少程序员曾经修过高等数学等知识,但毕业离校多年,早已忘了。于是,时下相关的培训班也开设了起来。

但是,如果在职程序员转行做机器学习相关算法工作,需要具备哪些数学知识。总体来说,数学知识越多越好,但是,基本上最少应具备工科三大基础课:高等数学(或微积分)、线性代数(或高等代数)、概率论与数理统计。但很显然明显不够。

工科如电子、自动化、通讯专业,一般在这三大基础课后最少加修一门复变函数与积分变换;计算机类专业最少加修离散数学(以数理逻辑、集合论、图论内容为主),有的院校将离散数学拆成3门以上的数学课。

于是我们得了结论,工学生出身的程序员,应最少具备五门数学课程知识:高等数学、线性代数、概率论与数理统计、复变函数与积分变换、离散数学。如果将离散数学拆分成数理逻辑、集合论、图论、组合数学的话就是8门。

但做算法设计,这些知识应是够了,但不能固步自封,应接着深入学习。一般应在上述课程后边工作边加修随机过程、矩阵分析、解析几何、模糊数学、运筹学与最优化方法、数值分析、抽象代数、数论、傅里叶分析、泛函分析、常微分方程、偏微分方程、点集拓扑与代数拓扑这些数学知识,并不仅仅是学懂,应研究如何应用。

做为一名程序员,如果认真的学习以上罗列的数学课程,相信在10年时间里,在人工智能、机器学习这些领域能成为优秀的专家。因为学习这些数学课程的过程中,是不为断的提升自我的数学素养及严谨思维的过程。在未来,人工智能及脑机交互领域将是一个非常大的市场,只有掌握了广泛及深入的数学知识,方能在这些行业发挥更大的作用。

本文经NOW168.Com自动排版过滤系统处理!


免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考;文章版权归原作者所有!本站作为信息内容发布平台,页面展示内容的目的在于传播更多信息;本站不提供金融投资服务,阁下应知本站所提供的内容不能做为操作依据。投资者应谨防ICO、变相ICO!市场有风险,投资需谨慎!如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。


为您推荐