为了账号安全,请及时绑定邮箱和手机立即绑定

pymc3不起作用,使用Anaconda3获取nan并且没有类型错误

pymc3不起作用,使用Anaconda3获取nan并且没有类型错误

阿晨1998 2021-04-07 17:14:09
我刚刚安装了pymc3,它对我来说只是“部分”工作。我正在Windows的64位安装上使用Anaconda,但我不认为这是问题所在(即,我认为问题不在于需要切换到32位anaconda)。各种示例都不适合我,因此我尝试遍历此示例:http : //docs.pymc.io/notebooks/getting_started.html#A-Motivating-Example : -Linear-Regression一切正常,直到:   with basic_model:       # draw 500 posterior samples       trace = pm.sample(500)那时候,我得到一个错误。编辑:我确实有理由相信它是幸运的,因为通过重新安装theanos和其他工具,我得到了进一步的了解。但我仍然得到这个:C:\Users\Yurik\Anaconda3\lib\site-packages\h5py\__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.  from ._conv import register_converters as _register_convertersRunning on PyMC3 v3.4.1WARNING (theano.gof.compilelock): Overriding existing lock by dead process '26576' (I am process '27640')Auto-assigning NUTS sampler...Initializing NUTS using jitter+adapt_diag...Multiprocess sampling (2 chains in 2 jobs)NUTS: [sigma_log__, beta, alpha]Traceback (most recent call last):  File "<ipython-input-1-1ef2ccded6b8>", line 1, in <module>    runfile('C:/Users/Yurik/.spyder-py3/temp.py', wdir='C:/Users/Yurik/.spyder-py3')  File "C:\Users\Yurik\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 705, in runfile    execfile(filename, namespace)  File "C:\Users\Yurik\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile    exec(compile(f.read(), filename, 'exec'), namespace)  File "C:/Users/Yurik/.spyder-py3/temp.py", line 57, in <module>    trace = pm.sample(500)  File "C:\Users\Yurik\Anaconda3\lib\site-packages\pymc3\sampling.py", line 442, in sample    trace = _mp_sample(**sample_args)  File "C:\Users\Yurik\Anaconda3\lib\site-packages\pymc3\sampling.py", line 982, in _mp_sample    traces = Parallel(n_jobs=cores, mmap_mode=None)(jobs)
查看完整描述

1 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

我终于想通了!跟踪函数后,我注意到loky正在获取cores = None,并且有一个可选参数。因此,该示例需要在pm.sample的参数中包含cores = 1(或类似值),然后它才能工作!像下面


with basic_model: 

   # draw 500 posterior samples 

   trace = pm.sample(500, cores=1)

(尽管也值得注意的是,我需要安装/重新安装几个依赖项,theanos和mw64或类似的东西,直到我到达这一点为止)


查看完整回答
反对 回复 2021-04-27
  • 1 回答
  • 0 关注
  • 313 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号