使用训练深度学习模型向导

获得 Image Analyst 许可后可用。

训练深度学习模型向导是一个辅助工作流,用于帮助您使用收集的训练数据训练深度学习模型。 在获得训练数据后,在影像选项卡的深度学习工具下拉菜单 深度学习工具 中打开训练深度学习模型向导 训练深度学习模型

此向导分为四页:入门训练结果

要使用训练深度学习模型向导,请完成以下步骤:

  1. 单击影像选项卡。
  2. 单击深度学习工具下拉菜单 深度学习工具,然后选择训练深度学习模型 训练深度学习模型

    随即显示训练深度学习模型向导窗格。

入门

在向导的入门页面中,需要指定如何训练深度学习模型。

  1. 指定如何训练模型。
    • 自动设置参数 - 系统将自动设置模型类型、参数和超参数以构建最佳模型。
    • 自行指定参数 - 您自行设置模型类型、参数和超参数以构建模型。
  2. 单击下一步按钮移至训练页面。

火车

训练页面中,设置训练的参数信息。 根据您在入门页面中指定的选项,这些参数可能有所不同。

  1. 指定必填参数。

    输入训练数据

    包含训练模型所需的影像片、标注和统计数据的文件夹。 此数据为导出训练数据进行深度学习工具的输出。

    输出模型

    (自动训练)

    输出的训练模型将作为深度学习包(.dlpk 文件)保存。

    输出文件夹

    (手动训练)

    将存储训练模型的输出文件夹位置。

  2. (可选)设置其他参数。

    自动训练参数

    参数描述

    预训练模型

    将用于微调新模型的预训练模型。 输入为 Esri 模型定义文件 (.emd) 或深度学习包文件 (.dlpk)。

    可以对具有相似类的预训练模型进行微调以适应新模型。 预训练模型必须已使用将用于训练新模型的相同模型类型和骨干模型进行了训练。

    总时间限制(小时)参数

    AutoDL 模型训练所需的总时间限制(小时)。 默认值为 2 小时。

    自动 DL 模式

    指定将使用的 AutoDL 模式以及 AutoDL 搜索的强度。

    • 基本 - 训练所有选定网络,但不进行超参数调整。
    • 高级 - 对表现最佳的两个模型进行超参数调整。

    神经网络

    指定要用于训练模型的架构。

    默认情况下,将使用所有网络。

    保存评估的模型

    指定是否保存所有评估的模型。

    • 选中 - 将保存所有评估的模型。
    • 未选中 - 仅保存性能最佳的模型。 这是默认设置。

    手动训练参数

    参数描述

    最大新纪元

    将用于训练模型的最大轮数。 最大轮数值为 1 意味着数据集将通过神经网络向前和向后传递一次。 默认值为 20。

    预训练模型

    将用于微调新模型的预训练模型。 输入为 Esri 模型定义文件 (.emd) 或深度学习包文件 (.dlpk)。

    可以对具有相似类的预训练模型进行微调以适应新模型。 预训练模型必须已使用将用于训练新模型的相同模型类型和骨干模型进行了训练。

    模型类型

    指定将用于训练深度学习模型的模型类型。

    有关不同模型类型的详细信息,请参阅深度学习模型架构

    模型参数

    将使用模型类型参数中的信息填充此参数。 这些参数将有所不同,具体取决于模型架构。 下面介绍了在 ArcGIS 中训练的模型支持的模型参数。 ArcGIS 预训练模型和自定义深度学习模型可能具有该工具支持的其他参数。

    有关适用于每种模型类型的参数的详细信息,请参阅深度学习参数

    数据增强

    指定要使用的数据增强类型。

    数据增强方法使用现有数据创建经过修改的数据集副本,实现人为增加训练集合。

    • 默认 - 将使用默认数据增强参数和值。 包含的默认数据增强方法包括 cropdihedral_affinebrightnesscontrastzoom。 这些默认值通常适用于卫星影像。
    • 无 - 将不会进行数据增强。
    • 自定义 - 在增强参数参数中指定用户定义的数据增强值。
    • 文件 - 指定用于训练和验证数据集数据增强的 fastai 转换。 这些转换在名为 transforms.json.json 文件中指定,该文件位于训练数据所在的文件夹中。 有关不同转换的详细信息,请参阅 fastai vision 转换

    增强参数

    在增强参数中指定每个转换对应的值。

    • rotate - 影像将按概率 (p) 随机旋转(以度为单位)。 如果度数是一个范围 (a,b),将在 ab 之间均匀赋值。 默认值为 30.0; 0.5。
    • brightness - 影像亮度将根据变化值随机调整,概率为 (p)。 变化为 0 时会将影像转换为最暗,变化为 1 时会将影像转换为最亮。 变化为 0.5 时不会调整亮度。 如果变化是一个范围 (a,b),将在 ab 之间对增强进行均匀赋值。 默认值为 (0.4,0.6); 1.0。
    • contrast - 影像对比度将根据比例值随机调整,概率为 (p)。 比例为 0 时会将影像转换为灰度,比例大于 1 时会将影像转换为超级对比度。 比例为 1 时不会调整对比度。 如果比例是一个范围 (a,b),将在 ab 之间对增强进行均匀赋值。 默认值为 (0.75, 1.5); 1.0。
    • zoom - 影像将根据比例值随机放大。 缩放值采用 scale(a,b); p 形式。 默认值为 (1.0, 1.2); 1.0,其中 p 为概率。 仅当比例大于 1.0 时,才会在影像上进行放大。 如果比例是一个范围 (a,b),将在 ab 之间进行均匀赋值。
    • crop - 将随机裁剪影像。 裁剪值采用 size;p;row_pct;col_pct 形式,其中 p 为概率。 位置根据 (col_pct, row_pct), 确定,其中 col_pctrow_pct 在 0 和 1 之间进行归一化。如果 col_pctrow_pct 是一个范围 (a,b),将在 ab 之间进行均匀赋值。 默认值为 chip_size;1.0; (0, 1); (0, 1),其中 224 为默认影像片大小。

    批量大小

    一次需要处理以便用于训练的训练样本数。

    增加批处理大小可以提高工具性能;但是,随着批处理大小的增加,会占用更多内存。

    如果可用于批量大小集的 GPU 内存不足,则该工具将尝试估计并使用最佳批量大小。 如果发生内存不足错误,请使用较小的批处理大小。

    验证百分比

    将用于验证模型的训练样本的百分比。 默认值为 10。

    影像片大小

    用于训练模型的影像大小。 影像将裁剪为指定的影像片大小。 如果影像大小小于参数值,则将使用影像大小。 默认值为 224 像素。

    将大小调整为

    调整影像片大小。 在调整影像片大小后,将裁剪影像片大小的像素块,以用于训练。 该参数将仅应用于对象检测 (PASCAL VOC)、对象分类(已标注切片)和超分辨率数据。

    大小调整值通常为影像片大小值的一半。 如果此大小调整值小于影像片大小值,则将使用大小调整值创建像素块进行训练。

    学习率

    在整个训练过程中,现有信息将被新获取的信息覆盖的比率。 如果未指定任何值,则系统将在训练过程中从学习曲线中提取最佳学习率。

    骨干模型

    指定要用作训练新模型的架构的、预先配置的神经网络。 这种方法称为迁移学习。

    此外,从 PyTorch Image Models (timm) 指定受支持卷积神经网络时还可以使用 timm 作为前缀,例如 timm:resnet31、timm:inception_v4、timm:efficientnet_b3 等。

    监控指标

    指定在检查点设置和提前停止时要监控的指标。

    当模型停止改进时停止

    指定是否将实施提前停止。

    • 选中 - 将实施提前停止,当模型不再改进时,无论所指定的最大轮数参数值是什么,模型训练都将停止。 这是默认设置。
    • 未选中 - 不会实施提前停止,模型训练将一直持续,直至达到最大轮数参数值为止。

    冻结模型

    指定是否冻结预训练模型中的骨干层,以使权重和偏差保持原始设计。

    • 选中 - 将冻结骨干图层,预定义的权重和偏差不会在骨干模型参数中进行更改。 这是默认设置。
    • 未选中 - 不会冻结骨干图层,骨干模型参数的权重和偏差可能会进行更改以更好地适合您的训练样本。 这将需要花费更多的时间来处理,但通常会产生更好的结果。

    权重初始化方案

    指定要用于为图层初始化权重的方案。

    要使用多光谱数据训练模型,模型必须容纳不同类型的可用波段。 为此,需要重新初始化模型中的第一个图层。

    • 随即 - 随机权重将针对非 RGB 波段进行初始化,而预培训权重将为 RGB 波段保留。 这是默认设置。
    • 红色波段 - 与预训练模型图层中的红色波段对应的权重将针对非 RGB 波段进行克隆,而预训练权重将为 RGB 波段保留。
    • 全部随机 - 随机权重将针对 RGB 波段以及非 RGB 波段进行初始化。 此选项仅适用于多光谱影像。

    仅当在模型中使用多光谱影像时,此参数才适用。

  3. 单击下一步按钮移至结果页面。

结果

结果页面将显示已训练模型的关键详细信息,以供您查看。 它还允许您将已训练模型与其他模型进行比较。 在推断中使用深度学习模型之前,需要了解这些模型。 检查模型可帮助您了解模型的训练方式及其性能。 在许多情况下,可能需要比较多个模型。

项目描述

Model

使用浏览按钮 浏览 查找要检查的模型。 与其关联的所有模型将添加至模型下拉列表。 可以在模型之间切换以及从下拉列表中移除模型。

模型类型

模型架构的名称。

骨干

用作训练模型架构的预配置神经网络的名称。

学习率

神经网络训练中使用的学习率。 如果您未指定该值,则将由训练工具进行计算。

训练和验证损失

本部分显示了一个图表,用于显示训练模型过程中的训练损失和验证损失。

训练和验证损失

分析模型

指标或数值,具体取决于模型架构。 例如,像素分类模型将显示每个类的以下指标:精确率、召回率和 f1 分数。 对象检测模型将显示平均精确率得分。

示例结果

显示地面参考和预测对的示例。

地面参考和预测对的示例

轮次详细信息

此表包含每个轮次的信息,例如训练损失、验证损失、时间和其他指标。

轮次详细信息表

相关主题


在本主题中
  1. 入门
  2. 火车
  3. 结果