Демонстрация GPBoost в Python и R с использованием реальных данных
Категориальные переменные с высокой кардинальностью — это переменные, для которых количество различных уровней велико по сравнению с размером выборки набора данных. В Части I этой серии мы провели эмпирическое сравнение различных методов машинного обучения и обнаружили, что случайные эффекты являются эффективным инструментом для обработки категориальных переменных высокой мощности с помощью алгоритма GPBoost [Sigrist, 2022, 2023], имеющего высочайшая точность предсказания. В этой статье мы демонстрируем, как алгоритм GPBoost, который сочетает в себе повышение дерева со случайными эффектами, может применяться с пакетами Python и R библиотеки GPBoost
. GPBoost
В этой демонстрации используется версия 1.2.1.
Оглавление
∘ 1 Введение
∘ 2 Данные: описание, загрузка и разделение выборки
∘ 3 Обучение модели GPBoost
∘ 4 Выбор параметра настройки
∘ 5 Прогноз
∘ 6 Интерпретация
∘ 7 Дополнительные варианты моделирования
· · 7.1 Взаимодействие между категориальными переменными и другими предикторными переменными
· · 7.2 ( Обобщенные) линейные модели смешанных эффектов
∘ 8 Заключение и список литературы
1. Введение
Применение модели GPBoost включает следующие основные этапы:
- Определите
GPModel
, в котором указывается следующее:
— Модель случайных эффектов: сгруппированные случайные эффекты черезgroup_data
и/или гауссовы процессы черезgp_coords
—likelihood
(= распределение условной переменной отклика на фиксированные и случайные эффекты) - Создайте
Dataset
, содержащий переменную ответа (label
) и переменные-предикторы с фиксированными эффектами (data
). - Выберите параметры настройки, например, с помощью функции
gpb.grid.search.tune.parameters
- Обучите модель
- Делайте прогнозы и/или интерпретируйте обученную модель
Далее мы шаг за шагом пройдемся по этим пунктам.