13

I am having an error regarding (Keras that does not support TensorFlow 2.0. We recommend using tf.keras, or alternatively, downgrading to TensorFlow 1.14.) any recommendations.

thanks

import keras
#For building the Neural Network layer by layer
from keras.models import Sequential
#To randomly initialize the weights to small numbers close to 0(But not 0)
from keras.layers import Dense

classifier=tf.keras.Sequential()

classifier.add(Dense(output_dim = 6, init = 'uniform', activation = 'relu', input_dim = 11))




RuntimeError: It looks like you are trying to use a version of multi-backend Keras that does not support TensorFlow 2.0. We recommend using `tf.keras`, or alternatively, downgrading to TensorFlow 1.14.

7 Answers 7

14

You should only have to change the imports at the top:

from tensorflow.python.keras.layers import Dense
from tensorflow.python.keras import Sequential

classifier = Sequential()
classifier.add(Dense(6, init = 'uniform', activation = 'relu', input_dim = 11))
4
  • I have for pointing this out. I have done exactly what you listed up. but I have got the following error TypeError: __init__() missing 1 required positional argument: 'units' Thanks
    – Dean
    Nov 28, 2019 at 14:17
  • This is an error in the Dense layer construction, different from the import error you had so far (so the code you have supplied above). In short, all layers have a required units parameter that defines the number of neurons. You can see more details in the documentation
    – nickyfot
    Nov 28, 2019 at 14:23
  • do you mean units=6 as the input layer classifier.add(Dense(units = 6, init = 'uniform', activation = 'relu', input_dim = 11))
    – Dean
    Nov 28, 2019 at 15:23
  • More like classifier.add(Dense(6, init = 'uniform', activation = 'relu', input_shape = (11,))). Input shape needs to be a tuple as per the documentation. This is kind of separate problem, so you might have to open a new question or check for existing examples of MLP implementations using keras.
    – nickyfot
    Nov 28, 2019 at 15:34
5

TensorFlow 2.0+ is only compatible with Keras 2.3.0+, so if you wish to use Keras 2.2.5-, you'll need TensorFlow 1.15.0-. Alternatively, yes, you can do from tensorflow.keras import ..., but that will not use your keras package at all and you might as well uninstall it.

6
  • 1
    There is a big difference between "can" and is actually supported, only Keras 2.3.x supports TensorFlow 2.0, so do not recommend to use 2.2.5 with it.
    – Dr. Snoopy
    Nov 28, 2019 at 15:13
  • @MatiasValdenegro Good thing there's a second half to that sentence Nov 28, 2019 at 15:18
  • Yes, that's why I recommend not to mention partially supported TF versions.
    – Dr. Snoopy
    Nov 28, 2019 at 15:19
  • @MatiasValdenegro If anything, it explicitly discourages using K2.2.5+TF2 - else the user may run it w/o error and think it's fine. But alright, guess I can make it more explicit - answer updated Nov 28, 2019 at 15:27
  • 1
    No, now I found evidence that Keras 2.2.5 does not actually support TF 2.0, just look at this commit, so just saying "can" is actually wrong.
    – Dr. Snoopy
    Nov 28, 2019 at 15:36
2

if you want to use tensorflow 2.0+ you must have keras 2.3+
try to upgrade your keras it works for me :

pip install -U keras

or you may specify the keras version to 2.3

1

I ran into the same issue. Downgraded my TensorFlow to version 1.14 using the following:

!pip install tensorflow==1.14.0

Fixed the error.

1

first, import tensorflow:

import tensorflow as tf

Next, in place of this,

classifier.add(Dense(output_dim = 6, init = 'uniform', activation = 'relu', input_dim = 11))

use:

classifier.add(tf.keras.layers.Dense(output_dim = 6, init = 'uniform', activation = 'relu', input_dim = 11))

Let me know if it works.

0

this line of code on the first cell worked for me

%tensorflow_version 1.x

0

I fixed the problem by running

pip install --ignore-installed --upgrade keras

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.