深度学习需要多强的数学基础?

  • Post author:
  • Post category:其他


点击上方“


小白学视觉


”,选择加”

星标

“或“

置顶


重磅干货,第一时间送达

链接:https://www.zhihu.com/question/266478287

编辑:深度学习与计算机视觉

声明:仅做学术分享,侵删


作者:EddyLiu

https://www.zhihu.com/question/266478287/answer/587489884

有了基础的《概率/统计》、《线性代数》、《微积分》知识,就可以上手深度学习的算法和实践了。但经过一段时间的工程实践,慢慢觉得大多数时间都用在选模型,调超参,或者是网络结构的排列组合上。深度学习的黑盒特性越来越明显。难道深度学习工程师就当真是数据“炼丹师”吗?

如果,你有了这样的感觉,下面的视频不妨抽时间看看(都需要翻墙):


李宏毅《Machine Learning and having it deep and structured》

不多说,直接看目录吧。

课程地址:http://speech.ee.ntu.edu.tw/~tlkagk/courses_MLDS18.html


《Theory 1 – Why Deep Structure》


Can shallow network fit any function

Potential of Deep

Is Deep better than Shallow


《Theory 2 – Optimization》


When Gradient is Zero

Deep Linear Network

Does Deep Network have Local Minima

Geometry of Loss Surfaces (Conjecture)

Geometry of Loss Surfaces (Empirical)


《Theory 3 – Generalization 》


Capability of Generalization

Indicator of Generalization


Sanjeev Arora《


The mathematics of machine learning and deep learning》

视频地址:https://www.youtube.com/watch?v=r07Sofj_puQ

这是ICM2018的主题演讲,虽然Sanjeev Arora作为普林斯顿计算机科学的教授,但演讲内容深入浅出,并没有涉及大量的数学公式和推导,这里贴一下提纲:

<img src=’https://pic1.zhimg.com/50/v2-d46fb523ed8f3c63757b499e07ba61dd_720w.jpg?source=1940ef5c’ data-caption=” data-size=’normal’ data-rawwidth=’1236′ data-rawheight=’518′ class=’origin_image zh-lightbox-thumb’ width=’1236′ data-original=’https://pic2.zhimg.com/v2-d46fb523ed8f3c63757b499e07ba61dd_r.jpg?source=1940ef5c’/>
c6e24987c65282b78a09b27df8654d6b.jpeg


小结

这两部分的内容是相互呼应的,可以先看李宏毅老师的课程,然后在看Sanjeev Arora教授的分享总结。


作者:润宁    https://www.zhihu.com/question/266478287/answer/313813956

没必要再读个数学Master了,即使打算做机器学习(包括深度学习)理论方面的研究,数学专业本科学的已经完全够了。如果打算做深度学习,建议读个机器学习方向的Master,同时提高自己的编程能力(比如刷LeetCode)。


作者:Cv大法代码酱

https://www.zhihu.com/question/266478287/answer/2479263874





机器学习相比,深度学习的大部分内容对数学要求并没有那么高。

如果是以工程应用和非理论的学术研究为目的,主要也就是线性代数的一些运算,各种损失函数,梯度下降法,反向传播算法。

比起机器学习中的支持向量机,EM算法,概率图模型,概率推断,各种采样算法,要容易的多。

用花书要友好一些,在开头几章就用较大的篇幅介绍了数学知识,基本上覆盖了深度学习的主要数学知识点。包括:


线性代数、


概率论与信息论、


数值计算

大家应该能感觉到,花书的第1部分“应用数学与机器学习基础”和第2部分“深度网络:现代实践”相对容易理解,只要有一些数学基础,都能读懂。问题出在第3部分-深度学习研究:

线性因子模型、


自编码器、


表示学习、


深度学习中的


结构化概率模型、


蒙特卡洛方法、


直面配分函数、


近似推断、


深度生成模型

这几章的数学知识明显增多,而且有很多是大家不熟悉的。又出现了令大家普遍头疼的内容,比如MCMC采样,

EM算法:


近似推断和变分推断和


变分法。

单看描述,很难理解泛函的概念和变分法的原理。

从上面这些内容来看,如果不打好数学基础,想要学好深度学习也是不现实的。

不过,题主毕业后也没有必要进一步去读数学的研究生了,学历不是解决问题的办法,要有学习解决问题的能力。

花书(《深度学习》,人民邮电出版社)分别是目前国内深度学习领域销量最大的教材。大家公认它们的质量是很高,但一个尴尬的现状是:绝大部分人买了这两本书之后并没有怎没看懂,更没有坚持读完!

花书里密集的出现数学概念和公式,对大部分读者来说都是很困难的,尤其是不少数学知识超出了本科“微积分”,“线性代数”,“概率论与数理统计”3门课的范围。见到陌生的数学符号和公式让大家茫然不知所措。

所以我在推荐一个资源–《机器学习的数学》,配合着它去学习,基本上可以扫清你学西瓜书,花书的数学障碍。当你看到数学符号和公式的时候不再会有陌生感,对于这些数学知识如何用到机器学习和深度学习中,也有一个清晰的认识。

这本书用最小的篇幅精准的覆盖了机器学习、深度学习、强化学习所需的核心数学知识。章节结构设计科学合理,不需要的东西,统统不讲,这样可以有效的减小读者的学习成本。

如果你想从事学术研究,也可以打下良好的数学基础。


作者:机器意识

https://www.zhihu.com/question/266478287/answer/1911910013

如果希望做开创性的研究,概率论、线性代数、微积分是不够的,这些数学工具提供不了蓝图,需要去了解一些不那么古老的数学领域,比如近世代数、微分几何、泛函分析等。

打个比方,研究五次方程求根问题,会中学数学是不够的,你需要会伽罗华群和域扩张

工作中很多都是推荐问题,如果了解微分几何,我们可以用纤维丛的概念去抽象这个问题,用户特征空间是基空间,用户特征拼接内容特征合是全空间,但是如何利用微分几何中已知的结论去优化推荐建模,还在探索中,但至少思考的空间更大一些了。



好消息!


小白学视觉知识星球

开始面向外开放啦👇👇👇


3135825ffbdb78b5309fdc870f6c3646.jpeg

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。


下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。


下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。


交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~