В этом примере показов, как создать машина опорных векторов (SVM) классификаторы в приложении Classification Learner, используя ionosphere
набор данных, содержащий два класса. Можно использовать машину опорных векторов (SVM) с двумя или несколькими классами в Classification Learner. SVM классифицирует данные, находя лучшую гиперплоскость, которая отделяет все точки данных одного класса от точек другого класса. В ionosphere
данные, переменная отклика категориальна с двумя уровнями: g
представляет хорошие радарные возвраты, и b
представляет плохие радиолокационные возвраты.
В MATLAB®, загрузите ionosphere
и задайте некоторые переменные из набора данных, которые будут использоваться для классификации.
load ionosphere
ionosphere = array2table(X);
ionosphere.Group = Y;
Также можно загрузить ionosphere
набор данных и сохраните X
и Y
данные как отдельные переменные.
На вкладке Apps, в группе Machine Learning and Deep Learning, нажмите Classification Learner.
На вкладке Classification Learner, в разделе File, нажмите New Session > From Workspace.
В диалоговом окне Новый сеанс из рабочей области выберите таблицу ionosphere
из списка Data Set Variable. Заметьте, что приложение выбрало переменные отклика и предиктора на основе их типа данных. Переменная отклика Group
имеет два уровня. Все другие переменные являются предикторами.
Кроме того, если вы сохранили данные предиктора X
и переменная отклика Y
как две отдельные переменные можно сначала выбрать матрицу X
из списка Data Set Variable. Затем, в разделе Response, нажмите кнопку From workspace опция и выберите Y
из списка. The Y
переменная та же, что и Group
переменная.
Нажмите Start Session.
Classification Learner создает график поля точек данных.
Используйте график поля точек, чтобы визуализировать, какие переменные полезны для предсказания отклика. Выберите различные переменные в элементах управления осями X и ось Y Наблюдайте, какие переменные разделяют цвета классов наиболее четко.
Чтобы создать выбор моделей SVM, на вкладке Classification Learner, в разделе Model Type, щелкните стреле вниз, чтобы развернуть список классификаторов, и под Support Vector Machines нажмите All SVMs.
Затем нажмите Train.
Совет
Если у вас есть Parallel Computing Toolbox™, можно обучить все модели (All SVMs) одновременно, нажав кнопку Use Parallel в разделе Training перед нажатием Train. После нажатия кнопки Train открывается диалоговое окно Открытие параллельного пула, которое остается открытым, пока приложение открывает параллельный пул работников. В течение этого времени вы не можете взаимодействовать с программным обеспечением. После открытия пула приложение обучает модели одновременно.
Classification Learner обучает один из каждого неоптимизируемой опции классификации SVM в галерее и подсвечивает лучший счет. Приложение обрисовывает в кубе Accuracy (Validation) счет лучшей модели.
Выберите модель на панели Models, чтобы просмотреть результаты. Исследуйте график поля точек для обученной модели и попробуйте построить график различных предикторов. Неправильно классифицированные точки показаны как X.
Чтобы проверить точность предсказаний в каждом классе, на вкладке Classification Learner, в разделе Plots, нажмите Confusion Matrix и выберите Validation Data. Просмотрите матрицу результатов истинного класса и предсказанного класса.
Выберите другие модели на панели Models для сравнения.
Выберите лучшую модель (лучший счет подсвечивается в кубе). Чтобы улучшить модель, попробуйте включить различные функции в модель. Посмотрите, можно ли улучшить модель, удалив функции с низкой прогностической степенью.
На вкладке Classification Learner, в разделе Features, нажмите Feature Selection. В диалоговом окне Выбора признаков задайте предикторы, которые будут удалены из модели, и нажатия кнопки Train, чтобы обучить новую модель с помощью новых опций. Сравните результаты между классификаторами на панели Models.
Чтобы исследовать функции, которые нужно включить или исключить, используйте график параллельных координат. На вкладке Classification Learner, в разделе Plots, выберите Parallel Coordinates.
Выберите лучшую модель на панели Models. Чтобы попытаться улучшить модель дальше, попробуйте изменить настройки SVM. На вкладке Classification Learner, в разделе Model Type, нажмите Advanced. Попробуйте изменить настройку, затем обучите новую модель, нажав Train. Дополнительные сведения о настройках см. в разделе Машинах опорных векторов.
Чтобы экспортировать обученную модель в рабочую область, выберите вкладку Classification Learner и нажмите Export model. Смотрите Экспорт Классификационной модели для предсказания новых данных.
Чтобы изучить код для обучения этого классификатора, нажмите Generate Function. Для моделей SVM, смотрите также Сгенерируйте код С для предсказания.
Используйте тот же рабочий процесс для анализа и сравнения других типов классификаторов, которые можно обучить в Classification Learner.
Чтобы попробовать все наборы моделей неоптимизируемых классификаторов, доступные для вашего набора данных:
Щелкните стреле в крайнем правом углу раздела Model Type, чтобы развернуть список классификаторов.
Нажмите All, затем нажмите Train.
Чтобы узнать о других типах классификаторов, см. Train классификационных моделей» в приложении Classification Learner.