社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

一文读懂深度学习中的矩阵微积分

小白学视觉 • 4 年前 • 346 次点击  

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

本文转自:视学算法

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

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

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

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

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

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

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

深度学习所需的矩阵微积分


先来看一眼这篇教程都涵盖了哪些内容:

  • 基本概念

  • 矩阵微积分

  • 神经元激活的梯度

  • 神经网络损失函数的梯度

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

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

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

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

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

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

  • 雅可比式(Jacobian)的推广

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

  • 涉及标量展开的导数

  • 向量和降维

  • 链式法则

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

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

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

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

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

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

传送门


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

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

在我爱计算机视觉公众号后台回复“矩阵微积分”,即可收到PDF下载地址。

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


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

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

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

交流群


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


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/111721
 
346 次点击