From ea7446e5d85662e957c977cd0c58eb5f296f1da5 Mon Sep 17 00:00:00 2001 From: cuicheng01 Date: Mon, 17 Oct 2022 03:31:28 +0000 Subject: [PATCH] update finetune docs --- docs/zh_CN/models/ImageNet1k/PP-HGNet.md | 14 ++++++++++++++ docs/zh_CN/models/ImageNet1k/PP-LCNet.md | 12 +++++++++++- docs/zh_CN/models/ImageNet1k/PP-LCNetV2.md | 12 ++++++++++++ docs/zh_CN/models/ImageNet1k/ResNet.md | 14 ++++++++++++++ .../single_label_classification/finetune.md | 6 +++--- 5 files changed, 54 insertions(+), 4 deletions(-) diff --git a/docs/zh_CN/models/ImageNet1k/PP-HGNet.md b/docs/zh_CN/models/ImageNet1k/PP-HGNet.md index e137f6c1..7f6e368f 100644 --- a/docs/zh_CN/models/ImageNet1k/PP-HGNet.md +++ b/docs/zh_CN/models/ImageNet1k/PP-HGNet.md @@ -12,6 +12,8 @@ - [3.1 环境配置](#3.1) - [3.2 数据准备](#3.2) - [3.3 模型训练](#3.3) + - [3.3.1 训练 ImageNet](#3.3.1) + - [3.3.2 基于 ImageNet 权重微调](#3.3.2) - [3.4 模型评估](#3.4) - [3.5 模型预测](#3.5) - [4. 模型推理部署](#4) @@ -208,7 +210,10 @@ cd path_to_PaddleClas ### 3.3 模型训练 + +#### 3.3.1 训练 ImageNet + 在 `ppcls/configs/ImageNet/PPHGNet/PPHGNet_small.yaml` 中提供了 PPHGNet_small 训练配置,可以通过如下脚本启动训练: ```shell @@ -223,6 +228,13 @@ python3 -m paddle.distributed.launch \ **备注:** * 当前精度最佳的模型会保存在 `output/PPHGNet_small/best_model.pdparams` + + + +#### 3.3.2 基于 ImageNet 权重微调 + +如果训练的不是 ImageNet 任务,而是其他任务时,需要更改配置文件和训练方法,详情可以参考:[模型微调](../../training/single_label_classification/finetune.md)。 + @@ -263,6 +275,8 @@ python3 tools/infer.py \ * 默认是对 `docs/images/inference_deployment/whl_demo.jpg` 进行预测,此处也可以通过增加字段 `-o Infer.infer_imgs=xxx` 对其他图片预测。 * 默认输出的是 Top-5 的值,如果希望输出 Top-k 的值,可以指定`-o Infer.PostProcess.topk=k`,其中,`k` 为您指定的值。 + +* 默认的标签映射基于 ImageNet 数据集,如果改变数据集,需要重新指定`Infer.PostProcess.class_id_map_file`,该映射文件的制作方法可以参考`ppcls/utils/imagenet1k_label_list.txt`。 diff --git a/docs/zh_CN/models/ImageNet1k/PP-LCNet.md b/docs/zh_CN/models/ImageNet1k/PP-LCNet.md index 8bc28f7b..25b028cb 100644 --- a/docs/zh_CN/models/ImageNet1k/PP-LCNet.md +++ b/docs/zh_CN/models/ImageNet1k/PP-LCNet.md @@ -23,6 +23,8 @@ - [3.1 环境配置](#3.1) - [3.2 数据准备](#3.2) - [3.3 模型训练](#3.3) + - [3.3.1 训练 ImageNet](#3.3.1) + - [3.3.2 基于 ImageNet 权重微调](#3.3.2) - [3.4 模型评估](#3.4) - [3.5 模型预测](#3.5) - [4. 模型推理部署](#4) @@ -348,7 +350,9 @@ cd path_to_PaddleClas ### 3.3 模型训练 -### 3.3 模型训练 + + +#### 3.3.1 训练 ImageNet 在 `ppcls/configs/ImageNet/PPLCNet/PPLCNet_x1_0.yaml` 中提供了 PPLCNet_x1_0 训练配置,可以通过如下脚本启动训练: @@ -364,6 +368,10 @@ python3 -m paddle.distributed.launch \ * 当前精度最佳的模型会保存在 `output/PPLCNet_x1_0/best_model.pdparams` +#### 3.3.2 基于 ImageNet 权重微调 + +如果训练的不是 ImageNet 任务,而是其他任务时,需要更改配置文件和训练方法,详情可以参考:[模型微调](../../training/single_label_classification/finetune.md)。 + ### 3.4 模型评估 @@ -403,6 +411,8 @@ python3 tools/infer.py \ * 默认是对 `docs/images/inference_deployment/whl_demo.jpg` 进行预测,此处也可以通过增加字段 `-o Infer.infer_imgs=xxx` 对其他图片预测。 * 默认输出的是 Top-5 的值,如果希望输出 Top-k 的值,可以指定`-o Infer.PostProcess.topk=k`,其中,`k` 为您指定的值。 + +* 默认的标签映射基于 ImageNet 数据集,如果改变数据集,需要重新指定`Infer.PostProcess.class_id_map_file`,该映射文件的制作方法可以参考`ppcls/utils/imagenet1k_label_list.txt`。 diff --git a/docs/zh_CN/models/ImageNet1k/PP-LCNetV2.md b/docs/zh_CN/models/ImageNet1k/PP-LCNetV2.md index 6139bcc1..947b42cf 100644 --- a/docs/zh_CN/models/ImageNet1k/PP-LCNetV2.md +++ b/docs/zh_CN/models/ImageNet1k/PP-LCNetV2.md @@ -20,6 +20,8 @@ - [3.1 环境配置](#3.1) - [3.2 数据准备](#3.2) - [3.3 模型训练](#3.3) + - [3.3.1 训练 ImageNet](#3.3.1) + - [3.3.2 基于 ImageNet 权重微调](#3.3.2) - [3.4 模型评估](#3.4) - [3.5 模型预测](#3.5) - [4. 模型推理部署](#4) @@ -229,6 +231,10 @@ cd path_to_PaddleClas ### 3.3 模型训练 + + + +#### 3.3.1 训练 ImageNet 在 `ppcls/configs/ImageNet/PPLCNetV2/PPLCNetV2_base.yaml` 中提供了 PPLCNetV2_base 训练配置,可以通过如下脚本启动训练: @@ -243,6 +249,10 @@ python3 -m paddle.distributed.launch \ **备注:** * 当前精度最佳的模型会保存在 `output/PPLCNetV2_base/best_model.pdparams` + +#### 3.3.2 基于 ImageNet 权重微调 + +如果训练的不是 ImageNet 任务,而是其他任务时,需要更改配置文件和训练方法,详情可以参考:[模型微调](../../training/single_label_classification/finetune.md)。 @@ -283,6 +293,8 @@ python3 tools/infer.py \ * 默认是对 `docs/images/inference_deployment/whl_demo.jpg` 进行预测,此处也可以通过增加字段 `-o Infer.infer_imgs=xxx` 对其他图片预测。 * 默认输出的是 Top-5 的值,如果希望输出 Top-k 的值,可以指定`-o Infer.PostProcess.topk=k`,其中,`k` 为您指定的值。 + +* 默认的标签映射基于 ImageNet 数据集,如果改变数据集,需要重新指定`Infer.PostProcess.class_id_map_file`,该映射文件的制作方法可以参考`ppcls/utils/imagenet1k_label_list.txt`。 diff --git a/docs/zh_CN/models/ImageNet1k/ResNet.md b/docs/zh_CN/models/ImageNet1k/ResNet.md index bed9aaf0..785588f3 100644 --- a/docs/zh_CN/models/ImageNet1k/ResNet.md +++ b/docs/zh_CN/models/ImageNet1k/ResNet.md @@ -16,6 +16,8 @@ - [3.1 环境配置](#3.1) - [3.2 数据准备](#3.2) - [3.3 模型训练](#3.3) + - [3.3.1 训练 ImageNet](#3.3.1) + - [3.3.2 基于 ImageNet 权重微调](#3.3.2) - [3.4 模型评估](#3.4) - [3.5 模型预测](#3.5) - [4. 模型推理部署](#4) @@ -245,6 +247,10 @@ cd path_to_PaddleClas ### 3.3 模型训练 + + +#### 3.3.1 训练 ImageNet + 在 `ppcls/configs/ImageNet/ResNet/ResNet50.yaml` 中提供了 ResNet50 训练配置,可以通过如下脚本启动训练: ```shell @@ -259,6 +265,12 @@ python3 -m paddle.distributed.launch \ * 当前精度最佳的模型会保存在 `output/ResNet50/best_model.pdparams` + + +#### 3.3.2 基于 ImageNet 权重微调 + +如果训练的不是 ImageNet 任务,而是其他任务时,需要更改配置文件和训练方法,详情可以参考:[模型微调](../../training/single_label_classification/finetune.md)。 + ### 3.4 模型评估 @@ -299,6 +311,8 @@ python3 tools/infer.py \ * 默认输出的是 Top-5 的值,如果希望输出 Top-k 的值,可以指定`-o Infer.PostProcess.topk=k`,其中,`k` 为您指定的值。 +* 默认的标签映射基于 ImageNet 数据集,如果改变数据集,需要重新指定`Infer.PostProcess.class_id_map_file`,该映射文件的制作方法可以参考`ppcls/utils/imagenet1k_label_list.txt`。 + ## 4. 模型推理部署 diff --git a/docs/zh_CN/training/single_label_classification/finetune.md b/docs/zh_CN/training/single_label_classification/finetune.md index d4a37ada..00db36d4 100644 --- a/docs/zh_CN/training/single_label_classification/finetune.md +++ b/docs/zh_CN/training/single_label_classification/finetune.md @@ -1,4 +1,4 @@ -# 微调模型 +# 模型微调 --- 此处提供了用户在 linux 操作系统上使用 PaddleClas 的微调(finetune)模型的教程,此处默认您已经配置好本地环境且已经执行过[快速开始](../../quick_start/quick_start_classification_professional.md)相关的代码。 @@ -50,7 +50,7 @@ val/ILSVRC2012_val_00000001.JPEG 65 ### 2.1 更改配置文件 -在 finetune 自己的任务时,往往需要更改训练的配置文件,在`ppcls/configs/ImageNet/`中,定义了所有模型在 ImageNet 数据上的训练配置,可以直接修改该配置完成训练。下面以 ResNet50_vd 为例子,详述需要修改的配置。 +在 finetune 自己的任务时,往往需要更改训练的配置文件,在`ppcls/configs/ImageNet/`中,定义了所有模型在 ImageNet 数据上的训练配置,可以直接修改该配置完成训练。下面以 ResNet50_vd 为例子,详述需要修改的配置。其中,该配置文件存在于`ppcls/configs/ImageNet/ResNet/ResNet50.yaml`。 1.类别数:类别数量默认为1000(ImageNet-1k类别数),此处需要修改为实际任务中的类别数量。 ``` @@ -145,4 +145,4 @@ PaddleClas中的分类指标目前只支持 `Top-k`,如果需要更改 `k` 值 3.在实际的任务中,训练轮数对结果影响可能也比较大,初期可以使用较小的轮数(如 20)来调试。 -4.模型在微调的过程中,学习率对结果影响比较大,建议多尝试几组学习率。 \ No newline at end of file +4.模型在微调的过程中,学习率对结果影响比较大,建议多尝试几组学习率。 -- GitLab