En bevattningsmaskin
Du ska automatisera bevattningen av jordbruksytor genom att bygga en intelligent bevattningsmaskin. Multi-label-klassificeringsproblem skiljer sig från multi-class-problem på så sätt att varje observation kan märkas med noll eller flera klasser. Klasserna och etiketterna utesluter alltså inte varandra – du kan bevattna alla, inga eller valfri kombination av jordbruksytor beroende på indata.
För att hantera det här beteendet använder vi ett utdatalager med lika många neuroner som klasser, men den här gången – till skillnad från vid multi-class-problem – har varje utdataneuron en sigmoid-aktiveringsfunktion. Det gör att varje neuron i utdatalagret kan producera ett värde mellan 0 och 1 oberoende av de andra.
Sequential()-modellen och Dense()-lagren är redo att användas. Nu är det dags att bygga en intelligent bevattningsmaskin!
Den här övningen är en del av kursen
Introduktion till djupinlärning med Keras
Övningsinstruktioner
- Instansiera en
Sequential()-modell. - Lägg till ett dolt lager med 64 neuroner, lika många indataneuroner som det finns sensorer, och
relu-aktivering. - Lägg till ett utdatalager med lika många neuroner som det finns jordbruksytor och
sigmoid-aktivering. - Kompilera din modell med
adam-optimeraren ochbinary_crossentropysom förlustfunktion.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()