Ultimi passaggi nei modelli di classificazione
Ora creerai un modello di classificazione usando il dataset Titanic, che è stato precaricato in un DataFrame chiamato df. Userai le informazioni sui passeggeri per prevedere chi è sopravvissuto.
Le variabili predittive sono memorizzate in un array NumPy predictors. Il target da prevedere è in df.survived, anche se dovrai manipolarlo per Keras. Il numero di caratteristiche predittive è memorizzato in n_cols.
Qui userai l'ottimizzatore 'sgd', che sta per Stochastic Gradient Descent. Ne parlerai più nel dettaglio nel prossimo capitolo!
Questo esercizio fa parte del corso
Introduzione al Deep Learning in Python
Istruzioni dell'esercizio
- Converti
df.survivedin una variabile categorica usando la funzioneto_categorical(). - Specifica un modello
Sequentialchiamatomodel. - Aggiungi un livello
Densecon32nodi. Usa'relu'comeactivatione(n_cols,)comeinput_shape. - Aggiungi il livello di output
Dense. Poiché ci sono due esiti, dovrebbe avere 2 unità e, poiché è un modello di classificazione, l'activationdovrebbe essere'softmax'. - Compila il modello, usando
'sgd'comeoptimizer,'categorical_crossentropy'come funzione di perdita emetrics=['accuracy']per vedere l'accuratezza (la frazione di previsioni corrette) alla fine di ogni epoca. - Addestra il modello usando
predictorsetarget.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Import necessary modules
from tensorflow.keras.layers import Dense
from tensorflow.keras.models import Sequential
from tensorflow.keras.utils import to_categorical
# Convert the target to categorical: target
target = ____
# Set up the model
model = ____
# Add the first layer
____
# Add the output layer
____
# Compile the model
____
# Fit the model
____