AI应用开发基础傻瓜书系列的目录~
写在前面,为啥要出这个系列的教程呢?
总的说来,我们现在有了很多非常厉害的深度学习框架,比如tensorflow,pytorch,paddlepaddle,caffe2等等等等。然而,我们用这些框架在搭建我们自己的深度学习模型的时候,到底做了一些什么样的操作呢?我们试图去阅读框架的源码来理解框架到底帮助我们做了些什么,但是……很难!很难!很难!因为深度学习是需要加速啦,分布式计算啦,所以框架做了很多很多的优化,也让像我们这样的小白难以理解这些框架的源码。所以,为了帮助大家更进一步的了解神经网络模型的具体内容,我们整理了这样一个系列的教程。
对于这份教程的内容,如果没有额外的说明,我们通常使用如下表格的命名约定
符号 | 含义 |
---|---|
X | 输入样本 |
Y | 输入样本的标签 |
Z | 各层运算的结果 |
A | 激活函数结果 |
大写字母 | 矩阵或矢量,如A,W,B |
小写字母 | 变量,标量,如a,w,b |
适用范围
没有各种基础想学习却无从下手哀声叹气的玩家,请按时跟踪最新博客,推导数学公式,跑通代码,并及时提出问题,以求最高疗效;
深度学习小白,有直观的人工智能的认识,强烈的学习欲望和需求,请在博客的基础上配合代码食用,效果更佳;
调参师,训练过模型,调过参数,想了解框架内各层运算过程,给玄学的调参之路添加一点心理保障;
超级高手,提出您宝贵的意见,给广大初学者指出一条明路!
前期准备
环境:
windows(Linux也行),python(最好用3),anaconda(或者自己装numpy之类的),tensorflow(嫌麻烦地请看这里《AI应用开发实战 -
从零开始配置环境》,tools
for AI(按照链接教程走的就不用管这个了)。
自己:
清醒的头脑(困了的同学请自觉泡茶),纸和笔(如果像跟着推公式的话),闹钟(防止久坐按时起来转转),厚厚的衣服(有暖气的同学请忽略)
目录
- Content
- 01.0-神经网络的基本工作原理
- 01.1-基本数学导数公式
- 01.2-Python-Numpy库的点滴
- 02.0-反向传播与梯度下降
- 02.1-线性反向传播
- 02.2-非线性反向传播
- 02.3-梯度下降
- 03.0-损失函数
- 03.1-均方差损失函数
- 03.2-交叉熵损失函数
- 04.0-单入单出单层-单变量线性回归
- 04.1-最小二乘法
- 04.2-梯度下降法
- 04.3-神经网络法
- 04.4-梯度下降的三种形式
- 04.5-实现逻辑非门
- 05.0-多入单出单层-多变量线性回归
- 05.1-正规方程法
- 05.2-神经网络法
- 05.3-样本特征数据的归一化
- 05.4-归一化的后遗症
- 05.5-正确的推理方法
- 05.6-归一化标签值
- 06.0-多入多出单层神经网络-多变量线性分类
- 06.1-二分类原理
- 06.2-线性二分类实现
- 06.3-线性二分类结果可视化
- 06.4-多分类原理
- 06.5-线性多分类实现
- 06.6-线性多分类结果可视化
- 07.0-激活函数
- 07.1-挤压型激活函数
- 07.2-半线性激活函数
- 07.3-用双曲正切函数分类
- 07.4-实现逻辑与门和或门
- 08.0-单入单出双层-万能近似定理
- 08.1-双层拟合网络的原理
- 08.2-双层拟合网络的实现
- 09.0-多入多出双层-双变量非线性分类
- 09.1-实现逻辑异或门
- 09.2-理解二分类的工作原理
- 09.3-非线性多分类
- 09.4-理解多分类的工作原理
- 10.0-调参与优化
- 10.1-权重矩阵初始化
- 10.2-参数调优
- 10.3-搜索最优学习率
- 10.4-梯度下降优化算法
- 10.5-自适应学习率算法
- 11.0-深度学习基础
- 11.1-三层神经网络的实现
- 11.2-验证与测试
- 11.3-梯度检查
- 11.4-手工测试训练效果
- 11.5-搭建深度神经网络框架
- 12.0-卷积神经网络
- 12.1-卷积
- 12.2-池化
- 14.1-神经网络模型概述
- 14.2-Windows模型的部署
- 14.3-Android模型的部署