一文读懂深度学习中的矩阵微积分,fast.ai创始人&ANTLR之父出品 | 免费资源-阿里云开发者社区

开发者社区> 量子位> 正文

一文读懂深度学习中的矩阵微积分,fast.ai创始人&ANTLR之父出品 | 免费资源

简介: 想要真正了解深度神经网络是如何训练的,免不了从矩阵微积分说起。 虽然网络上已经有不少关于多元微积分和线性代数的在线资料,但它们通常都被视作两门独立的课程,资料相对孤立,也相对晦涩。 不过,先别打退堂鼓,来自旧金山大学的Terence Parr教授说:矩阵微积分真的没有那么难。 这位ANTLR之父和fast.ai创始人Jeremy Howard一起推出了一篇免费教程,旨在帮你快速入门深度学习中的矩阵微积分。简明,易懂。

想要真正了解深度神经网络是如何训练的,免不了从矩阵微积分说起。

虽然网络上已经有不少关于多元微积分和线性代数的在线资料,但它们通常都被视作两门独立的课程,资料相对孤立,也相对晦涩。

不过,先别打退堂鼓,来自旧金山大学的Terence Parr教授说:矩阵微积分真的没有那么难。

这位ANTLR之父和fast.ai创始人Jeremy Howard一起推出了一篇免费教程,旨在帮你快速入门深度学习中的矩阵微积分。简明,易懂。

DeepMind研究科学家Andrew Trask评价说:

如果你想跳过不相干的内容,一文看尽深度学习中所需的数学知识,那么就是这份资源没错了。

image.png

只需一点关于微积分和神经网络的基础知识,就能单刀直入,开始以下的学习啦。

深度学习所需的矩阵微积分
先来看一眼这篇教程都涵盖了哪些内容:

基本概念

矩阵微积分

神经元激活的梯度

神经网络损失函数的梯度

image.png

文章开篇,先介绍了一下人工神经元。

image.png

神经网络中单个计算单元的激活函数,通常使用权重向量w与输入向量x的点积来计算。

神经网络由许多这样的单位组成。它们被组织成称为层的神经元集合。上一层单元的激活成为下一层单元的输入,最后一层中一个或多个单元的激活称为网络输出。

训练神经元意味着对权重w和偏差b的选择。我们的目标是逐步调整w和b,使总损失函数在所有输入x上都保持较小。

image.png

导数规则、向量计算、偏导数……复习完需要掌握的先导知识,文章开始进入重要规则的推导,这些规则涉及矢量偏导数的计算,是神经网络训练的基础。

比如在矩阵微积分这一节中,涵盖:

雅可比式(Jacobian)的推广

向量element-wise二元算子的导数

涉及标量展开的导数

向量和降维

链式法则

image.png

每一小节中,都有简洁明了的示例,由浅入深,层层递进。

如果你在学习的过程中遇到不理解的地方,不要着急,耐心返回上一节阅读,重新演算一下文中的示例,或许就能理顺思路。

如果实在是卡住了无法推进,你还可以在fast.ai论坛(链接见文末)的“Theory”分类下提问,向Parr和Howard本人求解答。

而在文章的末尾,作者附上了所有数学符号的对照表。

image.png

以及重点概念的详细补充信息。

image.png

值得注意的是,Parr和Howard也强调了,与其他学术方法不同,他们强烈建议先学会如何训练和使用神经网络,然后再深入了解背后的基础数学。因为有了实践经验,数学会变得刚容易理解。

传送门
网页版:
https://explained.ai/matrix-calculus/index.html

PDF:
https://arxiv.org/abs/1802.01528

fast.ai论坛:
http://forums.fast.ai/

文章来源:量子位
作者: 公众号 QbitAI

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

官方博客
官网链接