Можно ли изменить формат тренировочного вывода в Керасе? - PullRequest
0 голосов
/ 29 января 2020

Во время обучения модели Keras Keras распечатывает строку, показывающую, например, потерю и значение метрик. Например, что-то вроде этого.

39/1000 [>.............................] - ETA: 4:39 - loss: 63694.8726 - metric_0: 0.0000e+00 - metric_1: 0.0000e+00 - metric_2: 0.0000e+00T - ...

Проблема в том, что эта строка может быть очень длинной, если у вас много метрик. Есть ли способ форматирования этой строки? Было бы неплохо, если бы мы могли отформатировать эту строку аналогичным образом, мы могли бы отформатировать строку в Python, например, с помощью метода format.

Вот проблема , связанная с Github .

1 Ответ

1 голос
/ 29 января 2020

Вы можете использовать verbose=0 и печатать свои собственные результаты в обратном вызове.

Пример:

from keras.callbacks import LambdaCallback

def printLog(epoch, logs):
    #get the metrics inside the `logs` variable
    #print whatever you want the way you want

printerCallback = LambdaCallback(on_epoch_end=printLog)

model.fit(........, callbacks = [printerCallback], verbose=0)

Недостатком является то, что вы не можете иметь панель обновления, у вас есть один отпечаток за эпоху.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...