LoslegenKostenlos starten

Ein Modell mit mehreren Eingaben definieren

In manchen Fällen ist die Sequential-API nicht flexibel genug für die gewünschte Modellarchitektur, und du musst stattdessen die Functional-API verwenden. Wenn du zum Beispiel zwei Modelle mit unterschiedlicher Architektur gemeinsam trainieren willst, brauchst du dafür die Functional-API. In dieser Übung schauen wir uns an, wie das geht. Außerdem verwenden wir die Methode .summary(), um die Architektur des gemeinsamen Modells zu untersuchen.

Beachte, dass keras bereits aus tensorflow importiert wurde. Zusätzlich wurden die Input-Layer der ersten bzw. zweiten Modelle als m1_inputs und m2_inputs definiert. Beachte auch: Die beiden Modelle haben die gleiche Architektur, aber eines verwendet im ersten Layer eine sigmoid-Aktivierung und das andere eine relu.

Diese Übung ist Teil des Kurses

<Kurs>Einführung in TensorFlow mit Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Übergib den Input-Layer von Modell 1 an dessen ersten Layer und den ersten Layer von Modell 1 an dessen zweiten Layer.
  • Übergib den Input-Layer von Modell 2 an dessen ersten Layer und den ersten Layer von Modell 2 an dessen zweiten Layer.
  • Verwende die add()-Operation, um die zweiten Layer von Modell 1 und Modell 2 zu kombinieren.
  • Schließe die Definition des Functional-Modells ab.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# For model 1, pass the input layer to layer 1 and layer 1 to layer 2
m1_layer1 = keras.layers.Dense(12, activation='sigmoid')(____)
m1_layer2 = keras.layers.Dense(4, activation='softmax')(____)

# For model 2, pass the input layer to layer 1 and layer 1 to layer 2
m2_layer1 = keras.layers.Dense(12, activation='relu')(____)
m2_layer2 = keras.layers.Dense(4, activation='softmax')(____)

# Merge model outputs and define a functional model
merged = keras.layers.add([m1_layer2, ____])
model = keras.Model(inputs=[____, m2_inputs], outputs=____)

# Print a model summary
print(model.summary())
Code bearbeiten und ausführen