python - example - ¿Cómo cambiar el backend de Keras(donde está el archivo json)?
keras example (11)
He instalado Keras y quería cambiar el backend a Theano. Revisé esta publicación , pero aún no tengo idea de dónde colocar el archivo json creado. Además, a continuación se muestra el error que obtuve al ejecutar import keras
en Python Shell:
Usando el backend TensorFlow.
Seguimiento (última llamada más reciente): Archivo "", línea 1, en importación keras Archivo "C: / Python27 / lib / site-packages / keras__init __. Py", línea 2, desde. importar el archivo de fondo "C: / Python27 / lib / site-packages / keras / backend__init __. py", línea 64, desde .tensorflow_backend import * Archivo "C: / Python27 / lib / site-packages / keras / backend / tensorflow_backend py ", línea 1, en tensorflow de importación como tf ImportError: No hay un módulo llamado tensorflow
Al ejecutar python -c "import keras; print(keras.__version__)"
desde la línea de comando de Windows, obtuve:
Usando el backend TensorFlow. Rastreo (última llamada más reciente): Archivo "", línea 1, en Archivo "C: / Python27 / lib / site-packages / keras__init __. Py", línea 2, desde. importar el archivo de fondo "C: / Python27 / lib / site-packages / keras / backend__init __. py", línea 64, desde .tensorflow_backend import * Archivo "C: / Python27 / lib / site-packages / keras / backend / tensorflow_backend py ", línea 1, en tensorflow de importación como tf ImportError: No hay un módulo llamado tensorflow
¿Puede ayudarme alguien, por favor? ¡Gracias!
" ¿No puede encontrar su archivo keras.json?: Windows
En la mayoría de los sistemas, el archivo keras.json (y los subdirectorios asociados) no se crearán hasta que abra un shell de Python e importe directamente el paquete keras.
Si encuentra que el archivo ~ / .keras / keras.json no existe en su sistema, simplemente abra un shell, (opcionalmente) acceda a su entorno virtual de Python (si está usando entornos virtuales), y luego importe Keras:
$ workon keras_tf
$ python
>>> import keras
>>> quit()
"
Referenciado desde: keras-with-tensorflow/theano-backend
Después de mirar las fuentes keras ( este lugar ):
Pon en marcha tu pitón-binario y haz lo siguiente
import os
print(os.path.expanduser(''~''))
# >>> C://Users//Sascha'' # will look different for different OS
- Este debería ser el directorio base
- Keras creará una carpeta
.keras
allí donde residekeras.json
(si ya fue creado). Si no está allí, créalo allí. - Ejemplo:
C://Users//Sascha//.keras//keras.json''
En Ubuntu puede usar este comando para abrir el archivo keras.json en el editor vi y editar y guardar.
sudo vi $HOME/.keras/keras.json
o usa lo siguiente para abrir en gedit
sudo gedit $HOME/.keras/keras.json
En caso de que desee cambiar la configuración, el json está disponible aquí: ~/.keras/keras.json
Para hacer esto dinámicamente en Python 2.7 puedes ejecutar:
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")
En el caso de Ubuntu, lo siguiente me funcionó:
La carpeta ''.keras'' está presente en su directorio de inicio, pero está oculta. Por lo tanto, debe mostrar los archivos ocultos en su directorio de inicio. Puedes ver los archivos ocultos en Ubuntu por
- Ver-> Mostrar archivos ocultos o
- presionando ctrl + h.
Ahora puede ver la carpeta ''.keras'' en su directorio de inicio. Dentro de esa carpeta, verá el archivo ''keras.json'' que puede modificar para cambiar el backend de keras a theano de acuerdo con la documentación oficial https://keras.io/backend/
Escriba lo siguiente y presione enter en el símbolo del sistema:
%USERPROFILE%/.keras/keras.json
Cambie el backend en el archivo de texto abierto y guárdelo.
La documentación oficial de Keras puede ayudarte. Este https://keras.io/backend/ muestra cómo cambiar el backend de Keras. Debe cambiar ~ / .keras / keras.json de ''backend'': ''tensorflow'', a ''backend'': ''theano''.
Para aquellos con una concha de pitón abierta:
import os
with open(os.path.expanduser(''~'')+''//.keras//keras.json'',''w'') as f:
new_settings = """{/r/n
"epsilon": 1e-07,/r/n
"image_data_format": "channels_last",/n
"backend": "theano",/r/n
"floatx": "float32"/r/n
}"""
f.write(new_settings)
import keras
Para los sistemas Linux, el directorio oculto .keras se creará en el directorio de inicio del usuario. Para observar si se ha creado o no, ejecute el siguiente comando desde su directorio de inicio (la -a le permite ver los archivos y directorios ocultos).
ls –a
Si el directorio está allí, cd en él y modifique el archivo keras.json. Si no está allí, cree el directorio con
mkdir .keras
Luego crea el archivo con
touch keras.json
Luego edite el archivo para realizar los cambios de configuración a los que hizo referencia para cambiar el motor de backend a Theano.
Este proceso está cubierto completamente en este video .
Solo para agregar este post informativo. Estoy usando anaconda para mi tarea. Y keras importadas a través de mi anaconda python. Así que keras se instaló en
C:/Users/username/AppData/Local/Continuum/Anaconda3/Lib/site-packages
Hay 2 carpetas en los paquetes de sitio: keras
& Keras-1.0.8.dist-info
.
En Keras-1.0.8.dist-info
, hay un archivo llamado metadata.json
. Esto por defecto tiene "Theano" como backend. Por lo tanto, si cambias eso a tensorflow, obtendrás un back-end de decenas de flujo.
Espero que ayude a alguien que tiene problemas de tipo.
Usted puede utilizar directamente,
import os
os.environ[''KERAS_BACKEND'']=''theano''
o
os.environ[''KERAS_BACKEND'']=''tensorflow''