深度学习基本概念

batch size

一个训练集过大(m个样例),需要划分。

  1. 划分为1个:
    • 名称:batch梯度下降
    • batch_size = m
    • 用整个训练集进行梯度下降
  2. 划分为5个:
    • 名称:mini-batch梯度下降
    • batch_size = m/5
  3. 划分为m个:
    • 名称:随机梯度下降
    • batch_size = 1
    • 一次对一个样例数据进行梯度下降

epoch

对整个训练集进行一次梯度下降:即所有的训练样本完成一次forward和backward propagation
对于训练集划分为5个子集:就是对5个子集都执行完。
一般样本要过很多次,多个epoch,直到收敛。

iteration

迭代,表示进行了一次梯度下降,更新了一次网络参数。
iteration=[batch_size]个训练数据forward+backward后更新参数过程

episode

一个状态、动作和回报的序列,以终止状态结束。对于围棋,从头到尾下一盘棋就是一个episode。

下采样

下采样层有两个作用,一是减少计算量,防止过拟合;二是增大感受野,使得后面的卷积核能够学到更多更加全面的信息。
下采样的方式主要有两种:

  1. 采用stride为2的池化层,如Max-pooling和Average-pooling ,目前通常使用Max-pooling,因为他计算简单而且能够更好的保留纹理特征;
  2. 采用stride为2的卷积层,下采样的过程是一个信息损失的过程,而池化层是不可学习的,用stride为2的可学习卷积层来代替pooling可以得到更好的效果,当然同时也增加了一些计算量

卷积

一个尺寸 i n s i z e × i n s i z e \rm in_{size}\times in_{size} insize×insize 的特征图,经过 c o n v s i z e × c o n v s i z e \rm conv_{size}\times conv_{size} convsize×convsize 的卷积层,步幅为 s t r i d e \rm stride stride,填充为 p a d d i n g s i z e \rm padding_{size} paddingsize,计算出输出的特征图尺寸:
o u t s i z e = i n s i z e − c o n v s i z e + 2 × p a d d i n g s i z e s t r i d e + 1 \rm out_{size}= \dfrac{in_{size}-conv_{size}+2\times padding_{size}}{stride}+1 outsize=strideinsizeconvsize+2×paddingsize+1

例:输入4*4,卷积核3*3,stride = 1,padding = 0
                         输出尺寸 = (4-3+0)/1 + 1 = 2

深度学习基本概念_第1张图片

输入5*5,卷积核3*3,stride = 1,padding = 1
                         输出尺寸 = (5-3+2)/1 + 1 = 5

深度学习基本概念_第2张图片

输入5*5,卷积核3*3,stride = 2,padding = 0
                        输出尺寸 = (5-3+0)/2 + 1 = 2

深度学习基本概念_第3张图片

输入6*6,卷积核3*3,stride = 2,padding = 1  
                      输出尺寸 = int(6-3+2)/2 + 1 = 3
注意:这里的padding有一列是没有参与卷积的,因为stride为2没有办法采样到这一列

深度学习基本概念_第4张图片

上采样的原理和常用方式

在卷积神经网络中,由于输入图像通过卷积神经网络CNN提取特征后,输出的尺寸往往会变小,而有时我们需要将图像恢复到原来的尺寸以便进一步的计算,这个使图像由小分辨率映射到大分辨率的操作,叫上采样,它的实现一般有三种方式:

  • 插值, 一般使用的是双线性插值,因为效果最好,虽然计算上比其他插值方式复杂,但是相对于卷积计算可以说不值一提,其他插值方式还有最近邻插值、三线性插值等;
  • 转置卷积又称反卷积(Transpose Conv),通过对输入feature map间隔填充0,通过对输入feature map间隔填充0,再进行标准的卷积计算,可以使用输出feature map尺寸比输入更大;
  • Up-Pooling Max Unpooling Avg Unpooling Max Unpooling 在对称的max pooling位置记录最大值的索引位置,然后在unpooling阶段时将对应的值放置到原先最大值位置,其余补零。

你可能感兴趣的:(机器学习,计算机视觉,深度学习,人工智能,1024程序员节)