Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleSlim
提交
702f6a6e
P
PaddleSlim
项目概览
PaddlePaddle
/
PaddleSlim
大约 1 年 前同步成功
通知
51
Star
1434
Fork
344
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
53
列表
看板
标记
里程碑
合并请求
16
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleSlim
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
53
Issue
53
列表
看板
标记
里程碑
合并请求
16
合并请求
16
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
702f6a6e
编写于
5月 17, 2022
作者:
W
whs
提交者:
GitHub
5月 17, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update README for release 2.3.0
上级
a1d921af
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
67 addition
and
59 deletion
+67
-59
README.md
README.md
+67
-59
未找到文件。
README.md
浏览文件 @
702f6a6e
# PaddleSlim
[
![Documentation Status
](
https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat
)
](https://paddleslim.readthedocs.io/en/latest/)
[
![Documentation Status
](
https://img.shields.io/badge/中文文档-最新-brightgreen.svg
)
](https://paddleslim.readthedocs.io/zh_CN/latest/)
[
![License
](
https://img.shields.io/badge/license-Apache%202-blue.svg
)
](LICENSE)
<p
align=
"center"
>
<h1
align=
"center"
>
PaddleSlim
</h1>
</p>
## 简介
<p
align=
"center"
>
<a
href=
"./LICENSE"
><img
src=
"https://img.shields.io/badge/license-Apache%202-blue.svg"
></a>
<a
href=
"https://paddleslim.readthedocs.io/en/latest/"
><img
src=
"https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat"
></a>
<a
href=
"https://paddleslim.readthedocs.io/zh_CN/latest/"
><img
src=
"https://img.shields.io/badge/中文文档-最新-brightgreen.svg"
></a>
</p>
PaddleSlim是一个专注于深度学习模型压缩的工具库,提供
**低比特量化、知识蒸馏、稀疏化和模型结构搜索**
等模型压缩策略,帮助用户快速实现模型的小型化。
## 产品动态
-
🔥
**2022.05.23: 发布
v2.3.0版本
**
-
🔥
**2022.05.23: 发布
[v2.3.0版本](https://github.com/PaddlePaddle/PaddleSlim/releases/tag/v2.3.0)
**
-
发布
自动压缩功能
-
发布
[
自动压缩功能
](
demo/auto_compression
)
- 支持代码无感知压缩:用户只需提供推理模型文件和数据,既可进行离线量化(PTQ)、量化训练(QAT)、稀疏训练等压缩任务
- 支持自动策略选择,根据任务特点和部署环境特性:自动搜索合适的离线量化方法,自动搜索最佳的压缩策略组合方式
- 提供了
自然语言处理、图像语义分割、图像目标检测
三个方向的自动压缩示例
- 提供了
[自然语言处理](demo/auto_compression/nlp)、[图像语义分割](demo/auto_compression/semantic_segmentation)、[图像目标检测](demo/auto_compression/detection)
三个方向的自动压缩示例
-
升级量化功能
...
...
@@ -46,49 +49,10 @@ PaddleSlim是一个专注于深度学习模型压缩的工具库,提供**低
-
增强剪枝功能
-
修复OFA功能若干bug
-
**2021.2.5: 发布V2.0.0版本**
-
新增支持动态图
-
新增OFA压缩功能
-
优化剪枝功能
-
**2020.9.16: 发布V1.2.0版本**
-
新增PACT量化训练功能
-
新增DML(互蒸馏功能)
-
修复部分剪裁bug,加强对depthwise_conv2d的剪裁能力
-
优化剪裁和量化API的易用性和灵活性
更多信息请参考:
[
release note
](
https://github.com/PaddlePaddle/PaddleSlim/releases
)
## 版本对齐
| PaddleSlim | PaddlePaddle | PaddleLite |
| :-----------: | :------------: | :------------:|
| 1.0.1 | <=1.7 | 2.7 |
| 1.1.1 | 1.8 | 2.7 |
| 1.2.0 | 2.0Beta/RC | 2.8 |
| 2.0.0 | 2.0 | 2.8 |
| 2.1.0 | 2.1.0 | 2.8 |
| 2.1.1 | 2.1.1 | >=2.8 |
| 2.3.0 | 2.3.0 | >=2.11 |
## 安装
安装最新版本:
```
bash
pip
install
paddleslim
-i
https://pypi.tuna.tsinghua.edu.cn/simple
```
安装指定版本:
```
bash
pip
install
paddleslim
==
2.3.0
-i
https://pypi.tuna.tsinghua.edu.cn/simple
```
## 功能概览
## 基础压缩功能概览
PaddleSlim支持以下功能,也支持自定义量化、裁剪等功能。
<table>
...
...
@@ -143,13 +107,13 @@ PaddleSlim支持以下功能,也支持自定义量化、裁剪等功能。
-
*表示仅支持静态图,*
*
表示仅支持动态图
-
敏感度裁剪指的是通过各个层的敏感度分析来确定各个卷积层的剪裁率,需要和其他裁剪方法配合使用。
### 效果展示
###
多场景
效果展示
PaddleSlim在典型视觉和自然语言处理任务上做了模型压缩,并且测试了Nvidia GPU、ARM等设备上的加速情况,这里展示部分模型的压缩效果,详细方案可以参考下面CV和NLP模型压缩方案:
<p
align=
"center"
>
<img
src=
"docs/images/benchmark.png"
height=
185
width=
849
hspace=
'10'
/>
<br
/>
<strong>
表1: 部分模型压缩加速情况
</strong>
<strong>
表1: 部分
场景
模型压缩加速情况
</strong>
</p>
注:
...
...
@@ -157,19 +121,63 @@ PaddleSlim在典型视觉和自然语言处理任务上做了模型压缩,并
-
PP-OCR: 体积由8.9M减少到2.9M, 在SD855上加速1.27倍。
-
BERT: 模型参数由110M减少到80M,精度提升的情况下,Tesla T4 GPU FP16计算加速1.47倍。
### 离线量化效果对比
<p
align=
"center"
>
<img
width=
"750"
alt=
"image"
src=
"https://user-images.githubusercontent.com/7534971/168772388-cbb089a2-0ab8-4448-bc36-79204d9ce6ee.png"
/>
<br
/>
<strong>
表2: 多种离线量化方法效果对比
</strong>
</p>
### 自动压缩效果展示
<p
align=
"center"
>
<img
width=
"800"
alt=
"image"
src=
"https://user-images.githubusercontent.com/7534971/168772918-ce4ad5e3-27a5-4536-b304-fe250f1e9860.png"
/>
<br
/>
<strong>
表3: 自动压缩效果
</strong>
</p>
## 文档教程
## 版本对齐
| PaddleSlim | PaddlePaddle | PaddleLite |
| :-----------: | :------------: | :------------:|
| 1.0.1 | <=1.7 | 2.7 |
| 1.1.1 | 1.8 | 2.7 |
| 1.2.0 | 2.0Beta/RC | 2.8 |
| 2.0.0 | 2.0 | 2.8 |
| 2.1.0 | 2.1.0 | 2.8 |
| 2.1.1 | 2.1.1 | >=2.8 |
| 2.3.0 | 2.3.0 | >=2.11 |
## 安装
安装最新版本:
```
bash
pip
install
paddleslim
-i
https://pypi.tuna.tsinghua.edu.cn/simple
```
安装指定版本:
```
bash
pip
install
paddleslim
==
2.3.0
-i
https://pypi.tuna.tsinghua.edu.cn/simple
```
### 快速开始
快速开始教程是能基于CIFAR10数据集快速运行起来的简单示例,若您是Paddle官方模型套件用户,请直接使用下方的CV模型压缩或者NLP模型压缩中教程。
-
量化训练 -
[
动态图
](
docs/zh_cn/quick_start/dygraph/dygraph_quant_aware_training_tutorial.md
)
|
[
静态图
](
docs/zh_cn/quick_start/static/quant_aware_tutorial.md
)
-
离线量化 -
[
动态图
](
docs/zh_cn/quick_start/dygraph/dygraph_quant_post_tutorial.md
)
|
[
静态图
](
docs/zh_cn/quick_start/static/quant_post_static_tutorial.md
)
-
剪裁 -
[
动态图
](
docs/zh_cn/quick_start/dygraph/dygraph_pruning_tutorial.md
)
|
[
静态图
](
docs/zh_cn/quick_start/static/pruning_tutorial.md
)
-
蒸馏 -
[
静态图
](
docs/zh_cn/quick_start/static/distillation_tutorial.md
)
-
NAS -
[
静态图
](
docs/zh_cn/quick_start/static/nas_tutorial.md
)
-
🔥
[
自动压缩
](
demo/auto_compression
)
-
[
量化训练
](
docs/zh_cn/quick_start/static/quant_aware_tutorial.md
)
-
[
离线量化
](
docs/zh_cn/quick_start/static/quant_post_static_tutorial.md
)
-
[
结构化剪枝
](
docs/zh_cn/quick_start/static/pruning_tutorial.md
)
-
[
蒸馏
](
docs/zh_cn/quick_start/static/distillation_tutorial.md
)
-
[
NAS
](
docs/zh_cn/quick_start/static/nas_tutorial.md
)
###
进阶
教程
###
更多
教程
进阶教程详细介绍了每一步的流程,帮助您把相应方法迁移到您自己的模型上。
...
...
@@ -183,9 +191,9 @@ PaddleSlim在典型视觉和自然语言处理任务上做了模型压缩,并
-
低比特量化
-
[
三种量化方法介绍与应用
](
docs/zh_cn/tutorials/quant/overview.md
)
-
量化训练:
[
动态图
](
docs/zh_cn/tutorials/quant/dygraph/quant_aware_training_tutorial.md
)
|
[
静态图
](
docs/zh_cn/quick_start/static/quant_aware_tutorial.md
)
-
离线量化:
[
动态图
](
docs/zh_cn/tutorials/quant/dygraph/dygraph_quant_post_tutorial.md
)
|
[
静态图
](
docs/zh_cn/tutorials/quant/static/quant_post_tutorial.md
)
-
embedding量化:
[
静态图
](
docs/zh_cn/tutorials/quant/static/embedding_quant_tutorial.md
)
-
[
量化训练
](
docs/zh_cn/quick_start/static/quant_aware_tutorial.md
)
-
[
离线量化
](
docs/zh_cn/tutorials/quant/static/quant_post_tutorial.md
)
-
[
embedding量化
](
docs/zh_cn/tutorials/quant/static/embedding_quant_tutorial.md
)
-
NAS
-
[
四种NAS策略介绍和应用
](
docs/zh_cn/tutorials/nas/overview.md
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录