В этом примере показано, как создавать и сравнивать классификаторы, использующие указанные затраты на неправильную классификацию в приложении «Ученик по классификации». Укажите затраты на неправильную классификацию перед обучением и используйте точность и общие результаты затрат на неправильную классификацию для сравнения обученных моделей.
В окне команд MATLAB ® прочитайте образец файлаCreditRating_Historical.dat в таблицу. Данные предиктора состоят из финансовых коэффициентов и отраслевой информации для списка корпоративных клиентов. Переменная ответа состоит из кредитных рейтингов, присвоенных рейтинговым агентством. Объединить все A рейтинги в один рейтинг. Сделайте то же самое для B и C рейтинги, так что переменная ответа имеет три различных рейтинга. Среди трёх рейтингов, A считается лучшим и C худшее.
creditrating = readtable('CreditRating_Historical.dat'); Rating = categorical(creditrating.Rating); Rating = mergecats(Rating,{'AAA','AA','A'},'A'); Rating = mergecats(Rating,{'BBB','BB','B'},'B'); Rating = mergecats(Rating,{'CCC','CC','C'},'C'); creditrating.Rating = Rating;
Предположим, что это затраты, связанные с неправильной классификацией кредитных рейтингов клиентов.
| Прогнозируемый рейтинг клиента | ||||
A | B | C | ||
| Истинный рейтинг клиента | A | $0 | $100 | $200 |
B | $500 | $0 | $100 | |
C | $1000 | $500 | $0 | |
Например, стоимость неправильной классификации C оценка клиента как A оценка клиента - $1000. Затраты указывают на то, что классифицировать клиента с плохим кредитом как клиента с хорошим кредитом дороже, чем классифицировать клиента с хорошим кредитом как клиента с плохим кредитом.
Создайте переменную матрицы, содержащую затраты на неправильную классификацию. Создайте другую переменную, определяющую имена классов и их порядок в матричной переменной.
ClassificationCosts = [0 100 200; 500 0 100; 1000 500 0];
ClassNames = categorical({'A','B','C'});
Совет
Кроме того, можно указать затраты на неправильную классификацию непосредственно в приложении «Classification Learner». Дополнительные сведения см. в разделе Определение затрат на неправильную классификацию.
Открыть классификатор. Перейдите на вкладку Приложения и щелкните стрелку справа от раздела Приложения, чтобы открыть галерею приложений. В группе Machine Learning and Deep Learning выберите Classification Learner.

На вкладке «Классификатор» в разделе «Файл» выберите «Новый сеанс» > «Из рабочей области».
В диалоговом окне Создать сессию из рабочей области (New Session from Workspace) выберите таблицу creditrating из списка «Переменная набора данных».
Как показано в диалоговом окне, приложение выбирает переменные ответа и предиктора на основе их типа данных. Переменная ответа по умолчанию Rating переменная. Параметр проверки по умолчанию - перекрестная проверка для защиты от переоборудования. В этом примере не изменяйте параметры по умолчанию.

Чтобы принять параметры по умолчанию, нажмите кнопку «» Начать сеанс «».
Укажите затраты на неправильную классификацию. На вкладке «Классификатор» в разделе «Параметры» выберите «Затраты на неправильную классификацию». Приложение открывает диалоговое окно, показывающее затраты на неправильную классификацию по умолчанию.
В диалоговом окне щелкните Импорт из рабочего пространства (Import from Workspace).

В диалоговом окне импорта выберите ClassificationCosts в качестве переменной затрат и ClassNames как порядок классов в переменной затрат. Щелкните Импорт (Import).

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

Одновременно тренируйте тонкие, средние и грубые деревья. На вкладке «Классификатор» в разделе «Тип модели» щелкните стрелку, чтобы открыть галерею. В группе Деревья решений щелкните Все деревья. В разделе Обучение щелкните Обучение. Приложение обучает одну модель каждого типа дерева и отображает модели на панели Модели.
Совет
При наличии Toolbox™ параллельных вычислений можно одновременно обучить все модели (все деревья), нажав кнопку Использовать параллельные (Use Parallel) в разделе Обучение (Training), прежде чем нажать кнопку Обучить (Train). После нажатия кнопки Обучить открывается диалоговое окно Открытие параллельного пула, которое остается открытым, пока приложение открывает параллельный пул работников. В течение этого времени взаимодействие с программным обеспечением невозможно. После открытия пула приложение одновременно обучает модели.

Примечание
Проверка вносит некоторую случайность в результаты. Результаты проверки модели могут отличаться от результатов, показанных в этом примере.
На панели Модели (Models) щелкните модель, чтобы просмотреть результаты, которые отображаются на панели Сводка текущей модели (Current Model Summary). Каждая модель имеет показатель точности проверки, который указывает процент правильно предсказанных ответов. На панели Модели (Models) приложение выделяет наивысший показатель точности (Validation), помещая его в рамку.
Проверьте точность прогнозов в каждом классе. На вкладке «Классификатор» в разделе «Графики» щелкните «Матрица путаницы» и выберите «Данные проверки». Приложение отображает матрицу истинного класса и прогнозируемых результатов класса для выбранной модели (в данном случае для среднего дерева).

Можно также построить график результатов для каждого прогнозируемого класса, чтобы исследовать частоту ложных обнаружений. В разделе График выберите параметр Положительные прогнозируемые значения (PPV) Ложные скорости обнаружения (FDR).
В матрице путаницы для среднего дерева записи под диагональю имеют небольшие процентные значения. Эти значения указывают на то, что модель пытается избежать присвоения кредитного рейтинга, который выше истинного рейтинга для клиента.

Сравните общие затраты на неправильную классификацию моделей дерева. Чтобы проверить общую стоимость неправильной классификации модели, выберите модель на панели Модели (Models), а затем просмотрите раздел Результаты обучения (Training Results) на панели Сводка текущей модели (Current Model Summary). Например, среднее дерево имеет эти результаты.

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