Быстрая квантильная регрессия леса

Создает модель квантильной регрессии

Категория: машинное обучение/инициализация модели или регрессии

Примечание

Применимо к: машинное обучение Studio (классическая модель)

Это содержимое относится только к Studio (классическая модель). Аналогичные модули перетаскивания были добавлены в конструктор Машинное обучение Azure. Дополнительные сведения см. в статье сравнение двух версий.

Обзор модуля

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

Квантильную регрессию полезно использовать, когда необходимо получить более подробные сведения о распределении прогнозируемого значения, а не одно среднее прогнозное значение. Этот метод применяется во многих областях:

  • Прогнозирование цен

  • Оценка успеваемости студентов или применение карт физического развития для оценки развития детей

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

Этот алгоритм регрессии является защищенным методом обучения. это означает, что требуется набор данных с тегами, включающий столбец меток. Поскольку это алгоритм регрессии, столбец меток должен содержать только числовые значения.

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

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

Простейшее определение квантилей — это значение, которое делит набор данных на группы равных размеров; Таким словами, значения квантилей отмечают границы между группами. Статистически говоря, квантилей — это значения, выполняемые через регулярные интервалы от обратной функции интегрального распределения (CDF) случайной переменной.

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

Квантилей регрессии позволяет понять распределение прогнозируемого значения. Модели квантильной регрессии на основе дерева, такие как модель, используемая в этом модуле, имеют дополнительное преимущество. Их можно использовать для прогнозирования непараметрических распределений.

Дополнительные сведения о реализации и ресурсах см. в разделе Технические примечания.

Настройка Fast_Forest регрессии квантилей

Вы настраиваете свойства модели регрессии с помощью этого модуля, а затем Обучите ее с помощью одного из обучающих модулей.

Действия по настройке значительно депенднг при предоставлении фиксированного набора параметров или при настройке очистки параметров.

Создание модели регрессии квантилей с помощью фиксированных параметров

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

  1. Добавьте модуль регрессии быстрого леса квантилей в эксперимент в студии (классическая модель).

  2. Присвойте параметру создать режим инструктора значение Single.

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

  4. Для параметра число конечных объектов введите максимальное число конечных объектов или узлов терминалов, которые могут быть созданы в любом дереве.

  5. Для минимального количества обучающих экземпляров, необходимых для формирования листа , укажите минимальное число примеров, необходимых для создания любого узла терминала (конечного) в дереве.

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

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

  7. Для параметра дробная часть функции введите число от 0 до 1, которое указывает долю общего числа функций, используемых при построении любого конкретного дерева. Функции всегда выбираются случайным образом.

  8. Для разделения дробей введите число от 0 до 1, которое представляет часть компонентов, используемых в каждом разбиении дерева. Функции всегда выбираются случайным образом.

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

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

    Например, если требуется создать модель, которая оценивается для квартилей, следует ввести 0.25, 0.5, 0.75 .

  11. При необходимости введите значение для параметра Начальное число случайных чисел , чтобы заполнить генератор случайных чисел, используемый моделью. По умолчанию значение равно 0, то есть выбирается случайное начальное значение.

    Необходимо указать значение, если необходимо воспроизвести результаты последовательных запусков на одних и тех же данных.

  12. Установите флажок Разрешить неизвестные уровни категорий , чтобы создать группу для неизвестных значений.

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

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

  13. Подключение набора данных для обучения, выбор столбца с одной меткой и подключение модели обучения.

  14. Запустите эксперимент.

Использование очистки параметров для создания модели регрессии квантилей

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

  1. Добавьте модуль регрессии быстрого леса квантилей в эксперимент в студии (классическая модель).

  2. Задайте для параметра режим создания инструктора значение диапазон параметров.

    Очистка параметров рекомендуется, если вы не знаете наилучших параметров. Указав несколько значений и используя модуль Настройка параметров модели для обучения модели, можно найти оптимальный набор параметров для данных.

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

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

    • Введите разделенный запятыми список дискретных значений для использования. Эти значения используются в сочетании с другими свойствами.

    • Используйте Построитель диапазонов , чтобы определить диапазон непрерывных значений.

    В процессе обучения модуль настройки модели перебирает различные сочетания значений для создания лучшей модели.

  3. Для параметра Максимальное число конечных объектов на дерево введите общее число конечных объектов или узлов терминалов, которое будет разрешено в каждом дереве.

  4. Для числа построенных деревьев введите число итераций, которые должны выполняться при создании ансамблей. Создавая больше деревьев, вы можете получить более эффективное покрытие за счет увеличения времени обучения.

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

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

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

    Каждая дробь должна быть числом от 0 до 1. Разделите несколько дробей, используя запятые.

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

    Каждая дробь должна быть числом от 0 до 1; Разделите несколько дробей с помощью запятых.

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

    Каждая дробь должна быть числом от 0 до 1; Разделите несколько дробей с помощью запятых.

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

  10. В поле обязательные значения квантилей введите разделенный запятыми список квантилей, для которого должна быть обучена модель. Например, если требуется создать модель, которая оценивает квартилей, введите "0,25, 0,5, 0,75

  11. В поле Начальное число случайных чисел введите значение для заполнения генератора случайных чисел, используемого моделью. Начальное значение полезно использовать для воспроизведения повторяющихся запусков.

    По умолчанию значение равно 0, то есть выбирается случайное начальное значение.

  12. Установите флажок Разрешить неизвестные значения для функций категории, чтобы создать группу для неизвестных значений в обучающих или проверочных наборах.

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

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

  13. Подключите набор данных для обучения, выберите столбец Метка и соедините модуль Параметры модели настройки .

    Примечание

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

  14. Запустите эксперимент.

Результаты

После завершения обучения:

  • Чтобы просмотреть конечные параметры оптимизированной модели, щелкните правой кнопкой мыши выход Параметры настройки модели и выберите команду визуализировать.

Примеры

Примеры использования этого модуля см. в Коллекция решений ии Azure:

  • Регрессия квантилей: демонстрируется построение и интерпретацию модели регрессии квантилей с помощью набора данных авто Price.

Технические примечания

В этом разделе содержатся сведения о реализации, советы и ответы на часто задаваемые вопросы.

Сведения о реализации

Модуль Быстрая квантильная регрессия леса в Машинном обучении Azure — это случайная квантильная регрессия леса с помощью дерева принятия решений. Случайные леса могут помочь избежать чрезмерно близкой подгонки, которая встречается при использовании деревьев принятия решений. Дерево принятия решений — это древовидная блок-схема, в которой на каждом внутреннем узле принимается решение, какой из двух дочерних узлов использовать дальше на базе значения одной из функций на входе.

Значение возвращается в каждом листовом узле. На внутренних узлах решение основывается на тесте "x ≤ v", где x — это значение функции во входном образце, а v — одно из возможных значений этой функции. Функции, которые могут создаваться с помощью дерева регрессии, представляют собой кусочные функции-константы.

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

Дополнительные сведения о регрессии квантилей см. в следующих книгах и статьях:

Параметры модуля

Имя Type Диапазон Необязательно Описание По умолчанию
Создание режима учителя CreateLearnerMode Список: один параметр|диапазон параметров Обязательно Единственный параметр Создание дополнительных параметров обучаемого
Количество деревьев Целое число mode:единственный параметр 100 Укажите количество создаваемых деревьев
Количество листьев Целое число mode:единственный параметр 20 Укажите максимальное количество листьев каждого дерева. Значение по умолчанию — 20
Минимальное количество обучающих экземпляров, необходимая для формирования листа Целое число mode:единственный параметр 10 Указывает минимальное количество обучающих экземпляров, необходимых для формирования листа
Доля бэггинга Float mode:единственный параметр 0,7 Указывает долю учебных данных для каждого дерева
Доля функций Float mode:единственный параметр 0,7 Указывает долю функций для каждого дерева (выборка осуществляется случайным образом)
Доля разбиения Float mode:единственный параметр 0,7 Указывает долю функций для каждого разбиения (выборка осуществляется случайным образом)
Количество квантильных выборок Целое число Максимум: 2147483647 mode:единственный параметр 100 Указывает количество экземпляров, используемых в каждом узле для оценки квантилей
Квантили для оценки Строка mode:единственный параметр "0,25; 0,5; 0,75" Указывает квантиль для оценки
Начальное значение случайного числа Целое число Необязательно Укажите начальное значение для генератора случайных чисел, используемого моделью. Оставьте пустым, чтобы использовать значение по умолчанию.
Разрешить неизвестные категориальные уровни Логическое Обязательно Да Если значение — true, создайте дополнительный уровень для каждого столбца категорий. Этот дополнительный уровень сопоставляется уровням проверочного набора данных, недоступным в учебном наборе данных.
Максимальное количество листьев каждого дерева ParameterRangeSettings [16; 128] mode:диапазон параметров глубин 32; 64 Укажите диапазон максимально допустимого количества листьев для дерева
Количество созданных деревьев ParameterRangeSettings [1; 256] mode:диапазон параметров глубин 32; 64 Укажите диапазон максимального количества деревьев, которые можно создать во время обучения
Минимальное число выборок для конечного узла ParameterRangeSettings [1; 10] mode:диапазон параметров одного 5.0 штук Укажите диапазон минимального количества случаев, требующихся для формирования листа
Диапазон доли бэггинга ParameterRangeSettings [0,25; 1,0] mode:диапазон параметров 0,25; 0,5; 0,75 Указывает диапазон доли учебных данных для каждого дерева
Диапазон доли функций ParameterRangeSettings [0,25; 1,0] mode:диапазон параметров 0,25; 0,5; 0,75 Указывает диапазон доли функций для каждого дерева (выборка осуществляется случайным образом)
Диапазон доли разбиения ParameterRangeSettings [0,25; 1,0] mode:диапазон параметров 0,25; 0,5; 0,75 Указывает диапазон доли функций для каждого разбиения (выборка осуществляется случайным образом)
Количество выборок для оценки квантилей Целое число mode:диапазон параметров 100 Количество выборок для оценки квантилей
Необходимые значения квантилей Строка mode:диапазон параметров "0,25; 0,5; 0,75" Необходимое значение квантилей, используемое при очистке параметров

Выходные данные

Имя Type Описание
Необученная модель Интерфейс ILearner Необученная модель квантильной регрессии, которую можно подключить к модулям модели универсального обучения и модели перекрестной проверки.

См. также раздел

Регрессия