Keras ignorando valores en el archivo $ HOME / .keras / keras.json
Sé que el backend predeterminado para Keras cambió de Theano a TensorFlow, pero con la versión de desarrollo de Theano puedo entrenar en la GPU con OpenCL (tengo una tarjeta AMD).
Sin embargo, cuando importo Keras, solo usa el backend TensorFlowincluso después de haber cambiado los valores en el archivo de configuración de Keras:
~ $ cat $HOME/.keras/keras.json
{"epsilon": 1e-07, "floatx": "float32", "backend": "theano"}
~ $ python -c 'import keras'
Using TensorFlow backend.
~ $ KERAS_BACKEND=theano python -c 'import keras'
Using Theano backend.
Mapped name None to device opencl0:2: AMD Radeon R9 M370X Compute Engine
Además, sé que Keras está leyendo el archivo de configuración después de la importación porque si completo algún valor no válido para"backend"
Me sale un error:
~ $ cat $HOME/.keras/keras.json
{"epsilon": 1e-07, "floatx": "float32", "backend": "foobar"}
~ $ python -c 'import keras'
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/antalek/anaconda/envs/ENVPy3/lib/python3.5/site-packages/keras/__init__.py", line 3, in <module>
from . import activations
File "/Users/antalek/anaconda/envs/ENVPy3/lib/python3.5/site-packages/keras/activations.py", line 3, in <module>
from . import backend as K
File "/Users/antalek/anaconda/envs/ENVPy3/lib/python3.5/site-packages/keras/backend/__init__.py", line 34, in <module>
assert _backend in {'theano', 'tensorflow'}
AssertionError
Detalles del sistema:
Mac OSX 10.11.6Anaconda Python v 3.5Keras v 2.0.2Me gustaría que Keras usara Theano como el backend predeterminado. ¿Alguien sabe cómo configurarlo como tal?
EDITAR:
Para responder a la pregunta de @Marcin Możejko:
~ $ which python
/Users/<my name>/anaconda/envs/ENVPy3/bin/python
Cuál es el entorno virtual conda en el que también está instalado Keras.