Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error importing theano "cannot import name gof"

I am current getting the error

ImportError: cannot import name gof

when importing theano.

>>> import theano

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    import theano
  File "C:\Python27\lib\site-packages\theano\__init__.py", line 63, in <module>
    from theano.compile import (
  File "C:\Python27\lib\site-packages\theano\compile\__init__.py", line 9, in <module>
    from theano.compile.function_module import *
  File "C:\Python27\lib\site-packages\theano\compile\function_module.py", line 16, in <module>
    from theano import gof
ImportError: cannot import name gof

I am using python 2.7.10 (). Theano is installed using pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git. Hope to get you suggestion to solve this problem

like image 252
Huynh Vu Avatar asked Jul 16 '15 01:07

Huynh Vu


2 Answers

Most of the time, when I see this error, it is caused by those 2 errors:

1) A syntax error in Theano. Update Theano and make sure to have no local modifcation. I nerver saw this error in the master of Theano, but just in case.

2) When there is multiple version of Theano that are installed.

In both case, remove all version of Theano. Do it multiple time to be sure there is none left. Then install again.

From memory, this always solved the problem when it wasn't a syntax error during development (but not in the master version of Theano that you use)

like image 98
nouiz Avatar answered Nov 20 '22 19:11

nouiz


This ImportError can be caused because Theano is unable to compile the gof module itself. If this is the case, you will see an error message that looks like "Exception: Compilation Failed (return status=1): C:\Long\Path\...\mod.cpp:1: sorry, unimplemented: 64-bit mode not compiled in".

Fixing With Conda

If you are installing theano into a conda environment, make sure that you have a C compiler available to that environment.

The command

conda install m2w64-toolchain

will provide a C compiler to your environment that's isolated from the rest of the machine.

After the m2w64-toolchain package is installed, import theano should work

Fixing Manually

If you are installing Theano yourself, two points from these threads may help:

  • Install the bleeding edge version of Theano
  • Install libpython from http://www.lfd.uci.edu/%7Egohlke/pythonlibs/
like image 4
Tim McNamara Avatar answered Nov 20 '22 19:11

Tim McNamara