PyMC(PyMC4)中替代PyMC3的tag.test_value查看变量初始值的方法
在PyMC(非PyMC3)中获取变量初始值的替代方法
嗨,完全不用抱歉!新手刚接触不同版本的PyMC时遇到API差异太正常了😉
你遇到的问题是因为PyMC(这里指PyMC 2.x系列)和PyMC3的API设计有区别——tag.test_value是PyMC3引入的属性,在旧版PyMC里并不存在。
在PyMC 2.x中,要获取随机变量的初始值,你可以直接访问变量的value属性,这就对应了PyMC3里tag.test_value的功能。
修改后的示例代码
import pymc as pm # 定义变量 a = pm.Uniform("b", 0, 50) # 获取初始值 print(a.value)
如果需要手动指定初始值,只需要在定义变量时添加value参数即可:
# 手动设置初始值为10 a = pm.Uniform("b", 0, 50, value=10) print(a.value) # 输出:10
这个value属性会返回变量当前的初始状态值——如果没有手动设置,PyMC会自动生成一个符合你定义的分布的初始值,和PyMC3里tag.test_value的作用完全一致。
内容的提问来源于stack exchange,提问作者Jay
相关产品推荐
相关产品推荐

