numpy AttributeError: with theano module 'numpy.core.multiarray' has no attribute _get_ndarray_c_version

怎甘沉沦 提交于 2020-08-22 05:21:27

问题


I'm running this simple example:

import theano
x = theano.tensor.dscalar()
f = theano.function([x], 2*x)
f(4)

and I get:

AttributeError: ('The following error happened while compiling the node', Elemwise{mul,no_inplace}(TensorConstant{2.0}, <TensorType(float64, scalar)>), '\n', "module 'numpy.core.multiarray' has no attribute '_get_ndarray_c_version'")

I though it must be a numpy error, so I try to update but I have the latest version as far as I know:

import numpy

numpy.version.version
'1.16.2'

I'm running all this in spyder but that seems to be irrelevant since I get the same error in python interpreter


回答1:


This is a known bug presumably caused by changes introduced in NumPy. A fix for this was introduced in Theano v1.0.4. So, either you need to upgrade to at least that version of Theano, or downgrade NumPy to below v1.16.

Note that at the moment (25 July 2019) only Conda Forge has Theano v1.0.4, whereas Anaconda has v1.0.3. So you need to run

conda install -c conda-forge theano=1.0.4

Otherwise, the NumPy downgrade is

conda install numpy=1.15



回答2:


Go to the

Anaconda3\pkgs\theano-1.0.3-py37_0\Lib\site-packages\theano\gof

open cc.py

go to line 1376

comment these code:

sig.append('NPY_ABI_VERSION=0x%X' %
        np.core.multiarray._get_ndarray_c_version())

like this

For more details you can Refer:

https://github.com/MichalDanielDobrzanski/DeepLearningPython35/issues/20

https://www.wandouip.com/t5i268914/



来源:https://stackoverflow.com/questions/55046335/numpy-attributeerror-with-theano-module-numpy-core-multiarray-has-no-attribut

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!