ÎncepețiÎncepe gratuit

Adăugarea de straturi într-o rețea

Ai văzut cum să experimentezi cu rețele mai largi. În acest exercițiu, vei încerca o rețea mai adâncă (cu mai multe straturi ascunse).

Din nou, ai un model de referință numit model_1 ca punct de plecare. Acesta are 1 strat ascuns cu 10 unități. Poți vedea un rezumat al structurii acelui model afișat mai jos. Vei crea o rețea similară cu 3 straturi ascunse (păstrând în continuare câte 10 unități în fiecare strat).

Antrenarea ambelor modele va dura puțin, așa că va trebui să aștepți câteva secunde pentru a vedea rezultatele după ce rulezi codul.

Acest exercițiu face parte din cursul

Introducere în Deep Learning în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Definește un model numit model_2, similar cu model_1, dar care are 3 straturi ascunse de câte 10 unități în loc de unul singur.
    • Folosește input_shape pentru a specifica forma intrării în primul strat ascuns.
    • Folosește activarea 'relu' pentru cele 3 straturi ascunse și 'softmax' pentru stratul de ieșire, care ar trebui să aibă 2 unități.
  • Compilează model_2 la fel cum ai făcut cu modelele anterioare: folosind 'adam' ca optimizer, 'categorical_crossentropy' pentru loss și metrics=['accuracy'].
  • Apasă Trimite răspunsul pentru a antrena ambele modele și a vizualiza care dintre ele oferă rezultate mai bune!

Exercițiu interactiv practic

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

# The input shape to use in the first hidden layer
input_shape = (n_cols,)

# Create the new model: model_2
model_2 = ____

# Add the first, second, and third hidden layers
____
____
____

# Add the output layer
____

# Compile model_2
____

# Fit model 1
model_1_training = model_1.fit(predictors, target, epochs=15, validation_split=0.4, verbose=False)

# Fit model 2
model_2_training = model_2.fit(predictors, target, epochs=15, validation_split=0.4, verbose=False)

# Create the plot
plt.plot(model_1_training.history['val_loss'], 'r', model_2_training.history['val_loss'], 'b')
plt.xlabel('Epochs')
plt.ylabel('Validation score')
plt.show()
Editează și rulează codul