Regularisering av neurala nätverk

Bildmodellering med Keras

Ariel Rokem

Senior Data Scientist, University of Washington

Dropout

I varje inlärningssteg:

  • Välj ut en delmängd av enheterna
  • Ignorera dem i det framåtriktade passet
  • Och vid bakåtpropagering av felet
Bildmodellering med Keras

Dropout

Bildmodellering med Keras

Dropout i Keras

from keras.models import Sequential
from keras.layers import Dense, Conv2D, Flatten, Dropout

model = Sequential() model.add(Conv2D(5, kernel_size=3, activation='relu', input_shape=(img_rows, img_cols, 1)))
model.add(Dropout(0.25))
model.add(Conv2D(15, kernel_size=3, activation='relu')) model.add(Flatten()) model.add(Dense(3, activation='softmax'))
Bildmodellering med Keras

Batchnormalisering

  • Skala om utdata
Bildmodellering med Keras

Batchnormalisering i Keras

from keras.models import Sequential
from keras.layers import Dense, Conv2D, Flatten, BatchNormalization 


model = Sequential() model.add(Conv2D(5, kernel_size=3, activation='relu', input_shape=(img_rows, img_cols, 1)))
model.add(BatchNormalization())
model.add(Conv2D(15, kernel_size=3, activation='relu')) model.add(Flatten()) model.add(Dense(3, activation='softmax'))
Bildmodellering med Keras

Var försiktig när du kombinerar dem!

Konflikten mellan dropout och batchnormalisering

Bildmodellering med Keras

Nu kör vi en övning!

Bildmodellering med Keras

Preparing Video For Download...