Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
DeepSpeech
提交
7399d560
D
DeepSpeech
项目概览
PaddlePaddle
/
DeepSpeech
大约 2 年 前同步成功
通知
210
Star
8425
Fork
1598
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
245
列表
看板
标记
里程碑
合并请求
3
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
DeepSpeech
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
245
Issue
245
列表
看板
标记
里程碑
合并请求
3
合并请求
3
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
7399d560
编写于
4月 17, 2023
作者:
Z
zxcd
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix scaler save and load.
上级
2f4414a5
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
14 addition
and
3 deletion
+14
-3
paddlespeech/s2t/exps/u2/model.py
paddlespeech/s2t/exps/u2/model.py
+1
-0
paddlespeech/s2t/training/trainer.py
paddlespeech/s2t/training/trainer.py
+13
-3
未找到文件。
paddlespeech/s2t/exps/u2/model.py
浏览文件 @
7399d560
...
@@ -82,6 +82,7 @@ class U2Trainer(Trainer):
...
@@ -82,6 +82,7 @@ class U2Trainer(Trainer):
with
context
():
with
context
():
if
scaler
:
if
scaler
:
scaler
.
scale
(
loss
).
backward
()
scaler
.
scale
(
loss
).
backward
()
scaler
.
unscale_
(
self
.
optimizer
)
else
:
else
:
loss
.
backward
()
loss
.
backward
()
layer_tools
.
print_grads
(
self
.
model
,
print_func
=
None
)
layer_tools
.
print_grads
(
self
.
model
,
print_func
=
None
)
...
...
paddlespeech/s2t/training/trainer.py
浏览文件 @
7399d560
...
@@ -11,6 +11,7 @@
...
@@ -11,6 +11,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# See the License for the specific language governing permissions and
# limitations under the License.
# limitations under the License.
import
os
import
sys
import
sys
import
time
import
time
from
collections
import
OrderedDict
from
collections
import
OrderedDict
...
@@ -189,8 +190,12 @@ class Trainer():
...
@@ -189,8 +190,12 @@ class Trainer():
"step"
:
self
.
iteration
,
"step"
:
self
.
iteration
,
"epoch"
:
self
.
epoch
,
"epoch"
:
self
.
epoch
,
"lr"
:
self
.
optimizer
.
get_lr
(),
"lr"
:
self
.
optimizer
.
get_lr
(),
"scaler"
:
self
.
scaler
.
state_dict
()
})
})
if
self
.
scaler
:
scaler_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
"{}"
.
format
(
self
.
epoch
))
+
'.scaler'
paddle
.
save
(
self
.
scaler
.
state_dict
(),
scaler_path
)
self
.
checkpoint
.
save_parameters
(
self
.
checkpoint_dir
,
self
.
iteration
self
.
checkpoint
.
save_parameters
(
self
.
checkpoint_dir
,
self
.
iteration
if
tag
is
None
else
tag
,
self
.
model
,
if
tag
is
None
else
tag
,
self
.
model
,
self
.
optimizer
,
infos
)
self
.
optimizer
,
infos
)
...
@@ -213,8 +218,13 @@ class Trainer():
...
@@ -213,8 +218,13 @@ class Trainer():
# lr will resotre from optimizer ckpt
# lr will resotre from optimizer ckpt
self
.
iteration
=
infos
[
"step"
]
self
.
iteration
=
infos
[
"step"
]
self
.
epoch
=
infos
[
"epoch"
]
self
.
epoch
=
infos
[
"epoch"
]
self
.
scaler
=
paddle
.
amp
.
GradScaler
()
self
.
scaler
.
load_state_dict
(
infos
[
"scaler"
])
scaler_path
=
os
.
path
.
join
(
self
.
checkpoint_dir
,
"{}"
.
format
(
self
.
epoch
))
+
'.scaler'
if
os
.
path
.
exists
(
scaler_path
):
scaler_state_dict
=
paddle
.
load
(
scaler_path
)
self
.
scaler
.
load_state_dict
(
scaler_state_dict
)
scratch
=
False
scratch
=
False
logger
.
info
(
logger
.
info
(
f
"Restore ckpt: epoch
{
self
.
epoch
}
, step
{
self
.
iteration
}
!"
)
f
"Restore ckpt: epoch
{
self
.
epoch
}
, step
{
self
.
iteration
}
!"
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录