卷积神经网络应用
CNNs 用于图像分类
卷积层:检测局部图片的局部特征
池化层:降低维度
MLPs 和 CNNs 都要求图片的尺寸经过处理
- 在做任何操作之前,将所有图片的尺寸变为相同
- 将每一张图片变成方形
- 上面方形的空间维度 (宽度和高度) 应该为 2 的幂 (如 25 等)
彩色图片的深度为 3
黑白图片的深度为 1
CNN 的结构的设计目标:
- 增加深度 (卷积层的作用)
- 减少宽度和高度 (池化层的作用)
卷积层的设置:
- 卷积核通常是方形,大小从 (2, 2) 到 (5, 5)
- 步长通常设置成 1
- 填充通常设为
same
(代表会使用 0 填充)- 卷积核的数目总是随着层数的增加缓慢增加 (特征图深度逐渐增加)
最大池化层的设置:
- 最大池化层通常跟在一个或两个卷积层后面
- 池化尺寸通常设成 2
- 步长通常设为 2
- 使得池化后的特征图的空间维度 (宽度和高度) 是原来的一半
图像增强
模型可以学习图像的不变表示
但是不想让模型的预测因为如下原因改变:
- 物体的大小 – 尺度不变性
- 物体的角度 – 旋转不变性
- 物体的平移 – 平移不变性
现有数据集的基础上,增加多样性数据集:
- 在训练数据集中添加各种背景噪音
- 转换为其他图像:改变颜色,改变形状
- 反转:左右反转,上下反转
- 裁剪:从图像中裁剪一块区域,然后调整其大小
- 随机高宽比 (例如 [3/4, 4/3])
- 随机区域大小 (例如 [8%, 100%])
- 一个随机的位置
- 变色:调整色调,饱和度和亮度 (例如 [0.5, 1.5])
迁移学习
迁移学习是一种机器学习的方法,指的是一个预训练的模型被重新用在另一个任务中