Метрики та валідація в Keras
У попередній вправі ми натренували модель для розпізнавання літер із жестової мови, але не зрозуміло, наскільки це вдалося. У цій вправі ми спробуємо зробити результати більш інтерпретованими. Оскільки ми не використовували валідаційну вибірку, ми спостерігали поліпшення лише на тренувальній вибірці; однак неясно, наскільки це було наслідком перенавчання. Крім того, оскільки ми не вказали метрику, ми бачили лише зменшення функції втрат, що не має однозначного тлумачення.
Зауважте, що keras уже імпортовано для вас із tensorflow.
Ця вправа є частиною курсу
Вступ до TensorFlow на Python
Інструкції до вправи
- Налаштуйте перший щільний шар на 32 вузли, використайте активаційну функцію
sigmoidі форму входу (784,). - Використайте оптимізатор root mean square propagation, функцію втрат categorical crossentropy і метрику accuracy.
- Встановіть кількість епох на 10 і використайте 10% набору даних для валідації.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define sequential model
model = keras.Sequential()
# Define the first layer
model.add(keras.layers.Dense(____, ____, ____))
# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))
# Set the optimizer, loss function, and metrics
model.compile(optimizer='____', loss='____', metrics=['____'])
# Add the number of epochs and the validation split
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)