初步理解fluid.Scope

本文探讨了在PaddlePaddle框架中遇到的`fluid.Scope`问题,特别是在模型训练、保存、加载和预测过程中作用域导致的错误。通过研究不同版本的文档,了解到`fluid.Scope`用于创建新的作用域,而`fluid.scope_guard`用于切换作用域,以避免环境变量冲突。文章提供了两种解决方案:一是使用`fluid.Scope`和`fluid.scope_guard`切换作用域;二是直接在默认作用域中加载和运行模型。此外,还解决了在Python3.8环境下运行时的collections包兼容性问题。
摘要由CSDN通过智能技术生成

在paddlepaddle的官网上,有一个线性回归的小例子,拷贝粘贴为LE_in_4x.py文件,运行后的结果如下:

 将LE_in_4x.py文件从保存模型后分开,如下图红线处,将后半部分单独作为一个文件LE_in_4x_test.py

 编辑后的LE_in_4x_test.py文件如下:

#加载库
import paddle.fluid as fluid
import numpy as np

# 开始预测
cpu = fluid.CPUPlace()
infer_exe = fluid.Executor(cpu)
inference_scope = fluid.Scope()

# 加载训练好的模型
params_dirname = 'result'
with fluid.scope_guard(inference_scope):
    [inference_program,feed_target_names,
     fetch_targets] = fluid.i
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值