I tried to switch Backend with Keras (from TensorFlow to Theano) but did not manage. I followed the temps described here but it doesn't work. I created a keras.json in the keras' directory (as it did not exist) but it doesn't change anything when I import it from Python.
Create a .keras
(note the .
in front) folder in you home directory and put the keras.json
file there.
For example, /home/DaniPaniz/.keras/keras.json
(or ~/.keras/keras.json
in short) if you are on a UNIX like system (MacOS X, Linux, *BSD). On Windows you want to create the folder %USERPROFILE%/.keras
and put the JSON file there.
Alternatively, you can also set the environment variable KERAS_BACKEND
:
KERAS_BACKEND=theano python mymodel.py
In case you want to change the config permanently, the json is available here: ~/.keras/keras.json
and you can change the backend.
To do this dynamically in python 2.7 you can run:
from keras import backend as K
import os
def set_keras_backend(backend):
if K.backend() != backend:
os.environ['KERAS_BACKEND'] = backend
reload(K)
assert K.backend() == backend
set_keras_backend("theano")
import importlib; importlib.reload(K)
reload
function of the importlib
library) the backend is not being dynamically changed for me. Any ideas on how to overcome this issue is really appreciated. @Wmol @Demitri
I had an issue where I could not from keras import backend
at all until I set the backend to theano. The provided answers should work if you can import backend, but if not, just use:
import os
os.environ['KERAS_BACKEND'] = 'theano'
import keras as ks
# Using Theano backend.
In windows, you need to find .keras folder in your C drive. Most probably, it will be somewhere in C:/users/username/. There you will find .keras folder, it contains a json file, keras.json, open it. You will see:
{
“backend”: “tensorflow”,
“floatx”: “float32”,
“epsilon”: 1e-07
}
more or less. replace 'tensorflow' with 'theano'. and save the file.
If you're using windows you can run from command line:
set "KERAS_BACKEND=theano"
from keras import backend as K
from os import environ
# user defined function to change keras backend
def set_keras_backend(backend):
if K.backend() != backend:
environ['KERAS_BACKEND'] = backend
reload(K)
assert K.backend() == backend
# call the function with "theano"
set_keras_backend("theano")
keras.json
file. So locate the file and change it accordingly.
Type following on command prompt and press enter:
%USERPROFILE%/.keras/keras.json
Change backend in the opened text file and save it. You are done.
For Linux systems, the hidden .keras directory will be created in the user’s home directory. To observe whether or not it has been created, run the following command from your home directory (the -a allows you to see hidden files and directories).
ls –a
If the directory is there, then cd into it and modify the keras.json file. If it’s not there, then create the directory with
mkdir .keras
Then create the file with
touch keras.json
Then edit the file to make the config changes you referenced to change the backend engine to Theano.
This process is covered fully in this video.
Termux - Android 11 - Finally working with H5py 3.4.0 Keras 2.2.0 Theano 1.0.5 Numpy 1.17.5
I find that packages sometimes do not install when built and --update. ***** You need to manually uninstall / install. .. I fond
Success story sharing
import os; os.environ['KERAS_BACKEND'] = 'theano'
before importingkeras