ImportError: No module named 'keras' - python-3.x

So basically, I am fairly new to programming and using python. I am trying to build an ANN model for which I have to use Tensor flow, Theano and Keras library. I have Anaconda 4.4.1 with Python 3.5.2 on Windows 10 x64 and I have installed these libraries by following method.
Create a new environment with Anaconda and Python 3.5:
conda create -n tensorflow python=3.5 anaconda
Activate the environment:
activate tensorflow
After this you can install Theano, TensorFlow and Keras:
conda install theano,
conda install mingw libpython,
pip install tensorflow,
pip install keras,
Update the packages:
conda update --all
All these packages are installed correctly and I have check them with conda list.
However, when I am trying to import any of these 3 libraries (i.e. Tensor flow, Theano and Keras), it is giving me the following error:
Traceback (most recent call last):
File "<ipython-input-3-c74e2bd4ca71>", line 1, in <module>
import keras
ImportError: No module named 'keras'

Hi I have an solution try this if you are using Anaconda-Navigator
go to Anaconda Environment and search keras package and then install.
after install just type import keras in shell its working.

Have you tried using keras documentation
Install Keras from PyPI (recommended):
Note: These installation steps assume that you are on a Linux or Mac environment. If you are on Windows, you will need to remove sudo to run the commands below.
sudo pip install keras
If you are using a virtualenv, you may want to avoid using sudo:
pip install keras
from: https://keras.io/

Now you need to have Tensorflow installed and then write, for example:
import tensorflow as tf
...
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Dense(12, input_dim=8, activation='relu'))
model.add(tf.keras.layers.Dense(8, activation='relu'))
model.add(tf.keras.layers.Dense(1, activation='sigmoid'))
...
Works for Tensorflow version: 2.4.1.
Or just type:
import tensorflow as tf
from tensorflow import keras
...

Try
import sys
print(sys.path)
and see if your anaconda site-packages folder is in the list.
It should be something like WHERE_YOU_INSTALLED_ANACONDA\anaconda3\envs\ENVIRONMENT_NAME\lib\python3.5\site-packages
If the path setting is correct, then try listing the folder content, and see if Keras, TensorFlow and Theano are in this folder.

I ran into a very similar issue after switching computers and downloading the latest Anaconda, which comes with python 3.6. It was no problem to install python 3.5 in its own environment, and install keras to this environment, but import keraskept failing.
My inelegant solution (assuming you've already got tensorflow/theano/cntk working fine in your global environment)?
Move the keras folder installed to Anaconda3/envs//Lib/site-packages/keras to Anaconda3/Lib/site-packages/keras. Now import keras gives a depreciation warning when run from a jupyter notebook launched via start menu, but it does work, and correctly returns the backend keras is running on.

I spent the whole day to install Keras, tried all the available methods online, almost dying. But I still cannot import keras.
(1). After using conda install or pip install, and delete the "1 > null > 2&1" ... I activated in conda prompt by activating tensorflow_cpu, it doesn't work anyway.
(2). Then checked the keras, and print os.path(), no virtual environment inside. I got so braindead, just copied all the keras data file from virtual environment env, and put into the "C:\Users\Administrator\Anaconda3\Lib\site-packages".
(3). Now, tensorflow and keras work well.

Click Update Index and then try searching for Keras again.

I have the same problem with:
conda 4.13.0
tensorflow 2.6.0
Note: We should not have to install Keras separately, as it ships with Tensorflow, starting with Tensorflow 2.0.
Symptoms:
Keras import (from tensorflow import keras) does not return an error, BUT any further reference to Keras does throw "ModuleNotFoundError", e.g. the following statements fail:
print(keras.__version__)
from keras import Sequential
I still don't have a direct solution for this, this is more of a workaround, but here it is:
Import ANY class from Keras JUST ONCE using full top-down import syntax AND instantiate it
Import Keras (now "for real")
E.g.:
from tensorflow.keras.layers import Dense
layer = Dense(10)
from tensorflow import keras
Now the following statements should work:
print(keras.__version__)
model = keras.models.Sequential()
This looks like some sort of lazy module loading gone wrong.

A direct and simple way to fix it is as below,
#uninstall keras and tensorflow
pip uninstall keras
pip uninstall tensorflow
#Now install keras and tensorflow for required version with dependencies.
pip install keras==2.2.4
pip install tensorflow==1.13.1
Always make sure that you install right version of tensorflow which supports that keras version as well, else you may end up in trouble again. By the way , the above fix worked for me.

I solved this problem by running one of the following in the terminal according to anaconda website.
To install this package (keras) with conda run one of the following:
conda install -c conda-forge keras conda install -c
conda-forge/label/broken keras conda install -c
conda-forge/label/cf201901 keras conda install -c
conda-forge/label/cf202003 keras
If you never use conda before you can check anaconda.

A direct and simple way to fix it is as below, #uninstall keras and tensorflow
py -3 -m pip uninstall keras
py -3 -m pip uninstall tensorflow
#Now install keras and tensorflow for required version with dependencies.
py -3 -m pip install keras
py -3 -m pip install tensorflow
the above fix worked for me.

If you are sure that you ran pip install keras at the command line, ensure that you use the small letter 'k' instead of the Capital Alphabet. I had a similar error message.

These are some simple steps to install 'keras' simply using the Anaconda Navigator:
Launch Anaconda Navigator. Go to the Environments tab.
Select ‘Not installed’, and type in ‘tensorflow’.
Then, tick ‘tensorflow’ and do the same for ‘keras’.
Click on ‘Apply’. The pop-up window will appear, go ahead and apply.
This may take several minutes.
Done.
This tutorial will guide you more graphically: https://www.freecodecamp.org/news/install-tensorflow-and-keras-using-anaconda-navigator-without-command-line/

Remember to launch spyder in the environment or activate it in line command (conda activate [my_env]. afater that, execute your script python.

Try to import keras library from its reference parent which means import tensorflow.keras

Related

Why does attribute 'bessel_i0e' keep disappearing in my conda envs?

I have been learning Tensorflow using Jupyter Notebook. I keep running into this error where I will restart a kernel on a notebook file, and when I type import tensorflow as tf I get following error
module 'tensorflow.python.ops.special_math_ops' has no attribute 'bessel_i0e'
With a bunch of other text. I have multiple conda envs, and when I switch to another env it works fine, even though they use the same cached version of tensorflow. I really have no idea what is happening.
Thank you!
I had to completely uninstall and reinstall tensorflow and keras to get rid of this error.
pip uninstall tensorflow-gpu tensorflow keras
pip install --upgrade tensorflow keras
did the trick for me.

Module 'tensorflow' has no attribute 'placeholder' but tfv1 is imported

I'm trying to run following code:
input_img = Input((height, width, 1), name='img')
model = get_unet(input_img, n_filters=16, dropout=0.05, batchnorm=True)
model.compile(optimizer=Adam(), loss="binary_crossentropy", metrics=["accuracy"])
But I'm getting "AttributeError: module 'tensorflow' has no attribute 'placeholder'".
Everywhere it is recommended to use
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
But I still keep getting such error.
If you are using Anaconda distribution the try to reinstall TensorFlow by using following commands
Remove tenserflow
conda remove tensorflow-gpu tensorflow tensorflow-base
re-installed tensorflow
conda install -c anaconda tensorflow
Reference:- https://anaconda.org/anaconda/tensorflow
If your code needs to run on GPU it is better to install tensorflow-gpu by using
conda install -c anaconda tensorflow-gpu
Reference:- https://anaconda.org/anaconda/tensorflow-gpu
Also if your project uses keras(Or distribution has keras(ex:-Colab)) then you can use tensorflow insides on keras by using "tensorflow.keras"
Ex:-
from keras.models import Sequential
Change to
from tensorflow.keras.models import Sequential
Python version of Colab has updated .
Add this
!pip uninstall keras-nightly
!pip install h5py==2.10.0
!pip install q keras==2.1.6
%tensorflow_version 1.x

How can I install keras using anaconda with mxnet backend

How can I set keras's backend to be MXNet?
I have found only this installation guide, but after I install keras by hand in this way, Anaconda does not recognize this installation.
In other words, this command:
KERAS_BACKEND=mxnet python -c "from keras import backend"
works only in the "keras" installation folder.
Therefore, I can not use keras in a Jupyter Notebook, for example.
Do you know another way to install keras in order to be compatible with mxnet (as it is for example on aws's AMIs) ?
You can install keras for a given Anaconda env by first activating that env and then calling
pip install -e .
in keras folder. In the guide that you included the link to, this command would replace
sudo python setup.py install
which installs it system wide.

Error importing Tensorflow from Anaconda environment

I am quite a newbie with Anaconda and Tensorflow.
I am using Ubuntu 16.04 x64, I have installed Anaconda and works ok. After, I have installed Tensorflow following precise instructions from Tensorflow website:
$ conda create -n tensorflow
$ source activate tensorflow
(tensorflow)$ pip install --ignore-installed --upgrade tfBinaryURL
And I has also installed ok. I have activated the new environment, launched Spyder and tested the tensorflow test installation program:
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
And I get the error importing Tensorflow:
ImportError: No module named tensorflow
Is there any environment variable to change? How can I solve this? I know it can ba a simple question, but I would appreciate a lot any advise for this...
PD: My intention is to later install Keras. Should it be as simple as activating the environment and install Keras using pip?

How to install Keras in Python 3.6?

I'm having trouble installing the Keras library for Python 3.6. Whenever I try to install Keras, it is throwing an error and when I searched on the internet, Keras had been released for up to Python 3.5. Does anyone have a solution for this?
Follow this method if you have Anaconda and Python version 3.6.
First, create a new conda environment,
conda create -n keras python=3.5
Now activate it,
source activate keras
and install Keras,
conda install keras
Test if it works,
$ python
>>>import keras
You will get the following message if it was successful:
Using TensorFlow backend.
Click here to see Mike Müller's answer
I used sudo pip install keras to download.
I have both python 2.7 and 3.6 installed on my Mac. I used pip -V to check my python version of installation. Probably you used invalid version of python to download.
Screenshot of the install being done on my computer:
Follow the below steps , Tensorflow dosnt support py3.7 as of now , so 3.6 is better , I recommend using environment , (venv , conda(preferred) ),
For conda
conda create -n keras python=3.6
source activate keras
conda install tensorflow keras
#for faster installation
pip install keras
For virtualenv
virtualenv -p python3 keras
source keras/bin/activate
pip install keras tensorflow numpy
Try the following at a command prompt:
pip install --upgrade tensorflow
pip install --upgrade keras
Also, refer the following link for more detail:
https://www.tensorflow.org/install/pip

Resources