Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MegEngine 天元
MegEngine
提交
5c232352
MegEngine
项目概览
MegEngine 天元
/
MegEngine
1 年多 前同步成功
通知
403
Star
4705
Fork
582
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MegEngine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
5c232352
编写于
6月 12, 2020
作者:
M
Megvii Engine Team
提交者:
Xu Xinran
6月 19, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
test(mge/quantization): add `quantize_disabled` related test
GitOrigin-RevId: f62ba600c537f60e1229b852b97cd67897bf236d
上级
ab913025
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
19 addition
and
4 deletion
+19
-4
python_module/megengine/module/module.py
python_module/megengine/module/module.py
+1
-0
python_module/megengine/quantization/quantize.py
python_module/megengine/quantization/quantize.py
+1
-3
python_module/test/unit/quantization/quantize.py
python_module/test/unit/quantization/quantize.py
+17
-1
未找到文件。
python_module/megengine/module/module.py
浏览文件 @
5c232352
...
...
@@ -318,6 +318,7 @@ class Module(metaclass=ABCMeta):
Set ``module``'s ``quantize_diabled`` attribute and return ``module``.
Could be used as a decorator.
"""
def
fn
(
module
:
Module
)
->
None
:
module
.
quantize_diabled
=
value
...
...
python_module/megengine/quantization/quantize.py
浏览文件 @
5c232352
...
...
@@ -80,9 +80,7 @@ def quantize(module: Module, inplace: bool = True):
def
quantize_qat
(
module
:
Module
,
inplace
:
bool
=
True
,
qconfig
:
QConfig
=
ema_fakequant_qconfig
,
module
:
Module
,
inplace
:
bool
=
True
,
qconfig
:
QConfig
=
ema_fakequant_qconfig
,
):
r
"""
Recursively convert float :class:`~.Module` to :class:`~.QATModule`
...
...
python_module/test/unit/quantization/quantize.py
浏览文件 @
5c232352
...
...
@@ -7,7 +7,7 @@
# "AS IS" BASIS, WITHOUT ARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
from
megengine
import
module
as
Float
from
megengine.module
import
qat
as
QAT
from
megengine.quantization.quantize
import
_get_quantable_module_names
from
megengine.quantization.quantize
import
_get_quantable_module_names
,
quantize_qat
def
test_get_quantable_module_names
():
...
...
@@ -36,3 +36,19 @@ def test_get_quantable_module_names():
and
issubclass
(
value
,
Float
.
Module
)
and
value
!=
Float
.
Module
)
def
test_disable_quantize
():
class
Net
(
Float
.
Module
):
def
__init__
(
self
):
super
().
__init__
()
self
.
conv
=
Float
.
ConvBnRelu2d
(
3
,
3
,
3
)
self
.
conv
.
disable_quantize
()
def
forward
(
self
,
x
):
return
self
.
conv
(
x
)
net
=
Net
()
qat_net
=
quantize_qat
(
net
,
inplace
=
False
)
assert
isinstance
(
qat_net
.
conv
,
Float
.
ConvBnRelu2d
)
assert
isinstance
(
qat_net
.
conv
.
conv
,
Float
.
Conv2d
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录