Компонент регрессии леса принятия решений
В этой статье описывается компонент в конструкторе Машинного обучения Azure.
С его помощью можно создать модель регрессии, используя совокупность деревьев принятия решений.
После настройки модели следует провести ее обучение с помощью набора данных с метками и компонента обучения модели. Затем обученную модель можно использовать для прогнозирования.
Принцип работы
Деревья принятия решений — это непараметрические модели, выполняющие последовательность простых тестов для каждого экземпляра, обход структуры данных двоичного дерева до достижения конечного узла (решения).
Деревья принятия решений имеют следующие преимущества:
Они эффективны как в вычислениях, так и в памяти во время обучения и прогнозирования.
Они могут представлять нелинейные границы принятия решений.
Они выполняют интегрированный выбор и классификацию компонентов и устойчивы в присутствии шумных функций.
Эта модель регрессии состоит из ансамбля деревьев принятия решений. Каждое дерево в регрессионном лесу решений выводит распределение по Гауссу в виде прогноза. По совокупностям деревьев выполняется агрегирование с целью найти распределение по Гауссу, ближайшее к объединенному распределению для всех деревьев модели.
Дополнительные сведения о теоретической платформе для этого алгоритма и его реализации см. в статье Леса принятия решений: единая платформа для классификации, регрессии, оценки плотности, обучения на основе многообразий и полуконтролируемого обучения.
Настройка регрессионной модели леса принятия решений
Добавьте в конвейер компонент Регрессии леса принятия решений. Этот компонент можно найти в конструкторе в разделе Машинное обучение, Инициализация моделии Регрессия.
Откройте свойства компонента и в качестве метода повторной выборки укажите метод, используемый для создания отдельных деревьев. Доступны методы бэггинга и репликации.
Бэггинг: также называется агрегированием начальной загрузки. Каждое дерево в регрессионном лесу решений выводит распределение по Гауссу путем прогноза. Агрегирование заключается в поиске распределения по Гауссу, первые два момента которого совпадают с моментами сочетания распределений по Гауссу, получаемыми путем объединения всех распределений, возвращенных отдельными деревьями.
Дополнительные сведения см. в записи Википедии о бутстрэп-агрегировании.
Репликация: при репликации каждое дерево обучается на идентичных входных данных. Предикат разбиения, используемый для каждого узла дерева, определяется случайным образом, и деревья оказываются разными.
Дополнительные сведения о процессе обучения в режиме репликации см. в издании Decision Forests for Computer Vision and Medical Image Analysis (Леса принятия решений для компьютерного зрения и анализа медицинских изображений), Criminisi и J. Shotton. Springer 2013.
Укажите, как вы хотите обучать модель, выбрав значение Create trainer mode (Создать режим учителя).
Один параметр
Если вы знаете, как настроить модель, можно указать определенный набор значений в качестве аргументов. Возможно, вы узнали эти значения путем экспериментирования или получили их в качестве руководства.
Диапазон параметров: используйте этот вариант, если вы не знаете наилучшие параметры и хотите выполнить перебор параметров. Выберите диапазон значений для итерации и в процессе Настройка гиперпараметров модели выполните итерацию по всем возможным сочетаниям указанных параметров, чтобы определить гиперпараметры, которые приводят к оптимальным результатам.
Количество деревьев решений: укажите общее число деревьев принятия решений, создаваемых в ансамбле. Создавая больше деревьев принятия решений, вы можете получить лучшее покрытие, но время обучения увеличится.
Совет
Однако если задать значение 1, то создается только одно дерево (дерево с начальным набором параметров) и дальнейшие итерации не выполняются.
Максимальная глубина деревьев принятия решений: введите число, ограничивающее максимальную глубину дерева принятия решений. Увеличение глубины дерева может увеличить точность, рискуя перенарядкой и увеличением времени обучения.
Число случайных разбиений на узел: введите число разбиений, которое будет использоваться при построении каждого узла дерева. Разбиение означает, что признаки на каждом уровне дерева (узле) распределяются случайным образом.
Минимальное число выборок для конечного узла: укажите минимальное число вариантов, необходимых для создания любого терминального узла (листа) в дереве.
Увеличив это значение, вы увеличиваете пороговое значение для создания новых правил. Например, при значении по умолчанию 1 даже один случай может привести к созданию нового правила. Если увеличить значение до 5, данные обучения должны содержать по крайней мере пять случаев, которые соответствуют тем же условиям.
Обучение модели:
Если для параметра Создать режим учителя задано значение Одиночный параметр, подключите отмеченный набор данных и компонент Обучение модели.
Если для параметра Create trainer mode выбран вариант Parameter Range, подключите набор помеченных данных и обучите модель с помощью модуля Настройка гиперпараметров модели.
Примечание.
При передаче диапазона параметров в модуль Обучение модели используется только значение по умолчанию в списке с одиночным параметром.
Если передать в компонент Настройка гиперпараметров модели один набор значений параметров, когда он ожидает диапазон настроек для каждого параметра, он проигнорирует эти значения и использует значения по умолчанию для средства обучения.
Если выбран вариант Parameter Range (Диапазон параметров) и указано одно значение для любого параметра, это единственное заданное значение будет использоваться во время очистки, даже если другие параметры меняются в диапазоне значений.
Отправьте конвейер.
Результаты
После завершения обучения:
- Чтобы сохранить моментальный снимок обученной модели, выберите компонент обучения, а затем перейдите на вкладку Выходные данные на правой панели. Щелкните значок Зарегистрировать модель. Вы можете найти сохраненную как компонент модель в дереве компонентов.
Следующие шаги
Ознакомьтесь с набором доступных компонентов для машинного обучения Azure.