Zacznij terazZacznij za darmo

Normalizacja wsadowa w znajomym modelu

Pamiętasz zbiór danych digits, na którym trenowałeś model w pierwszym ćwiczeniu tego rozdziału?

To problem klasyfikacji wieloklasowej, który rozwiązałeś przy użyciu softmax i 10 neuronów w warstwie wyjściowej.

Teraz zbudujesz nowy, głębszy model składający się z 3 ukrytych warstw po 50 neuronów każda, z normalizacją wsadową między warstwami. Parametr kernel_initializer służy do inicjalizacji wag w podobny sposób.

To ćwiczenie jest częścią kursu

Wprowadzenie do uczenia głębokiego z Keras

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj BatchNormalization z warstw tensorflow.keras.
  • Zbuduj model głębokiej sieci neuronowej – użyj 50 neuronów w każdej warstwie ukrytej i dodaj normalizację wsadową między warstwami.
  • Skompiluj model, używając stochastycznego gradientu prostego, sgd, jako optymalizatora.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import batch normalization from keras layers
from tensorflow.____.____ import ____

# Build your deep network
batchnorm_model = ____
batchnorm_model.add(Dense(____, input_shape=(64,), activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(10, activation='softmax', kernel_initializer='normal'))

# Compile your model with sgd
batchnorm_model.compile(optimizer=____, loss='categorical_crossentropy', metrics=['accuracy'])
Edytuj i uruchom kod