搞机器学习/AI有什么必备的数学基础?| 经验之谈+资源大全

简介:
本文来自AI新媒体量子位(QbitAI)

2ca869f1ceeeee7905d505989538f57755ba7f0c

今天是开学第一天!心里只有学习的量子位,发现Hacker News上又有高分话题,而且还跟学习有关!

这次讨论的主题是:

想搞机器学习/AI需要怎样的数学基础,有什么推荐的入门资料/课程?

凡事总须研究,才会明白。看到这个话题,心里只有学习的量子位(×2)仔细看了半夜,这些讨论写着许多字、说了许多话,不过满篇可以分类为三个部分:

  • 中肯建议
  • 教材书籍
  • 视频课程

独学习不如众学习。量子位就把学后感整理如下,一起遨游知识的海洋吧~

24f34379cce421467be2632688ce403e601b0031

中肯建议

这部分内容的主要贡献者包括:mindcrimetlbjulesrocquasreanleecarraherirchansKirinDavewadams19pramalin

首先

多变量微积分、线性代数、概率论、信息论,这几门必须基础扎实。精通图论也挺有用的。

大部分机器学习是对数据的模型拟合。为了拟合模型,需要把一些误差当成真实参数的函数,并对其进行最小化。最小化的算法基于梯度下降,也就是依赖于导数,这就是一种微积分运算。

如果你在做贝叶斯推理,你也需要用到微积分,因为贝叶斯定律将后验分布作为一个积分。

搞机器学习你只需要微积分1和2,微积分3里的旋度和散度、斯托克斯定理之类的,学物理用得上,机器学习不用这些。另外,你可能还需要一些微积分4中的基本函数分析。

(量子位注:此处微积分1234指的美国大学课程体系)

4251ed36cbce32906df0f34933f5daea0124c18b

微积分的本质之一,是反映了事物的变化,对于变化的平顺性提供了一个很好的描述。一个处于最佳状态的系统,在某个确定的点上不再增减变化。

机器学习中的许多问题都是优化问题:在给定一些约束的条件下,怎样选择参数才能让错误最小化?通常这非常困难(NP-hard),但如果你把问题设计为“平滑”,那么就能通过微积分来获得很好的代数解。

多变量微积分也是需要的,在尝试最小化“错误”时,通常会通过每次更改许多、许多参数来实现。这意味着你需要知道如何在高位空间进行平滑变换。

而微积分的中的积分,用来“测量”物体大小。大部分概率是用来描述非常笼统的比例。“这块有多大”的问题类似于“这件事发生的可能性有多大”。解决问题的办法,就是用数量庞大的小块集合在一起,形成一个复杂的整体。

所以从根本上讲,机器学习取决于如何测量一件事(积分)并且知道这件事如何变化(导数)。从某种程度上说,这两件事就是你在微积分中学到的。

a08c8c05106bf3f8bae8a4a4d55039564c4c3d23

我数学背景还不错,但想要搞明白K-L散度时,还得重新研究一下。在机器学习领域,几乎我遇到的信息论问题都是最小化K-L散度,这些看维基百科都能搞懂。你还得能理解具有概率输出的模型,比方生成模型和强化学习等。

如果你要阅读学术期刊,至少下面这些知识点应该懂一点:

  • 统计学核心。你得熟悉统计学家如何处理数据,这常常用到
  • 微积分。你不需要成为解题达人,但得明白多个变量进行微分和积分的过程
  • 线性代数。一切的基础,比统计还重要
  • 数值计算的方法。我不断的查看资料,以搞懂大家为什么那样做
  • 计算理论以及相关研究。熟悉这些能让你发现错误,找到改进的方向
  • 我的下一个挑战是非参数统计。许多研究者跟我说这一领域会得到很多收获,许多方法能极大的改进机器学习

还有人觉得,机器学习中最需要数学的地方,莫过于理解反向传播时。反向传播几乎都是偏导数/链式法则什么的。还有很多机器学习涉及一些微积分的凸优化。

但是

我们得分清“应用”和“研究”之间的区别。并不是每个人都在做最前沿的研究。有人下载一个DL4J,看几个教程,就能搭建一个基本的网络来解决问题,这个过程中也创造了价值。

机器学习虽然还没来到完全不需要关心底层细节的时间节点,但我们确实已经可以合法获取很多现成的工具,而不需要动手推导反向传播的方程式。

讲真,大多数情况下在工作中应用已知的方法,并不要求搞懂背后的数学,只需要了解基本的统计数据和概率论,能解释结果就好了。所以,如果你只是简单的使用别人做好的工具来解决问题,真的不需要什么数学背景。

一个本科生就能学会漂亮的解决问题,而不需要深入研究底层的数学细节,就权当做是工程问题的最佳实践。大多数实际工作中,并不用演算低级别的架构或公式,通常都是从已经选好的框架中,把想用的东西跳出来而已。

另一方面,如果你面临的问题不能用现成的方法搞定,这时候数学背景就派上用场了。如果你想在框架里应用一个全新或者小众的架构,就得搞明白之后才能写出来。

在应用和研究机器学习技术之间,有很大的不同。总的来说,单纯在应用这一端,并没有太多严格的数学背景要求。

e370b008039219ba4306a50ca6ea5a46b60e4aa8

需要多少数学,取决于你要在机器学习/AI领域扎多深。

如果只是应付工作,那你走运了,现成就能用的东西原来越多了。例如DataBot、H2O、Scikit-learn、Keras(加TensorFlow)……可能唯一必备的数学技能就是统计学。无论你选择了哪种解决方案,采用了何种自动调整和选择的算法,都得需要一些统计数据才能说明你的模型有效果。

想进一步提升自己,还可以花更多时间学习特征提取、数据工程,好好研究一下上面提到的几个工具包,特别是其中的模型。

如果你想研发新的技术和算法,天空才是你的极限,不过还是得统计数据。

那些已经大量使用的机器学习和AI框架,其实只是顶着一个数学的帽子,你完全可以把它们当成可靠的黑盒系统来用,没必要理解模型的生成过程和设置。很多工具可以告诉你哪些算法对你的数据最有意义,甚至能帮你找出最有效的那种。

虽然这说起来令人沮丧,但真的已经不是非得有博士学位才能干这行了。

不过,即便你能干的事情跟博士科学家差不多,也不意味着有人会雇你。雇主还是会看重数学、计算机科学或相关领域的博士学位。但这些可能更多出于其他方面因素的考量,而不是搞机器学习/AI的必要条件。

了解数学能让你更好的理解工作,减少愚蠢犯错的可能。

6be9d070291ec2290ffe91d0f622439759d9e438

上面讲到的工具,建议试试完全自动化的黑盒机器学习管道,比方说TPOT。尽早上手,以及可以推荐给你的产品经理朋友。

TPOT即Tree-based Pipeline Optimization Tool,这是一个基于遗传算法自动选择、优化机器学习模型和参数的工具。通常模型有非常大量的参数需要调整和优化,这类工具可以节省找到最优参数组合的时间。

不过,许多机器学习从业人员对这类自动化机器学习管道非常警惕。如果没有理解这些工具的基本统计/数学假设,可能会遇到很多坑;而这种一刀切的解决方案,也可能会给出误导性的结果。另外使用这类工具,也让解释原因和结果的工作变得更加困难,一个“黑盒子”很难得到价值认同。

  • TPOT的GitHub地址:

https://github.com/rhiever/tpot

到底应该怎么开始学习?

  • 建议一:有两种方法来学习机器学习/AI:1)阅读所有资料,然后开始解决问题 2)先开始解决问题,然后根据需要学习相关的数学知识。第二种方法更好。
  • 建议二:首先在Coursera上看吴恩达机器学习和深度学习的课程。选择你感兴趣的领域和问题。接着阅读机器学习/AI在这一领域如何应用的论文。然后动手重现你已经搞明白并且感兴趣的论文。
  • 建议三:这个学习计划我觉得非常有用,很好的列出了所需课程和时间框架,地址在此:

https://www.analyticsvidhya.com/blog/2017/01/the-most-comprehensive-data-science-learning-plan-for-2017/

教材书籍

接下来开始分享资源。先从书籍讲起。

这部分内容的主要贡献者包括:CuriouslyCrdudekulkgwgkcharlescearlChadyWady等。

4a560f029f99b7b0aa148af0285ac5b9c21b97df

我认为最好从David MacKay的《Information Theory, Inference and Learning Algorithms(信息论、推理与学习算法)》入手,内容可能有点老旧了,但仍然是这个领域最平易近人的书籍之一。

  • 在线版本:

http://www.inference.org.uk/itprnn/book.pdf

另一本推荐的旧书是E. T. Jaynes的《Probability Theory: the Logic of Science(概率论:科学的逻辑)》。

  • 在线版本

http://www.med.mcgill.ca/epidemiology/hanley/bios601/GaussianModel/JaynesProbabilityTheory.pdf

以及Tibshirani的《Elements of Statistical Learning(统计学习元素)》。

  • 在线版本:

https://web.stanford.edu/~hastie/ElemStatLearn/

Andrew Gelman的《Bayesian Data Analysis(贝叶斯数据分析)》也很好。

  • 在线版本:

http://hbanaszak.mjr.uw.edu.pl/TempTxt/(Chapman%20&%20Hall_CRC%20Texts%20in%20Statistical%20Science)%20Andrew%20Gelman,%20John%20B.%20Carlin,%20Hal%20S.%20Stern,%20David%20B.%20Dunson,%20Aki%20Vehtari,%20Donald%20B.%20Rubin-Bayesian%20Data%20Analysis-Chapman%20and%20Hall_CRC%20(2014).pdf

8562b27ed79b0fd1312e62c8032c81130b5ef70c

想了解这个领域最新的额进展,建议阅读Ian GoodfellowYoshua Bengio的《Deep Learning》。

  • 在线版本:

http://www.deeplearningbook.org/

推荐一本我本科时候用的统计学教材:《Probability & Statistics for Engineers & Scientists》。

  • 在线版本:

https://www.amazon.com/Probability-Statistics-Engineers-Scientists-MyStatLab/dp/0134468910

再推荐一些网上免费的数学参考书

  • 在线数学教材汇总

http://people.math.gatech.edu/~cain/textbooks/onlinebooks.html

  • 免费数学教材

http://www.openculture.com/free-math-textbooks

  • 开放教材图书馆

https://open.umn.edu/opentextbooks/SearchResults.aspx?subjectAreaId=7

  • MIT在线教材

https://ocw.mit.edu/courses/online-textbooks/#mathematics

  • 美国数学研究所认证教材

https://aimath.org/textbooks/approved-textbooks/

AI是一个非常广阔的领域,每个细分领域都有不同的数学背景要求。掌握所有的数学知识是不可能的,所以你得想清楚对什么感兴趣。

4ad3a5bcd3eef7c86a2eea54418fe42c42848e87

同时推荐一本Russell和Norvig的好书,覆盖了人工智能中很多不同的主题。无论你本科学到了什么,这本书都可以提供了一深入了解AI的良好起点。

这本书是《Artificial Intelligence: A Modern Approach》,中文版名称《人工智能:一种现代方法》。

  • 英文版地址在此:

http://aima.cs.berkeley.edu/

另外附送一份Michael I. Jordan之前开出的书单。

  • 地址在此:

https://news.ycombinator.com/item?id=1055389

上述在线内容都是合法的。合法的。合法的。

395501743fface54d9ad6a54d6b1dda7d6a7624b

视频课程

再来就是视频课程汇总。主要贡献者包括:72menaleecarrahermindcrimerdrey等。

YouTube以及Videolectures.net上有很多高质量的数学视频教学内容。

  • 之前提到的David MacKay,合辑在此:

http://videolectures.net/david_mackay/

  • Leonard教授合辑在此:

https://www.youtube.com/user/professorleonard57

9b3bcd6373d8a18d45263aca14f0f9dd3086c40d

  • Gilbert Strang合辑在此:

https://www.youtube.com/results?search_query=gilbert+strang

  • 3Blue1Brown合辑在此:

https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw

  • 还有画风清奇的Siraj Raval讲人工智能中的数学:

https://www.youtube.com/watch?v=xRJCOz3AfYY&list=PL2-dafEMk2A7mu0bSksCGMJEmeddU_H4D

4122142da49ef35f3060ad78d31dc20067443f39

我的建议是,先快速看一遍Jeremy Howard的讲座,这里面有很多机器学习/AI的应用案例,而且只需要一点点的数学背景就能看懂。

  • 地址在此:

http://course.fast.ai/

接下来可以去Coursera上吴恩达的新课程,比原来的课程更容易接近,但仍然会有一些方程式让你不知所措,不过你肯定能实现出来。地址在此:

  • 老课程《机器学习》:

https://www.coursera.org/learn/machine-learning

  • 新课程《深度学习》:

https://www.coursera.org/specializations/deep-learning

53fff769f32796c02f914cac4fc8c4ea749e342d

再推荐一个统计学课程,德州大学奥斯汀分校统计和数据科学系Michael J. Mahometa主讲的《数据分析基础》。

  • 地址在此:

https://courses.edx.org/courses/course-v1:UTAustinX+UT.7.11x+3T2016/course/

小建议,在这个课程中讲师使用了R语言,我觉得还是Python更好。

另外,Coursera上有一系列的统计课程还不错。不过贝叶斯统计这门课有点难,建议买一本书或者补充点其他课外资料。我推荐这本书:《Bayes’ Rule: A Tutorial Introduction to Bayesian Analysis》

  • 亚马逊有售:

https://www.amazon.com/Bayes-Rule-Tutorial-Introduction-Bayesian/dp/0956372848

OMT

想搞机器学习/AI但数学不好的孩子,或者还有?快把这篇发给他。

救救孩子……

二零一七年九月。

54ae21a685eea53c9283126b18128ed6618e71cd

传送门:肉身前往Hacker News观摩,请点击左下角“阅读原文”。

课外阅读

量子位在知乎上也发现一个质量很高的讨论。主要是王乃岩谈“如何判断一个面试者的深度学习水平?”,贾扬清等也参与了回答……

在量子位微信公众号(QbitAI)对话界面,回复:“naiyan”这六个字母,即刻前往观摩。

如果你有更好的推荐,欢迎留言,让更多朋友看到~

本文作者:雷刚 
原文发布时间: 2017-09-01
相关文章
|
2月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
655 109
|
1月前
|
人工智能 缓存 并行计算
用数学重构 AI的设想:流形注意力 + 自然梯度优化的最小可行落地
本文提出两个数学驱动的AI模块:流形感知注意力(D-Attention)与自然梯度优化器(NGD-Opt)。前者基于热核偏置,在局部邻域引入流形结构,降低计算开销;后者在黎曼流形上进行二阶优化,仅对线性层低频更新前置条件。二者均提供可复现代码与验证路径,兼顾性能与工程可行性,助力几何感知的模型设计与训练。
230 1
|
2月前
|
存储 消息中间件 人工智能
【03】AI辅助编程完整的安卓二次商业实战-本地构建运行并且调试-二次开发改注册登陆按钮颜色以及整体资源结构熟悉-优雅草伊凡
【03】AI辅助编程完整的安卓二次商业实战-本地构建运行并且调试-二次开发改注册登陆按钮颜色以及整体资源结构熟悉-优雅草伊凡
118 3
|
2月前
|
机器学习/深度学习 数据采集 人工智能
PyTorch学习实战:AI从数学基础到模型优化全流程精解
本文系统讲解人工智能、机器学习与深度学习的层级关系,涵盖PyTorch环境配置、张量操作、数据预处理、神经网络基础及模型训练全流程,结合数学原理与代码实践,深入浅出地介绍激活函数、反向传播等核心概念,助力快速入门深度学习。
186 1
|
5月前
|
存储 人工智能 云计算
挑战杯专属支持资源|阿里云-AI大模型算力及实验资源丨云工开物
阿里云发起的“云工开物”高校支持计划,助力AI时代人才培养与科研创新。为“挑战杯”参赛选手提供专属算力资源、AI模型平台及学习训练资源,包括300元免费算力券、百炼大模型服务、PAI-ArtLab设计平台等,帮助学生快速掌握AI技能并构建优秀作品,推动产学研融合发展。访问链接领取资源:https://university.aliyun.com/action/tiaozhanbei。
|
2月前
|
机器学习/深度学习 人工智能 算法
当AI提示词遇见精密算法:TimeGuessr如何用数学魔法打造文化游戏新体验
TimeGuessr融合AI与历史文化,首创时间与空间双维度评分体系,结合分段惩罚、Haversine距离计算与加权算法,辅以连击、速度与完美奖励机制,实现公平且富挑战性的游戏体验。
|
4月前
|
机器学习/深度学习 人工智能 监控
AI 基础知识从0.1到0.2——用“房价预测”入门机器学习全流程
本系列文章深入讲解了从Seq2Seq、RNN到Transformer,再到GPT模型的关键技术原理与实现细节,帮助读者全面掌握Transformer及其在NLP中的应用。同时,通过一个房价预测的完整案例,介绍了算法工程师如何利用数据训练模型并解决实际问题,涵盖需求分析、数据收集、模型训练与部署等全流程。文章适合初学者和开发者学习AI基础与实战技能。
627 25
AI 基础知识从0.1到0.2——用“房价预测”入门机器学习全流程
“燕缘 · 滴水湖”大学生AI+国际创业大赛 ——算力资源领取说明
本次大赛为每位参赛学生提供300元阿里云算力资源,通过赛事官网链接领取。领取流程包括:点击专属页面、扫码登录阿里云、完成代金券领取,并在“我的权益-可用券”中查看领取状态。注意代金券使用期限和额度,避免超额使用产生欠费。若已领取过,可直接使用。

热门文章

最新文章

下一篇
oss云网关配置