浅谈卷积神经网络(CNN)
1. 链式反向梯度求导
1.1 链式求导公式
1.2 链式求导公式实例
- 计算顺序:从loss向输入传播
- 导数存储:每层的导数进行存储,用于下一层导数的计算
2. 卷积神经网络 - 卷积层
2.1 卷积层(Concolutional Layer)
2.2 卷积核(Concolutional Kernel)
- 同输入数据进行计算的二维(一维,三维)算子
- 大小(size)用户定义,深度输入数据定义
- 卷积核"矩阵"值:卷积神经网络的参数
- 卷积核初值随机生成,通过反向传播更新
2.3 卷积核组成方式
组成方式:卷积层(conv layer) - 特征图
2.3 卷积层关键参数
- 卷积核的大小
- 奇偶选择:一般是奇数,满足对称性
- 大小选择:根据输入数据,图像特征
- 厚度选择:与输入数据一致
- 覆盖范围:一般覆盖全部输入,特殊情况覆盖局部区域
- 步长(stride):对输入特征图的扫描间隔
- 边界扩充(pad):在卷积计算过程中,为了允许边界上的数据也能作为中间参与卷积计算,将边界假装延伸
- 扩充目的:确保卷积后特征图尺度一致
- 确定方法:卷积核的宽度2i+1,添加pad宽度为i
2.4 正向传播(Forward Propagation)
2.5 反向传播(Back Propagation)
3. 卷积神经网络 - 功能层
3.1 非线性激励
- 卷积是线性运算,增加非线性描述能力
- ReLU函数:
3.2 降维
- 池化层(Pooling Layer)
3.3 归一化
3.4 区域分割
3.5 区域融合
3.6 增维
- 增加图片生成或探测任务中空间信息