Компонент «Многоклассовый лес принятия решений»

В этой статье описывается компонент в конструкторе Машинного обучения Azure.

Он используется для создания модели машинного обучения на основе алгоритма лес принятия решений. Лес принятия решений — это коллективная модель, которая быстро создает ряд деревьев принятия решений при обучении с использованием данных с тегами.

Дополнительные сведения о лесах принятия решений

Алгоритм леса принятия решений представляет собой метод коллективного обучения, предназначенный для классификации. Он работает путем создания нескольких деревьев принятия решений и голосования за наиболее популярный класс выходных данных. Голосование является формой агрегирования, в которой каждое дерево в лесу решения классификации выводит гистограмму меток ненормализованной частоты. Процесс агрегирования обобщает эти гистограммы и нормализует результат, чтобы получить "вероятность" для каждой метки. Деревья с высокой достоверностью прогноза имеют больший вес при принятии окончательного коллективного решения.

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

Деревья принятия решений имеют много преимуществ:

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

Классификатор леса решений в Машинном обучении Azure состоит из совокупности деревьев принятия решений. Вообще говоря, модели совокупности обеспечивают большее покрытие и точность, чем одно дерево принятия решений. Дополнительную информацию см. в разделе Деревья принятия решений.

Настройка Многоклассового леса принятия решений

  1. Добавьте компонент Многоклассовый лес принятия решений в конвейер в конструкторе. Этот компонент доступен в разделах Машинное обучение, Инициализация модели и Классификация.

  2. Дважды щелкните компонент, чтобы открыть панель Свойства.

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

    • Бэггинг: также называется агрегированием начальной загрузки. В рамках этого метода каждое дерево создается на основе новой выборки, получаемой случайным образом из исходного набора данных с постепенной заменой до тех пор, пока размер набора данных не достигнет исходного. Выходные данные моделей объединяются функцией голосования, которая является разновидностью агрегирования. Дополнительные сведения см. в статье Википедии о бутстрэп-агрегировании.

    • Репликация: при репликации каждое дерево обучается на идентичных входных данных. Предикат разбиения, используемый для каждого узла дерева, определяется случайным образом, создавая различные деревья.

  4. Укажите, как вы хотите обучать модель, выбрав значение Создать режим учителя.

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

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

  5. Число деревьев принятия решений: введите максимальное число деревьев, которые могут быть созданы в совокупности. Создавая больше деревьев принятия решений, можно расширить покрытие, но время на обучение при этом может увеличится.

    Однако если задать значение 1, то можно будет создать только одно дерево (дерево с начальным набором параметров) и дальнейшие итерации не выполняются.

  6. Максимальная глубина деревьев принятия решений: введите число, ограничивающее максимальную глубину дерева принятия решений. Увеличение глубины дерева может повысить точность, однако при этом могут возникать лжевзаимосвязи и увеличиваться время обучения.

  7. Число случайных разбиений на узел: введите число разбиений, которое будет использоваться при построении каждого узла дерева. Разбиение означает, что признаки на каждом уровне дерева (узле) распределяются случайным образом.

  8. Минимальное число выборок для конечного узла: укажите минимальное число вариантов, необходимых для создания любого терминального узла (листа) в дереве. Увеличив это значение, вы увеличиваете пороговое значение для создания новых правил.

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

  9. Подключите размеченный набор данных и обучите модель:

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

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

    Примечание

    При передаче диапазона параметров в модуль Обучение модели используется только значение по умолчанию в списке с одиночным параметром.

    Если передать в компонент Настройка гиперпараметров модели один набор значений параметров, когда он ожидает диапазон для каждого параметра, он пропускает эти значения и использует значения по умолчанию для обучаемого объекта.

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

  10. Отправьте конвейер.

Дальнейшие действия

Ознакомьтесь с набором доступных компонентов для Машинного обучения Azure.