How do I install Keras and Theano in Anaconda Python on Windows?

182,799

Solution 1

It is my solution for the same problem

  • Install TDM GCC x64.
  • Install Anaconda x64.
  • Open the Anaconda prompt
  • Run conda update conda
  • Run conda update --all
  • Run conda install mingw libpython
  • Install the latest version of Theano, pip install git+git://github.com/Theano/Theano.git
  • Run pip install git+git://github.com/fchollet/keras.git

Solution 2

The trick is that you need to create an environment/workspace for Python. This solution should work for Python 2.7 but at the time of writing keras can run on python 3.5, especially if you have the latest anaconda installed (this took me awhile to figure out so I'll outline the steps I took to install KERAS in python 3.5):

Create environment/workspace for Python 3.5

  1. C:\conda create --name neuralnets python=3.5
  2. C:\activate neuralnets

Install everything (notice the neuralnets workspace in parenthesis on each line). Accept any dependencies each of those steps wants to install:

  1. (neuralnets) C:\conda install theano
  2. (neuralnets) C:\conda install mingw libpython
  3. (neuralnets) C:\pip install tensorflow
  4. (neuralnets) C:\pip install keras

Test it out:

(neuralnets) C:\python -c "from keras import backend; print(backend._BACKEND)"

Just remember, if you want to work in the workspace you always have to do:

C:\activate neuralnets

so you can launch Jupyter for example (assuming you also have Jupyter installed in this environment/workspace) as:

C:\activate neuralnets
(neuralnets) jupyter notebook

You can read more about managing and creating conda environments/workspaces at the follwing URL: https://conda.io/docs/using/envs.html

Solution 3

In windows with anaconda, just go on conda prompt and use this command

conda install --channel https://conda.anaconda.org/conda-forge keras

Solution 4

I use macOS and used to have the same problem.
Running the following command in the terminal saved me:

conda install -c conda-forge keras tensorflow

Hope it helps.

Solution 5

In case you want to train CNN's with the theano backend like the Keras mnist_cnn.py example:

You better use theano bleeding edge version. Otherwise there may occur assertion errors.

  • Run Theano bleeding edge
    pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git
  • Run Keras (like 1.0.8 works fine)
    pip install git+git://github.com/fchollet/keras.git
Share:
182,799
pavikirthi
Author by

pavikirthi

Updated on July 05, 2022

Comments

  • pavikirthi
    pavikirthi almost 2 years

    I am trying to work on neural networks in Python using the following Keras packages:

    from keras.utils import np_utils
    from keras.layers.core import Dense, Activation, Dropout
    from keras.models import Sequential
    from keras.layers.core import Dense, Dropout, Activation, Flatten
    from keras.layers.convolutional import Convolution2D, MaxPooling2D
    from keras.optimizers import SGD
    

    But, I am getting the following error:

     15 import theano
     ---> 16 from theano import gof
     17 from theano.compat.python2x import partial
     18 import theano.compile.mode
     ImportError: cannot import name gof
    

    Installing installed conda install keras. Later I tried to use pip install Theano, but it did not work. I Tried to install using pip install git, but I am getting this error: cannot find command git. So I installed Git and I set the environment variables.

    So, is there any procedure to install these packages?

  • gatapia
    gatapia about 8 years
    This is great, a few comments tho: 1) I had mingw g++ installed and this was causing issues so I had to run mingw-get remove g++ gcc to ensure that TDM was being used 2) recommend to run pip install git+git://github.com/fchollet/keras instead of pip install keras. Gets all the latest goodness.
  • pir
    pir about 8 years
    Installing the latest version of keras is important as it is developing rapidly!
  • bruceoutdoors
    bruceoutdoors almost 8 years
    A disclaimer on this: It doesn't work with python 3.5 as of this writing (Theano needs libpython, which no one figured how to get working in 3.5). Use 2.7 or 3.4 for the time being.
  • Marc Meketon
    Marc Meketon almost 8 years
    I followed these instructions and it appears to work, but for us complete novices, there are two clarifications: (1) The "Anaconda prompt" is found in Windows by Start/All Programs/Anaconda2/Anaconda Prompt, and (2) For some reason, the "pip install" seems to hang. I get the message "successfully installed" but I do not receive the command prompt afterwards. Disconcerting.
  • Hacky
    Hacky over 7 years
    After adding git to my path I get a very long error message when running "pip install git+git://github.com/Theano/Theano.git". The main error seams to be: "no lapack/blas resources found"
  • user1993
    user1993 over 7 years
    If while doing the pip installs you receive the error - failed with error code 128 in None, it may be because you have a git repository listed as a dependency in your requirement.txt file. To resolve, just change pip install git+git://github.com/Theano/Theano.git with pip install git+http://github.com/Theano/Theano.git. Same goes with the keras line
  • KannarKK
    KannarKK about 7 years
    I would like to add that if you use anaconda as the environment with python 2.7, while also using python 3.5+ installed on your system for everything else, use conda install for keras and not pip install
  • KannarKK
    KannarKK about 7 years
    You will need to install jupyter notebook within the environment as well
  • Denis
    Denis about 7 years
    @KannarKK, you are correct. If you want to use jypiter or other tools you will need to install them in this environment that you created as in (neuralnets) C:\conda install jypiter. Thank you for that addition.
  • MrPatterns
    MrPatterns about 7 years
    Is there a "/" missing between the "forge" and "keras"?
  • Gaurav Khare
    Gaurav Khare about 7 years
    No. keras is what needs to be installed. https://conda.anaconda.org/conda-forge is channel
  • Alexvonrass
    Alexvonrass about 7 years
    I just want to say thank you - i've spent almost an entire day trying out different ways to install keras and get it to work, and this is both the easiest and the only one to actually work for me
  • ultrasounder
    ultrasounder about 7 years
    Amen to that! Worked like a charm. Looks like keras picks TensorFlow as the default backend. How do I change it to Theano if needed?
  • Denis
    Denis about 7 years
    @ultasounder: %USERPROFILE%\.keras\keras.json
  • Javed
    Javed almost 7 years
    just worked!! Thanks. Looks like the default backend is Tensoflow - it print:Using TensorFlow backend. I wonder then why to install theano then? Keras works with TensorFlow by default.
  • Krithi07
    Krithi07 over 6 years
    I have installed git and Command Prompt recognises git command. Although, when I use pip install git+git://github.com/Theano/Theano.git in Anaconda Prompt, it gives me - _ Error [WinError 2] The system cannot find the file specified while executing command git clone -q git://github.com/Theano/Theano.git C:\Users\Kritika\AppData\Local\Temp\pip-ajpc_pga-build Cannot find command 'git' _
  • kushy
    kushy over 5 years
    I'm on a Windows 10 64bit system with Anaconda 3 installed. This worked perfectly for me. Thanks! EDIT: Apparently works perfectly for Python 3.6, but not with Python 3.7. Since Anaconda 3 installs 3.7 as default, one has to first downgrade Python to 3.6 before installing keras/tensorflow!
  • Brana
    Brana about 5 years
    Does not work - I get after doing all these steps: Exception: Compilation failed (return status=1): cc1plus.exe: sorry, unimplemented: 64-bit mode not compiled in.
  • Denis
    Denis about 5 years
    I would suggest you google the exact error message you are seeing
  • inconveniently_nonexempt_bee
    inconveniently_nonexempt_bee almost 4 years
    In case anyone is wondering about compatibility with Python 3.7, installing keras and tensorflow with the above approach works fine now (haven't tried theano)