Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается, как использовать многоклассовый компонент "один — один" в конструкторе машинного обучения Azure. Целью является создание модели классификации, которая может прогнозировать несколько классов с помощью подхода один — один.
Этот компонент удобно использовать при создании моделей для прогнозирования трех и более возможных значений, если они зависят от непрерывных или категориальных прогностических переменных. Этот метод также позволяет использовать методы двоичной классификации для проблем, требующих нескольких выходных классов.
Дополнительные сведения о моделях "один — один"
Некоторые алгоритмы классификации допускают использование более чем двух классов. Другие могут исключать возможные результаты в одном из двух значений (в двоичной модели или в модели с двумя классами). Но даже алгоритмы двоичной классификации можно адаптировать для многоклассовых задач классификации с помощью различных стратегий.
Этот компонент реализует один и тот же метод, в котором двоичная модель создается для каждой пары классов. Во время прогнозирования выбирается класс, получивший большинство голосов. Так как для этого метода требуется подгонка классификаторов n_classes * (n_classes - 1) / 2
, этот метод обычно медленнее, чем один — все из-за сложностей O (n_classes ^2). Однако этот метод может оказаться выгодным для таких алгоритмов, как алгоритмы ядра, которые плохо масштабируются с помощью n_samples
. Это связано с тем, что каждая отдельная проблема, связанная с обработкой, состоит только из небольшого подмножества данных, в то время как один и тот же полный набор данных используется со временем n_classes
.
По сути, компонент создает комплект отдельных моделей, а затем объединяет результаты, чтобы создать единую модель, которая выполняет прогноз по всем классам. Любой двоичный классификатор можно использовать в качестве основания для модели с одним и тем же кодом.
Например, предположим, что вы настроили модель аппаратного вектора поддержки двух классов и представим это в качестве входных данных для многоклассового компонента "один — один". Компонент создаст модели двухклассового метода опорных векторов для всех элементов класса Output. Затем он применяет один и тот же метод, чтобы объединить результаты для всех классов.
Компонент использует OneVsOneClassifier из sklearn, и здесь можно получить дополнительные сведения.
Настройка многоклассового классификатора с одним и тем же числом
Этот компонент создает комплект из моделей двоичной классификации для анализа нескольких классов. Чтобы использовать этот компонент, сначала необходимо настроить и обучить модель двоичной классификации.
Вы подключаете двоичную модель к многоклассовому компоненту "один — один". Затем вы обучите ансамбль модели, используя обучение модели с помеченным набором данных для обучения.
При объединении моделей многоклассовые классы с одним и тем же кодом создают несколько моделей двоичной классификации, оптимизируют алгоритм для каждого класса, а затем объединяют модели. Компонент выполняет эти задачи даже в том случае, если набор данных для обучения может иметь несколько значений класса.
Добавьте многоклассовый компонент "один — один" в конвейер в конструкторе. Этот компонент доступен в разделе Машинное обучение — инициализация в категории Классификация.
Многоклассовый классификатор с одним и тем же набором не имеет настраиваемых параметров. Все настройки должны выполняться в модели двоичной классификации, предоставляемой в качестве входных данных.
Добавьте модель двоичной классификации в конвейер и настройте эту модель. Например, можно использовать двухклассовый метод опорных векторов или двухклассовое увеличивающееся дерево принятия решений.
Добавьте компонент Обучение модели в конвейер. Подключите необученный классификатор, являющийся выводом многоклассового классификатора "один — один"
В других входных данных по обучению моделиподключите набор обучающих данных с меткой, имеющий несколько значений класса.
Отправьте конвейер.
Результаты
После завершения обучения можно использовать модель для прогнозирования по нескольким классам.
Кроме того, можно передать необученный классификатор в модуль Перекрестная проверка модели для перекрестной проверки с набором данных для проверки с метками.
Следующие шаги
Ознакомьтесь с набором доступных компонентов для машинного обучения Azure.