Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
63d0d2e0
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
大约 1 年 前同步成功
通知
280
Star
12117
Fork
2091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
200
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleHub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
200
Issue
200
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
63d0d2e0
编写于
2月 15, 2019
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix type error bug when deserialize parameter attribute
上级
c0604646
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
16 deletion
+19
-16
paddle_hub/paddle_helper.py
paddle_hub/paddle_helper.py
+19
-16
未找到文件。
paddle_hub/paddle_helper.py
浏览文件 @
63d0d2e0
...
...
@@ -17,6 +17,7 @@ from __future__ import division
from
__future__
import
print_function
from
paddle_hub
import
module_desc_pb2
from
paddle_hub.utils
import
from_pyobj_to_flexible_data
,
from_flexible_data_to_pyobj
from
paddle_hub.logger
import
logger
import
paddle
import
paddle.fluid
as
fluid
...
...
@@ -81,35 +82,37 @@ def from_flexible_data_to_param(flexible_data):
flexible_data
.
map
.
data
[
'optimize_attr'
])
if
flexible_data
.
map
.
data
[
'regularizer'
].
type
!=
module_desc_pb2
.
NONE
:
regularizer_type
=
flexible_data
.
map
.
data
[
'regularizer'
].
name
regularization_coeff
=
flexible_data
.
map
.
data
[
'regularizer'
].
object
.
data
[
'_regularization_coeff '
].
f
regularization_coeff
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'regularizer'
].
object
.
data
[
'_regularization_coeff'
])
param
[
'regularizer'
]
=
eval
(
"fluid.regularizer.%s(regularization_coeff = %f)"
%
(
regularizer_type
,
regularization_coeff
))
if
flexible_data
.
map
.
data
[
'
regularize
r'
].
type
!=
module_desc_pb2
.
NONE
:
if
flexible_data
.
map
.
data
[
'
gradient_clip_att
r'
].
type
!=
module_desc_pb2
.
NONE
:
clip_type
=
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
name
if
clip_type
==
"ErrorClipByValue"
or
clip_type
==
"GradientClipByValue"
:
max
=
flexible_data
.
map
.
data
[
'regularizer'
].
name
,
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'max'
].
f
min
=
flexible_data
.
map
.
data
[
'regularizer'
].
name
,
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'min'
].
f
max
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'max'
])
min
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'min'
])
param
[
'gradient_clip_attr'
]
=
eval
(
"fluid.clip.%s(max = %f, min = %f)"
%
(
clip_type
,
max
,
min
))
if
clip_type
==
"GradientClipByNorm"
:
clip_norm
=
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'clip_norm'
].
f
clip_norm
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'clip_norm'
])
param
[
'gradient_clip_attr'
]
=
eval
(
"fluid.clip.%s(clip_norm = %f)"
%
(
clip_type
,
clip_norm
))
if
clip_type
==
"GradientClipByGlobalNorm"
:
clip_norm
=
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'clip_norm'
].
f
group_name
=
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'group_name'
].
f
clip_norm
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'clip_norm'
])
group_name
=
from_flexible_data_to_pyobj
(
flexible_data
.
map
.
data
[
'gradient_clip_attr'
].
object
.
data
[
'group_name'
])
param
[
'gradient_clip_attr'
]
=
eval
(
"fluid.clip.%s(clip_norm = %f, group_name =
%f
)"
%
"fluid.clip.%s(clip_norm = %f, group_name =
\"
%s
\"
)"
%
(
clip_type
,
clip_norm
,
group_name
))
return
param
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录