Saltar al contenido

¿Cómo importar keras desde tf.keras en Tensorflow?

Posterior a investigar con expertos en esta materia, programadores de deferentes áreas y profesores dimos con la respuesta al problema y la plasmamos en este post.

Solución:

Usa el módulo keras de tensorflow así:

import tensorflow as tf

Importar clases

from tensorflow.python.keras.layers import Input, Dense

o usar directamente

dense = tf.keras.layers.Dense(...)

EDITAR Tensorflow 2

from tensorflow.keras.layers import Input, Dense

y el resto sigue igual.

Probar from tensorflow.python import keras

con esto, puede cambiar fácilmente el código dependiente de keras a tensorflow en un cambio de línea.

También puedes probar from tensorflow.contrib import keras. Esto funciona en tensorflow 1.3

Editado: para tensorflow 1.10 y superior puedes usar import tensorflow.keras as keras para obtener keras en tensorflow.

Para simplificarlo tomaré las dos versiones del código en keras y tf.keras. El ejemplo aquí es un modelo de red neuronal simple con diferentes capas.

En Keras (v2.1.5)

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

def get_model(n_x, n_h1, n_h2):
    model = Sequential()
    model.add(Dense(n_h1, input_dim=n_x, activation='relu'))
    model.add(Dense(n_h2, activation='relu'))
    model.add(Dropout(0.5))
    model.add(Dense(4, activation='softmax'))
    model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
    print(model.summary())
    return model

En tf.keras (v1.9)

import tensorflow as tf

def get_model(n_x, n_h1, n_h2):
    model = tf.keras.Sequential()
    model.add(tf.keras.layers.Dense(n_h1, input_dim=n_x, activation='relu'))
    model.add(tf.keras.layers.Dense(n_h2, activation='relu'))
    model.add(tf.keras.layers.Dropout(0.5))
    model.add(tf.keras.layers.Dense(4, activation='softmax'))
    model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
    print(model.summary())

    return model

o se puede importar de la siguiente manera en lugar de la forma mencionada anteriormente

from tensorflow.keras.layers import Dense

La documentación oficial de tf.keras

Nota: la versión de TensorFlow es 1.9

Aquí puedes ver las reseñas y valoraciones de los lectores

Recuerda algo, que te brindamos la opción de glosar si te ayudó.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *