Tensorflow compatibility with Keras

Viewed 41002

I am using Python 3.6 and Tensorflow 2.0, and have some Keras codes:

import keras
from keras.models import Sequential
from keras.layers import Dense

model = Sequential()
model.add(Dense(1))
model.compile(optimizer='adam',loss='mean_squared_error',metrics=['accuracy'])

When I run this code, I got the following error:

Keras requires TensorFlow 2.2 or higher. Install TensorFlow via pip install tensorflow

I checked on https://keras.io/, it says Keras was built on Tensorflow 2.0. So I am confused. What exact version of Tensorflow does latest Keras support? and how to fix the above error? Thanks!

4 Answers

Just check Tensorflow and Keras compatibility:

enter image description here

and install compatible Tensorflow version. Check this link for more info.

The problem is that the latest keras version (2.4.x) is just a wrapper on top of tf.keras, which I do not think is that you want, and this is why it requires specifically TensorFlow 2.2 or newer.

What you can do is install Keras 2.3.1, which supports TensorFlow 2.x and 1.x, and is the latest real releases of Keras. You can also install Keras 2.2.4 which only supports TensorFlow 1.x. You can install specific versions like this:

pip install --user keras==2.3.1

That configuration can be tricky. How about you use keras inside tensorflow? I think they are more likely to be compatible each other.

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
Related