Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

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

Используется для решения задач классификации и регрессии.

Алгоритм работы градиентного бустинга:

Градиентный бустинг – алгоритм машинного обучения, который строит модель предсказания в виде ансамбля слабых предсказывающих моделей (в основном Дерево решений). На каждой итерации вычисляется отклонение предсказаний уже обученного ансамбля на обучающей выборке. Следующая добавляемая в ансамбль модель будет сводить среднее отклонение предыдущей к минимуму.
Новые деревья добавляются в ансамбль до тех пор, пока ошибка уменьшается, либо пока не выполняется одно из правил «ранней остановки».
Особенности реализации CatBoost:

...


Список параметров узла представлен в таблице (Таблица 37).
Таблица 38 — ниже.


Scroll Title
title-positiontop
title-alignmentright
titleПараметры узла «LightGBM»

Параметр

Возможные значения и ограничения

Описание

Группа параметров

Название

Ручной ввод
Ограничений на значение нет

Название узла, которое будет отображаться в интерфейсе

Общий параметр

Описание

Ручной ввод
Ограничений на значение нет

Описание узла

Общий параметр

Количество деревьев

Ручной ввод
По умолчанию - 100

Данный параметр задает максимальное количество деревьев

Общий параметр

Скорость обучения

Ручной ввод
По умолчанию – 0,03

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

Общий параметр

Цель обучения для регрессии

Раскрывающийся список со следующими значениями:

  • Среднеквадратическая ошибка
  • Средняя абсолютная ошибка
  • Функция потерь Хьюбера
  • Регрессия Твиди
  • Пуассоновская регрессия
  • Квантильная регрессия
  • MAPE

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

  • Среднеквадратическая ошибка
  • Средняя абсолютная ошибка
  • Функция потерь Хьюбера
  • Регрессия Твиди
  • Пуассоновская регрессия
  • Квантильная регрессия
  • MAPE

Общий параметр

Цель обучения для классификации

Раскрывающийся список со следующими значениями:

  • Logloss (по умолчанию)
  • CrossEntropy
  • MultiClass

Данный параметр задает классификационный показатель, используемый для обучения. Предусмотрены следующие показатели:

  • Logloss
  • CrossEntropy
  • MultiClass

Общий параметр

Метрика для валидации регрессии

Раскрывающийся список со следующими значениями:

  • Среднеквадратическая ошибка (по умолчанию)
  • Средняя абсолютная ошибка
  • MAPE
  • SMAPE
  • R2
  • Пуассоновская регрессия
  • Функция потерь Хьюбера
  • Квантильная регрессия
  • Регрессия Твиди

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

  • Среднеквадратическая ошибка
  • Средняя абсолютная ошибка
  • MAPE
  • SMAPE
  • R2
  • Пуассоновская регрессия
  • Функция потерь Хьюбера
  • Квантильная регрессия
  • Регрессия Твиди

Общий параметр

Метрика для валидации классификации

Раскрывающийся список со следующими значениями:

  • Logloss (по умолчанию)
  • CrossEntropy
  • MultiClass
  • Precision
  • F1
  • Accuracy
  • AUC

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

Общий параметр

L2 регуляризатор

Ручной ввод
По умолчанию – 3

Данный параметр задает коэффициент при члене регуляризации L2 функции потерь

Общий параметр

Детектор переобучения

Раскрывающийся список со следующими значениями:

  • IncToDec (по умолчанию)
  • Iter

Данный параметр задает тип детектора переобучения. Предусмотрены:

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

Параметр ранней остановки

Порог для IncToDec детектора переобучения

Ручной ввод
По умолчанию - 0

Данный параметр задает порог для IncToDec детектора переобучения.

Параметр ранней остановки
Актуален при заданном Детекторе переобучения = IncToDec

Количество итераций до ранней остановки

Ручной ввод
По умолчанию - 0

Данный параметр задает количество итераций до ранней остановки

Параметр ранней остановки

Количество потоков для обучения

Ручной ввод
По умолчанию - 0

Данный параметр задает количество потоков для обучения

Параметр производительности

Коэффициент регуляризации размера модели

Ручной ввод
Целое число больше или равно 0
По умолчанию – 0,5

Данный параметр задает коэффициент регуляризации модели. Чем больше значение, тем меньше размер модели

Параметр производительности

Seed

Ручной ввод
Целочисленное значение
По умолчанию - 42

Начальное числовое значение для генератора случайных чисел

Общий параметр

Максимальная глубина дерева

Ручной ввод
Целочисленное значение
По умолчанию - 6

Данный параметр задает максимальную глубину дерева

Параметры построения дерева

Стратегия построения дерева

Раскрывающийся список со следующими значениями:

  • SymmetricTree (по умолчанию)
  • Depthwise
  • Lossguide

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

  • SymmetricTree – дерево строится уровень за уровнем, пока не достигнет необходимой глубины. На каждом шаге листья с предыдущего дерева разделяются с тем же условием.
  • Depthwise – дерево строится шаг за шагом, пока не достигнет необходимой глубины. Листья разделяются с использованием условия, которое приводит к лучшему уменьшению потерь.
  • Lossguide – дерево строится по листьям до тех пор, пока не будет достигнуто заданное количество листьев. На каждом шаге разделяется нетерминальный лист с лучшим уменьшением потерь.

Параметры построения дерева

Минимальное количество наблюдений в листе

Ручной ввод
По умолчанию – 1

Данный параметр задает минимальное количество обучающих наблюдений в листе

Параметры построения дерева

Скоринговая функция

Раскрывающийся список со следующими значениями:

  • Cosine (по умолчанию)
  • L2

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

  • Cosine
  • L2

Параметры построения дерева

Доля выборки признаков в каждом разбиении

Ручной ввод
По умолчанию – 1

Данный параметр задает долю переменных, используемых в каждом разбиении

Параметры построения дерева

Максимальное количество бинов

Ручной ввод
По умолчанию – 254

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

Параметры построения дерева

Тип квантилизации интервальных переменных

Раскрывающийся список со следующими значениями:

  • GreedyLogSum (по умолчанию)
  • Median
  • Uniform
  • UniformAndQuantiles
  • MaxLogSum
  • MinEntropy

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

  • GreedyLogSum
  • Median – включение примерно одинакового количества объектов в bucket
  • Uniform – разбиение происходит разделением сегмента (минимальное значение переменной – максимальное значение переменной) на подсегменты одинаковой длины. В этом случае используются абсолютные значения признака
  • UniformAndQuantiles – комбинируются сплиты, полученные в типах Median и Uniform, предварительно уменьшив размер квантования двое
  • MaxLogSum
  • MinEntropy

Параметры построения дерева

Максимальное количество листов

Ручной ввод
По умолчанию – 31

Данный параметр задает максимальное количество листьев в результирующем дереве.
Актуален, если Стратегия построения дерева = Lossguide

Параметры построения дерева

Метод обработки пропусков

Раскрывающийся список со следующими значениями:

  • Forbidden (по умолчанию)
  • Min
  • Max

Данный параметр задает метод работы с пропущенными значениями. Предусмотрены следующие:

  • Forbidden – наличие пропущенных значений вызовет ошибку
  • Min – пропущенные значения будут приняты за максимальные значения для данного признака
  • Max – пропущенные значения будут приняты как минимальные значения для данного признака.

Параметры построения дерева

Метод вычисления значений в листах

Раскрывающийся список со следующими значениями:

  • Auto (по умолчанию)
  • Newton
  • Gradient
  • Exact

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

  • Регрессия с функциями потерь Quantile или MAE — одна точная итерация (Exact).
  • Регрессия с любой функцией потерь, кроме Quantile или MAE — одна итерация градиента (Gradient).
  • Режим классификации – Десять ньютоновских итераций (Newton).
  • Режим мультиклассификации – одна итерация по Ньютону (Newton).

Параметры построения дерева

Количество итераций в листах

Ручной ввод
По умолчанию – 0

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

Параметры построения дерева

Тип отступа при вычислении значений в листах

Раскрывающийся список со следующими значениями:

  • AnyImprovement (по умолчанию)
  • No
  • Armijo

Данный параметр задает тип бэктрекинга, использующийся при градиентном спуске. Предусмотрены следующие:

  • AnyImprovement – уменьшает шаг спуска до того, как значение функции потерь будет меньшим, чем оно было на последней итерации.
  • No
  • Armijo – уменьшает шаг спуска до тех пор, пока не будет выполнено условие Вольфе.

Параметры построения дерева

Тип Bootstrap

Раскрывающийся список со следующими значениями:

  • Bernoulli (по умолчанию)
  • Bayesian
  • MVS
  • No

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

Бэггинг

Соотношение случайной подвыборки в обучающей выборке

Ручной ввод
По умолчанию – 0,8

Данный параметр задает соотношение случайной подвыборки в обучающей выборке

Бэггинг

Частота сэмлирования весов при построении деревьев

Раскрывающийся список со следующими значениями:

  • PerTreeLevel (по умолчанию)
  • PerTree

Данный параметр задает частоту выборки весов и объектов при построении деревьев. Предусмотрены:

  • PerTreeLevel – перед построением каждого нового дерева
  • PerTree – перед выбором каждого нового разделения дерева

Бэггинг

Распределение весов в Байесовском Bootstrap

Ручной ввод
Целое число больше или равно 0
По умолчанию – 1

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

Бэггинг

Вес знаменателя

Ручной ввод
Число больше или равно 0
По умолчанию – 1

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

Бэггинг

Тип бустинга

Раскрывающийся список со следующими значениями:

  • Ordered (по умолчанию)
  • Plain

Данный параметр задает схему бустинга. Предусмотрены следующие:

  • Ordered – упорядоченная схема, обеспечивает лучшее качество на небольших наборах данных
  • Plain – простая для классической схемы градиентного бустинга

Параметры бустинга

Тип сжатия модели

Раскрывающийся список со следующими значениями:

  • Constant (по умолчанию)
  • Decreasing

Данный параметр определяет как фактический коэффициент сжатия модели рассчитывается на каждой итерации.

Параметры бустинга

Коэффициент сжатия модели

Ручной ввод
Число в диапазоне (0, 1]
По умолчанию – 1

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

Параметры бустинга

Максимальное количество категорий для One-hot encoding

Ручной ввод
По умолчанию – 2

Данный параметр задает использование one-hot encoding для всех категориальных признаков с количеством уникальных значений меньшим или равным заданному значению.

Параметры для обработки категориальных переменных

Максимальное количество объединяемых категорий

Ручной ввод
Целое число больше или равное 1 и меньше или равно 16
По умолчанию – 4

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

Параметры для обработки категориальных переменных

Максимальное количество листов с категориальными переменными

Ручной ввод
Целое число больше или равно 0
По умолчанию – 0

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

Параметры для обработки категориальных переменных


Результаты выполнения узла:

Узел «CatBoost» имеет разные результаты в зависимости от решаемой задачи.

Результаты регрессии представлены следующими объектами:

...