Обучите регрессионую модель с помощью оптимизации гипероптимизации параметров управления в приложении Regression Learner

Этот пример показывает, как настроить гиперпараметры регрессионного ансамбля с помощью оптимизации гипероптимизации параметров управления в приложении Regression Learner. Сравните производительность тестового набора обученного оптимизируемого ансамбля с эффективными предустановленными моделями ансамбля.

  1. В MATLAB® Командное окно, загрузите carbig Данные и создайте таблицу, содержащую большинство переменных. Разделите таблицу на обучающие и тестовые наборы.

    load carbig
    cartable = table(Acceleration,Cylinders,Displacement, ...
        Horsepower,Model_Year,Weight,Origin,MPG);
    
    rng('default') % For reproducibility of the data split
    n = length(MPG);
    partition = cvpartition(n,'Holdout',0.15);
    idxTrain = training(partition); % Indices for the training set
    cartableTrain = cartable(idxTrain,:);
    cartableTest = cartable(~idxTrain,:);
  2. Откройте Regression Learner. Щелкните вкладку Apps, а затем щелкните стреле справа от раздела Apps, чтобы открыть галерею Apps. В группе Machine Learning and Deep Learning нажмите Regression Learner.

  3. На вкладке Regression Learner, в разделе File, выберите New Session > From Workspace.

  4. В диалоговом окне «Новый сеанс из рабочей области» выберите cartableTrain таблица из списка Data Set Variable.

    Как показано в диалоговом окне, приложение выбирает переменные отклика и предиктора. Переменная отклика по умолчанию MPG. Опция валидации по умолчанию является 5-кратной перекрестной валидацией, чтобы защитить от сверхподбора кривой. В данном примере не изменяйте настройки по умолчанию.

    New Session from Workspace dialog box

  5. Чтобы принять опции по умолчанию и продолжить, нажмите Start Session.

  6. Обучите все предустановленные модели ансамбля. На вкладке Regression Learner, в разделе Model Type, щелкните стреле, чтобы открыть галерею. В группе Ensembles of Trees нажмите All Ensembles. В Training разделе нажмите Train. Приложение обучает один из каждого типа модели ансамбля и отображает модели на панели Models.

    Совет

    Если у вас есть Parallel Computing Toolbox™, можно обучить все модели ансамбля (All Ensembles) одновременно, нажав кнопку Use Parallel в разделе Training перед нажатием Train. После нажатия кнопки Train открывается диалоговое окно Открытие параллельного пула, которое остается открытым, пока приложение открывает параллельный пул работников. В течение этого времени вы не можете взаимодействовать с программным обеспечением. После открытия бассейна приложение обучает модели ансамбля одновременно.

    Response plot of the car data

    Приложение отображает график отклика данных о автомобиле. Синие точки являются истинными значениями, а желтые - предсказанными значениями. На Models панели слева показан RMSE валидации для каждой модели.

    Примечание

    Валидация вводит некоторую случайность в результаты. Результаты валидации вашей модели могут отличаться от результатов, показанных в этом примере.

  7. Выберите оптимизируемую модель ансамбля для обучения. На вкладке Regression Learner, в разделе Model Type, щелкните стреле, чтобы открыть галерею. В группе Ensembles of Trees нажмите Optimizable Ensemble. Приложение отключает кнопку Use Parallel, когда вы выбираете оптимизируемую модель.

  8. Выберите гиперпараметры модели для оптимизации. В Model Type разделе выберите Advanced > Advanced. Приложение открывает диалоговое окно, в котором можно установить Optimize флажки для гиперпараметров, которые вы хотите оптимизировать. По умолчанию все флажки установлены. В данном примере примите выбор по умолчанию и закройте диалоговое окно.

    Select Ensemble Hyperparameters to Optimize dialog box

  9. В Training разделе нажмите Train.

  10. Приложение отображает Minimum MSE Plot, когда запускает процесс оптимизации. При каждой итерации приложение пробует различную комбинацию значений гиперзначений параметров и обновляет график с минимальной средней квадратичной невязкой валидации (MSE), наблюдаемой до этой итерации, обозначенной темно-синим цветом. Когда приложение завершает процесс оптимизации, оно выбирает набор оптимизированных гиперпараметров, обозначенных красным квадратом. Для получения дополнительной информации смотрите Минимальный график MSE.

    Приложение приводит оптимизированные гиперпараметры как в разделе Optimization Results справа от графика, так и в разделе Optimized Hyperparameters на панели Current Model Summary.

    Minimum MSE plot for the optimizable ensemble model

    Примечание

    В целом результаты оптимизации не воспроизводимы.

  11. Сравните обученные предустановленные модели ансамбля с обученной оптимизируемой моделью. На панели Models приложение подсвечивает самую низкую RMSE (Validation) (среднюю квадратичную невязку корня валидации), обрисовывая ее в поле. В этом примере обученный оптимизируемый ансамбль превосходит две предустановленные модели.

    Обученная оптимизируемая модель не всегда имеет более низкий RMSE, чем обученные предустановленные модели. Если обученная оптимизируемая модель работает плохо, можно попытаться получить лучшие результаты, запустив оптимизацию дольше. В Model Type разделе выберите Advanced > Optimizer Options. В диалоговом окне увеличьте значение Iterations. Например, можно дважды кликнуть значение по умолчанию 30 и введите значение 60.

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

    На вкладке Regression Learner, в разделе Testing, выберите Test Data > From Workspace.

  13. В диалоговом окне Import Test Data выберите cartableTest таблица из списка Test Data Set Variable.

    Как показано в диалоговом окне, приложение идентифицирует переменные отклика и предиктора.

    Import Test Data dialog box

  14. Нажмите Import.

  15. Вычислите RMSE лучшей предустановленной модели и оптимизируемой модели на cartableTest данные.

    Сначала на панели Models щелкните значки звезды рядом с моделью Bagged Trees и Optimizable Ensemble моделью.

  16. Для каждой модели выберите модель на панели Models, а затем выберите Test All > Test Selected в разделе Testing. Приложение вычисляет эффективность тестового набора модели, обученной на полном наборе данных, включая данные обучения и валидации.

  17. Отсортируйте модели на основе тестового набора RMSE. На панели Models откройте список Sort by и выберите RMSE (Test).

    В этом примере обученный оптимизируемый ансамбль все еще превосходит обученную предустановленную модель на данных тестового набора.

    Trained models sorted by test RMSE

Похожие темы