zondag 29 oktober 2017

Weer lekker ... 4

Op deze site staan wat data - augmentation voorbeelden. De meesten blijken echter niet zinvol voor de MNIST dataset omdat de data al 'optimaal' geprepareerd is. (Horizontaal / centered / gelijke grootte)

https://machinelearningmastery.com/image-augmentation-deep-learning-keras/


Wat wel misschien zinvol is is de zca_whitening. Om de keras data augmentation te testen probeer ik dat uit op het model.


Dat lijkt alleen maar slechter te werken. Ik test toch ook wat verrijkingen door kleine verschuivingen en draaiingen toe te passen. Dat lijkt weinig effect te hebben maar het gaat iig niet (veel) omlaag. En in principe zou het netwerk hiermee robuuster moeten worden. 

train_datagen = ImageDataGenerator(zca_whitening=False,
                                   rotation_range=5,
                                   width_shift_range=0.1,
                                   height_shift_range=0.1,
                                   shear_range=0.1,
                                   zoom_range=0.1,
                                   horizontal_flip=False,
                                   fill_mode='nearest')
Een ander idee is om de onjuist geclassificeerde nummers dubbel of meerdere malen aan te bieden. Daardoor leert het model wellicht iets beter ook afwijkende varianten te beoordelen. Ik voeg hier elke epoch (na de eerste) alle foutief geclassificeerde nummers opnieuw toe. Uiteindelijk worden er zo 3432 extra toegevoegd. Met 20 epochs is dit het resultaat:

  
Een maximale score van 0.9956! (Bij epoch 15). Dat lijkt ietsjes beter.

Na toevoegen van shuflelen gaat het nog iets beter: 0.9959 bij epoch 14



Geen opmerkingen:

Een reactie posten