Twee extra Dense layers geven in eerste instantie slechtere resultaten:( was test 0.9739)
Ook na 20 epochs ziet het er nog niet goede uit:
Met een extra convolutional layer (128) ziet het er zo uit:
Dat lijkt een aardige verbetering van 0.9739 naar 0.9816! Kijken of we er nog een kunnen toevoegen. De tijd is nog steeds 2 seconden per epoch. Lang leve de GPU versnelling.
We gaan terug in performance helaas. Snel er weer vanaf. Of ook even de Dense layer aanpassen naar 256?
Dat lijkt wel te werken maar ik heb toch een beter gevoel om 1 conv layer terug te gaan. Zou het ook helpen om dropout bij de conv layers te introduceren? Hij gaat nu wel naar 3 seconden per Epoch! De 3 extra dropout layers zijn blijkbaar rekenintensief.
We gaan weer achteruit. Op zich logisch. Wellicht moeten we nu wat langer trainen? Hmm, wel een verhoging naar 0.9836. Maar is het echte winst? We zaten op 0.9903 met de volledige set.
We hebben iig iets gewonnen van 0.9903 naar 0.9925. En er lijken nog groeimogelijkheden in het aantal epochs.
Toch nog even kijken of de dropout bij de convolutional layers niet teveel roet in het eten gooit: (deze is dus zonder extra dropouts - title vergeten aan te passen) Het lijkt beter zonder de dropouts maar wellicht vlakt het ook meer af. Misschien hebben de dropouts toch meer potentie.
Met doorleren (20 epochs) krijgen we met extra dropouts het volgende resultaat:
Dat geeft toch nauwelijks verbetering maar wel veel meet processing (17 sec per epoch ipv 13) . Weg weer met de dropouts! Morgen verder. Misschien met wat data-verrijking?!
Toch nog even de vergeten maxpooling eruit gehaald: Vreemd dat hij er nu 22 seconden (van 14) per epoch over doet?!
act = 'relu'
model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3),
activation=act,
input_shape=input_shape))
model.add(Conv2D(64, (3, 3), activation=act))
#model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation=act))
model.add(Dropout(0.25))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation=act))
model.add(Dropout(0.5))
model.add(Dense(128, activation=act))
model.add(Dropout(0.5))
Geen opmerkingen:
Een reactie posten