Aan de slagGa gratis aan de slag

Een irrigatiemachine

Je gaat het besproeien van percelen automatiseren door een slimme irrigatiemachine te bouwen. Multi-label-classificatie verschilt van multi-class-problemen doordat elke observatie nul of meer klassen kan krijgen. Klassen/labels sluiten elkaar dus niet uit: je kunt alle, geen of elke combinatie van percelen besproeien op basis van de input.

Om dit gedrag te ondersteunen, gebruiken we een outputlaag met evenveel neuronen als klassen, maar dit keer, anders dan bij multi-class-problemen, heeft elk outputneuron een sigmoid-activatiefunctie. Hierdoor kan elk neuron in de outputlaag onafhankelijk een getal tussen 0 en 1 geven.

Het Sequential()-model en de Dense()-lagen staan klaar voor gebruik. Tijd om een slimme irrigatiemachine te bouwen!

Deze oefening maakt deel uit van de cursus

Introductie tot Deep Learning met Keras

Cursus bekijken

Oefeninstructies

  • Instantieer een Sequential()-model.
  • Voeg een verborgen laag toe van 64 neuronen met evenveel invoerneuronen als er sensoren zijn en relu-activatie.
  • Voeg een outputlaag toe met evenveel neuronen als percelen en sigmoid-activatie.
  • Compileer je model met de adam-optimizer en binary_crossentropy-loss.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Instantiate a Sequential model
model = ____

# Add a hidden layer of 64 neurons and a 20 neuron's input
____

# Add an output layer of 3 neurons with sigmoid activation
____

# Compile your model with binary crossentropy loss
model.compile(optimizer='adam',
           loss = ____,
           metrics=['accuracy'])

model.summary()
Code bewerken en uitvoeren