Проверяйте эффективность классификатора Используя набор тестов в приложении Classification Learner

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

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

    load ionosphere
    tbl = array2table(X);
    tbl.Y = Y;
    
    rng('default') % For reproducibility of the data split
    partition = cvpartition(Y,'Holdout',0.15);
    idxTrain = training(partition); % Indices for the training set
    tblTrain = tbl(idxTrain,:);
    tblTest = tbl(~idxTrain,:);
  2. Открытый Classification Learner. Кликните по вкладке Apps, и затем кликните по стреле справа от раздела Apps, чтобы открыть галерею Apps. В группе Machine Learning and Deep Learning нажмите Classification Learner.

  3. На вкладке Classification Learner, в разделе File, нажимают New Session и выбирают From Workspace.

  4. В диалоговом окне New Session from Workspace выберите tblTrain таблица из списка Data Set Variable.

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

    New Session from Workspace dialog box

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

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

    Совет

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

  7. Сортировка обученных моделей на основе точности валидации. В панели Models откройте список Sort by и выберите Accuracy (Validation).

  8. В панели Models кликните по значкам звезды рядом с этими тремя моделями с самой высокой точностью валидации. Приложение подсвечивает самую высокую точность валидации путем выделения его в поле. В этом примере обученная модель Medium Gaussian SVM имеет самую высокую точность валидации.

    Scatter plot of the ionosphere data

    Отображения приложения график рассеивания ionosphere данные. Правильно классифицированные точки отмечены O, и неправильно классифицировали точки, отмечены X. Панель Models слева показывает точность валидации для каждой модели.

    Примечание

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

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

    На вкладке Classification Learner, в разделе Testing, нажимают Test Data и выбирают From Workspace.

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

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

    Import Test Data dialog box

  11. Нажмите Import.

  12. Вычислите точность лучших предварительно установленных моделей на tblTest данные. Для удобства вычислите точность набора тестов для всех моделей целиком. На вкладке Classification Learner, в разделе Testing, нажимают Test All и выбирают Test All. Приложение вычисляет эффективность набора тестов модели, обученной на полном наборе данных, включая данные об обучении и валидации.

  13. Сортировка моделей на основе точности набора тестов. В панели Models откройте список Sort by и выберите Accuracy (Test). Приложение все еще обрисовывает в общих чертах метрику для модели с самой высокой точностью валидации, несмотря на отображение тестовой точности.

  14. Визуально проверяйте эффективность набора тестов моделей. На вкладке Classification Learner, в разделе Plots, нажимают Confusion Matrix и выбирают Test Data. Можно переключиться между моделями, чтобы сравнить их эффективность.

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

    Test set confusion matrix for the medium Gaussian SVM model

  15. Сравните валидацию и протестируйте точность на обученную модель Medium Gaussian SVM. В панели Current Model Summary сравните значение Accuracy (Validation) под Training Results к значению Accuracy (Test) под Test Results. В этом примере эти два значения близки, который указывает, что точность валидации является хорошей оценкой тестовой точности для этой модели.

Похожие темы