Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MegEngine 天元
MegEngine
提交
38f7cbd9
MegEngine
项目概览
MegEngine 天元
/
MegEngine
1 年多 前同步成功
通知
404
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看板
提交
38f7cbd9
编写于
6月 12, 2020
作者:
M
Megvii Engine Team
提交者:
Xu Xinran
6月 19, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(mge/module): fix redundant recursion in `train()`
GitOrigin-RevId: 6b3566930b72c56b571debea1e1901745b0e7cdc
上级
5c232352
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
11 addition
and
9 deletion
+11
-9
python_module/megengine/module/module.py
python_module/megengine/module/module.py
+9
-7
python_module/megengine/quantization/observer.py
python_module/megengine/quantization/observer.py
+2
-2
未找到文件。
python_module/megengine/module/module.py
浏览文件 @
38f7cbd9
...
@@ -291,19 +291,21 @@ class Module(metaclass=ABCMeta):
...
@@ -291,19 +291,21 @@ class Module(metaclass=ABCMeta):
if
param
.
grad
is
not
None
:
if
param
.
grad
is
not
None
:
param
.
grad
.
reset_zero
()
param
.
grad
.
reset_zero
()
def
train
(
self
,
mode
:
bool
=
True
)
->
None
:
def
train
(
self
,
mode
:
bool
=
True
,
recursive
:
bool
=
True
)
->
None
:
"""Set training mode of all the modules within this module (including itself) to
"""Set training mode of all the modules within this module (including itself) to
``mode``. This effectively sets the ``training`` attributes of those modules
``mode``. This effectively sets the ``training`` attributes of those modules
to ``mode``, but only has effect on certain modules (e.g.
to ``mode``, but only has effect on certain modules (e.g.
:class:`~.BatchNorm2d`, :class:`~.Dropout`)
:class:`~.BatchNorm2d`, :class:`~.Dropout`
, :class:`~.Observer`
)
:param mode: The training mode to be set on modules.
:param mode: the training mode to be set on modules.
:param recursive: whether to recursively call submodules' ``train()``.
"""
"""
self
.
training
=
mode
if
not
recursive
:
self
.
training
=
mode
return
def
fn
(
x
)
->
None
:
def
fn
(
module
:
Module
)
->
None
:
if
x
is
not
self
:
module
.
train
(
mode
,
recursive
=
False
)
x
.
train
(
mode
=
mode
)
self
.
apply
(
fn
)
self
.
apply
(
fn
)
...
...
python_module/megengine/quantization/observer.py
浏览文件 @
38f7cbd9
...
@@ -60,8 +60,8 @@ class Observer(Module):
...
@@ -60,8 +60,8 @@ class Observer(Module):
def
disable
(
self
):
def
disable
(
self
):
self
.
enabled
=
False
self
.
enabled
=
False
def
train
(
self
,
mode
:
bool
=
True
)
->
None
:
def
train
(
self
,
mode
:
bool
=
True
,
recursive
:
bool
=
True
)
->
None
:
super
().
train
(
mode
)
super
().
train
(
mode
,
recursive
)
if
mode
:
if
mode
:
self
.
enable
()
self
.
enable
()
else
:
else
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录