Бизнес в современных условиях развивается стремительно. На динамику продаж, доходов, расходов оказывает влияние множество различных факторов, как внутренних (инвестиции, стимулирование отдельных каналов продаж, исследование рынка и т.п.), так и внешних – различные непредвиденные обстоятельства, вроде, пандемий, стихийных бедствий, исторические событий.
Такие общемировые события вносят свои коррективы в развитие бизнеса и оказывают влияние как в краткосрочном, так и в долгосрочном периоде. Для аналитиков подобные внешние факторы оказываются часто более значимыми, чем внутренние, поскольку наступление данных событий всегда означает крушение привычных тенденций. А это осложняет прогнозирование, заставляет отказываться от привычных моделей и искать новые подходы.
С 2015 по 2021 годы я работала в дирекции по продажам конвергентных продуктов билайна аналитиком, можно сказать, «на все руки» – аналитиком продаж, продуктовым, финансовым. В мою зону ответственности входили операционная и ежемесячная отчетность, расчет планов продаж на квартал, бюджетирование расходов на продажи, расчеты кейсов по инициативам – для всего этого требовалось моделирование основных KPI развития бизнеса.
Меня зовут Нина Фещенко, с 2022 года в департаменте аналитики розничного бизнеса (B2C) я в большей степени занимаюсь работой с данными и BI-аналитикой, но без моделирования тоже не обходится. В этом посте я опишу свой опыт построения модели прогнозирования продаж конвергентных продуктов (2019-2021), а также прогнозирования оттока мобильных абонентов в 2022 году. Расскажу, как работала модель в относительно стабильный период до 2020-го года, и какие корректировки пришлось внести впоследствии.
Основные показатели развития бизнеса в сфере телекоммуникаций — продажи, активная абонентская база, отток и выручка. Именно эти показатели всегда были в фокусе внимания при построении прогнозов.
Давайте подробнее о том, что следует понимать под продажами FTTB и конвергенции.
Термин FTTB представляет собой тип фиксированного подключения ШПД (широкополосного доступа) к сети интернет, при котором оптоволоконный кабель протягивается до границы здания и распределительный узел находится максимально близко к помещению абонента. Под продажей FTTB подразумевается факт подключения абонента. Понятие «конвергентный продукт» включает в себя подключение FTTB интернета совместно с подключением мобильной связи (FMC).
Обозначения – и + в сегментах FMC означают, соответственно, отсутствие или наличие у абонента до подключения доступа к интернету (F) или мобильной связи (M) билайна. С точки зрения развития конвергентного бизнеса интерес представляют только продажи так называемых «минусов», под которыми понимаем отсутствие у абонента доступа к сети интернет билайна. Это собственно подключение FTTB-интернета, а также подключение интернета и продажа sim-карты (F-M-) или подключение интернета и объединение существующей у абонента sim-карты в общий конвергентный продукт (F-M+).
На рисунке выше эти фокусные сегменты выделены синим цветом. Соответственно, сегменты F+M- и F+M+, то есть ситуация, когда у абонента уже есть доступ к интернету билайна и речь идет только о продажи sim-карты или просто объединении существующего интернета и существующей sim-карты в общий продукт, в нашем случае интереса не представляют (сегменты без заливки).
Прогнозирование продаж можно считать ключевым в общей схеме KPI конвергенции, поскольку, во-первых, продажи необходимо прогнозировать ежедневно, а следовательно, необходима надежная работающая модель, которую не придется корректировать слишком часто. И во-вторых, продажи входят как компонента во все остальные метрики – и в прогнозирование активной базы и выручки.
Выбираем прогнозную модель
Выбор прогнозной модели, гранулярность временного периода и все сопутствующие факторы выбираются каждым аналитиком самостоятельно. Здесь играет роль как опыт и знания, так и просто личные предпочтения, а иногда и просто интуиция. При этом прогнозирование продаж в данной схеме,
Простейшей моделью для прогнозирования продаж является линейный тренд вида:
где t – период времени.
Линейная модель исходит из предположения, что прирост продаж в каждый период происходит равномерно. В реальности это не всегда соответствует действительности, ведь в продажах (даже если речь не идет о чисто сезонных товарах типа летней обуви или горнолыжного снаряжения) почти всегда есть сезонная составляющая.
На графике ниже динамика продаж с 2018 по 2021 год позволяет оценить наличие сезонности – видим спад продаж в январе по сравнению с декабрем предыдущего года, выравнивание в марте, новый спад в летние месяцы, рост в сентябре, небольшое снижение в октябре-ноябре и небольшой прирост в декабре.
Рост продаж, как нетрудно заметить, часто приходится на конец квартала. Это происходит как правило за счёт управляемых каналов (D2D, дилеры), стремящихся выполнить квартальные планы. Спад происходит в летние месяцы – период отпусков. Взлёт продаж в сентябре можно считать следствием этого летнего снижения активности.
При этом данная динамика в той или иной степени прослеживается все 4 года, в том числе и в 2020-м, когда из-за локдауна начиная с конца марта падение продаж было более значительным. Очевидно, что сезонная составляющая остается неизменной даже при существенных структурных изменениях.
Когда наличие сезонности выявлено, следующая задача заключается в том, чтобы добавить ее в прогнозную модель. В данном случае используем аддитивную модель, поскольку она проста в расчетах и позволяет относительно легко добавлять необходимые параметры – сезонность, долгосрочные колебания и подобное.
Я пробовала описать сезонность двумя основными способами – с помощью индекса сезонности и с помощью гармонического анализа. Лучшие результаты давал первый подход, поэтому именно его я в итоге стала использовать в модели, которая теперь имеет следующий вид:
где:
F – прогнозное значение,
T – линейный тренд вида yt+1=a0+a1t0, где t – период времени,
S – сезонные колебания, рассчитанные с использованием индекса сезонности.
Вот еще один график, тут представлены расчеты по модели «тренд + сезонность», где синяя линия – это фактические данные, пунктирная зеленая линия – это сглаженное значение по модели. Визуально можем оценить, что полученная модель достаточно хорошо описывает имеющиеся данные и в принципе выглядит вполне пригодной для прогнозирования. Вопросы вызывали некоторые участки, например, 5-10, где по модели был более сильный скачок роста продаж, чем в реальности или 30-35, где модель, наоборот, выглядела излишне сглаженной.
Я попробовала улучшить качество модели, добавив случайную компоненту в виде ряда случайных остатков. Ряд случайных остатков – это разница между фактическим и расчетным, то есть как раз то что остается не учтенным в модели:
где:
Et – случайный остаток в периоде t,
Yt – фактическое значение в периоде t,
Tt – линейный тренд вида yt+1=a0+a1t0, где t – период времени,
St – сезонные колебания в периоде t.
Чтобы учесть случайную компоненту в модели, необходимо использовать авторегрессионный процесс. Для этого помимо основного ряда случайных остатков берем несколько рядов случайных остатков с лагом – то есть таких же рядов, но сдвинутых на один, два и более периодов времени – и проверяем наличие между этими рядами корреляции.
Я использовала помимо основного ряда Et еще четыре ряда Et+1, Et+2, Et+3 и Et+4. Большее количество использовать уже не имеет смысла – это усложняет модель, к тому же если автокорреляция отсутствует на четырех рядах с лагом, то велика вероятность, что она вовсе отсутствует.
В результате получаем ряд с наибольшим по модулю коэффициентом автокорреляции и именно этот ряд включаем в уравнение авторегрессии для случайной компоненты:
где:
Et – случайный остаток в периоде t,
Et-k – случайный остаток в периоде t для ряда, сдвинутого на k периодов,
rk – коэффициент автокорреляции между рядом Et и сдвинутым рядом Ek.
С учетом полученного выражения для случайной компоненты окончательно трехкомпонентная аддитивная модель принимает вид:
где:
Ft – прогнозное значение в периоде t,
Tt – линейный тренд вида yt+1=a0+a1t0, где t – период времени,
St – сезонные колебания, в периоде t,
Et – случайные колебания в периоде t.
А на этом рисунке представлен расчет по трехкомпонентной модели в сравнении с двухкомпонентной (без учета случайных остатков) – здесь синяя линия сплошная зеленая линия представляет собой расчетные значения по трехкомпонентной модели. Визуально можно оценить, что включение случайно компоненты повысило качество модели – сплошная зеленая линия проходит ближе к фактическим значениям, чем пунктирная.
Соответственно, полученная трехкомпонентная модель в дальнейшем использовалась как базовая для прогнозирования продаж.
Последнее, что было еще добавлено в модель – это доверительный интервал, то есть границы, в которых с заданной вероятностью будет попадать прогнозное значение:
где:
τ – коэффициент доверия Стъюдента,
U'– стандартная ошибка выборки.
Здесь доверительный интервал с доверительной вероятностью 85% добавлен в виде светло-зеленой сплошной линии:
Строим прогноз
Прогноз я строила отдельно для каждого канала продаж, поскольку необходимо было учитывать их особенности. Так для активных каналов продаж (агенты, телесейл) характерны всплески продаж в конце месяца. Это объясняется управляемостью данных каналов – например, возможностью быстро скорректировать отставание от плана введением мотивационных программ и просто желанием самих агентов закрыть месяц максимально возможным количеством продаж.
Поэтому для активных каналов в конце месяца к прогнозному значению применялся повышающий коэффициент, величина которого выбиралась как среднее или линейная комбинация из отклонений факта от прогноза за аналогичные периоды. Другие каналы также могли корректироваться в зависимости от влияющих на них факторов. Например, канал WEB-дилеров в 2019-м году только начал активно развиваться и показывал стабильный рост с середины 2019-го года, поэтому приходилось, наоборот, уменьшающими коэффициентами корректировать улетающий в космос тренд по отношению к 2018-му году.
Кроме того, для решения задач долгосрочного прогнозирования, в частности бюджетирования продаж на следующий год, прогнозная модель делилась на сегменты – отдельно строился прогноз для продаж FTTB и отдельно для суммы «конвергентных минусов» - F-M-/F-M+. Это, возможно, выглядит излишним усложнением модели, однако с постепенным смещением фокуса продаж с FTTB на FMC (для продаж конвергенции вводились мотивационные программы, существовал отдельный KPI – доля FMC в продажах) тренды данных сегментов устремились в противоположные стороны.
Ниже пример расчета по трехкомпонентной модели, где сплошная темно-синяя линия – это фактические значения, синяя пунктирная линия – прогноз, тонкие сплошная и пунктирная линии – дополнительные расчетные значения и светло-синяя толстая линия – доверительный интервал.
Здесь мы видим, что прогноз идет по нижней границе доверительного интервала, что является дополнительным и достаточно мощным инструментом регулирования в модели, особенно в случаях, когда прогноз строится не для оперативных целей, а для долгосрочных, например, при бюджетировании.
Оперативный прогноз должен быть максимально близким к реальности – в этом его основное назначение, долгосрочный прогноз в свою очередь должен учитывать не только текущую ситуацию, но все факторы, которые будут оказывать влияние на ее изменение в рассматриваемом будущем периоде. Например, на момент прогнозирования мы обладаем информацией, что в определенном филиале бизнес будет развиваться более стремительно, чем в нынешних условиях – планируются инвестиции, новая стройка, дополнительные мотивационные программы – значит, итоговый прогноз должен быть выше расчетных значений (основная задача здесь оценить, насколько выше – то есть какой вклад будет у описанных выше инициатив).
Обратная ситуация возникает в случае, если опять же на момент прогнозирования мы знаем, что в отдельно взятом канале или филиале роста продаж не ожидается. Это может быть связано с закрытием офисов, тяжелой конкурентной ситуацией на рынке, структурными изменениями. В такой ситуации важно, наоборот, не «перезаложить» прогноз, сделать его ниже расчетных значений.
В таких ситуациях как раз идеальным способом регулирования является доверительный интервал. Я использовала в качестве прогнозного значения, соответственно, верхнюю или нижнюю границу доверительного интервала и выставляла требуемое значение доверительной вероятности.
Расчеты по такой модели показывали вполне удовлетворительные результаты вплоть до марта 2020-го года, по этой модели я строила все прогнозы в рамках бюджетного процесса 2020 – таким же образом были рассчитаны все виды продаж и отток. Казалось, что я нашла свою идеальную модель, которая будет служить мне не один год, но пандемийный 2020-й год принес с собой нарушение всех возможных трендов и крушение всех давно выстроенных закономерностей. Пришлось искать новые.
Чем сложнее времена, тем проще должны быть модели
Потому что в условиях неопределенности главным качеством хорошей модели становится не столько аптечная точность, сколько устойчивость к изменениям и интерпретируемость. Преимущество линейной модели как раз в её простоте и лёгкости интерпретации – полученные результаты, только если зависимость между факторами не близка к линейной, будут далеки от идеальных, но их будет легко объяснить. Поэтому, когда возникла необходимость в поиске новой модели в условиях кризиса, то я не стала искать что-то принципиально новое, а просто преобразовала модель, оставив её линейную структуру и аддитивность. Я убрала из модели случайную компоненту и оставила только тренд + сезонность. Как уже было показано ранее, сезонность продаж сохраняется даже в условиях кризисов и существенных структурных сдвигов, поэтому упрощать модель максимально (только до линейного тренда) не имело смысла. В 2021-м году начался постепенный выход на тренды, что позволило мне вернуться к трехкомпонентной прогнозной модели.
В 2022-м году в фокусе моего внимания были уже не столько продажи, столько активная (платящая) абонентская база, а также отток, под которым будем понимать отсутствие активности и/или прекращение оплаты. Моделирование оттока напрямую связано с моделированием абонентской базы, точнее, является одним из этапов ее моделирования. Величина оттока (RTC) в процентах рассчитывается как количество неактивных абонентов за период к значению активной базы в предыдущем периоде (или к среднему значению активной базы в текущем и предыдущем периодах, но в данном случае рассмотрим более простой вариант):
где:
ct – отток в периоде t,
ABt и ABt-1 – активная база, соответственно, периода t и предыдущего периода,
Slt – продажи в периоде t.
Соответственно, преобразовав данную формулу, получаем выражение для активной базы отчетного периода:
Таким образом, для прогнозирования активной базы текущего периода необходимы прогнозные значения продаж и оттока. Кроме того, отток представляет ценность и сам по себе и всегда находится в фокусе внимания при подготовке отчетности.
Как и писала выше, до 2022 года все основные KPI я моделировала по трехкомпонентной аддитивной модели, в том числе и отток, который с некоторыми оговорками, но в нее укладывался. Отток как правило не имеет ярко выраженного тренда, что логично, величина оттока колеблется вокруг своего среднего значения. При этом сезонность оттока прослеживается. Есть месяцы с более высоким оттоком, например, периоды отпусков – лето, декабрь-январь, есть периоды со стабильным или низким оттоком.
Вот пример трехкомпонентной модели оттока.
Можно заметить, что тренд практически отсутствует. Это подтверждает и величина аппроксимации R2 – значение 0.003 показывает, что простой линейный тренд совсем не подходит для описания данного ряда. Однако отсутствие тренда в данном случае не существенно, и это еще одно преимущество трехкомпонентной модели. Даже при отсутствии тренда она все равно решает свои задачи – сглаживает ряд, позволяет учесть сезонность и случайные колебания, оставляет возможности для регулирования – возможности завысить или занизить прогнозное значение в зависимости от поставленных задач. При анализе оттока это не менее актуально, чем для продаж. Например, для решения задач вида: на сколько процентов необходимо снизить отток, чтобы активная база вышла на бюджетные значения.
От линейной модели для оттока, при всех ее преимуществах, пришлось отказаться в 2022 году, поскольку все закономерности оказались нарушены, даже сезонные. Количество неактивных абонентов резко выросло в феврале и затем в сентябре, и важно было понять, какая часть этих абонентов уже не вернется в активную базу, а какая ушла временно и еще может вернуться, и далее какая часть из них может вернуться уже в следующем месяце. Для этих целей мы использовали разные инструменты – проверяли трафик абонентов на пограничных базовых станциях, сравнивали с аналогичными периодами предыдущих лет, проверяли голосовой трафик в роуминге.
Целью было рассчитать количество активных абонентов на текущий момент (например, на 15-е число месяца) и возможность сравнить его с аналогичным периодом прошлого месяца и прошлого года. В сущности, это был переход к адаптивной модели, в которой каждое последующее значение пересчитывается в зависимости от предыдущих, входящих в модель с заданными весами.
Самым распространенным видом адаптивной модели является модель экспоненциального сглаживания вида:
где
Ft – прогнозное значение для периода t,
Yt-1 – последнее имеющееся фактическое значение,
Ft-1 – сглаженное значение для периода t-1,
a – веса модели.
Преимущество этой модели в ее гибкости – можно использовать не один, а несколько любых ретроспективных периодов, можно использовать варианты с различными весами и тогда итоговое сглаженное значение будет складываться как линейная комбинация из этих вариантов, сглаживать можно не только ряд фактических значений, но и ряды первых или случайных остатков.
Такую модель я использовала для прогнозирования оттока на один шаг вперед, то есть на фактических значениях до октября 2022 года я прогнозировала ноябрь и затем аналогично декабрь. В качестве первого сглаженного значения я использовала простое среднее первых 6 уровней. Вопрос заключался в том, какие значения использовать в качестве весов . Веса в модели выбираются исходя из условий задачи – насколько выраженное сглаживание ряда мы хотим получить (чем меньше значения a, тем выше эффект сглаживания). Важно было использовать какую-то значимую величину, а не просто некоторую случайную оценку. В итоге весами стали отклонения количества неактивных абонентов, регистрировавшихся на приграничных базовых станциях, в отчетном месяце по отношению к аналогичному периоду прошлого года. Для расчетов прогноза ноября эта величина составила 0.326, это отклонение сентября 2022 от сентября 2021 (на момент расчетов всех данных за октябрь еще не было).
На следующем рисунке представлен пример прогнозирования оттока по модели экспоненциального сглаживания, где темно-синяя сплошная линия – это фактические значения до октября 2022, светло-синяя линия – это сглаженные значения ряда и прогноз ноября. Пунктирной линией я выделила фактическое значение ноября.
Здесь заметно, что модель в ноябре дала очень хороший результат – разница между фактическим и прогнозным значением составила всего 0.004%. Результат по модели в декабре был уже не столь впечатляющим (см следующий рисунок) – отклонение составило 0.085%, сглаживание в данном случае оказалось чересчур сильным.
Веса в расчете декабря составили 0.426, напомню, что это отклонение количества неактивных абонентов с трафиком на приграничных базовых станциях в октябре 2022 по сравнению с октябрем 2021. Значение относительно небольшое, а отставание сглаженного ряда от фактического проявляется в большей степени при малых значениях a.
Более высокие веса могут дать результат ближе к реальности, однако на примере прогноза декабря этого не происходит.
Вот как выглядит пример расчета с величиной a равной 0.700 (лиловая линия):
На текущий момент я не пыталась больше усовершенствовать модель экспоненциального сглаживания для оттока, возможно, сделаю это в будущем. Интересно было бы использовать несколько вариантов с разными весами, а также использовать сглаживание не исходного ряда, а, например, ряда первых остатков. Для ряда с отсутствующим или слабо выраженным трендом подобный подход может давать более качественные результаты. Кроме того, моя задача была получить одно прогнозное значение, а экспоненциальное сглаживание помимо простого, которое мы рассмотрели, бывает также двойным и тройным – что позволяет строить прогноз, соответственно, на 2 и 3 периода вперед.
Экспоненциальная модель уже не подойдет для бюджетирования и прогнозирования на длительные периоды. Для сравнения по трехкомпонентной модели я строила прогнозы на срок до 5 лет, например, при построении стратегии развития FMC-бизнеса или при расчете данных для кейсов по отдельным проектам, вроде, амбиция по приросту активной абонентской базы на 30% через 5 лет. При этом преимущество экспоненциальной модели в ее адаптивности – прогноз уточняется каждый раз с получением новых фактических значений, а также в рекурсивности – каждое значение сглаженного ряда уже содержит информацию обо всех предыдущих значениях. То есть данная модель тоже неявным образом учитывает сезонность.
Итого
Резюмируя вышесказанное — мы рассмотрели построение трехкомпонентной аддитивной модели для прогнозирования продаж с ее модификацией для ситуации неопределенности, а также пример подхода к моделированию оттока с помощью простого экспоненциального сглаживания и можем сделать следующие выводы.
Главный из них заключается в том, что не существует единой идеальной модели, которая подойдет абсолютно всем и для любых условий. Важно подобрать модель, которая будет наилучшим образом описывать имеющиеся данные и больше всего подходить под поставленную задачу. Моделирование вообще и прогнозирование в частности – это задача, зависящая от множества различных факторов, как от особенностей продукта и условий, в которых происходит моделирование, так и от самого аналитика, его опыта, предпочтений и просто временных ресурсов. К примеру, над созданием своей трехкомпонентной модели я работала не один месяц, проверяя, исследуя, пробуя различные методы, пока не пришла к итоговому описанному выше результату.
Напротив, на создание адаптивной модели прогноза оттока у меня было крайне ограниченное количество времени и задача заключалась не в получении модели для дальнейшего длительного использования, а для получения некоторой краткосрочной оценки здесь и сейчас. Помимо временных затрат как таковых важен также вопрос их целесообразности. В первом случае затраты были полностью оправданы, поскольку мне прогнозная модель требовалась мне едва ли не в каждой решаемой задаче. Сейчас речь идет в основном об ad-hoc моделировании, поэтому долгое и кропотливое создание идеальной модели вряд ли можно считать оправданным.
В идеале, конечно, построение качественной прогнозной модели требует времени, а также глубокого понимания особенностей своего продукта, что достигается кропотливой исследовательской работой. Тогда с наступлением так называемой ситуации неопределённости модифицировать модель будет относительно несложно. С другой стороны, может оказаться и так, что как бы ни была качественна и устойчива модель, в новых условиях она просто не будет работать, поэтому не стоит бояться менять устоявшиеся подходы и переделывать даже хорошо зарекомендовавшие себя ранее модели.
Важно не забывать, что в кризисные периоды главным критерием модели становится ее простота и интерпретируемость. Тем более, что любая ситуация неопределенности рано или поздно стабилизируется, и тогда можно будет вернуться к старым моделям.