Если вы хотите сразу перейти к сценарию R, он находится в конце статьи.
Изображение выше является описанием набора данных общей воронки. Важны три цвета. Светло-оранжевый цвет представляет существующие исторические данные, которые вы можете использовать при обучении модели. Зеленый цвет представляет собой прогноз для показателя базовой воронки, в данном случае - потенциальных клиентов. Синий цвет представляет значения, которые я собираюсь показать вам, как прогнозировать, и они представляют собой показатель конверсии, в данном случае продажи. Хотя приведенная выше структура данных позволяет легко визуализировать природу данных, нам понадобится длинный формат для целей моделирования. Я покажу вам несколько разных вариантов того, как структурировать данные ниже.
В этой статье я собираюсь рассмотреть детали прогнозирования воронки и выделить три новые парные функции в наборе RemixAutoML. В конце есть сценарий для читателей, чтобы воспроизвести процесс прогнозирования воронки для всех трех наборов функций ниже:
1. AutoCatBoostFunnelCARMA () и AutoCatBoostFunnelCARMAScoring ()
2. AutoLightGBMFunnelCARMA () и AutoLightGBMFunnelCARMAScoring ()
3. AutoXGBoostFunnelCARMA () и AutoXGBoostFunnelCARMAScoring ()
Прогнозирование воронки
В этой статье я собираюсь сосредоточиться на бизнес-примере с воронкой продаж, но прогнозирование воронки можно найти в широком диапазоне отраслей и сценариев использования. Например, компании, занимающиеся мобильными играми, хотят знать, насколько большой будет их контингент платящих клиентов, тратя больше или меньше на рекламу, и прогнозирование воронки продаж - отличный способ правильно спрогнозировать это. В актуарной науке прогнозирование воронки может использоваться для резервирования требований (https://cran.r-project.org/web/packages/ChainLadder/ChainLadder.pdf). В одной из моих предыдущих ролей я использовал прогнозирование воронки для семи отдельных шагов в процессе воронки. Я построил прогнозы на основе показателей конверсии, которые станут базовыми показателями воронки в последующих моделях. Это была относительно сложная система, но с функциями в RemixAutoML эти типы вариантов использования могут быть реализованы за гораздо меньшее время с меньшим количеством ошибок.
Сравнение с панельным прогнозом
При прогнозировании стандартных временных рядов или панельных данных вы смотрите на какой-то агрегированный показатель с течением времени. При прогнозировании воронки есть еще одно временное измерение в наборе данных, которое учитывает поведение отдельных когорт в развитии во времени. Если бы мы суммировали все показатели конверсии для каждой когорты, мы могли бы превратить данные воронки в стандартный временной ряд или структуру панельных данных. Изображение вверху статьи выделяет данные воронки в широком формате.
Структура данных
Типичные наборы данных воронки начинаются с какой-то базовой меры воронки, например с потенциальных клиентов. Интересующие меры конверсии обычно включают продажи или промежуточные этапы между потенциальными клиентами и продажами. Внутренние функции функции прогнозирования последовательности конверсии позволяют прогнозировать коэффициенты конверсии по когорте и календарному времени. После того, как все прогнозы были сгенерированы, также вычисляется показатель конверсии, в результате чего вы получаете прогноз для показателя конверсии и коэффициента конверсии.
Для каждой календарной даты есть группа потенциальных клиентов, которые могут конвертироваться в встречи (или что-то другое в зависимости от вашего показателя конверсии) в день 0, день 1,…, день N (может быть ежечасно, еженедельно, ежемесячно и т. Д.). Каждый последующий календарный день появляется новая группа лидов с соответствующими днями конверсии. Когда вы приводите данные таким образом, что календарные дни идут вниз по строкам, а дни когорты - по столбцам, образуется набор данных треугольной формы. Однако нам нужны данные в длинном формате для моделирования. Ниже приведены некоторые примеры наборов данных, которые правильно структурированы для моделирования.
Обратите внимание, что показатели базовой воронки (Leads & XREGS) будут повторяться для каждой повторяющейся календарной даты.
Случай 1: без групповых переменных и без XREGS
Случай 2: нет групповых переменных и два XREGS
Случай 3: одна групповая переменная и отсутствие XREGS
Случай 4: одна групповая переменная и три XREGS
Случай 5: три групповых переменных и отсутствие XREGS
Случай 6: три групповых переменных и один XREGS
Функциональная инженерия
В состав этих функций входят переменные даты (например, день недели, неделя месяца, месяц года и т. Д.) Для календарных дат и дат когорты, переменные праздников для дат календаря и дат когорты, а также функции временных рядов для календаря. даты и даты когорт (статистика лагов и прокрутки, по группам, для множественных временных агрегатов, если это выбрано). Лаги и скользящая статистика по датам когорт - вот что делает эти функции действительно уникальными. В функциях Panel CARMA в RemixAutoML лаги и скользящая статистика генерируются по календарному времени. Здесь я также пользуюсь когортной структурой. Существуют также автоматические методы категориального кодирования для LightGBM и XGBoost (CatBoost обрабатывает категориальные переменные внутри) и автоматические преобразования, которые можно использовать, когда функции автоматически управляют преобразованием и обратным преобразованием. XREGS (экзогенные переменные) также разрешены. XREGS должен охватывать весь горизонт прогноза, как и мера базовой воронки.
Параметры ML
Как и другие функции машинного обучения в RemixAutoML, большинство аргументов машинного обучения представлены вместе с функциями, поэтому вы можете настраивать их множеством способов. Вы также можете запускать их с помощью своего графического процессора (ов), если вы установили версии пакетов для графического процессора (актуально для XGBoost и LightGBM). Вы также можете полностью игнорировать их, если просто хотите запустить эти модели с настройками по умолчанию, как я их установил.
ML Insights
Аналитические сведения о модели сохраняются в файле с функциями обучения, чтобы вы могли позже проверить движущие факторы процесса когорты и показатели производительности модели.
Использование для бизнеса
Прогнозирование с использованием моделей воронки дает несколько дополнительных преимуществ по сравнению с преобразованием данных в стандартные структуры панельных данных. Бизнес-группы часто интересны отдельными когортами, и они используют эту информацию для целей планирования, а также для корректировки стратегий и выявления проблем с существующими стратегиями. Обнаружение аномалий можно проводить путем сравнения прогнозов с фактическими значениями, когда эти новые данные становятся доступными, что является еще одним способом помочь бизнесу опередить проблемы до того, как они станут значительными.
Этапы обучения модели
- Создавайте календарные переменные из столбца календарной даты
- Создавайте календарные переменные из столбца даты когорты
- Создайте праздничные переменные вне столбца календарной даты
- Создайте праздничные переменные из столбца даты когорты
- Преобразование показателя базовой воронки и показателя конверсии
- Создавать лагы показателей конверсии и скользящую статистику по дате когорты (рассматривать календарную дату как группирующую переменную)
- Создание базовых лагов показателей воронки и скользящей статистики за календарную дату
- Разбиение наборов данных для обучения машинному обучению
- Обучите модель в режиме оценки для получения аналитических сведений о модели и количества используемых деревьев.
- Обучите модель, используя полные данные, и сохраните модель в файл
Шаги прогнозирования
- Преобразование показателя базовой воронки и показателя конверсии
- Создайте единую будущую запись, чтобы набрать очки
- Создание функций календаря, праздников, лагов и скользящей статистики
- Модель оценки
- Добавить оцененные данные в базовый набор данных
- Повторяйте шаги 1–5, пока не будет достигнут конец горизонта прогноза.