深度学习入门笔记(鱼书)
TigaFeng
这个作者很懒,什么都没留下…
展开
-
第7章 卷积神经网络
7.1 整体结构全连接和CNN的对比7.2 卷积层7.2.1 全连接层存在的问题MNIST数据集例子中,图片是2828的,但是训练/预测时,将2828的数据排列成一列, 以784个数据的形式输入到神经网络。忽略了数据的“形状”图像通常是高,长,通道方向上的三位形状。这个形状中包含了重要的空间信息。而全连接神经网络忽视了这个信息。而卷积层可以保持形状不变。当输入数据是图像时,卷积层会以3维 数据的形式接收输入数据,并同样以3维数据的形式输出至下一层。因此, 在CNN中,可以(有可能)正确理解图原创 2020-10-27 10:20:44 · 696 阅读 · 0 评论 -
第6章 与学习相关的技巧
6.1 参数的更新神经网络的学习的目的是找到使损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为最优化。SGD使用参数的梯度,沿梯度方向更新参数,并重复这个步骤多次,从而逐渐靠近最优参数。数学公式:W←W−η∂L∂WW \leftarrow W-\eta\frac{\partial L}{\partial W}W←W−η∂W∂L代码:class SGD: def __init__(self, lr = 0.01): self.lr = lr def updat原创 2020-10-26 21:15:16 · 162 阅读 · 0 评论 -
第五章 误差反向传播
5.1.2 局部计算局部:这个词的意思是“与自己相关的某个小范围”。局部计算是指,无论全局发生了什么,都能只根据与自己相关的信息输出接下来的结果。5.5 激活函数层的实现5.5.1 ReLU层Relu公式:y={x(x>0)y(x≤0) y=\left\{\begin{aligned}x & & (x > 0) \\y & & (x \leq 0) \\\end{aligned}\right.y={xy(x>0)(x≤0)R原创 2020-10-24 16:37:50 · 376 阅读 · 0 评论 -
第四章 神经网络的学习
4.1 从数据中学习从数据中学习,是指可以由数据自动决定权重参数的值。4.2.3 mini-batch学习为什么使用mini-batch:当数据很多很多时,一次性计算全部数据的损失函数是很漫长且不现实的。因此,从中挑选出一部分,作为全部数据的“近似”。4.4 梯度使用定义计算梯度。def numerical_gradient(f, x): h = 1e-4 grad = np.zeros_like(x) for idx in range(x.size): tmp_val =原创 2020-10-23 19:19:17 · 242 阅读 · 0 评论 -
第三章 神经网络
3.3 np.shape返回值问题定义一个数组,使用np.shape查看数组的shape时,有时会返回例如(4,)这样的。 import numpy as np A = np.array([1,2,3,4]) >> A.shape >(4,)这里A.shape返回的是一个元组,这是因为一维数组的情况下也要返回和多维数组的情况一致的结果,所以才返回一个不完全的元组(4,)。3.5 实现softmax函数时的注意事项softmax函数的缺陷:softmax进行指数运算时,随原创 2020-10-23 14:45:15 · 314 阅读 · 0 评论