Tensorflow 2.x(keras)源码详解之第十五章:迁移学习与微调

文章目录

  • 1. 迁移学习与微调
  • 2. 了解 `trainable` 特性
  • 3. keras实现典型的迁移学习工作流
  • 4. 微调
  • 5. 使用自定义训练循环进行迁移学习和微调
  • 6. 一个端到端的实例:基于 Dogs vs. Cats 数据集微调图像分类模型

1. 迁移学习与微调

  • 迁移学习包括获取从一个问题中学习到的特征,然后将这些特征用于新的类似问题。例如,来自已学会识别浣熊的模型的特征可能对建立旨在识别狸猫的模型十分有用。对于数据集中的数据太少而无法从头开始训练完整模型的任务,通常会执行迁移学习。
  • 在深度学习情境中,迁移学习最常见的形式是以下几种:
    • 之前训练的模型中获取
    • 冻结这些层,以避免在后续训练轮次中破坏它们包含的任何信息。
    • 在已冻结层的顶部添加一些新的可训练层。这些层会学习将旧特征转换为对新数据集的预测。
    • 在数据集上微调,包括解冻上面获得的整个模型(或模型的一部分),然后在新数据上以极低的学习率对该模型进行重新训练。以增量方式使预训练特征适应新数据

你可能感兴趣的:(keras,tensorflow,迁移学习)