@[toc]
1.1欢迎
1.2 什么是神经网络
最简单的神经网络
1.3 用神经网络进行监督学习
CNN:适合于图像数据
RNN:适合(一维)时间序列数据
structured data结构化数据与unstructured data非结构化数据
1.4 为什么深度学习会兴起?
data(big data)
computer(CPU、GPU)
algorithms
好的算法的提升和计算机性能的改进都是为了计算速度的提升,使得程序可以在可接受的时间内完成。而大数据更大的作用在于得到结果的准确性的提升。
activation function激活函数
sigmoid函数:有部分区域梯度趋于0,参数变化会很慢,机器学习会很慢
ReLU函数:rectified linear unit 修正线性单元,可以解决上述问题
idea、code和experiment的循环
2.1 二分分类
logistic回归:二分分类算法
图片的矩阵表示:RGB通道 参数
forward propagation正向传播
backward propagation反向传播
2.2 logistic回归
二分分类问题,所以希望输出值是介于0到1之间的值
2.3 logistic回归损失函数 logistic regression cost function
loss function/error function:
损失函数应用于单个样本,成本函数是所有样本的总和。
表示的是1到m项损失函数的平均
2.4 梯度下降法 gradient descent
2.5 导数
2.6 更多导数的例子
2.7计算图 computation graph
2.8 使用计算图求导
链式求导法则
2.9 logistic回归中的梯度下降法
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PmoTCKpQ-1625930799955)(../AppData/Roaming/Typora/typora-user-images/image-20210709112838403.png)]2.10 m个样本的梯度下降
在这里插入图片描述2.11 向量化 vectorization
2.12 向量化的更多例子
python的numpy库
np.dot() np.exp() np.log() np.zeros() np.abs() np.maximum()
2.13 向量化logistic回归
numpy的广播函数 broadcasting
import numpy as np
z = np.dot(w.T,X)+b #向量加实数b,b会自动扩展成一个一维向量
2.14 向量化logistic回归的梯度输出
2.15 python中的广播
2.16 python numpy向量的说明
a = np.random.randn(5)
a
array([-1.29892536, 0.63302139, 1.49281709, 0.90560309, 1.3649011 ])
a,shape
(5,)
a.reshape(5,1)
array([[-1.29892536],
[ 0.63302139],
[ 1.49281709],
[ 0.90560309],
[ 1.3649011 ]])
b = np.random.randn(5,1)
b
array([[-0.50337928],
[ 0.34076192],
[ 0.16021539],
[ 0.4894436 ],
[ 0.4527971 ]])
b.shape
(5,1)
2.17 Jupyter_ipython的快速指南
shift+Enter 运行一段代码
cell run cell把文本语言变正常
2.18 (选修)logistic损失函数的解释
最小化损失函数就是最大化
最大似然估计maximum likelihood function
3.1神经网络概览
3.2 神经网络表示
一般标准的话不把输入层input layer看做标准的层
所以一个三层神经网络一般叫做标准的双层神经网络
3.3 计算神经网络的输出
[] : 方括号代表同一样本的不同层layer
():圆括号代表不同样本的同一层layer
在这里插入图片描述 在这里插入图片描述在这里插入图片描述
3.4 多个样本的向量化
3.5 向量化实现的解释
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ycUwobxo-1625930799961)(../AppData/Roaming/Typora/typora-user-images/image-20210709225154841.png)]3.6激活函数
tanh激活函数几乎总比sigma函数表现更好,使得数据的平均值接近0,有标准化的效果。
但是输出层要求值为0或1,所以输出层建议用sigma函数。
选择激活函数的经验法则
sigma函数:二元分类,输出值要求是0或者1(输出层)
ReLU函数:其他单元都用
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i3C8Xbi5-1625930799962)(../AppData/Roaming/Typora/typora-user-images/image-20210709230639393.png)]3.7 为什么需要激活函数?
可以理解成激活函数实际上是把输出值控制在一定的范围内。
3.8 激活函数的导数
sigma函数
tanh函数
ReLU函数
3.9 神经网络的梯度下降法
3.10 直观理解反向传播
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ObeON5ay-1625930799963)(../AppData/Roaming/Typora/typora-user-images/image-20210710153249133.png)]3.11 随机初始化
W初始化不能选择0,b可以
初始化选择的参数应该小一些,不然会减慢学习速度。
4.1 深层神经网络
4.2 前向和反向传播
4.3 深层网络中的前向传播
4.4 核对矩阵的维数
样本中各个量的维度
4.5 为什么使用深层表示
4.6 搭建深层网络神经块
4.7 参数VS超参数
W、b:参数
影响W、b的参数叫做超参数
网友评论