En modell för flera klasser
Nu ska du bygga en modell som förutsäger vem som kastade vilken pil – enbart baserat på var pilen landade! (Det vill säga pilens x- och y-koordinater på tavlan.)
Detta är ett klassificeringsproblem med flera klasser, eftersom varje pil bara kan ha kastats av en av 4 tävlande. Klasserna är alltså ömsesidigt uteslutande, och därför kan vi bygga ett nätverk med lika många utdataneuroner som tävlande och använda aktiveringsfunktionen softmax för att säkerställa att sannolikheterna summerar till 1 över alla tävlande.
Modellklassen Sequential och Dense-lagren är redan importerade och redo att använda.
Den här övningen är en del av kursen
Introduktion till djupinlärning med Keras
Övningsinstruktioner
- Skapa en instans av en
Sequential-modell. - Lägg till 3 täta lager med 128, 64 respektive 32 neuroner.
- Lägg till ett sista tätt lager med lika många neuroner som det finns tävlande.
- Kompilera modellen med förlustefunktionen
categorical_crossentropy.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Instantiate a sequential model
model = ____
# Add 3 dense layers of 128, 64 and 32 neurons each
model.add(____(____, input_shape=(2,), activation='relu'))
model.add(____(____, activation='relu'))
model.add(____(____, activation='relu'))
# Add a dense layer with as many neurons as competitors
model.add(____(____, activation=____))
# Compile your model using categorical_crossentropy loss
model.compile(loss=____,
optimizer='adam',
metrics=['accuracy'])