Какая польза от многословия в Keras при проверке модели?


89

Я впервые использую модель LSTM. Вот моя модель:

opt = Adam(0.002)
inp = Input(...)
print(inp)
x = Embedding(....)(inp)
x = LSTM(...)(x)
x = BatchNormalization()(x)
pred = Dense(5,activation='softmax')(x)

model = Model(inp,pred)
model.compile(....)

idx = np.random.permutation(X_train.shape[0])
model.fit(X_train[idx], y_train[idx], nb_epoch=1, batch_size=128, verbose=1)

Какая польза от многословия при обучении модели?

Ответы:


210

Ознакомьтесь с документацией по модели model.fit здесь .

Устанавливая подробный 0, 1 или 2, вы просто говорите, как вы хотите «видеть» прогресс обучения для каждой эпохи.

verbose=0 ничего не покажет (молчание)

verbose=1 покажет вам анимированный индикатор выполнения, например:

progres_bar

verbose=2 просто упомянет количество эпох, например:

введите описание изображения здесь


20
подробный: целое число. 0, 1 или 2. Режим детализации. 0 = без звука, 1 = индикатор выполнения, 2 = одна строка на эпоху. Спасибо @ank you rock ..
rakesh

2
Этот комментарий - лучший ответ на вопрос, даже лучше, чем комментируемый ответ. Обратите внимание на это и постарайтесь избегать слов, чтобы ответ был длиннее. @rakesh, ты молодец.
Константин Секереш 01

19

verbose: Integer. 0, 1 или 2. Режим детализации.

Verbose = 0 (без звука)

Verbose = 1 (индикатор выполнения)

Train on 186219 samples, validate on 20691 samples
Epoch 1/2
186219/186219 [==============================] - 85s 455us/step - loss: 0.5815 - acc: 
0.7728 - val_loss: 0.4917 - val_acc: 0.8029
Train on 186219 samples, validate on 20691 samples
Epoch 2/2
186219/186219 [==============================] - 84s 451us/step - loss: 0.4921 - acc: 
0.8071 - val_loss: 0.4617 - val_acc: 0.8168

Verbose = 2 (одна строка на эпоху)

Train on 186219 samples, validate on 20691 samples
Epoch 1/1
 - 88s - loss: 0.5746 - acc: 0.7753 - val_loss: 0.4816 - val_acc: 0.8075
Train on 186219 samples, validate on 20691 samples
Epoch 1/1
 - 88s - loss: 0.4880 - acc: 0.8076 - val_loss: 0.5199 - val_acc: 0.8046

Не могли бы вы объяснить, почему я не получаю ожидаемого результата для разных подробностей. У меня такой же [тихий] вывод для verbose = 0 и 2 для моего файла? А для verbose = 1 я получаю индикатор выполнения только в конце эпох, например Epoch 10/10 - 21s - loss: 0.2354 - acc: 0.9286 - val_loss: 0.2206 - val_acc: 0.9344 [======== ======================] Точность: 0,9344 Ошибка: 6.560000000000002
Доктор Ниша Арора

отличный ответ, помог мне. Действительно для тензорного потока 2.2
Бобс

9

Для verbose> 0 fitжурналы метода:

  • loss : значение функции потерь для ваших обучающих данных
  • acc : значение точности ваших тренировочных данных.

Примечание. Если используются механизмы регуляризации, они включаются во избежание переобучения.

если аргументы validation_dataили validation_splitне пустые, fitжурналы метода:

  • val_loss : значение функции потерь для ваших данных проверки
  • val_acc : значение точности для ваших данных проверки

Примечание. Механизмы регуляризации отключены во время тестирования, поскольку мы используем все возможности сети.

Например, использование verboseмодели во время обучения помогает обнаружить переоснащение, которое происходит, если вы accпродолжаете улучшаться, а вам val_accстановится хуже.


Какое отношение имеет регуляризация к параметру многословности ?!
Chrisji 05

Параметр Verbose не влияет на механизмы регуляризации. Я просто добавляю информацию о том, что отображается, если включена подробная информация (чтобы ответить на первоначальный вопрос «Какая польза от многословности при обучении модели?» => Пример: предотвращение переобучения путем сравнения acc и val_acc).
Hugo Bevilacqua

1

По умолчанию verbose = 1,

verbose = 1, который включает в себя индикатор выполнения и одну строку за эпоху

verbose = 0, означает молчание

verbose = 2, одна строка на эпоху, т.е. номер эпохи / общее количество эпох


0

Порядок подробностей, представленных с подробным флагом, следующий:

Меньше деталей .... Подробнее

0 <2 <1

По умолчанию 1

Для производственной среды рекомендуется 2

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.