From a7dfd85f2ce918796d786e53f16d32b980ccbf00 Mon Sep 17 00:00:00 2001 From: sibo2rr <1415419833@qq.com> Date: Fri, 26 Nov 2021 19:31:07 +0800 Subject: [PATCH] remove extra space --- docs/zh_CN/algorithm_introduction/DataAugmentation.md | 2 +- .../algorithm_introduction/knowledge_distillation.md | 4 ++-- docs/zh_CN/algorithm_introduction/metric_learning.md | 4 ++-- docs/zh_CN/data_preparation/recognition_dataset.md | 2 +- .../image_recognition_pipeline/feature_extraction.md | 10 +++++----- .../image_recognition_pipeline/mainbody_detection.md | 2 +- .../inference_deployment/cpp_deploy_on_windows.md | 6 +++--- docs/zh_CN/inference_deployment/paddle_lite_deploy.md | 2 +- .../inference_deployment/paddle_serving_deploy.md | 2 +- docs/zh_CN/models_training/recognition.md | 4 ++-- .../quick_start_classification_professional.md | 2 +- 11 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/zh_CN/algorithm_introduction/DataAugmentation.md b/docs/zh_CN/algorithm_introduction/DataAugmentation.md index 04e0a569..36e4eef8 100644 --- a/docs/zh_CN/algorithm_introduction/DataAugmentation.md +++ b/docs/zh_CN/algorithm_introduction/DataAugmentation.md @@ -231,7 +231,7 @@ Mixup 是最先提出的图像混叠增广方案,其原理简单、方便实 开源代码 github 地址:[https://github.com/clovaai/CutMix-PyTorch](https://github.com/clovaai/CutMix-PyTorch) -与 `Mixup` 直接对两幅图进行相加不一样,`Cutmix` 是从一幅图中随机裁剪出一个 `ROI`,然后覆盖当前图像中对应的区域,代码实现如下所示: +与 `Mixup` 直接对两幅图进行相加不一样,`Cutmix` 是从一幅图中随机裁剪出一个 `ROI`,然后覆盖当前图像中对应的区域,代码实现如下所示: 经过 Cutmix 数据增强后结果如下图所示。 diff --git a/docs/zh_CN/algorithm_introduction/knowledge_distillation.md b/docs/zh_CN/algorithm_introduction/knowledge_distillation.md index eed84b24..58092195 100644 --- a/docs/zh_CN/algorithm_introduction/knowledge_distillation.md +++ b/docs/zh_CN/algorithm_introduction/knowledge_distillation.md @@ -10,7 +10,7 @@ * [3.3 Relation based distillation](#3.3) * [4. 参考文献](#4) -## 1. 模型压缩和知识蒸馏方法简介 +## 1. 模型压缩和知识蒸馏方法简介 近年来,深度神经网络在计算机视觉、自然语言处理等领域被验证是一种极其有效的解决问题的方法。通过构建合适的神经网络,加以训练,最终网络模型的性能指标基本上都会超过传统算法。 @@ -25,7 +25,7 @@ * Relation based distillation:对于不同的样本,使用教师模型和学生模型同时计算样本之间 feature map 的相关性,使得学生模型和教师模型得到的相关性矩阵尽可能一致。 -## 2. 知识蒸馏应用 +## 2. 知识蒸馏应用 知识蒸馏算法在模型轻量化过程任务中应用广泛,对于需要满足特定的精度的任务,通过使用知识蒸馏的方法,我们可以使用更小的模型便能达到要求的精度,从而减小了模型部署的成本。 diff --git a/docs/zh_CN/algorithm_introduction/metric_learning.md b/docs/zh_CN/algorithm_introduction/metric_learning.md index 71e4b70c..492e8443 100644 --- a/docs/zh_CN/algorithm_introduction/metric_learning.md +++ b/docs/zh_CN/algorithm_introduction/metric_learning.md @@ -16,8 +16,8 @@ ![example](../../images/ml_illustration.jpg) -## 2. 应用 - Metric Learning 技术在生活实际中应用广泛,如我们耳熟能详的人脸识别(Face Recognition)、行人重识别(Person ReID)、图像检索(Image Retrieval)、细粒度分类(Fine-gained classification)等. 随着深度学习在工业实践中越来越广泛的应用,目前大家研究的方向基本都偏向于 Deep Metric Learning(DML). +## 2. 应用 + Metric Learning 技术在生活实际中应用广泛,如我们耳熟能详的人脸识别(Face Recognition)、行人重识别(Person ReID)、图像检索(Image Retrieval)、细粒度分类(Fine-gained classification)等。随着深度学习在工业实践中越来越广泛的应用,目前大家研究的方向基本都偏向于 Deep Metric Learning(DML). 一般来说, DML 包含三个部分: 特征提取网络来 map embedding, 一个采样策略来将一个 mini-batch 里的样本组合成很多个 sub-set, 最后 loss function 在每个 sub-set 上计算 loss. 如下图所示: ![image](../../images/ml_pipeline.jpg) diff --git a/docs/zh_CN/data_preparation/recognition_dataset.md b/docs/zh_CN/data_preparation/recognition_dataset.md index a6ca57c4..2fb1ce43 100644 --- a/docs/zh_CN/data_preparation/recognition_dataset.md +++ b/docs/zh_CN/data_preparation/recognition_dataset.md @@ -106,7 +106,7 @@ Cars 数据集包含了 196 类汽车的 16185 张图像。数据被分成 8144 地址:https://www.kaggle.com/c/products-10k/data?select=train.csv -+ DeepFashion-Inshop: 同通用图像识别数据集中的 In-shop Clothes ++ DeepFashion-Inshop: 同通用图像识别数据集中的 In-shop Clothes ### 2.2.3 Logo 识别 diff --git a/docs/zh_CN/image_recognition_pipeline/feature_extraction.md b/docs/zh_CN/image_recognition_pipeline/feature_extraction.md index 7e572846..847ca7c2 100644 --- a/docs/zh_CN/image_recognition_pipeline/feature_extraction.md +++ b/docs/zh_CN/image_recognition_pipeline/feature_extraction.md @@ -26,10 +26,10 @@ ![](../../images/feature_extraction_framework.png) 图中各个模块的功能为: -- **Backbone**: 指定所使用的骨干网络。 值得注意的是,PaddleClas 提供的基于 ImageNet 的预训练模型,最后一层的输出为 1000,我们需要依据所需的特征维度定制最后一层的输出。 -- **Neck**: 用以特征增强及特征维度变换。 这儿的 Neck,可以是一个简单的 Linear Layer,用来做特征维度变换;也可以是较复杂的 FPN 结构,用以做特征增强。 -- **Head**: 用来将 feature 转化为 logits。 除了常用的 Fc Layer 外,还可以替换为 cosmargin, arcmargin, circlemargin 等模块。 -- **Loss**: 指定所使用的 Loss 函数。 我们将 Loss 设计为组合 loss 的形式,可以方便得将 Classification Loss 和 Pair_wise Loss 组合在一起。 +- **Backbone**: 指定所使用的骨干网络。 值得注意的是,PaddleClas 提供的基于 ImageNet 的预训练模型,最后一层的输出为 1000,我们需要依据所需的特征维度定制最后一层的输出。 +- **Neck**: 用以特征增强及特征维度变换。这儿的 Neck,可以是一个简单的 Linear Layer,用来做特征维度变换;也可以是较复杂的 FPN 结构,用以做特征增强。 +- **Head**: 用来将 feature 转化为 logits。除了常用的 Fc Layer 外,还可以替换为 cosmargin, arcmargin, circlemargin 等模块。 +- **Loss**: 指定所使用的 Loss 函数。我们将 Loss 设计为组合 loss 的形式,可以方便得将 Classification Loss 和 Pair_wise Loss 组合在一起。 @@ -161,7 +161,7 @@ python tools/export_model \ -o Global.pretrained_model="output/RecModel/best_model" ``` 生成的推理模型位于 `inference` 目录,里面包含三个文件,分别为 `inference.pdmodel`、`inference.pdiparams`、`inference.pdiparams.info`。 -其中: `inference.pdmodel` 用来存储推理模型的结构, `inference.pdiparams` 和 `inference.pdiparams.info` 用来存储推理模型相关的参数信息。 +其中: `inference.pdmodel` 用来存储推理模型的结构, `inference.pdiparams` 和 `inference.pdiparams.info` 用来存储推理模型相关的参数信息。 diff --git a/docs/zh_CN/image_recognition_pipeline/mainbody_detection.md b/docs/zh_CN/image_recognition_pipeline/mainbody_detection.md index 3b441f7b..991c4e7a 100644 --- a/docs/zh_CN/image_recognition_pipeline/mainbody_detection.md +++ b/docs/zh_CN/image_recognition_pipeline/mainbody_detection.md @@ -225,7 +225,7 @@ python tools/export_model.py -c configs/ppyolo/ppyolov2_r50vd_dcn_365e_coco.yml 预测模型会导出到 `inference/ppyolov2_r50vd_dcn_365e_coco` 目录下,分别为 `infer_cfg.yml` (预测不需要), `model.pdiparams`, `model.pdiparams.info`, `model.pdmodel` 。 -注意: `PaddleDetection` 导出的 inference 模型的文件格式为 `model.xxx`,这里如果希望与 PaddleClas 的 inference 模型文件格式保持一致,需要将其 `model.xxx` 文件修改为 `inference.xxx` 文件,用于后续主体检测的预测部署。 +注意: `PaddleDetection` 导出的 inference 模型的文件格式为 `model.xxx`,这里如果希望与 PaddleClas 的 inference 模型文件格式保持一致,需要将其 `model.xxx` 文件修改为 `inference.xxx` 文件,用于后续主体检测的预测部署。 更多模型导出教程,请参考: [EXPORT_MODEL](https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.1/deploy/EXPORT_MODEL.md) diff --git a/docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md b/docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md index 6dca4b0a..03bf5434 100755 --- a/docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md +++ b/docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md @@ -14,7 +14,7 @@ PaddleClas 在 Windows 平台下基于 `Visual Studio 2019 Community` 进行了 * [3.3 注意事项](#3.3) -## 1. 前置条件 +## 1. 前置条件 * Visual Studio 2019 * CUDA 9.0 / CUDA 10.0,cudnn 7.6+(仅在使用 GPU 版本的预测库时需要) * CMake 3.0+ @@ -29,7 +29,7 @@ PaddleClas 在 Windows 平台下基于 `Visual Studio 2019 Community` 进行了 ### 1.1 下载 PaddlePaddle C++ 预测库 paddle_inference_install_dir -PaddlePaddle C++ 预测库针对不同的 `CPU `和 `CUDA` 版本提供了不同的预编译版本,请根据实际情况下载: [C++预测库下载列表](https://paddleinference.paddlepaddle.org.cn/user_guides/download_lib.html#windows),建议选择 `2.1.1` 版本。 +PaddlePaddle C++ 预测库针对不同的 `CPU `和 `CUDA` 版本提供了不同的预编译版本,请根据实际情况下载: [C++预测库下载列表](https://paddleinference.paddlepaddle.org.cn/user_guides/download_lib.html#windows),建议选择 `2.1.1` 版本。 **注意**:在选择预测库时,所选预测库版本需要与后续编译选项一致: * CPU 预测库仅可用于 GPU 预测,具体又分为 `mkl` 和 `openblas`,分别对应其低层实现基于 `MKL` 数学运算库 和 `OpenBLAS` 数学运算库; @@ -159,7 +159,7 @@ cd D:\projects\PaddleClas\deploy\cpp\out\build\x64-Release 注意,需要在配置文件中正确设置预测参数,包括所用模型文件的路径(`cls_model_path` 和 `cls_params_path`)。 -### 3.3 注意事项 +### 3.3 注意事项 * 在 Windows 下的终端中执行文件 exe 时,可能会发生乱码的现象,此时需要在终端中输入 `CHCP 65001`,将终端的编码方式由 GBK 编码(默认)改为 UTF-8 编码,更加具体的解释可以参考这篇博客:[https://blog.csdn.net/qq_35038153/article/details/78430359](https://blog.csdn.net/qq_35038153/article/details/78430359); * 如果需要使用 CPU 预测,PaddlePaddle 在 Windows 上仅支持 avx 的 CPU 预测,目前不支持 noavx 的 CPU 预测; * 在使用生成的 `clas_system.exe` 进行预测时,如提示 `由于找不到 paddle_fluid.dll,无法继续执行代码。重新安装程序可能会解决此问题`,请检查是否将 Paddle 预测库路径添加到系统环境变量,详见[1.1 下载 PaddlePaddle C++ 预测库 paddle_inference_install_dir](#1.1)。 diff --git a/docs/zh_CN/inference_deployment/paddle_lite_deploy.md b/docs/zh_CN/inference_deployment/paddle_lite_deploy.md index 8c147f10..a1271128 100644 --- a/docs/zh_CN/inference_deployment/paddle_lite_deploy.md +++ b/docs/zh_CN/inference_deployment/paddle_lite_deploy.md @@ -235,7 +235,7 @@ demo/cxx/clas/ #### 注意: * 上述文件中,`imagenet1k_label_list.txt` 是 ImageNet1k 数据集的类别映射文件,如果使用自定义的类别,需要更换该类别映射文件。 -* `config.txt` 包含了分类器的超参数,如下: +* `config.txt` 包含了分类器的超参数,如下: ```shell clas_model_file ./MobileNetV3_large_x1_0.nb # 模型文件地址 diff --git a/docs/zh_CN/inference_deployment/paddle_serving_deploy.md b/docs/zh_CN/inference_deployment/paddle_serving_deploy.md index 9e2e3318..37eb4c59 100644 --- a/docs/zh_CN/inference_deployment/paddle_serving_deploy.md +++ b/docs/zh_CN/inference_deployment/paddle_serving_deploy.md @@ -194,7 +194,7 @@ wget https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/rec/data/drink_da ``` ## 4.2 服务部署和请求 -**注意:** 识别服务涉及到多个模型,出于性能考虑采用 PipeLine 部署方式。Pipeline 部署方式当前不支持 windows 平台。 +**注意:** 识别服务涉及到多个模型,出于性能考虑采用 PipeLine 部署方式。Pipeline 部署方式当前不支持 windows 平台。 - 进入到工作目录 ```shell cd ./deploy/paddleserving/recognition diff --git a/docs/zh_CN/models_training/recognition.md b/docs/zh_CN/models_training/recognition.md index f833b388..5acb1042 100644 --- a/docs/zh_CN/models_training/recognition.md +++ b/docs/zh_CN/models_training/recognition.md @@ -300,9 +300,9 @@ PaddleClas 图像检索部分目前支持的环境如下: pip install faiss-cpu==1.7.1post2 ``` -若使用时,不能正常引用,则 `uninstall` 之后,重新 `install`,尤其是 `windows` 下。 +若使用时,不能正常引用,则 `uninstall` 之后,重新 `install`,尤其是 `windows` 下。 - + ## 4. 基础知识 diff --git a/docs/zh_CN/quick_start/quick_start_classification_professional.md b/docs/zh_CN/quick_start/quick_start_classification_professional.md index 72b52096..0550b4b1 100644 --- a/docs/zh_CN/quick_start/quick_start_classification_professional.md +++ b/docs/zh_CN/quick_start/quick_start_classification_professional.md @@ -52,7 +52,7 @@ cd ../ -## 2. 模型训练 +## 2. 模型训练 -- GitLab