Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleClas
提交
fe9dd370
P
PaddleClas
项目概览
PaddlePaddle
/
PaddleClas
大约 1 年 前同步成功
通知
115
Star
4999
Fork
1114
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
19
列表
看板
标记
里程碑
合并请求
6
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleClas
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
19
Issue
19
列表
看板
标记
里程碑
合并请求
6
合并请求
6
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
fe9dd370
编写于
6月 16, 2022
作者:
C
cuicheng01
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update pulc docs
上级
c87f5eef
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
65 addition
and
65 deletion
+65
-65
docs/zh_CN/PULC/PULC_car_exists.md
docs/zh_CN/PULC/PULC_car_exists.md
+7
-7
docs/zh_CN/PULC/PULC_language_classification.md
docs/zh_CN/PULC/PULC_language_classification.md
+7
-7
docs/zh_CN/PULC/PULC_model_list.md
docs/zh_CN/PULC/PULC_model_list.md
+7
-7
docs/zh_CN/PULC/PULC_person_attribute.md
docs/zh_CN/PULC/PULC_person_attribute.md
+7
-7
docs/zh_CN/PULC/PULC_person_exists.md
docs/zh_CN/PULC/PULC_person_exists.md
+9
-9
docs/zh_CN/PULC/PULC_safety_helmet.md
docs/zh_CN/PULC/PULC_safety_helmet.md
+8
-8
docs/zh_CN/PULC/PULC_text_image_orientation.md
docs/zh_CN/PULC/PULC_text_image_orientation.md
+6
-6
docs/zh_CN/PULC/PULC_textline_orientation.md
docs/zh_CN/PULC/PULC_textline_orientation.md
+9
-9
docs/zh_CN/PULC/PULC_traffic_sign.md
docs/zh_CN/PULC/PULC_traffic_sign.md
+1
-1
docs/zh_CN/PULC/PULC_vehicle_attribute.md
docs/zh_CN/PULC/PULC_vehicle_attribute.md
+2
-2
ppcls/configs/PULC/language_classification/PPLCNet_x1_0.yaml
ppcls/configs/PULC/language_classification/PPLCNet_x1_0.yaml
+1
-1
ppcls/configs/PULC/language_classification/PPLCNet_x1_0_search.yaml
...igs/PULC/language_classification/PPLCNet_x1_0_search.yaml
+1
-1
未找到文件。
docs/zh_CN/PULC/PULC_car_exists.md
浏览文件 @
fe9dd370
...
...
@@ -40,19 +40,19 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的有车/无车的分类模型。该模型可以广泛应用于如监控场景、海量数据过滤场景等。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的有车/无车的分类模型。该模型可以广泛应用于如监控场景、海量数据过滤场景等。
下表列出了判断图片中是否有车的二分类模型的相关指标,前两行展现了使用 SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第六行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | Tpr(%)@Fpr0.01 | 延时(ms) | 存储(M) | 策略 |
|-------|----------------|----------|---------------|---------------|
| SwinTranformer_tiny | 97.71 | 95.30 | 1
07
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 81.23 | 2.85 |
1.6
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 94.72 | 2.12 |
6.5
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 95.48 | 2.12 |
6.5
| 使用 SSLD 预训练模型 |
| PPLCNet_x1_0 | 95.48 | 2.12 |
6.5
| 使用 SSLD 预训练模型+EDA 策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
95.92
<b>
|
<b>
2.12
<b>
|
<b>
6.5
<b>
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
| SwinTranformer_tiny | 97.71 | 95.30 | 1
11
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 81.23 | 2.85 |
2.7
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 94.72 | 2.12 |
7.1
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 95.48 | 2.12 |
7.1
| 使用 SSLD 预训练模型 |
| PPLCNet_x1_0 | 95.48 | 2.12 |
7.1
| 使用 SSLD 预训练模型+EDA 策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
95.92
<b>
|
<b>
2.12
<b>
|
<b>
7.1
<b>
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是会导致精度大幅下降。将 backbone 替换为速度更快的 PPLCNet_x1_0 时,精度较 MobileNetV3_small_x0_35 高 13 个百分点,与此同时速度依旧可以快 20% 以上。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升约 0.7 个百分点,进一步地,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 0.44 个百分点。此时,PPLCNet_x1_0 达到了接近 SwinTranformer_tiny 模型的精度,但是速度快 40 多倍。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
docs/zh_CN/PULC/PULC_language_classification.md
浏览文件 @
fe9dd370
...
...
@@ -36,18 +36,18 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的语种分类模型。使用该方法训练得到的模型可以快速判断图片中的文字语种,该模型可以广泛应用于金融、政务等各种涉及多语种OCR处理的场景中。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的语种分类模型。使用该方法训练得到的模型可以快速判断图片中的文字语种,该模型可以广泛应用于金融、政务等各种涉及多语种OCR处理的场景中。
下表列出了语种分类模型的相关指标,前两行展现了使用 SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第六行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。其中替换 backbone 为 PPLCNet_x1_0时,将数据预处理时的输入尺寸变为[192,48],且网络的下采样stride调整为[2, [2, 1], [2, 1], [2, 1], [2, 1]]。
| 模型 | 精度 | 延时 | 存储 | 策略 |
| ----------------------- | --------- | -------- | ------- | ---------------------------------------------- |
| SwinTranformer_tiny | 98.12 | 89.09 | 1
07
| 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 95.92 | 2.98 |
1
7 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.35 | 2.58 |
6.5
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.7 | 2.58 |
6.5
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 99.12 | 2.58 |
6.5
| 使用SSLD预训练模型+EDA策略 |
|
**PPLCNet_x1_0**
|
**99.26**
|
**2.58**
|
**
6.5
**
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略 |
| SwinTranformer_tiny | 98.12 | 89.09 | 1
11
| 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 95.92 | 2.98 |
3.
7 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.35 | 2.58 |
7.1
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.7 | 2.58 |
7.1
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 99.12 | 2.58 |
7.1
| 使用SSLD预训练模型+EDA策略 |
|
**PPLCNet_x1_0**
|
**99.26**
|
**2.58**
|
**
7.1
**
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略 |
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度比较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度提升明显,但精度有了大幅下降。将 backbone 替换为 PPLCNet_x1_0 且调整预处理输入尺寸和网络的下采样stride时,速度略为提升,同时精度较 MobileNetV3_large_x1_0 高2.43个百分点。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升 0.35 个百分点,进一步地,当融合EDA策略后,精度可以再提升 0.42 个百分点,最后,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 0.14 个百分点。此时,PPLCNet_x1_0 超过了 SwinTranformer_tiny 模型的精度,并且速度有了明显提升。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
docs/zh_CN/PULC/PULC_model_list.md
浏览文件 @
fe9dd370
...
...
@@ -7,15 +7,15 @@
|模型名称|模型简介|模型精度 |模型大小|推理耗时|下载地址|
| --- | --- | --- | --- | --- | --- |
| person_exists |
[
PULC有人/无人分类模型
](
PULC_person_exists.md
)
| 95.60 |
6.5
M|2.58ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/person_exists_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/person_exists_pretrained.pdparams
)
|
| person_attribute |
[
PULC人体属性识别模型
](
PULC_person_attribute.md
)
| 78.59 |
6.6
M|2.01ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/person_attribute_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/person_attribute_pretrained.pdparams
)
|
| safety_helmet |
[
PULC佩戴安全帽分类模型
](
PULC_safety_helmet.md
)
| 99.38 |
6.5
M|2.03ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/safety_helmet_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/safety_helmet_pretrained.pdparams
)
|
| person_exists |
[
PULC有人/无人分类模型
](
PULC_person_exists.md
)
| 95.60 |
7.0
M|2.58ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/person_exists_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/person_exists_pretrained.pdparams
)
|
| person_attribute |
[
PULC人体属性识别模型
](
PULC_person_attribute.md
)
| 78.59 |
7.2
M|2.01ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/person_attribute_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/person_attribute_pretrained.pdparams
)
|
| safety_helmet |
[
PULC佩戴安全帽分类模型
](
PULC_safety_helmet.md
)
| 99.38 |
7.1
M|2.03ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/safety_helmet_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/safety_helmet_pretrained.pdparams
)
|
| traffic_sign |
[
PULC交通标志分类模型
](
PULC_traffic_sign.md
)
| 98.35 |8.2M|2.10ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/traffic_sign_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/traffic_sign_pretrained.pdparams
)
|
| vehicle_attribute |
[
PULC车辆属性识别模型
](
PULC_vehicle_attribute.md
)
| 90.81 |7.2M|2.36ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/vehicle_attribute_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/vehicle_attribute_pretrained.pdparams
)
|
| car_exists |
[
PULC有车/无车分类模型
](
PULC_car_exists.md
)
| 95.92 |
6.6
M | 2.38ms |
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/car_exists_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/car_exists_pretrained.pdparams
)
|
| text_image_orientation |
[
PULC含文字图像方向分类模型
](
PULC_text_image_orientation.md
)
| 99.06 |
6.5
M | 2.16ms |
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/text_image_orientation_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/text_image_orientation_pretrained.pdparams
)
|
| textline_orientation |
[
PULC文本行方向分类模型
](
PULC_textline_orientation.md
)
| 96.01 |
6.5
M|2.72ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/textline_orientation_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/textline_orientation_pretrained.pdparams
)
|
| language_classification |
[
PULC语种分类模型
](
PULC_language_classification.md
)
| 99.26 |
6.5
M|2.58ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/language_classification_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/language_classification_pretrained.pdparams
)
|
| car_exists |
[
PULC有车/无车分类模型
](
PULC_car_exists.md
)
| 95.92 |
7.1
M | 2.38ms |
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/car_exists_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/car_exists_pretrained.pdparams
)
|
| text_image_orientation |
[
PULC含文字图像方向分类模型
](
PULC_text_image_orientation.md
)
| 99.06 |
7.1
M | 2.16ms |
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/text_image_orientation_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/text_image_orientation_pretrained.pdparams
)
|
| textline_orientation |
[
PULC文本行方向分类模型
](
PULC_textline_orientation.md
)
| 96.01 |
7.0
M|2.72ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/textline_orientation_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/textline_orientation_pretrained.pdparams
)
|
| language_classification |
[
PULC语种分类模型
](
PULC_language_classification.md
)
| 99.26 |
7.1
M|2.58ms|
[
推理模型
](
https://paddleclas.bj.bcebos.com/models/PULC/inference/language_classification_infer.tar
)
/
[
预训练模型
](
https://paddleclas.bj.bcebos.com/models/PULC/pretrained/language_classification_pretrained.pdparams
)
|
**备注:**
...
...
docs/zh_CN/PULC/PULC_person_attribute.md
浏览文件 @
fe9dd370
...
...
@@ -42,18 +42,18 @@
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight image Classification)快速构建轻量级、高精度、可落地的人体属性识别模型。该模型可以广泛应用于行人分析、行人跟踪等场景。
下表列出了不同人体属性识别模型的相关指标,前
两行展现了使用 SwinTransformer_tiny、Res2Net200_vd_26w_4s 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第六
行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
下表列出了不同人体属性识别模型的相关指标,前
三行展现了使用 SwinTransformer_tiny、Res2Net200_vd_26w_4s 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第四行至第七
行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | m
a
(%) | 延时(ms) | 存储(M) | 策略 |
| 模型 | m
A
(%) | 延时(ms) | 存储(M) | 策略 |
|-------|-----------|----------|---------------|---------------|
| Res2Net200_vd_26w_4s | 81.25 | 77.51 | 293 | 使用ImageNet预训练模型 |
| SwinTransformer_tiny | 80.17 | 89.51 | 1
07
| 使用ImageNet预训练模型 |
| SwinTransformer_tiny | 80.17 | 89.51 | 1
11
| 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 70.79 | 2.90 | 1.7 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 76.31 | 2.01 |
6.6
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 77.31 | 2.01 |
6.6
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 77.71 | 2.01 |
6.6
| 使用SSLD预训练模型+EDA策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
78.59
<b>
|
<b>
2.01
<b>
|
<b>
6.6
<b>
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略|
| PPLCNet_x1_0 | 76.31 | 2.01 |
7.1
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 77.31 | 2.01 |
7.1
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 77.71 | 2.01 |
7.1
| 使用SSLD预训练模型+EDA策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
78.59
<b>
|
<b>
2.01
<b>
|
<b>
7.1
<b>
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略|
从表中可以看出,backbone 为 Res2Net200_vd_26w_4s 和 SwinTransformer_tiny 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是精度也大幅下降。将 backbone 替换为 PPLCNet_x1_0 时,精度较 MobileNetV3_small_x0_35 高 5.5%,于此同时,速度更快。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升 1%,进一步地,当融合EDA策略后,精度可以再提升 0.4%,最后,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 0.88%。此时,PPLCNet_x1_0 的精度与 SwinTransformer_tiny 仅相差1.58%,但是速度快 44 倍。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
docs/zh_CN/PULC/PULC_person_exists.md
浏览文件 @
fe9dd370
...
...
@@ -40,21 +40,21 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的有人/无人的分类模型。该模型可以广泛应用于如监控场景、人员进出管控场景、海量数据过滤场景等。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的有人/无人的分类模型。该模型可以广泛应用于如监控场景、人员进出管控场景、海量数据过滤场景等。
下表列出了判断图片中是否有人的二分类模型的相关指标,前两行展现了使用 SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第六行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | Tpr(%) | 延时(ms) | 存储(M) | 策略 |
|-------|-----------|----------|---------------|---------------|
| SwinTranformer_tiny | 95.69 | 95.30 | 1
07
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 68.25 | 2.85 |
1
.6 | 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 89.57 | 2.12 |
6.5
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 92.10 | 2.12 |
6.5
| 使用 SSLD 预训练模型 |
| PPLCNet_x1_0 | 93.43 | 2.12 |
6.5
| 使用 SSLD 预训练模型+EDA 策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
9
5.60
<b>
|
<b>
2.12
<b>
|
<b>
6.5
<b>
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是会导致精度大幅下降。将 backbone 替换为速度更快的 PPLCNet_x1_0 时,精度较 MobileNetV3_small_x0_35 高 20 多个百分点,与此同时速度依旧可以快 20% 以上。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升约 2.6 个百分点,进一步地,当融合EDA策略后,精度可以再提升 1.3 个百分点,最后,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 2.
2
个百分点。此时,PPLCNet_x1_0 达到了 SwinTranformer_tiny 模型的精度,但是速度快 40 多倍。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
| SwinTranformer_tiny | 95.69 | 95.30 | 1
11
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 68.25 | 2.85 |
2
.6 | 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 89.57 | 2.12 |
7.0
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 92.10 | 2.12 |
7.0
| 使用 SSLD 预训练模型 |
| PPLCNet_x1_0 | 93.43 | 2.12 |
7.0
| 使用 SSLD 预训练模型+EDA 策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
9
6.23
<b>
|
<b>
2.12
<b>
|
<b>
7.0
<b>
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是会导致精度大幅下降。将 backbone 替换为速度更快的 PPLCNet_x1_0 时,精度较 MobileNetV3_small_x0_35 高 20 多个百分点,与此同时速度依旧可以快 20% 以上。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升约 2.6 个百分点,进一步地,当融合EDA策略后,精度可以再提升 1.3 个百分点,最后,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 2.
8
个百分点。此时,PPLCNet_x1_0 达到了 SwinTranformer_tiny 模型的精度,但是速度快 40 多倍。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
**备注:**
...
...
docs/zh_CN/PULC/PULC_safety_helmet.md
浏览文件 @
fe9dd370
...
...
@@ -39,19 +39,19 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的“是否佩戴安全帽”的二分类模型。该模型可以广泛应用于如建筑施工场景、工厂车间场景、交通场景等。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的“是否佩戴安全帽”的二分类模型。该模型可以广泛应用于如建筑施工场景、工厂车间场景、交通场景等。
下表列出了判断图片中是否佩戴安全帽的二分类模型的相关指标,
展现了使用 Res2Net200_vd_26w_4s,SwinTranformer_tiny 和 MobileNetV3_large_x1_0 作为 backbone 训练得到的模型的相关指标,第三行至第六
行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + UDML 知识蒸馏策略训练得到的模型的相关指标。
下表列出了判断图片中是否佩戴安全帽的二分类模型的相关指标,
前三行展现了使用 Res2Net200_vd_26w_4s,SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第四行至第七
行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + UDML 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | Tpr(%) | 延时(ms) | 存储(M) | 策略 |
|-------|-----------|----------|---------------|---------------|
| SwinTranformer_tiny | 93.57 | 91.32 | 1
07
| 使用ImageNet预训练模型 |
| SwinTranformer_tiny | 93.57 | 91.32 | 1
11
| 使用ImageNet预训练模型 |
| Res2Net200_vd_26w_4s | 98.92 | 80.99 | 284 | 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 84.83 | 2.85 |
1
.6 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 93.27 | 2.03 |
6.5
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.16 | 2.03 |
6.5
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 99.30 | 2.03 |
6.5
| 使用SSLD预训练模型+EDA策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
99.38
<b>
|
<b>
2.03
<b>
|
<b>
6.5
<b>
| 使用SSLD预训练模型+EDA策略+UDML知识蒸馏策略|
| MobileNetV3_small_x0_35 | 84.83 | 2.85 |
2
.6 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 93.27 | 2.03 |
7.1
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 98.16 | 2.03 |
7.1
| 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 99.30 | 2.03 |
7.1
| 使用SSLD预训练模型+EDA策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
99.38
<b>
|
<b>
2.03
<b>
|
<b>
7.1
<b>
| 使用SSLD预训练模型+EDA策略+UDML知识蒸馏策略|
从表中可以看出,在使用服务器端大模型作为 backbone 时,SwinTranformer_tiny 精度较低,Res2Net200_vd_26w_4s 精度较高,但服务器端大模型推理速度普遍较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是精度显著降低。在将 backbone 替换为 PPLCNet_x1_0 后,精度较 MobileNetV3_small_x0_35 提高约 8.5 个百分点,与此同时速度快 20% 以上。在此基础上,将 PPLCNet_x1_0 的预训练模型替换为 SSLD 预训练模型后,在对推理速度无影响的前提下,精度提升约 4.9 个百分点,进一步地使用 EDA 策略后,精度可以再提升 1.1 个百分点。此时,PPLCNet_x1_0 已经超过 Res2Net200_vd_26w_4s 模型的精度,但是速度快 70+ 倍。最后,在使用 UDML 知识蒸馏后,精度可以再提升 0.08 个百分点。下面详细介绍关于 PULC 安全帽模型的训练方法和推理部署方法。
...
...
docs/zh_CN/PULC/PULC_text_image_orientation.md
浏览文件 @
fe9dd370
...
...
@@ -36,17 +36,17 @@
## 1. 模型和应用场景介绍
在诸如文档扫描、证照拍摄等过程中,有时为了拍摄更清晰,会将拍摄设备进行旋转,导致得到的图片也是不同方向的。此时,标准的OCR流程无法很好地应对这些数据。利用图像分类技术,可以预先判断含文字图像的方向,并将其进行方向调整,从而提高OCR处理的准确性。该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的含文字图像方向的分类模型。该模型可以广泛应用于金融、政务等行业的旋转图片的OCR处理场景中。
在诸如文档扫描、证照拍摄等过程中,有时为了拍摄更清晰,会将拍摄设备进行旋转,导致得到的图片也是不同方向的。此时,标准的OCR流程无法很好地应对这些数据。利用图像分类技术,可以预先判断含文字图像的方向,并将其进行方向调整,从而提高OCR处理的准确性。该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的含文字图像方向的分类模型。该模型可以广泛应用于金融、政务等行业的旋转图片的OCR处理场景中。
下表列出了判断含文字图像方向分类模型的相关指标,前两行展现了使用 SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第五行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用EDA策略训练得到的模型的相关指标。
| 模型 | 精度(%) | 延时(ms) | 存储(M) | 策略 |
| ----------------------- | --------- | ---------- | --------- | -------------------------- |
| SwinTranformer_tiny | 99.12 | 89.65 | 1
07
| 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 83.61 | 2.95 |
17
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 97.85 | 2.16 |
6.5
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 99.02 | 2.16 |
6.5
| 使用SSLD预训练模型 |
|
**PPLCNet_x1_0**
|
**99.06**
|
**2.16**
|
**
6.5
**
| 使用SSLD预训练模型+EDA策略 |
| SwinTranformer_tiny | 99.12 | 89.65 | 1
11
| 使用ImageNet预训练模型 |
| MobileNetV3_small_x0_35 | 83.61 | 2.95 |
2.6
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 97.85 | 2.16 |
7.1
| 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 99.02 | 2.16 |
7.1
| 使用SSLD预训练模型 |
|
**PPLCNet_x1_0**
|
**99.06**
|
**2.16**
|
**
7.1
**
| 使用SSLD预训练模型+EDA策略 |
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度比较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度提升明显,但精度有了大幅下降。将 backbone 替换为 PPLCNet_x1_0 时,速度略为提升,同时精度较 MobileNetV3_small_x0_35 高了 14.24 个百分点。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升 1.17 个百分点,进一步地使用 EDA 策略后,精度可以再提升 0.04 个百分点。此时,PPLCNet_x1_0 与 SwinTranformer_tiny 的精度差别不大,但是速度明显变快。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
docs/zh_CN/PULC/PULC_textline_orientation.md
浏览文件 @
fe9dd370
...
...
@@ -40,20 +40,20 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的文本行方向分类模型。该模型可以广泛应用于如文字矫正、文字识别等场景。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的文本行方向分类模型。该模型可以广泛应用于如文字矫正、文字识别等场景。
下表列出了文本行方向分类模型的相关指标,前两行展现了使用 Res2Net200_vd 和 MobileNetV3_
large_x1_0
作为 backbone 训练得到的模型的相关指标,第三行至第七行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
下表列出了文本行方向分类模型的相关指标,前两行展现了使用 Res2Net200_vd 和 MobileNetV3_
small_x0_35
作为 backbone 训练得到的模型的相关指标,第三行至第七行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | Top-1 Acc(%) | 延时(ms) | 存储(M) | 策略 |
|-------|-----------|----------|---------------|---------------|
| SwinTranformer_tiny | 93.61 | 89.64 | 1
07
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 81.40 | 2.96 |
17
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 89.99 | 2.11 |
6.5
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0
*
| 94.06 | 2.68 |
6.5
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0
*
| 94.11 | 2.68 |
6.5
| 使用 SSLD 预训练模型 |
|
<b>
PPLCNet_x1_0
**
<b>
|
<b>
96.01
<b>
|
<b>
2.72
<b>
|
<b>
6.5
<b>
| 使用 SSLD 预训练模型+EDA 策略|
| PPLCNet_x1_0
**
| 95.86 | 2.72 |
6.5
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
| SwinTranformer_tiny | 93.61 | 89.64 | 1
11
| 使用 ImageNet 预训练模型 |
| MobileNetV3_small_x0_35 | 81.40 | 2.96 |
2.6
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0 | 89.99 | 2.11 |
7.0
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0
*
| 94.06 | 2.68 |
7.0
| 使用 ImageNet 预训练模型 |
| PPLCNet_x1_0
*
| 94.11 | 2.68 |
7.0
| 使用 SSLD 预训练模型 |
|
<b>
PPLCNet_x1_0
**
<b>
|
<b>
96.01
<b>
|
<b>
2.72
<b>
|
<b>
7.0
<b>
| 使用 SSLD 预训练模型+EDA 策略|
| PPLCNet_x1_0
**
| 95.86 | 2.72 |
7.0
| 使用 SSLD 预训练模型+EDA 策略+SKL-UGI 知识蒸馏策略|
从表中可以看出,backbone 为 SwinTranformer_tiny 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,精度下降也比较明显。将 backbone 替换为 PPLCNet_x1_0 时,精度较 MobileNetV3_small_x0_35 高 8.6 个百分点,速度快10%左右。在此基础上,更改分辨率和stride, 速度变慢 27%,但是精度可以提升 4.5 个百分点(采用
[
PaddleOCR
](
https://github.com/PaddlePaddle/PaddleOCR
)
的方案),使用 SSLD 预训练模型后,精度可以继续提升约 0.05 个百分点 ,进一步地,当融合EDA策略后,精度可以再提升 1.9 个百分点。最后,融合SKL-UGI 知识蒸馏策略后,在该场景无效。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
docs/zh_CN/PULC/PULC_traffic_sign.md
浏览文件 @
fe9dd370
...
...
@@ -40,7 +40,7 @@
## 1. 模型和应用场景介绍
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight Classification)快速构建轻量级、高精度、可落地的交通标志分类模型。该模型可以广泛应用于自动驾驶、道路监控等场景。
该案例提供了用户使用 PaddleClas 的超轻量图像分类方案(PULC,Practical Ultra Lightweight
image
Classification)快速构建轻量级、高精度、可落地的交通标志分类模型。该模型可以广泛应用于自动驾驶、道路监控等场景。
下表列出了不同交通标志分类模型的相关指标,前两行展现了使用 SwinTranformer_tiny 和 MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第三行至第六行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
...
...
docs/zh_CN/PULC/PULC_vehicle_attribute.md
浏览文件 @
fe9dd370
...
...
@@ -45,7 +45,7 @@
下表列出了不同车辆属性识别模型的相关指标,前三行展现了使用 Res2Net200_vd_26w_4s、 ResNet50、MobileNetV3_small_x0_35 作为 backbone 训练得到的模型的相关指标,第四行至第七行依次展现了替换 backbone 为 PPLCNet_x1_0、使用 SSLD 预训练模型、使用 SSLD 预训练模型 + EDA 策略、使用 SSLD 预训练模型 + EDA 策略 + SKL-UGI 知识蒸馏策略训练得到的模型的相关指标。
| 模型 | m
a
(%) | 延时(ms) | 存储(M) | 策略 |
| 模型 | m
A
(%) | 延时(ms) | 存储(M) | 策略 |
|-------|-----------|----------|---------------|---------------|
| Res2Net200_vd_26w_4s | 91.36 | 79.46 | 293 | 使用ImageNet预训练模型 |
| ResNet50 | 89.98 | 12.83 | 92 | 使用ImageNet预训练模型 |
...
...
@@ -53,7 +53,7 @@
| PPLCNet_x1_0 | 89.57 | 2.36 | 7.2 | 使用ImageNet预训练模型 |
| PPLCNet_x1_0 | 90.07 | 2.36 | 7.2 | 使用SSLD预训练模型 |
| PPLCNet_x1_0 | 90.59 | 2.36 | 7.2 | 使用SSLD预训练模型+EDA策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
90.81
<b>
|
<b>
2.36
<b>
|
<b>
8
.2
<b>
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略|
|
<b>
PPLCNet_x1_0
<b>
|
<b>
90.81
<b>
|
<b>
2.36
<b>
|
<b>
7
.2
<b>
| 使用SSLD预训练模型+EDA策略+SKL-UGI知识蒸馏策略|
从表中可以看出,backbone 为 Res2Net200_vd_26w_4s 时精度较高,但是推理速度较慢。将 backbone 替换为轻量级模型 MobileNetV3_small_x0_35 后,速度可以大幅提升,但是精度下降明显。将 backbone 替换为 PPLCNet_x1_0 时,精度提升 2 个百分点,同时速度也提升 23% 左右。在此基础上,使用 SSLD 预训练模型后,在不改变推理速度的前提下,精度可以提升约 0.5 个百分点,进一步地,当融合EDA策略后,精度可以再提升 0.52 个百分点,最后,在使用 SKL-UGI 知识蒸馏后,精度可以继续提升 0.23 个百分点。此时,PPLCNet_x1_0 的精度与 Res2Net200_vd_26w_4s 仅相差 0.55 个百分点,但是速度快 32 倍。关于 PULC 的训练方法和推理部署方法将在下面详细介绍。
...
...
ppcls/configs/PULC/language_classification/PPLCNet_x1_0.yaml
浏览文件 @
fe9dd370
...
...
@@ -11,7 +11,7 @@ Global:
print_batch_step
:
10
use_visualdl
:
False
# used for static mode and model export
image_shape
:
[
3
,
224
,
224
]
image_shape
:
[
3
,
80
,
160
]
save_inference_dir
:
./inference
# model architecture
...
...
ppcls/configs/PULC/language_classification/PPLCNet_x1_0_search.yaml
浏览文件 @
fe9dd370
...
...
@@ -11,7 +11,7 @@ Global:
print_batch_step
:
10
use_visualdl
:
False
# used for static mode and model export
image_shape
:
[
3
,
224
,
224
]
image_shape
:
[
3
,
48
,
192
]
save_inference_dir
:
./inference
start_eval_epoch
:
20
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录