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

Модель экспорта к рабочей области

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

Примечание

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

Вот шаги для экспорта модели к MATLAB®workspace:

  1. В приложении выберите модель, которую вы хотите экспортировать в Списке предыстории.

  2. На вкладке Regression Learner, в разделе Export, нажатии кнопки одной из опций экспорта:

    • Чтобы включать данные, используемые в обучении модель, выберите Export Model.

      Вы экспортируете обученную модель в рабочую область как структура, содержащая объект модели регрессии.

    • Чтобы исключить обучающие данные, выберите Export Compact Model. Эта опция экспортирует модель с ненужными данными, удаленными, если это возможно. Для некоторых моделей это - компактный объект, который не включает обучающие данные, но можно все еще использовать его в том, что он сделал предсказания на новых данных.

  3. В диалоговом окне Export Model проверяйте имя своей экспортируемой переменной и отредактируйте его, если вы хотите. Затем нажмите OK. Имя по умолчанию для вашей экспортируемой модели, trainedModel, постепенно увеличивается каждый раз, когда вы экспортируете, чтобы не перезаписывать ваши модели (например, trainedModel1).

    Новая переменная (например, trainedModel) появляется в вашей рабочей области.

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

Сделайте предсказания для новых данных

После того, как вы экспортируете модель в рабочую область от Regression Learner или запустите код, сгенерированный из приложения, вы получаете trainedModel структура, которую можно использовать, чтобы сделать предсказания с помощью новых данных. Структура содержит объект модели и функцию для предсказания. Структура позволяет вам сделать предсказания для моделей, которые включают анализ главных компонентов (PCA).

  1. Используйте экспортируемую модель, чтобы сделать предсказания для новых данных, T:

    yfit = trainedModel.predictFcn(T)
    где trainedModel имя вашей экспортируемой переменной.

    Снабдите данными T с тем же форматом и типом данных как обучающие данные, используемые в приложении (таблица или матрица).

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

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

    Выход yfit содержит предсказание для каждой точки данных.

  2. Исследуйте поля экспортируемой структуры. Для предсказаний создания справки, введите:

    trainedModel.HowToPredict

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

Сгенерируйте код MATLAB, чтобы обучить модель с новыми данными

После того, как вы создадите модели регрессии в интерактивном режиме в приложении Regression Learner, можно сгенерировать код MATLAB для лучшей модели. Затем можно использовать код, чтобы обучить модель с новыми данными.

Сгенерируйте код MATLAB к:

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

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

  • Исследуйте код, чтобы изучить, как обучить модели программно.

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

  • Повторите свой анализ различных данных и автоматизируйте обучение.

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

  1. В приложении, из Списка предыстории, выбирают модель, для которой вы хотите сгенерировать код.

  2. На вкладке Regression Learner, в разделе Export, нажимают Generate Function.

    Приложение генерирует код от вашего сеанса и отображает файл в редакторе MATLAB. Файл включает предикторы и ответ, методы обучения модели и методы валидации. Сохраните файл.

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

    Скопируйте первую строку сгенерированного кода, исключая слово function, и отредактируйте trainingData входной параметр, чтобы отразить имя переменной ваших обучающих данных или новых данных. Точно так же отредактируйте responseData входной параметр (если применимо).

    Например, чтобы переобучить модель регрессии, обученную с cartable набор данных, введите:

    [trainedModel, validationRMSE] = trainRegressionModel(cartable)

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

Если вы хотите автоматизировать обучение та же модель с новыми данными или изучить, как программно обучить модели, исследовать сгенерированный код. Код показывает вам как:

  • Обработайте данные в правильную форму.

  • Обучите модель и задайте все опции модели.

  • Выполните перекрестную проверку.

  • Вычислите статистику.

  • Вычислите предсказания валидации и баллы.

Примечание

Если вы генерируете код MATLAB из обученной optimizable модели, сгенерированный код не включает процесс оптимизации.

Разверните предсказания Используя MATLAB Compiler

После того, как вы экспортируете модель в рабочую область от Regression Learner, можно развернуть его с помощью MATLAB Compiler™.

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

  • Сохраните trainedModel структура в .mat файле.

    save mymodel trainedModel
  • Запишите код, который будет скомпилирован. Этот код должен загрузить обученную модель и использовать ее, чтобы сделать предсказание. Это должно также иметь прагму, таким образом, компилятор распознает, что код Statistics and Machine Learning Toolbox™ необходим в скомпилированном приложении. Эта прагма могла быть любой функцией в тулбоксе.

    function ypred = mypredict(tbl)
    %#function fitrtree
    load('mymodel.mat');
    load('cartable.mat')
    ypred = trainedModel.predictFcn(cartable)
    end
  • Скомпилируйте как автономное приложение.

    mcc -m mypredict.m
    

Смотрите также

Функции

Классы

Похожие темы