Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
a96ef721
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
接近 2 年 前同步成功
通知
284
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看板
提交
a96ef721
编写于
1月 09, 2019
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
save more param info
上级
df4f8b00
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
32 addition
and
19 deletion
+32
-19
paddle_hub/module.py
paddle_hub/module.py
+17
-15
paddle_hub/module_creator.py
paddle_hub/module_creator.py
+15
-4
未找到文件。
paddle_hub/module.py
浏览文件 @
a96ef721
...
...
@@ -22,6 +22,7 @@ import paddle.fluid as fluid
import
numpy
as
np
import
tempfile
import
os
import
pickle
from
collections
import
defaultdict
from
paddle_hub.downloader
import
download_and_uncompress
...
...
@@ -88,21 +89,22 @@ class Module(object):
def
_process_parameter
(
self
):
global_block
=
self
.
inference_program
.
global_block
()
for
param
in
self
.
config
.
desc
.
parameters
:
name
=
param
.
name
if
name
in
global_block
.
vars
:
var
=
global_block
.
vars
[
name
]
global_block
.
create_parameter
(
name
=
name
,
trainable
=
param
.
trainable
,
shape
=
var
.
shape
,
dtype
=
var
.
dtype
,
optimize_attr
=
{
'learning_rate'
:
param
.
learning_rate
},
type
=
var
.
type
,
lod_level
=
var
.
lod_level
,
error_clip
=
var
.
error_clip
,
stop_gradient
=
var
.
stop_gradient
,
is_data
=
var
.
is_data
)
filepath
=
os
.
path
.
join
(
self
.
module_dir
,
"param.pkl"
)
with
open
(
filepath
,
"rb"
)
as
file
:
param_arr
=
pickle
.
load
(
file
)
for
param
in
param_arr
:
if
(
param
[
'name'
]
not
in
global_block
.
vars
):
continue
var
=
global_block
.
var
(
param
[
'name'
])
global_block
.
create_parameter
(
**
param
,
shape
=
var
.
shape
,
dtype
=
var
.
dtype
,
type
=
var
.
type
,
lod_level
=
var
.
lod_level
,
error_clip
=
var
.
error_clip
,
stop_gradient
=
var
.
stop_gradient
,
is_data
=
var
.
is_data
)
def
_construct_feed_dict
(
self
,
inputs
):
""" Construct feed dict according to user's inputs and module config.
...
...
paddle_hub/module_creator.py
浏览文件 @
a96ef721
...
...
@@ -23,6 +23,7 @@ from paddle_hub.signature import Signature
from
paddle_hub.module
import
mkdir
import
os
import
pickle
def
create_module
(
sign_arr
,
program
,
path
=
None
,
assets
=
None
):
...
...
@@ -46,11 +47,21 @@ def create_module(sign_arr, program, path=None, assets=None):
os
.
makedirs
(
os
.
path
.
join
(
path
,
"assets"
))
# save fluid Parameter
param_arr
=
[]
for
param
in
program
.
global_block
().
iter_parameters
():
parameter
=
module
.
parameters
.
add
()
parameter
.
name
=
param
.
name
parameter
.
learning_rate
=
param
.
optimize_attr
[
"learning_rate"
]
parameter
.
trainable
=
param
.
trainable
param_info
=
{
'name'
:
param
.
name
,
'regularizer'
:
param
.
regularizer
,
'gradient_clip_attr'
:
param
.
gradient_clip_attr
,
'trainable'
:
param
.
trainable
,
'optimize_attr'
:
param
.
optimize_attr
,
'do_model_average'
:
param
.
do_model_average
}
param_arr
.
append
(
param_info
)
pklname
=
os
.
path
.
join
(
path
,
"param.pkl"
)
with
open
(
pklname
,
"wb"
)
as
file
:
pickle
.
dump
(
param_arr
,
file
)
# save signarture info
sign_map
=
module
.
sign2var
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录