ÎncepețiÎncepe gratuit

Definirea unui model cu intrări multiple

În unele cazuri, API-ul secvențial nu va fi suficient de flexibil pentru arhitectura de model dorită și va trebui să folosești API-ul funcțional. De exemplu, dacă vrei să antrenezi simultan două modele cu arhitecturi diferite, API-ul funcțional este soluția potrivită. În acest exercițiu, vei vedea cum se face acest lucru. Vei folosi și metoda .summary() pentru a examina arhitectura modelului combinat.

Reține că keras a fost importat din tensorflow pentru tine. De asemenea, straturile de intrare ale primului și celui de-al doilea model au fost definite ca m1_inputs, respectiv m2_inputs. Cele două modele au aceeași arhitectură, însă unul folosește activarea sigmoid în primul strat, iar celălalt folosește relu.

Acest exercițiu face parte din cursul

Introducere în TensorFlow în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Transmite stratul de intrare al modelului 1 primului său strat, și primul strat al modelului 1 celui de-al doilea strat al său.
  • Transmite stratul de intrare al modelului 2 primului său strat, și primul strat al modelului 2 celui de-al doilea strat al său.
  • Folosește operația add() pentru a combina al doilea strat al modelului 1 cu al doilea strat al modelului 2.
  • Finalizează definiția modelului funcțional.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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())
Editează și rulează codul