experiments.Monitor

Обновите таблицу результатов и обучающие графики для пользовательских экспериментов по обучению

    Описание

    При запуске пользовательского обучающего эксперимента в Experiment Manager используйте experiments.Monitor объект для отслеживания прогресса обучения, обновления информационных полей в таблице результатов, записи значений метрик, используемых обучением, и создания обучающих графиков. Для получения дополнительной информации об пользовательских экспериментах обучения см. Раздел «Настройка пользовательского эксперимента обучения».

    Создание

    Когда вы запускаете пользовательский эксперимент по обучению, Experiment Manager создает experiments.Monitor объект для каждого испытания вашего эксперимента. Доступ к объекту как ко второму входному параметру функции обучения.

    Свойства

    расширить все

    Состояние обучения для пробной версии, заданное как строковый или символьный вектор.

    Пример: monitor.Status = "Loading Data";

    Типы данных: char | string

    Процесс обучения для исследования, заданный как числовой скаляр между 0 и 100.

    Пример: monitor.Progress = 17;

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

    Имена информационных столбцов, заданные как строка, вектор символов, строковые массивы или массив ячеек из векторов символов. Допустимые имена начинаются с буквы и могут содержать буквы, цифры и символ нижнего подчеркивания. Эти имена появляются как заголовки столбцов в таблице результатов эксперимента. Значения в информационных столбцах не отображаются на графике обучения.

    Вы можете задать это значение только один раз в вашей функции обучения.

    Пример: monitor.Info = ["GradientDecayFactor","SquaredGradientDecayFactor"];

    Типы данных: char | string

    Метрические имена столбцов, заданные как строка, вектор символов, строковые массивы или массив ячеек из векторов символов. Допустимые имена начинаются с буквы и могут содержать буквы, цифры и символ нижнего подчеркивания. Эти имена появляются как заголовки столбцов в таблице результатов эксперимента. Кроме того, каждая метрика появляется в своей собственной подграфике обучения. Чтобы построить больше чем один метрик в одной подграфике, используйте функцию groupSubPlot.

    Вы можете задать это значение только один раз в вашей функции обучения.

    Пример: monitor.Metrics = ["TrainingLoss","ValidationLoss"];

    Типы данных: char | string

    Горизонтальные подписи по осям на графике обучения, заданные как строка или вектор символов.

    Установите это значение перед вызовом функции recordMetrics.

    Пример: monitor.XLabel = "Iteration";

    Типы данных: char | string

    Это свойство доступно только для чтения.

    Флаг для остановки пробной версии, заданный как число или логический 1 (true) или 0 (false). Значение этого свойства изменяется на true при нажатии кнопки Stop на панели инструментов Experiment Manager или в таблице результатов.

    Типы данных: logical

    Функции объекта

    groupSubPlotГруппируйте метрики на графике обучения эксперимента
    recordMetricsЗапись значений метрики в таблицу результатов эксперимента и график обучения
    updateInfoОбновляйте информационные столбцы в таблице результатов эксперимента

    Примеры

    свернуть все

    Использование experiments.Monitor объект для отслеживания прогресса обучения, отображения информации и метрических значений в таблице результатов эксперимента и создания обучающих графиков для пользовательских экспериментов по обучению.

    Перед началом обучения укажите имена информационных и метрических столбцов таблицы результатов Experiment Manager.

    monitor.Info = ["GradientDecayFactor","SquaredGradientDecayFactor"];
    monitor.Metrics = ["TrainingLoss","ValidationLoss"];

    Задайте горизонтальную подпись по осям для обучающего графика. Сгруппируйте потерю обучения и валидации в один и тот же подграфик.

    monitor.XLabel = "Iteration";
    groupSubPlot(monitor,"Loss",["TrainingLoss","ValidationLoss"]);

    Обновите значения фактора градиентного распада и квадратного фактора градиентного распада для исследования в таблице результатов.

    updateInfo(monitor, ...
        'GradientDecayFactor',gradientDecayFactor, ...
        'SquaredGradientDecayFactor',squaredGradientDecayFactor);

    После каждой итерации пользовательского цикла обучения записывайте значение обучения и потерь при валидации для теста в таблицу результатов и график обучения.

    recordMetrics(monitor,iteration, ...
        'TrainingLoss',trainingLoss, ...
        'ValidationLoss',validationLoss);

    Обновите процесс обучения для теста на основе части завершенных итераций.

    monitor.Progress = (iteration/numIterations) * 100;

    Совет

    • Как информационные, так и метрические столбцы отображают значения в таблице результатов для вашего эксперимента. Кроме того, график обучения показывает запись значений метрики. Используйте информационные столбцы для текста и числовых значений, которые необходимо отобразить в таблице результатов, но не на графике обучения.

    См. также

    Введенный в R2021a