Керас зависает

Каков наилучший способ следить за процессами Python Keras (и его генератора), проверять случаи, если они действительно зависают или молча терпят неудачу?

До сих пор мне удавалось придумать 2 обратных вызова, один из которых печатает количество процессов (которые я проверяю вручную, просматривая журналы) и один, который печатает дату и время (так что я могу видеть, когда закончена последняя эпоха, и сравнивать его вручную с текущим время и эпоха). Это не идеальное решение, хотя.

class ProcNumPrinter(Callback):
    """
    Keras callback, that automatically monitors the number of processes (in one line at stdout).
    Useful in cases, when we suspect, that some process did hang.

    """
    def __init__(self):
        super(ProcNumPrinter, self).__init__()

    def on_epoch_end(self, epoch, logs=None):
        print("Multiprocessing reporting {} processes".format(len(multiprocessing.active_children())))


class DatetimePrinter(Callback):
    """
    Keras callback printing the date and time of the last callback activity.
    Useful for checking for hanged processes when keras output used without progressbar.
    """
    def __init__(self):
        super(DatetimePrinter, self).__init__()

    def on_epoch_end(self, epoch, logs=None):
        print(time.strftime("%Y-%m-%d %H:%M"))

0 ответов

Другие вопросы по тегам