Laatste stappen in classificatiemodellen
Je gaat nu een classificatiemodel maken met de Titanic-gegevensset, die al is ingeladen in een DataFrame met de naam df. Je gebruikt informatie over de passagiers om te voorspellen wie er heeft overleefd.
De voorspellende variabelen staan in een NumPy-array predictors. Het doel dat je wilt voorspellen staat in df.survived, al moet je dit nog bewerken voor Keras. Het aantal voorspellende features staat in n_cols.
Hier gebruik je de optimizer 'sgd', wat staat voor Stochastic Gradient Descent. In het volgende hoofdstuk leer je hier meer over!
Deze oefening maakt deel uit van de cursus
Introductie tot Deep Learning in Python
Oefeninstructies
- Zet
df.survivedom naar een categorische variabele met de functieto_categorical(). - Specificeer een
Sequential-model met de naammodel. - Voeg een
Dense-laag toe met32nodes. Gebruik'relu'alsactivationen(n_cols,)alsinput_shape. - Voeg de
Dense-outputlaag toe. Omdat er twee uitkomsten zijn, moet deze 2 units hebben, en omdat het een classificatiemodel is, moet deactivation'softmax'zijn. - Compileer het model met
'sgd'alsoptimizer,'categorical_crossentropy'als verliesfunctie, enmetrics=['accuracy']om aan het einde van elk epoch de nauwkeurigheid te zien (welk deel van de voorspellingen correct was). - Train het model met
predictorsen detarget.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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
____