Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
hapi
提交
90a90cf9
H
hapi
项目概览
PaddlePaddle
/
hapi
通知
11
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
7
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hapi
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
7
合并请求
7
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
90a90cf9
编写于
12月 31, 2019
作者:
Y
Yang Zhang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update to use new `Optimizer` interface
上级
7a64fd68
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
12 addition
and
2 deletion
+12
-2
mnist.py
mnist.py
+3
-2
model.py
model.py
+9
-0
未找到文件。
mnist.py
浏览文件 @
90a90cf9
...
@@ -118,8 +118,6 @@ if __name__ == '__main__':
...
@@ -118,8 +118,6 @@ if __name__ == '__main__':
guard
=
null_guard
()
guard
=
null_guard
()
with
guard
:
with
guard
:
# sgd = SGDOptimizer(learning_rate=1e-3)
sgd
=
MomentumOptimizer
(
learning_rate
=
1e-3
,
momentum
=
0.9
)
train_loader
=
fluid
.
io
.
xmap_readers
(
train_loader
=
fluid
.
io
.
xmap_readers
(
lambda
b
:
[
np
.
array
([
x
[
0
]
for
x
in
b
]).
reshape
(
-
1
,
1
,
28
,
28
),
lambda
b
:
[
np
.
array
([
x
[
0
]
for
x
in
b
]).
reshape
(
-
1
,
1
,
28
,
28
),
np
.
array
([
x
[
1
]
for
x
in
b
]).
reshape
(
-
1
,
1
)],
np
.
array
([
x
[
1
]
for
x
in
b
]).
reshape
(
-
1
,
1
)],
...
@@ -131,6 +129,9 @@ if __name__ == '__main__':
...
@@ -131,6 +129,9 @@ if __name__ == '__main__':
paddle
.
batch
(
paddle
.
dataset
.
mnist
.
test
(),
paddle
.
batch
(
paddle
.
dataset
.
mnist
.
test
(),
batch_size
=
4
,
drop_last
=
True
),
1
,
1
)
batch_size
=
4
,
drop_last
=
True
),
1
,
1
)
model
=
MNIST
()
model
=
MNIST
()
sgd
=
MomentumOptimizer
(
learning_rate
=
1e-3
,
momentum
=
0.9
,
parameter_list
=
model
.
parameters
())
# sgd = SGDOptimizer(learning_rate=1e-3)
model
.
prepare
(
sgd
,
'cross_entropy'
)
model
.
prepare
(
sgd
,
'cross_entropy'
)
for
e
in
range
(
2
):
for
e
in
range
(
2
):
...
...
model.py
浏览文件 @
90a90cf9
...
@@ -110,6 +110,9 @@ class StaticGraphAdapter(object):
...
@@ -110,6 +110,9 @@ class StaticGraphAdapter(object):
self
.
mode
=
'test'
self
.
mode
=
'test'
return
self
.
_run
(
inputs
,
None
,
device
,
device_ids
)
return
self
.
_run
(
inputs
,
None
,
device
,
device_ids
)
def
parameters
(
self
,
*
args
,
**
kwargs
):
return
None
def
save
(
self
,
path
):
def
save
(
self
,
path
):
prog
=
self
.
_progs
.
get
(
'train'
,
None
)
prog
=
self
.
_progs
.
get
(
'train'
,
None
)
if
prog
is
None
or
self
.
model
.
_optimizer
is
None
:
if
prog
is
None
or
self
.
model
.
_optimizer
is
None
:
...
@@ -287,6 +290,9 @@ class DynamicGraphAdapter(object):
...
@@ -287,6 +290,9 @@ class DynamicGraphAdapter(object):
inputs
=
to_list
(
inputs
)
inputs
=
to_list
(
inputs
)
return
self
.
model
.
forward
(
*
[
to_variable
(
x
)
for
x
in
inputs
])
return
self
.
model
.
forward
(
*
[
to_variable
(
x
)
for
x
in
inputs
])
def
parameters
(
self
,
*
args
,
**
kwargs
):
return
super
(
Model
,
self
.
model
).
parameters
(
*
args
,
**
kwargs
)
def
save
(
self
,
path
):
def
save
(
self
,
path
):
params
=
self
.
model
.
state_dict
()
params
=
self
.
model
.
state_dict
()
fluid
.
save_dygraph
(
params
,
path
)
fluid
.
save_dygraph
(
params
,
path
)
...
@@ -346,3 +352,6 @@ class Model(fluid.dygraph.Layer):
...
@@ -346,3 +352,6 @@ class Model(fluid.dygraph.Layer):
def
prepare
(
self
,
optimizer
,
loss_functions
):
def
prepare
(
self
,
optimizer
,
loss_functions
):
self
.
_optimizer
=
optimizer
self
.
_optimizer
=
optimizer
self
.
_loss_functions
=
to_list
(
loss_functions
)
self
.
_loss_functions
=
to_list
(
loss_functions
)
def
parameters
(
self
,
*
args
,
**
kwargs
):
return
self
.
_adapter
.
parameters
(
*
args
,
**
kwargs
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录