Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleSlim
提交
50ff5124
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看板
提交
50ff5124
编写于
12月 05, 2019
作者:
W
wanghaoshuang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add API doc for pruning.
上级
c62b957c
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
55 addition
and
5 deletion
+55
-5
doc/api_guide.md
doc/api_guide.md
+7
-5
doc/prune_api.md
doc/prune_api.md
+48
-0
未找到文件。
doc/api_guide.md
浏览文件 @
50ff5124
## [卷积通道剪裁](./prune_api.md)
## [蒸馏]()
###
[单进程蒸馏](../paddleslim/dist/single_distiller_api_doc.md)
-
[
单进程蒸馏
](
../paddleslim/dist/single_distiller_api_doc.md
)
###
[通道剪裁](../paddleslim/prune/prune_api.md)
-
[
通道剪裁
](
../paddleslim/prune/prune_api.md
)
### [量化](../paddleslim/quant/quantization_api_doc.md)
####
[量化训练](../paddleslim/quant/quantization_api_doc.md#量化训练API)
-
[
量化训练
](
../paddleslim/quant/quantization_api_doc.md#量化训练API
)
####
[离线量化](../paddleslim/quant/quantization_api_doc.md#离线量化API)
-
[
离线量化
](
../paddleslim/quant/quantization_api_doc.md#离线量化API
)
####
[embedding量化](../paddleslim/quant/quantization_api_doc.md#Embedding量化API)
-
[
embedding量化
](
../paddleslim/quant/quantization_api_doc.md#Embedding量化API
)
## [小模型结构搜索]()
doc/prune_api.md
0 → 100644
浏览文件 @
50ff5124
# 卷积通道剪裁API文档
## class Pruner
---
>paddleslim.prune.Pruner(criterion="l1_norm")[源代码]()
对卷积网络的通道进行一次剪裁。剪裁一个卷积层的通道,是指剪裁该卷积层输出的通道。卷积层的权重形状为
`[output_channel, input_channel, kernel_size, kernel_size]`
,通过剪裁该权重的第一纬度达到剪裁输出通道数的目的。
**参数:**
- **criterion:** 评估一个卷积层内通道重要性所参考的指标。目前仅支持`l1_norm`。默认为`l1_norm`。
**返回:**
一个Pruner类的实例
**示例代码:**
```
from paddleslim.prune import Pruner
pruner = Pruner()
```
---
>prune(program, scope, params, ratios, place=None, lazy=False, only_graph=False, param_backup=None, param_shape_backup=None)
对目标网络的一组卷积层的权重进行裁剪。
**参数:**
-
**program(paddle.fluid.Program):**
要裁剪的目标网络。更多关于Program的介绍请参考:
[
Program概念介绍
](
https://www.paddlepaddle.org.cn/documentation/docs/zh/api_cn/fluid_cn/Program_cn.html#program
)
。
-
**scope(paddle.fluid.Scope):**
要裁剪的权重所在的
`scope`
,Paddle中用
`scope`
实例存放模型参数和运行时变量的值。更多介绍请参考
[
Scope概念介绍
](
)
-
**params(list<str>):**
需要被裁剪的卷积层的参数的名称列表。可以通过以下方式查看模型中所有参数的名称:
```
for block in program.blocks:
for param in block.all_parameters():
print("param: {}; shape: {}".format(param.name, param.shape))
```
-
**ratios(list<float>):**
用于裁剪
`params`
的剪切率,类型为列表。该列表长度必须与
`params`
的长度一致。
-
**place(paddle.fluid.Place):**
---
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录