it-swarm.com.de

Wie kann man Keras aus tf.keras in Tensorflow importieren?

import tensorflow as tf
import tensorflow 

from tensorflow import keras
from keras.layers import Dense

Ich bekomme den untenstehenden Fehler

from keras.layers import Input, Dense
Traceback (most recent call last):

  File "<ipython-input-6-b5da44e251a5>", line 1, in <module>
    from keras.layers import Input, Dense

ModuleNotFoundError: No module named 'keras'

Wie löse ich das?

Hinweis: Ich verwende die Tensorflow-Version 1.4

18
GeorgeOfTheRF

Verwenden Sie das Keras-Modul von Tensorflow wie folgt:

import tensorflow as tf

Klassen importieren

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

oder direkt verwenden

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

34
Mihail Burduja

from tensorflow.python import keras ausprobieren 

damit können Sie den Keras-abhängigen Code in einer Zeilenänderung auf Tensorflow umstellen.

Sie können auch from tensorflow.contrib import keras versuchen. Dies funktioniert bei Tensorflow 1.3

3
Ramesh Kamath

Ich habe ein ähnliches Problem beim Importieren dieser Bibliotheken. Ich verwende Anaconda Navigator 1.8.2 mit Spyder 3.2.8.

Mein Code lautet wie folgt:

import matplotlib.pyplot as plt
import tensorflow as tf
import numpy as np
import math

#from tf.keras.models import Sequential  # This does not work!
from tensorflow.python.keras.models import Sequential
from tensorflow.python.keras.layers import InputLayer, Input
from tensorflow.python.keras.layers import Reshape, MaxPooling2D
from tensorflow.python.keras.layers import Conv2D, Dense, Flatten

Ich erhalte folgende Fehlermeldung:

from tensorflow.python.keras.models import Sequential

ModuleNotFoundError: No module named 'tensorflow.python.keras'

Ich löse dieses Löschen tensorflow.python

Mit diesem Code löse ich den Fehler:

import matplotlib.pyplot as plt
import tensorflow as tf
import numpy as np
import math

#from tf.keras.models import Sequential  # This does not work!
from keras.models import Sequential
from keras.layers import InputLayer, Input
from keras.layers import Reshape, MaxPooling2D
from keras.layers import Conv2D, Dense, Flatten
0
pfRodenas

Zur Vereinfachung nehme ich die beiden Versionen des Codes in Keras und Tf.keras. Das Beispiel hier ist ein einfaches neuronales Netzwerkmodell mit verschiedenen Schichten.

In 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

In 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

oder es kann auf folgende Weise anstelle der oben genannten Art importiert werden

from tensorflow.keras.layers import Dense

Die offizielle Dokumentation von tf.keras

Hinweis: Die TensorFlow-Version ist 1.9

0
Ruthwik