G検定 · LESSON 4

深度学习的要素技术16%(当サイト設定) · 7 个主题

学习卷积层、归一化层、池化层与跳跃连接、循环层、Attention、自编码器和数据增强。

4.1全连接层・卷积层

全连接层・卷积层(核、步幅、填充、特征图、Dilated Convolution、Depthwise Separable Convolution)

概念

全连接层把所有输入与所有输出相连。卷积层在图像上移动小型滤波器(核),提取局部特征生成特征图。步幅是滤波器移动的幅度,填充是在图像四周补值(多为 0)以调整输出大小。输出尺寸为(输入+2×填充−核)÷步幅+1。Dilated Convolution 拉开滤波器的间隔以观察更大范围。Depthwise Separable Convolution 分为按通道的卷积与 1×1 卷积,以减少计算量(MobileNet)。

原理、步骤

  1. 能够使用输出尺寸的计算公式
  2. 理解卷积比全连接参数更少的原因(权重共享)
  3. 轻量化时使用 Depthwise Separable Convolution

工作中的示例

对 32×32 的图像用 3×3 核、步幅 1、填充 1 进行卷积,输出为 32×32。

易混淆点、考试注意事项

小测验

Q1. 与全连接层相比,卷积层更适合图像的原因,最合适的是哪项?

  1. 先把图像重排为一列向量再计算,因此无需考虑纵横的位置关系
  2. 只进行没有权重的固定计算,因此完全不需要训练时间
  3. 把所有输入与所有输出相连,因此从第一层起就一定能学习图像中远处位置的关系
  4. 用共享权重的滤波器提取局部特征,参数量少
查看答案和解析

正确答案:D 用共享权重的滤波器提取局部特征,参数量少

卷积通过权重共享和局部连接,以较少的参数处理空间结构。全连接层会把图像展平,丢失位置关系。

Q2. 对 32×32 的输入图像用 5×5 滤波器、步幅 1、填充 0 进行卷积时,输出特征图的大小是哪项?

  1. 27×27
  2. 28×28
  3. 32×32
  4. 30×30
查看答案和解析

正确答案:B 28×28

(32−5+2×0)/1+1=28。把填充设为 2 可以保持 32×32。

参考链接

4.2归一化层

归一化层(批归一化、层归一化、实例归一化、组归一化)

概念

归一化层整理层输出的分布,使训练稳定、加速。批归一化在小批量内按特征归一化,层归一化在 1 条数据内对全部特征归一化(用于 Transformer)。实例归一化按 1 条数据、每个通道归一化(用于风格迁移),组归一化把通道分组进行归一化,在小批量下也稳定。

原理、步骤

  1. 区分归一化的单位(批量、数据、通道、组)
  2. 批量较小时考虑层归一化或组归一化
  3. Transformer 使用层归一化

工作中的示例

在因 GPU 内存限制批量大小只能为 2 的目标检测训练中,把批归一化换成组归一化,使训练稳定。

易混淆点、考试注意事项

小测验

Q1. 正在选择归一化层的方法。在风格迁移中,希望按 1 张图像的每个通道归一化,去除各图像对比度的差异。最合适的是哪项?

  1. 组归一化
  2. 实例归一化
  3. 层归一化
  4. 批归一化
查看答案和解析

正确答案:B 实例归一化

实例归一化常用于风格迁移。(判断要点:按 1 条数据、1 个通道)

Q2. 正在选择归一化层的方法。在目标检测的训练中,GPU 内存不足,小批量只能设为 2 条,因此希望把 1 条数据内的通道分成若干组进行归一化。最合适的是哪项?

  1. 实例归一化
  2. 批归一化
  3. 组归一化
  4. 层归一化
查看答案和解析

正确答案:C 组归一化

组归一化不依赖批量大小,介于层归一化与实例归一化之间。(判断要点:小批量也能用的通道分组单位)

参考链接

4.3池化层・跳跃连接

池化层(最大池化、全局平均池化)・跳跃连接(ResNet)

概念

池化层缩小特征图,提高对微小位置偏移的稳健性。最大池化取区域的最大值,平均池化取平均值,没有需要学习的参数。全局平均池化取各通道整个特征图的平均值,代替全连接层以减少参数。跳跃连接是跳过层把输入加到输出上的连接,由 ResNet 引入,使非常深的网络的训练成为可能。

原理、步骤

  1. 确认池化没有参数
  2. 用全局平均池化减少全连接层的参数
  3. 在深层网络中用跳跃连接防止梯度消失

工作中的示例

把图像分类最后的大型全连接层换成全局平均池化,减少参数并抑制过拟合。

易混淆点、考试注意事项

小测验

Q1. CNN 中,取小区域的最大值或平均值来缩小特征图、增强对小位移鲁棒性的层是哪项?

  1. 全连接层
  2. 卷积层
  3. 批归一化层
  4. 池化层
查看答案和解析

正确答案:D 池化层

最大池化、平均池化没有需要学习的参数。第一个选项是跳跃连接。【其他选项】卷积层用滤波器提取特征(学习权重)。全连接层连接所有单元。批归一化层使输入分布一致。

Q2. 使用全局平均池化(GAP)的优点,最合适的是哪项?

  1. 把每个特征图平均为 1 个值,可替代全连接层并减少参数
  2. 把特征图放大回原图大小,可以对每个像素分类
  3. 只保留特征图中的最大值,可以记录图像中最显著部分的位置
  4. 调整输入图像的平均亮度,可替代数据增强使用
查看答案和解析

正确答案:A 把每个特征图平均为 1 个值,可替代全连接层并减少参数

GAP 用于 GoogLeNet、ResNet 等,也有抑制过拟合的效果,还用于 CAM。

参考链接

4.4循环层

循环层(RNN、BPTT、LSTM、GRU、双向 RNN、教师强制、Elman 网络)

概念

RNN(循环神经网络)把前一时刻的隐藏状态传给下一时刻,处理时间序列和文本。训练用沿时间方向展开的误差反向传播法(BPTT)进行,但长序列会发生梯度消失。LSTM 用输入、遗忘、输出门和单元保持长期依赖,GRU 用重置、更新两个门简化了 LSTM。双向 RNN 使用过去和未来两个方向的信息。教师强制是训练时把前一时刻的正确答案作为下一个输入的方法。Elman 网络是把隐藏层输出返回作为下一时刻输入的早期 RNN。

原理、步骤

  1. 理解序列数据使用 RNN 类模型的理由
  2. 整理 LSTM 各门的作用
  3. 可以使用整句时考虑双向 RNN

工作中的示例

在抽取文中的命名实体(人名、地名)时,为利用前后上下文而使用双向 LSTM。

易混淆点、考试注意事项

小测验

Q1. 关于 RNN(循环神经网络)的说明,最合适的是哪项?

  1. 把前一时刻隐藏层的状态用于下一时刻的计算,能处理序列数据
  2. 用滤波器提取图像的局部特征,进行对位置偏移稳健的识别
  3. 学习把输入压缩为低维潜在表示,再还原为原输入
  4. 让生成器与判别器两个网络竞争,生成接近真实的数据
查看答案和解析

正确答案:A 把前一时刻隐藏层的状态用于下一时刻的计算,能处理序列数据

RNN 沿时间方向展开,用 BPTT(随时间反向传播)训练。简单 RNN 也叫 Elman 网络。

Q2. 正在选择序列数据的模型。在文本的命名实体抽取中,希望判断每个单词时同时使用该单词之前和之后的上下文(整句已事先拿到)。最合适的是哪项?

  1. LSTM
  2. Transformer
  3. GRU
  4. 双向 RNN
查看答案和解析

正确答案:D 双向 RNN

双向 RNN 组合了正向和反向两个 RNN,不能用于实时预测。(判断要点:前后两个方向的上下文)

参考链接

4.5Attention

Attention(Seq2Seq、Self-Attention、Source-Target Attention、Multi-Head Attention、Transformer、位置编码、查询・键・值)

概念

Seq2Seq 是用编码器处理输入序列、用解码器处理输出序列的模型(机器翻译)。Attention 是在输出的各时刻用权重决定关注输入哪里的机制。由查询与键的相似度计算权重,对值取加权和。Source-Target Attention 计算输入与输出之间的关系,Self-Attention 计算同一序列内的关系。Multi-Head Attention 并行使用多个 Attention。Transformer 不使用 RNN,只由 Attention 构成,可以并行计算。词序信息由位置编码加入。

原理、步骤

  1. 理解查询、键、值的作用
  2. 区分 Self-Attention 与 Source-Target Attention
  3. 理解 Transformer 需要位置编码的原因

工作中的示例

在机器翻译中,借助 Self-Attention,根据“bank”与句中“money”等词的关系判断它是“银行”还是“河岸”。

易混淆点、考试注意事项

小测验

Q1. 正在选择序列数据的模型。希望不用 RNN,而用 Self-Attention 并行计算所有单词间的关系,高速学习长文。最合适的是哪项?

  1. 双向 RNN
  2. GRU
  3. Transformer
  4. LSTM
查看答案和解析

正确答案:C Transformer

Transformer 没有循环结构,因此可以并行计算,也容易捕捉长距离依赖。(判断要点:放弃循环、并行 Attention)

Q2. 训练翻译用 Seq2Seq 模型时,把正确的词而不是上一时刻模型的输出作为解码器下一输入的方法是哪项?

  1. 计划采样
  2. 教师强制(teacher forcing)
  3. 知识蒸馏
  4. 束搜索
查看答案和解析

正确答案:B 教师强制(teacher forcing)

教师强制使训练稳定,但推理时使用自身输出,可能产生训练与推理条件的差异(暴露偏差)。第三个选项是蒸馏。【其他选项】束搜索是推理时的搜索方法。蒸馏是用大模型的输出训练小模型。计划采样按概率切换正确答案与模型输出,用于缓解教师强制的暴露偏差。

参考链接

4.6自编码器

自编码器(堆叠自编码器、VAE、VQ-VAE・β-VAE)

概念

自编码器学习把输入压缩到低维(编码)后再还原(解码),获得数据的特征(潜在表示)。堆叠自编码器叠加多层,曾用于预训练。VAE(变分自编码器)把潜在变量作为概率分布学习,能生成新数据。VQ-VAE 用离散向量(码本)表示潜在表示,β-VAE 调整使潜在表示的各要素具有独立的含义(解纠缠)。

原理、步骤

  1. 理解学习使输入与输出相同的机制
  2. 进行生成时使用 VAE
  3. 在异常检测中,把还原误差大的数据视为异常

工作中的示例

只用工厂正常产品的图像训练自编码器,把还原误差大的产品检测为不良候选。

易混淆点、考试注意事项

小测验

Q1. 想构建把日语句子翻译成长度不同的英语句子的模型。最合适的基本结构是哪项?

  1. Seq2Seq:编码器把输入序列转为表示,解码器生成输出序列
  2. 压缩输入并还原相同输入的自编码器
  3. 输入两个句子、判断是否同义的分类模型
  4. 为每个时刻的输入打一个标签的序列标注模型
查看答案和解析

正确答案:A Seq2Seq:编码器把输入序列转为表示,解码器生成输出序列

输入与输出长度可以不同。为弥补把信息塞进固定长度向量的局限,引入了 Attention。【其他选项】序列标注的输入和输出长度相同。两句分类不生成文本。自编码器学习的是还原相同的输入。

Q2. 关于自编码器的说明,最合适的是哪项?

  1. 让生成器与判别器竞争、生成无法与真实区分的数据的模型
  2. 学习把输入压缩为潜在表示、再还原为原输入的模型
  3. 从状态与行动学习使奖励变大的策略的强化学习模型
  4. 使用正确标签、学习预测输入图像类别的分类模型
查看答案和解析

正确答案:B 学习把输入压缩为潜在表示、再还原为原输入的模型

不需要正确标签,用于降维、异常检测(还原误差大者视为异常)、去噪等。过去曾用于堆叠自编码器的预训练。

参考链接

4.7数据增强

数据增强(Crop、Flip、Rotate、Cutout、Random Erasing、Mixup、CutMix、RandAugment、paraphrasing)

概念

数据增强是对训练数据进行变换以增加数量和多样性、提高泛化性能的方法。图像方面有裁剪(Crop)、翻转(Flip)、旋转(Rotate),遮住一部分的 Cutout、Random Erasing,混合 2 张图像的 Mixup(整体叠加)、CutMix(切贴一部分),以及自动选择变换组合的 RandAugment。文本方面使用改写(paraphrasing)等。

原理、步骤

  1. 选择不破坏任务含义的变换
  2. 只对训练数据进行增强
  3. 用验证数据调整增强的强度

工作中的示例

在文字识别中,上下翻转会使“6”和“9”互换、破坏含义,因此不使用翻转,只使用小角度旋转和缩放。

易混淆点、考试注意事项

小测验

Q1. 正在选择数据增强的方法。希望从一张图像中切下部分区域,贴到另一张图像的同一位置,标签按面积比例混合。最合适的是哪项?

  1. Mixup
  2. Cutout(Random Erasing)
  3. CutMix
  4. paraphrasing
查看答案和解析

正确答案:C CutMix

CutMix 是结合了 Cutout 与 Mixup 思路的方法。(判断要点:切贴一部分,按面积比混合标签)

Q2. 正在选择数据增强的方法。为了增加文本分类的数据,希望在不改变含义的前提下生成不同说法的句子。最合适的是哪项?

  1. CutMix
  2. paraphrasing
  3. Mixup
  4. Cutout(Random Erasing)
查看答案和解析

正确答案:B paraphrasing

paraphrasing(改写)是自然语言的数据增强,也有加入噪声的 noising。(判断要点:文本的改写)

参考链接

课程由本站根据公开信息独立编写,不保证与考试内容一致。产品规格可能变化,请在参考链接中确认最新信息。

使用须知(非官方、原创题目、不保证合格)