机器学习常识 21: 卷积神经网络

摘要: 卷积操作保留体现了空间相关性.

1. 卷积操作

机器学习常识 21: 卷积神经网络_第1张图片
图 1. 卷积操作 Valid 方式.

图 1 下平面标定的 3 × 3 3 \times 3 3×3 区域, 对应于个 3 × 3 3 \times 3 3×3 卷积, 这 9 9 9 个数对应着相乘, 然后相加, 获得了上平面标定的 1 1 1 个小区域的值. 注意这里不是矩阵的乘法.
卷积有三种模式, 可以把图片变大 (full)、变小 (valid)、保持尺寸 (same).
与全连接网络相同, 卷积神经网络 CNN 也需要在加权和之后使用激活函数, 以使其具有非线性的优点.

2. 池化操作

100 × 100 100 \times 100 100×100 的图片, 用 3 × 3 3 \times 3 3×3 卷积核去卷, 第 2 层变成 98 × 98 98 \times 98 98×98 图片, 第 3 层变成 96 × 96 96 \times 96 96×96 图片, 太慢啦! 用池化操作可以把多个点压缩成一个点, 如把 98 × 98 98 \times 98 98×98 图片每 2 × 2 2 \times 2 2×2 个点取最大值 (或平均值, 最小值), 瞬间变成 49 × 49 49 \times 49 49×49 的图片.
是不是很随意的样子? 有效就行.

3. 卷积的优势

  • 共享权值.
    全连接网络的每个权值均只服务于一对节点. 也就是说, 如果第 i i i 层节点有 2 8 = 256 2^8 = 256 28=256 个, 第 i + 1 i + 1 i+1 层节点有 2 7 = 128 2^7 = 128 27=128 个, 则这两层节点之间的权值就有 2 8 × 2 7 = 2 1 5 = 32 , 768 2^8 \times 2^7 = 2^15 = 32,768 28×27=215=32,768 个. 如果有 10 10 10 层, 就几乎是 327 , 680 327,680 327,680 个. 对于 100 × 100 100 \times 100 100×100 的图片, 输入层就有 10 , 000 10,000 10,000 个节点, 更是难于计算. 但使用卷积后, 这 9 9 9 个权值被整张图共享受, 即使图片的深度为 100 100 100 (也就是一张图片用 100 100 100 卷积核分别进行特征提取, 生成 100 100 100 张新图片), 该层涉及的权值也只有 900 900 900 个. 共享权值还保证用同一个方式看图片的不同区域.
  • 感受野.
    每个新的特征 (即图 1 上平面的每个点), 都来自于上一层局部特征. 这样保证空间上相邻的数据才被一起处理. 而全连接无法体现空间相邻性, 因为每个特征都是独立的. 这也是 CNN 对图片有效的主要原因.

你可能感兴趣的:(机器学习常识,机器学习,cnn,深度学习)