deserialize_persistables
paddle.static. deserialize_persistables ( program, data, executor ) [源代码]
根据指定的 program 和 executor,反序列化模型参数。
参数:
program (Program) - 指定包含要反序列化的参数的名称的 program。
data (bytes) - 序列化之后的模型参数。
executor (Executor) - 用来执行 load op 的
executor
。
返回:
- Program: 包含反序列化后的参数的program。
代码示例
import paddle
paddle.enable_static()
path_prefix = "./infer_model"
# 用户自定义网络,此处用 softmax 回归为例。
image = paddle.static.data(name='img', shape=[None, 28, 28], dtype='float32')
label = paddle.static.data(name='label', shape=[None, 1], dtype='int64')
predict = paddle.static.nn.fc(image, 10, activation='softmax')
loss = paddle.nn.functional.cross_entropy(predict, label)
exe = paddle.static.Executor(paddle.CPUPlace())
exe.run(paddle.static.default_startup_program())
# 序列化参数
serialized_params = paddle.static.serialize_persistables([image], [predict], exe)
# 反序列化成参数
main_program = paddle.static.default_main_program()
deserialized_params = paddle.static.deserialize_persistables(main_program, serialized_params, exe)