Aan de slagGa gratis aan de slag

Metrieken en validatie met Keras

In de vorige oefening hebben we een model getraind om letters in gebarentaal te voorspellen, maar het is niet duidelijk hoe succesvol dat was. In deze oefening proberen we de interpreteerbaarheid van onze resultaten te verbeteren. Omdat we geen validatiesplit hebben gebruikt, zagen we alleen prestatieverbeteringen binnen de trainingsset; het is echter onduidelijk hoeveel daarvan door overfitting kwam. Daarnaast hebben we geen metriek opgegeven, waardoor we alleen dalingen in de verliesfunctie zagen, die niet eenduidig te interpreteren zijn.

Let op: keras is al voor je geïmporteerd vanuit tensorflow.

Deze oefening maakt deel uit van de cursus

Introductie tot TensorFlow in Python

Cursus bekijken

Oefeninstructies

  • Stel de eerste dense-laag in op 32 nodes, gebruik een sigmoid-activatiefunctie en een inputvorm van (784,).
  • Gebruik de root mean square propagation-optimizer, een categorical crossentropy-verlies en de accuracy-metriek.
  • Stel het aantal epochs in op 10 en gebruik 10% van de gegevensset voor validatie.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Define sequential model
model = keras.Sequential()

# Define the first layer
model.add(keras.layers.Dense(____, ____, ____))

# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))

# Set the optimizer, loss function, and metrics
model.compile(optimizer='____', loss='____', metrics=['____'])

# Add the number of epochs and the validation split
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)
Code bewerken en uitvoeren