Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleClas
提交
45e29bc0
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看板
提交
45e29bc0
编写于
10月 18, 2022
作者:
悟、
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update overview docs dir
上级
85c70946
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
23 addition
and
23 deletion
+23
-23
docs/zh_CN/quick_start/overview.md
docs/zh_CN/quick_start/overview.md
+23
-23
未找到文件。
docs/zh_CN/quick_start/overview.md
浏览文件 @
45e29bc0
...
...
@@ -17,7 +17,7 @@
<a
name=
"1. 项目整体介绍"
></a>
## 1. 项目整体介绍
PaddleClas是一个致力于为工业界和学术界提供运用PaddlePaddle快速实现图像分类和图像识别的套件库,能够帮助开发者训练和部署性能更强的视觉模型。同时,PaddleClas提供了数个特色方案:
[
PULC超轻量级图像分类方案
](
#31-PULC实用图像分类方案
)
、
[
PP-ShiTU图像识别系统
](
#32-PP-ShiTu图像识别系统
)
、
[
PP系列骨干网络模型
](
models/ImageNet1k/model_list.md
)
和
[
SSLD半监督知识蒸馏算法
](
training/advanced/ssld.md
)
。
PaddleClas是一个致力于为工业界和学术界提供运用PaddlePaddle快速实现图像分类和图像识别的套件库,能够帮助开发者训练和部署性能更强的视觉模型。同时,PaddleClas提供了数个特色方案:
[
PULC超轻量级图像分类方案
](
#31-PULC实用图像分类方案
)
、
[
PP-ShiTU图像识别系统
](
#32-PP-ShiTu图像识别系统
)
、
[
PP系列骨干网络模型
](
../models/ImageNet1k/model_list.md
)
和
[
SSLD半监督知识蒸馏算法
](
../
training/advanced/ssld.md
)
。
<div
align=
"center"
>
<img
src=
"https://user-images.githubusercontent.com/11568925/189267545-7a6eefa0-b4fc-4ed0-ae9d-7c6d53f59798.png"
/>
<p>
PaddleClas全景图
</p>
...
...
@@ -50,7 +50,7 @@ PaddleClas是一个致力于为工业界和学术界提供运用PaddlePaddle快
-
run_benchmark.sh:执行单独一个训练测试的脚本,具体调用方式,可查看脚本注释。
-
run_all.sh: 执行所有训练测试的入口脚本。
具体介绍可以
[
参考文档
](
../../benchmark/README.md
)
。
具体介绍可以
[
参考文档
](
../../
../../
benchmark/README.md
)
。
<a
name=
"2.1.2"
></a>
...
...
@@ -64,7 +64,7 @@ jpg/image_05145.jpg 1
jpg/image_05137.jpg 1
```
更详细的数据集格式说明请参考:
[
图像分类任务数据集说明
](
.
/training/single_label_classification/dataset.md
)
和
[
图像识别任务数据集说明
](
training/metric_learning/dataset.md
)
。
更详细的数据集格式说明请参考:
[
图像分类任务数据集说明
](
.
./training/single_label_classification/dataset.md
)
和
[
图像识别任务数据集说明
](
../
training/metric_learning/dataset.md
)
。
<a
name=
"2.1.3"
></a>
...
...
@@ -78,7 +78,7 @@ jpg/image_05137.jpg 1
**configs**
该文件夹包含PaddleClas提供的官方配置文件,包括了对应不同模型、方法的配置,可以直接调用训练或作为训练配置的参考,详细介绍可参考:
[
配置文件说明
](
training/config_description/basic.md
)
。以下简单介绍配置文件各字段功能:
该文件夹包含PaddleClas提供的官方配置文件,包括了对应不同模型、方法的配置,可以直接调用训练或作为训练配置的参考,详细介绍可参考:
[
配置文件说明
](
../
training/config_description/basic.md
)
。以下简单介绍配置文件各字段功能:
|字段名|功能|
|:---:|:---:|
|Global|该字段描述整体的训练配置,包括预训练权重、预训练模型、输出地址、训练设备、训练epoch数、输入图像大小等|
...
...
@@ -94,10 +94,10 @@ jpg/image_05137.jpg 1
|文件夹|功能|
|:---:|:---:|
|backbone|PaddleClas实现的骨干网络模型,,
`__init__.py`
中可以查看所有模型情况,具体骨干网络模型情况可参考:
[
骨干网络预训练库
](
models/ImageNet1k/model_list.md
)
|
|backbone|PaddleClas实现的骨干网络模型,,
`__init__.py`
中可以查看所有模型情况,具体骨干网络模型情况可参考:
[
骨干网络预训练库
](
../
models/ImageNet1k/model_list.md
)
|
|gears|包含特征提取网络的
`Neck`
和
`Head`
部分代码,在识别模型中用于对骨干网络提取的特征进行转换和处理。|-|
|distill|包含知识蒸馏相关代码,详细内容可参考:
[
知识蒸馏介绍
](
algorithm_introduction/knowledge_distillation.md
)
和
[
知识蒸馏实战
](
training/advanced/knowledge_distillation.md
)
|
|slim|包含模型量化相关代码,详细内容可参考
[
算法介绍
](
algorithm_introduction/prune_quantization.md
)
和
[
使用介绍
](
advanced/prune_quantization.md
)
|
|distill|包含知识蒸馏相关代码,详细内容可参考:
[
知识蒸馏介绍
](
../algorithm_introduction/knowledge_distillation.md
)
和
[
知识蒸馏实战
](
../
training/advanced/knowledge_distillation.md
)
|
|slim|包含模型量化相关代码,详细内容可参考
[
算法介绍
](
../algorithm_introduction/prune_quantization.md
)
和
[
使用介绍
](
../training/
advanced/prune_quantization.md
)
|
**data**
...
...
@@ -106,7 +106,7 @@ jpg/image_05137.jpg 1
|文件夹|功能|
|:---:|:---:|
|dataloader|该目录包含了不同的数据集采样方法(dataset)和不同的采样策略(sampler)|
|preprocess|该目录包含对数据的预处理和数据增广方法,包括对数据样本的处理(ops)和批数据处理方法(batch_ops),详细介绍可参考:
[
数据增强实战
](
training/config_description/data_augmentation.md
)
|
|preprocess|该目录包含对数据的预处理和数据增广方法,包括对数据样本的处理(ops)和批数据处理方法(batch_ops),详细介绍可参考:
[
数据增强实战
](
../
training/config_description/data_augmentation.md
)
|
|postprocess|对模型输出结果的后处理,输出对应的类别名、置信度、预测结果等|
|utils|其他常用函数|
...
...
@@ -147,19 +147,19 @@ jpg/image_05137.jpg 1
### 2.1.5 deploy
该目录包含了PaddleClas模型部署以及PP-ShiTu相关代码。以下文档为模型部署以及PP-ShiTu相关介绍教程,可配合文档对相应代码进行理解:
-
[
服务器端C++预测
](
../../deploy/cpp/readme.md
)
-
[
分类模型服务化部署
](
../../
deploy/paddleserving/readme
.md
)
-
[
基于PaddleHub Serving服务部署
](
../../deploy/hubserving/readme.md
)
-
[
Slim功能介绍
](
../../
deploy/slim/readme
.md
)
-
[
端侧部署
](
../../deploy/lite/readme.md
)
-
[
paddle2onnx模型转化与预测
](
../../deploy/paddle2onnx/readme.md
)
-
[
PP-ShiTu相关
](
models/PP-ShiTu/README.md
)
-
[
服务器端C++预测
](
../../
../
deploy/cpp/readme.md
)
-
[
分类模型服务化部署
](
../../
../deploy/paddleserving/README
.md
)
-
[
基于PaddleHub Serving服务部署
](
../../
../
deploy/hubserving/readme.md
)
-
[
Slim功能介绍
](
../../
../deploy/slim/README
.md
)
-
[
端侧部署
](
../../
../
deploy/lite/readme.md
)
-
[
paddle2onnx模型转化与预测
](
../../
../
deploy/paddle2onnx/readme.md
)
-
[
PP-ShiTu相关
](
../
models/PP-ShiTu/README.md
)
<a
name=
"2.1.6"
></a>
### 2.1.6 test_tipc
该目录包含了PaddleClas项目质量监控相关的脚本,提供了一键化测试各模型的各项性能指标的功能,详细内容请参考:
[
飞桨训推一体全流程开发文档
](
../../test_tipc/README.md
)
该目录包含了PaddleClas项目质量监控相关的脚本,提供了一键化测试各模型的各项性能指标的功能,详细内容请参考:
[
飞桨训推一体全流程开发文档
](
../../
../
test_tipc/README.md
)
<a
name=
"2.2"
></a>
...
...
@@ -171,30 +171,30 @@ jpg/image_05137.jpg 1
<p>
代码运行逻辑
</p>
</div>
注意:此处仅介绍整体运行逻辑,建议配合
[
启动训练的快速体验文档
](
quick_start/quick_start_classification_new_user.md
)
进行代码运行逻辑部分的理解。
注意:此处仅介绍整体运行逻辑,建议配合
[
启动训练的快速体验文档
](
../
quick_start/quick_start_classification_new_user.md
)
进行代码运行逻辑部分的理解。
<a
name=
"2.2.1"
></a>
### 2.2.1 编写配置文件
设置训练过程中的配置参数和各个模块的构建参数,
[
./ppcls/configs
](
../../ppcls/configs
)
中包含了PaddleClas官方提供的参考配置文件。
设置训练过程中的配置参数和各个模块的构建参数,
[
./ppcls/configs
](
../../
../
ppcls/configs
)
中包含了PaddleClas官方提供的参考配置文件。
<a
name=
"2.2.2"
></a>
### 2.2.2 启动训练
运行训练脚本
[
./tools/train.py
](
../../
tools/train.py
)
启动训练,该启动脚本首先对配置文件进行解析并调用
[
Engine类
](
../../ppcls/engine/engine.py
)
进行各模块构建。
运行训练脚本
[
./tools/train.py
](
../../
../tools/train.py
)
启动训练,该启动脚本首先对配置文件进行解析并调用
[
Engine类
](
../
../../ppcls/engine/engine.py
)
进行各模块构建。
<div
align=
"center"
>
<img
src=
"https://user-images.githubusercontent.com/108920665/196380536-d9161e04-5d69-4e24-b57f-389918830cf5.png"
/>
</div>
模块构建主要调用
`./ppcls`
文件夹下各模块的
`build函数`
(位于各模块的的
`__init__.py`
文件)以及配置文件中对应参数进行构建,如下图在Engine类中调用
[
build_dataloader()函数
](
../../ppcls/data/__init__.py
)
构建dataloader。
模块构建主要调用
`./ppcls`
文件夹下各模块的
`build函数`
(位于各模块的的
`__init__.py`
文件)以及配置文件中对应参数进行构建,如下图在Engine类中调用
[
build_dataloader()函数
](
../../
../
ppcls/data/__init__.py
)
构建dataloader。
<div
align=
"center"
>
<img
src=
"https://user-images.githubusercontent.com/108920665/196381203-4eb961ba-c554-49a5-87ce-a9649f96bbf7.png"
/>
</div>
训练脚本
[
./tools/train.py
](
../../
tools/train.py
)
调用Engine类完成训练所需的各个模块构建后,会调用Engine类中的
`train()`
方法启动训练,该方法使用
[
./ppcls/engine/train/train.py
](
../../ppcls/engine/train/train.py
)
中的
`train_epoch()函数`
进行模型训练。
训练脚本
[
./tools/train.py
](
../../
../tools/train.py
)
调用Engine类完成训练所需的各个模块构建后,会调用Engine类中的
`train()`
方法启动训练,该方法使用
[
./ppcls/engine/train/train.py
](
../
../../ppcls/engine/train/train.py
)
中的
`train_epoch()函数`
进行模型训练。
<div
align=
"center"
>
<img
src=
"https://user-images.githubusercontent.com/108920665/196381856-28079311-3401-46e6-aaf2-db88c326de4c.png"
/>
</div>
...
...
@@ -208,7 +208,7 @@ jpg/image_05137.jpg 1
<a
name=
"3.1"
></a>
### 3.1 PULC超轻量级图像分类方案
PULC是PaddleClas为了解决企业应用难题,让分类模型的训练和调参更加容易,总结出的实用轻量图像分类解决方案(PULC, Practical Ultra Lightweight Classification)。PULC融合了骨干网络、数据增广、蒸馏等多种前沿算法,可以自动训练得到轻量且高精度的图像分类模型。详情请参考:
[
PULC详细介绍
](
zh_CN
/training/PULC.md
)
PULC是PaddleClas为了解决企业应用难题,让分类模型的训练和调参更加容易,总结出的实用轻量图像分类解决方案(PULC, Practical Ultra Lightweight Classification)。PULC融合了骨干网络、数据增广、蒸馏等多种前沿算法,可以自动训练得到轻量且高精度的图像分类模型。详情请参考:
[
PULC详细介绍
](
..
/training/PULC.md
)
<div
align=
"center"
>
<img
src=
"https://user-images.githubusercontent.com/19523330/173011854-b10fcd7a-b799-4dfd-a1cf-9504952a3c44.png"
/>
<p>
PULC超轻量级图像分类方案
</p>
...
...
@@ -217,7 +217,7 @@ PULC是PaddleClas为了解决企业应用难题,让分类模型的训练和调
<a
name=
"3.2"
></a>
### 3.2 PP-ShiTu图像识别系统
PP-ShiTuV2是一个实用的轻量级通用图像识别系统,主要由主体检测、特征学习和向量检索三个模块组成。该系统从骨干网络选择和调整、损失函数的选择、数据增强、学习率变换策略、正则化参数选择、预训练模型使用以及模型裁剪量化多个方面,采用多种策略,对各个模块的模型进行优化,PP-ShiTuV2相比V1,Recall1提升近8个点。更多细节请参考:
[
PP-ShiTuV2图像识别系统
](
models/PP-ShiTu/README.md
)
PP-ShiTuV2是一个实用的轻量级通用图像识别系统,主要由主体检测、特征学习和向量检索三个模块组成。该系统从骨干网络选择和调整、损失函数的选择、数据增强、学习率变换策略、正则化参数选择、预训练模型使用以及模型裁剪量化多个方面,采用多种策略,对各个模块的模型进行优化,PP-ShiTuV2相比V1,Recall1提升近8个点。更多细节请参考:
[
PP-ShiTuV2图像识别系统
](
../
models/PP-ShiTu/README.md
)
<div
align=
"center"
>
<img
src=
"../images/structure.jpg"
/>
<p>
PULC超轻量级图像分类方案
</p>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录