save_params¶
该OP从 main_program
中取出所有参数,然后将它们保存到 dirname
目录下或名为 filename
的文件中。
dirname
用于指定保存参数的目标路径。若想将参数保存到多个独立文件中,设置 filename=None
;若想将所有参数保存在单个文件中,请设置 filename
来指定该文件的名称。
- 注意:
-
有些变量不是参数,如学习率,全局训练步数(global step)等,但它们对于训练却是必要的。因此,调用 save_params 和 load_params 来保存和加载参数对于断点训练是不够的,这种情况下可以使用 save_persistables 和 load_persistables 来保存和加载训练过程中的检查点(checkpoint)。
如果您想要储存您的模型用于预测,请使用 cn_api_fluid_io_save_inference_model。更多细节请参考 模型保存与加载
参数¶
返回¶
无
代码示例¶
import paddle
import paddle.fluid as fluid
paddle.enable_static()
params_path = "./my_paddle_model"
image = fluid.data(name='img', shape=[None, 28, 28], dtype='float32')
label = fluid.data(name='label', shape=[None, 1], dtype='int64')
feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace())
predict = fluid.layers.fc(input=image, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=predict, label=label)
avg_loss = paddle.mean(loss)
exe = fluid.Executor(fluid.CPUPlace())
exe.run(fluid.default_startup_program())
fluid.io.save_params(executor=exe, dirname=params_path)
# The parameters weights and bias of the fc layer in the network are going to
# be saved in different files in the path "./my_paddle_model"