【导读】IanGoodfellow、YoshuaBengio、AaronCourville的《深度学习》花书被奉为AI圣经。但是要掌握这本书却并非易事。MingchaoZhu同学基于数学推导和产生原理重新描述了书中的概念,并用Python (numpy 库为主) 复现了书本内容,在Github上开放,欢迎大家查看学习。

Deep Learning

深度学习》是深度学习领域唯一的综合性图书,全称也叫做深度学习 AI圣经(Deep Learning),由三位全球知名专家IanGoodfellow、YoshuaBengio、AaronCourville编著,全书囊括了数学及相关概念的背景知识,包括线性代数、概率论、信息论、数值优化以及机器学习中的相关内容。同时,它还介绍了工业界中实践者用到的深度学习技术,包括深度前馈网络、正则化、优化算法、卷积网络、序列建模和实践方法等,并且调研了诸如自然语言处理、语音识别、计算机视觉、在线推荐系统、生物信息学以及视频游戏方面的应用。最后,深度学习全书还提供了一些研究方向,涵盖的理论主题包括线性因子模型、自编码器、表示学习、结构化概率模型、蒙特卡罗方法、配分函数、近似推断以及深度生成模型,适用于相关专业的大学生或研究生使用。

可以下载《深度学习》的中文版pdf和英文版pdf直接阅读。


《深度学习》可以说是深度学习与人工智能的入门宝典,许多算法爱好者、机器学习培训班、互联网企业的面试,很多都参考这本书。但本书晦涩,加上官方没有提供代码实现,因此某些地方较难理解。本站基于数学推导和产生原理重新描述了书中的概念,并用Python (numpy 库为主) 复现了书本内容(推导过程和代码实现均见pdf文件,重要部分的实现代码也放入code文件夹中)。

然而我水平有限,但我真诚地希望这项工作可以帮助到更多人学习深度学习算法。我需要大家的建议和帮助。如果你在阅读中遇到有误或解释不清的地方,希望可以汇总你的建议,提issue (最好不要一个一个地提)。如果你也想加入这项工作书写中或有其他问题,可以联系我的邮箱:deityrayleigh@gmail.com。

写的过程中参考了较多网上优秀的工作,所有参考资源保存在了reference.txt文件中。

| 中文章节 | 英文章节 | 下载
(含推导与代码实现) | | ------------ | ------------ | ------------ | | 第一章 前言 | 1 Introduction | | | 第二章 线性代数 | 2 Linear Algebra | pdf | | 第三章 概率与信息论 | 3 Probability and Information Theory | pdf | | 第四章 数值计算 | 4 Numerical Computation | pdf | | 第五章 机器学习基础 | 5 Machine Learning Basics | pdf | | 第六章 深度前馈网络 | 6 Deep Feedforward Networks | pdf | | 第七章 深度学习中的正则化 | 7 Regularization for Deep Learning | pdf | | 第八章 深度模型中的优化 | 8 Optimization for Training Deep Models | pdf | | 第九章 卷积网络 | 9 Convolutional Networks | pdf | | 第十章 序列建模:循环和递归网络 | 10 Sequence Modeling: Recurrent and Recursive Nets | | | 第十一章 实践方法论 | 11 Practical Methodology | | | 第十二章 应用 | 12 Applications | | | 第十三章 线性因子模型 | 13 Linear Factor Models | | | 第十四章 自编码器 | 14 Autoencoders | | | 第十五章 表示学习 | 15 Representation Learning | | | 第十六章 深度学习中的结构化概率模型 | 16 Structured Probabilistic Models for Deep Learning | | | 第十七章 蒙特卡罗方法 | 17 Monte Carlo Methods | | | 第十八章 直面配分函数 | 18 Confronting the Partition Function | | | 第十九章 近似推断 | 19 Approximate Inference | | | 第二十章 深度生成模型 | 20 Deep Generative Models | |

尚未上传的章节会在后续陆续上传。

成为VIP会员查看完整内容
0
192

相关内容

机器学习的一个分支,它基于试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的一系列算法。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等

书名: 深度学习入门 基于Python的理论与实现

内容介绍: 本书是深度学习真正意义上的入门书,深入浅出地剖析了深度学习的原理和相关技术。书中使用Python3,尽量不依赖外部库或工具,从基本的数学知识出发,带领读者从零创建一个经典的深度学习网络,使读者在此过程中逐步理解深度学习。书中不仅介绍了深度学习和神经网络的概念、特征等基础知识,对误差反向传播法、卷积神经网络等也有深入讲解,此外还介绍了深度学习相关的实用技巧,自动驾驶、图像生成、强化学习等方面的应用,以及为什么加深层可以提高识别精度等疑难的问题。 本书适合深度学习初学者阅读,也可作为高校教材使用。

目录:

  • 第1章 Python入门
    • 1.1 Python是什么
    • 1.2 Python的安装
    • 1.2.1 Python版本
    • 1.2.2 使用的外部库
    • 1.2.3 Anaconda发行版
    • 1.3 Python解释器
    • 1.3.1 算术计算
    • 1.3.2 数据类型
    • 1.3.3 变量
    • 1.3.4 列表
    • 1.3.5 字典
    • 1.3.6 布尔型
    • 1.3.7 if
    • 1.3.8 for
    • 1.3.9 函数
    • 1.4 Python脚本文件
    • 1.4.1 保存为文件
    • 1.4.2 类
    • 1.5 NumPy
    • 1.5.1 导入NumPy
    • 1.5.2 生成NumPy数组
    • 1.5.3 NumPy
    • 1.5.4 NumPy的N维数组
    • 1.5.5 广播
    • 1.5.6 访问元素
    • 1.6 Matplotlib
    • 1.6.1 绘制简单图形
    • 1.6.2 pyplot
    • 1.6.3 显示图像
    • 1.7 小结
  • 第2章
    • 2.1 感知机是什么
    • 2.2 简单逻辑电路
    • 2.2.1 与门
    • 2.2.2 与非门和或门
    • 2.3 感知机的实现
    • 2.3.1 简单的实现
    • 2.3.2 导入权重和偏置
    • 2.3.3 使用权重和偏置的实现
    • 2.4 感知机的局限性
    • 2.4.1 异或门
    • 2.4.2 线性和非线性
    • 2.5 多层感知机
    • 2.5.1 已有门电路的组合
    • 2.5.2 异或门的实现
    • 2.6 从与非门到计算机
    • 2.7 小结
  • 第3章
    • 3.1 从感知机到神经网络
    • 3.1.1 神经网络的例子
    • 3.1.2 复习感知机
    • 3.1.3 激活函数登场
    • 3.2 激活函数
    • 3.2.1 sigmoid
    • 3.2.2 阶跃函数的实现
    • 3.2.3 阶跃函数的图形
    • 3.2.4 sigmoid
    • 3.2.5 sigmoid
    • 3.2.6 非线性函数
    • 3.2.7 ReLU函数
    • 3.3 多维数组的运算
    • 3.3.1 多维数组
    • 3.3.2 矩阵乘法
    • 3.3.3 神经网络的内积
    • 3.4 3
    • 3.4.1 符号确认
    • 3.4.2 各层间信号传递的实现
    • 3.4.3 代码实现小结
    • 3.5 输出层的设计
    • 3.5.1 恒等函数和softmax
    • 3.5.2 实现softmax
    • 3.5.3 softmax
    • 3.5.4 输出层的神经元数量
    • 3.6 手写数字识别
    • 3.6.1 MNIST数据集
    • 3.6.2 神经网络的推理处理
    • 3.6.3 批处理
    • 3.7 小结
  • 第4章
    • 4.1 从数据中学习
    • 4.1.1 数据驱动
    • 4.1.2 训练数据和测试数据
    • 4.2 损失函数
    • 4.2.1 均方误差
    • 4.2.2 交叉熵误差
    • 4.2.3 mini-batch
    • 4.2.4 mini-batch
    • 4.2.5 为何要设定损失函数
    • 4.3 数值微分
    • 4.3.1 导数
    • 4.3.2 数值微分的例子
    • 4.3.3 偏导数
    • 4.4 梯度
    • 4.4.1 梯度法
    • 4.4.2 神经网络的梯度
    • 4.5 学习算法的实现
    • 4.5.1 2
    • 4.5.2 mini-batch
    • 4.5.3 基于测试数据的评价
    • 4.6 小结
  • 第5章
    • 5.1 计算图
    • 5.1.1 用计算图求解
    • 5.1.2 局部计算
    • 5.1.3 为何用计算图解题
    • 5.2 链式法则
    • 5.2.1 计算图的反向传播
    • 5.2.2 什么是链式法则
    • 5.2.3 链式法则和计算图
    • 5.3 反向传播
    • 5.3.1 加法节点的反向传播
    • 5.3.2 乘法节点的反向传播
    • 5.3.3 苹果的例子
    • 5.4 简单层的实现
    • 5.4.1 乘法层的实现
    • 5.4.2 加法层的实现
    • 5.5 激活函数层的实现
    • 5.5.1 ReLU层
    • 5.5.2 Sigmoid
    • 5.6 Affine/Softmax层的实现
    • 5.6.1 Affine层
    • 5.6.2 批版本的Affine层
    • 5.6.3 Softmax-with-Loss
    • 5.7 误差反向传播法的实现
    • 5.7.1 神经网络学习的全貌图
    • 5.7.2 对应误差反向传播法的神经网络的实现
    • 5.7.3 误差反向传播法的梯度确认
    • 5.7.4 使用误差反向传播法的学习
    • 5.8 小结
  • 第6章
    • 6.1 参数的更新
    • 6.1.1 探险家的故事
    • 6.1.2 SGD
    • 6.1.3 SGD的缺点
    • 6.1.4 Momentum
    • 6.1.5 AdaGrad
    • 6.1.6 Adam
    • 6.1.7 使用哪种更新方法呢
    • 6.1.8 基于MNIST数据集的更新方法的比较
    • 6.2 权重的初始值
    • 6.2.1 可以将权重初始值设为0
    • 6.2.2 隐藏层的激活值的分布
    • 6.2.3 ReLU的权重初始值
    • 6.2.4 基于MNIST数据集的权重初始值的比较
    • 6.3 Batch
    • 6.3.1 Batch
    • 6.3.2 Batch
    • 6.4 正则化
    • 6.4.1 过拟合
    • 6.4.2 权值衰减
    • 6.4.3 Dropout
    • 6.5 超参数的验证
    • 6.5.1 验证数据
    • 6.5.2 超参数的最优化
    • 6.5.3 超参数最优化的实现
    • 6.6 小结
  • 第7章
    • 7.1 整体结构
    • 7.2 卷积层
    • 7.2.1 全连接层存在的问题
    • 7.2.2 卷积运算
    • 7.2.3 填充
    • 7.2.4 步幅
    • 7.2.5 3
    • 7.2.6 结合方块思考
    • 7.2.7 批处理
    • 7.3 池化层
    • 7.4 卷积层和池化层的实现
    • 7.4.1 4
    • 7.4.2 基于im2col
    • 7.4.3 卷积层的实现
    • 7.4.4 池化层的实现
    • 7.5 CNN的实现
    • 7.6 CNN的可视化
    • 7.6.1 第
    • 7.6.2 基于分层结构的信息提取
    • 7.7 具有代表性的CNN
    • 7.7.1 LeNet
    • 7.7.2 AlexNet
    • 7.8 小结
  • 第8章
    • 8.1 加深网络
    • 8.1.1 向更深的网络出发
    • 8.1.2 进一步提高识别精度
    • 8.1.3 加深层的动机
    • 8.2 深度学习的小历史
    • 8.2.1 ImageNet
    • 8.2.2 VGG
    • 8.2.3 GoogLeNet
    • 8.2.4 ResNet
    • 8.3 深度学习的高速化
    • 8.3.1 需要努力解决的问题
    • 8.3.2 基于GPU的高速化
    • 8.3.3 分布式学习
    • 8.3.4 运算精度的位数缩减
    • 8.4 深度学习的应用案例
    • 8.4.1 物体检测
    • 8.4.2 图像分割
    • 8.4.3 图像标题的生成
    • 8.5 深度学习的未来
    • 8.5.1 图像风格变换
    • 8.5.2 图像的生成
    • 8.5.3 自动驾驶
    • 8.5.4 Deep
    • 8.6 小结
  • 附录A Softmax-with-Loss 层的计算图 267
  • A.1 正向传播 268
  • A.2 反向传播 270
  • A.3 小结
  • 参考文献
成为VIP会员查看完整内容
《深度学习入门:基于Python的理论与实现》高清中文版.pdf
0
81

本文是由Terence Parr 和Jeremy Howard撰写的《深度学习的矩阵运算》论文。我们知道,深度学习是基于线性代数和微积分的,反向传播也离不开求导和矩阵运算,因此了解深度学习内部的数学原理也至关重要。

1.介绍

2.向量演算和偏导简介

3.矩阵演算

  • 雅可比定律

  • 多元微分

  • 向量

  • 链式法则

4.损失函数求导

5.矩阵演算参考

6.符号

7.资源链接

本文从简单函数求导到多元函数求偏导,再到矩阵的微积分运算,逐层深入,引导我们探索深度学习背后的学习规则与数学基础。本文试图解释理解深度神经网络的训练所需要的所有矩阵演算,本文适用于对神经网络基础有所了解的人,不过即使没有数学基础的同学也不要紧,作者提供了相关数学知识链接。在文末作者提供的参考部分,总结了这里讨论的所有关键矩阵演算规则和术语。

成为VIP会员查看完整内容
0
118
小贴士
相关VIP内容
专知会员服务
123+阅读 · 2020年6月10日
专知会员服务
197+阅读 · 2020年3月23日
【电子书】深度学习入门 基于Python的理论与实现
专知会员服务
81+阅读 · 2020年3月21日
【干货书】机器学习Python实战教程,366页pdf
专知会员服务
185+阅读 · 2020年3月17日
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
62+阅读 · 2020年3月15日
专知会员服务
93+阅读 · 2020年3月4日
相关论文
Meta-Learning with Implicit Gradients
Aravind Rajeswaran,Chelsea Finn,Sham Kakade,Sergey Levine
7+阅读 · 2019年9月10日
A Simple BERT-Based Approach for Lexical Simplification
Jipeng Qiang,Yun Li,Yi Zhu,Yunhao Yuan
5+阅读 · 2019年7月16日
Image Captioning based on Deep Reinforcement Learning
Haichao Shi,Peng Li,Bo Wang,Zhenyu Wang
7+阅读 · 2018年9月13日
Simultaneous Localization and Mapping (SLAM) using RTAB-MAP
Sagarnil Das
4+阅读 · 2018年9月9日
Antoine J. -P. Tixier
10+阅读 · 2018年8月30日
Ryo Takahashi,Ran Tian,Kentaro Inui
3+阅读 · 2018年5月24日
Saeid Asgari Taghanaki,Yefeng Zheng,S. Kevin Zhou,Bogdan Georgescu,Puneet Sharma,Daguang Xu,Dorin Comaniciu,Ghassan Hamarneh
8+阅读 · 2018年5月22日
Sounak Dey,Anjan Dutta,Suman K. Ghosh,Ernest Valveny,Josep Lladós,Umapada Pal
5+阅读 · 2018年4月28日
Jonas Gehring,Michael Auli,David Grangier,Denis Yarats,Yann N. Dauphin
3+阅读 · 2017年7月25日
Rajesh Doriya,Paresh Sao,Vinit Payal,Vibhav Anand,Pavan Chakraborty
4+阅读 · 2017年1月29日
Top