00:00:05 Прогнозирование сезонных продаж.
00:00:35 Объяснение основных сезонных паттернов.
00:02:23 Проблемы с прогнозированием сезонности, продолжительность жизни продукта.
00:04:33 Дальнейшее изучение проблем с сезонностью.
00:06:53 Преодоление проблем с отсутствующими историческими данными.
00:07:16 Решение: учитывать коллекции продуктов для сезонности.
00:08:49 Динамическое выравнивание времени.
00:09:06 Переход к глубокому обучению для прогнозирования.
00:10:02 Динамическое выравнивание времени в прогнозировании спроса.
00:12:09 Обработка выбросов и акций в исторических данных.
00:13:01 Необходимость точных данных и машинного обучения.
00:16:01 Популярность глубокого обучения в машинном обучении.
00:16:30 Ограничения прошлых данных для прогнозирования будущего.
00:17:40 Сезонность в человеческих делах для моделирования.
00:19:42 Улучшение прогнозирования с помощью машинного обучения.
00:21:39 Преимущества машинного обучения со временем.

Резюме

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

Расширенное резюме

Киран Чандлер беседует с Джоаннесом Верморелем о концепции сезонности в прогнозировании продаж и связанных с ней проблемах.

Сезонность - один из основных паттернов, используемых для повышения точности прогнозов продаж, но часто она неправильно понимается и неправильно применяется. Верморел определяет сезонность как основной циклический паттерн в продажах. Он разделяет эти цикличности на три основных типа: время года, день недели и время суток, которые все вносят свой вклад в вариации потребительского спроса.

Верморел также обсуждает вторичные цикличности, такие как “эффект зарплаты”, который представляет собой месячный цикл получения людьми зарплаты и его влияние на их покупательное поведение. Кроме того, он вводит понятие “минеральных цикличностей” или “квази-сезонности”, которые включают события, такие как Пасха, Рамадан и Китайский Новый год, которые повторяются, но не всегда выпадают на одну и ту же дату каждый год согласно григорианскому календарю.

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

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

Верморел вводит понятие “искажения времени” в сезонности, относящееся к сдвигам в сезонных закономерностях из-за различных факторов. Изменения погодных условий могут побудить потребителей начать свои зимние покупки раньше или позже, чем обычно. Политическая обстановка и настроения потребителей также могут влиять на время покупок, например, рождественские покупки. Эти сдвиги могут исказить типичные сезонные закономерности, что делает прогнозирование сложным.

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

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

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

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

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

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

способна предсказывать эту среднюю скорость эволюции.

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

Полный текст

Киран Чандлер: Йоанн, мы часто говорим о сезонности как об одной из основных закономерностей, которые применяются для повышения точности прогнозов. Но что мы на самом деле имеем в виду? Что такое основные закономерности?

Йоанн Верморель: Сезонность - это одна из основных циклических закономерностей. Существуют три основных цикла: время года, день недели и время суток. Это три основных цикла. Затем у вас есть несколько вторичных циклов, таких как эффект выплаты зарплаты, который в основном является ежемесячной циклической закономерностью, когда у людей есть деньги или что-то происходит в начале или конце месяца. Затем у вас есть то, что я бы назвал квази-сезонностью, такие события, как Пасха, Рамадан, Китайский Новый год. Эти события происходят каждый год, но не в одно и то же время года, по крайней мере, согласно григорианскому календарю. У нас есть все эти циклические закономерности, и сезонность является одной из самых важных из них. Помимо циклов, у нас есть базовый спрос, тенденция роста или сокращения объема товаров со временем и, наконец, количество статистического шума, которое также является очень большой закономерностью. Вам действительно нужно понять изменчивость и определить, является ли то, что вы видите, шумом или фактической статистической закономерностью.

Киран Чандлер: Давайте поговорим о самой сезонности. Почему людям с ней трудно? Кажется, что очевидно знать, что к Рождеству продажи возрастут, а в праздничные сезоны вы увидите разные продажи по разным товарам. Так почему людям с этим трудно?

Йоанн Верморель: Сезонность сложно правильно учесть. Давайте рассмотрим проблемы. Первая проблема заключается в том, что большинство товаров имеют короткий срок жизни на рынке. Средний срок службы товара бытовой химии составляет от трех до пяти лет. Это означает, что если вы продаете товары, которые в среднем продержатся на рынке три года, то это означает, что у половины ваших товаров есть всего полтора года существования. У вас даже есть треть ваших товаров, которые имеют менее года. Так что, если вы хотите иметь наивную сезонную модель, статистическую модель, где вы говорите, что продажи, которые я сделаю на следующее Рождество, будут похожи на то, что я сделал на предыдущее Рождество, оказывается, что для трети ваших товаров не было прошлого Рождества. У вас нет никаких ссылок. Так что первая проблема заключается в том, что из-за новизны товара на рынке вы сталкиваетесь с значительной частью вашего каталога, у которого нет годового существования. Допустим, например, для автозапчастей, которые обычно имеют более длительный срок службы около шести лет, даже тогда у одной шестой части вашего товара нет даже года продаж. Таким образом, вы не сможете применить эту хорошую сезонность к значительной части вашего каталога. Это одна из проблем, с которыми мы сталкиваемся при работе со сезонностью.

Киран Чандлер: Какие еще проблемы мы сталкиваемся со сезонностью?

Йоанн Верморель: Еще одна проблема заключается в том, что сезонность не обязательно одинакова с году на год. Да, Рождество приходится на 25 декабря каждый год, но если вы переходите с одного года на другой, сезон Рождества с точки зрения продавца.

Киран Чандлер: Однажды начало стать очень холодным уже в октябре, что заставило людей начать свои зимние покупки раньше в сезоне. Напротив, иногда температура оставалась мягкой дольше, поэтому люди начинали покупать позже. Иногда даже политическая обстановка влияет на покупательские привычки. Например, если люди очень беспокоятся о будущем, они могут решить отложить покупки на Рождество до последнего момента. Это только некоторые из факторов, которые могут вызвать то, что мы обычно называем временным искажением. У вас все равно есть пик к Рождеству, например, но начало рождественского сезона может варьироваться на несколько недель от года к году. Такое искажение может происходить со всеми сезонными закономерностями. Вы согласны?

Йоанн Верморель: Абсолютно, и это, вероятно, второй класс проблем. Третий класс заключается в том, что ваша сезонность, к сожалению, подвержена другим закономерностям. Что, если, например, в прошлом году в сентябре у вас была масштабная акция, которую вы не повторяете в этом году? Вы не должны путать влияние этой акции со сезонностью. Вам нужно различать сезонность от других закономерностей. И все эти изменения вместе делают сезонность гораздо более неуловимой, чем если бы вы просто имели дело с наивной ситуацией, где у вас есть чистая сезонность для продукта, который долговечен, стабилен и все работает гладко.

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

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

Кирен Чандлер: Если вы прогнозируете на несколько месяцев вперед, как вы узнаете, продлится ли лето на один дополнительный месяц? Как вы можете сделать прогноз на это?

Жоанн Верморель: Вот здесь мы переходим к следующему этапу, который заключается в том, как мы справляемся со всеми искажениями. Это можно сделать аналитически с помощью техники, известной как динамическое выравнивание времени. Если людей это интересует, они могут найти информацию в Википедии. Реализация динамического выравнивания времени является чрезвычайно сложной с точки зрения программного обеспечения. Около 10 лет назад сообщество распознавания речи, занимающееся машинным обучением для распознавания речи, столкнулось с динамическим выравниванием времени. Они считали его слишком сложным, отказались от него и перешли к глубокому обучению. Интересно, что Lokad сделало то же самое для сезонности. Мы реализовали динамическое выравнивание времени в нашем прогностическом движке, но в конечном итоге заменили всю систему глубоким обучением в последнем поколении наших прогностических движков.

Кирен Чандлер: Звучит очень научно-фантастически, выравнивание времени. Можете дать нам краткий обзор?

Жоанн Верморель: Обзор заключается в том, что вы знаете, что ваш сезон, вероятно, скоро закончится, но вы не знаете точно, когда. Однако вы можете учесть изменчивость.

Кирен Чандлер: Мы достигли конца сезона, поэтому я знаю, что спрос будет продолжаться, но намного ниже. Однако как выглядит анализ сезонности без этого вида динамического выравнивания времени? Что происходит, если сезон заканчивается раньше?

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

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

Кирен Чандлер: Итак, идея заключается в том, что у вас будет тот же типичный профиль спроса, но он будет сжат или растянут в зависимости от сезона?

Жоанн Верморель: Именно так.

Кирен Чандлер: И последнее, о чем мы говорили, это исторические всплески данных и то, что эти всплески не учитываются при определении сезонности на текущий год. Как это работает? Как вы не учитываете эти всплески? Как вы определяете, что является сезонным спросом, а что просто всплеском из-за акции или чего-то подобного?

Жоанн Верморель: Классический подход к прогнозированию временных рядов - это параметрическое разложение. У вас есть история спроса, и вы можете сказать, что из этого спроса определенная часть является базовой, определенная часть - сезонной, определенная часть может быть объяснена трендом и т.д. Этот подход слаб в том смысле, что вы хотите иметь возможность независимо изучать все ваши паттерны, но реальность заключается в том, что в ваших исторических данных все полностью перемешано.

У этой проблемы есть как минимум два аспекта. Во-первых, вам необходимо правильно записывать в ваших исторических данных все акции, исчерпание запасов и все другие события, которые влияли не на спрос, а на ваше наблюдение за спросом, то есть на продажи. Продажи не равно спросу. Например, когда вы хотите сделать прогноз, вы обычно хотите сказать: “Я хочу сделать прогноз спроса по обычной цене, я не хочу делать прогноз спроса по супернизкой акционной цене”. Но то, что у вас есть в вашей истории, это ваши продажи, и продажи искажены из-за акций и, возможно, исчерпания запасов и других факторов.

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

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

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

Кирен Чандлер: Вы постоянно упоминаете искажения. Кажется, что существует так много возможных способов искажения данных, что сезонность очень сложно реализовать. Можем ли мы действительно полностью доверять результатам, учитывая потенциал искажений в данных?

Жоанн Верморель: Абсолютно, и вопрос в том, насколько прошлое позволяет вам предсказывать будущее? Это основное предположение статистического прогнозирования спроса. К сожалению, будущее не всегда можно предсказать по прошлому. Однако это не совсем верно, когда речь идет о прогнозах на несколько месяцев вперед. В большинстве рынков есть много инерции. Недавнее прошлое все еще является разумным приближением ближайшего будущего. Вот на что мы полагаемся.

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

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

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

Кирен Чандлер: Мы обсуждали вероятностный подход в оптимизации цепи поставок. Насколько я понимаю, этот подход также может учитывать сезонность. Можете ли вы рассказать подробнее, как он справляется с изменениями сезонных паттернов с года на год?

Жоанн Верморель: Конечно. Наша статистическая модель разработана для адаптации к изменяющейся сезонности. Хотя мы не всегда можем предсказать точные изменения, мы можем прогнозировать среднюю скорость эволюции. Это позволяет нам внести правильное количество неопределенности в наши прогнозы. Важно помнить, что эти прогнозы являются вероятностными распределениями, которые учитывают сезонный паттерн. Однако это не идеальное представление. Существует некоторая степень нечеткости в отношении амплитуды. Мы учитываем, насколько будет увеличение во время пикового сезона, а также время наступления этих пиков. Это действительно комбинация этих двух факторов.

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

Жоанн Верморель: Ну, первое, что приходит на ум, это связаться с нами в Lokad! Шутки в сторону, я думаю, что самый значительный шаг заключается в переходе к настройкам машинного обучения. Традиционный подход к управлению сезонностью включает в себя ручное создание профилей сезонности. По сути, вы группируете продукты в корзины на основе общей сезонности. Однако этот метод сильно зависит от человеческого вмешательства и сложно поддерживать со временем.

Кирен Чандлер: Можете ли вы раскрыть проблемы с этим традиционным подходом?

Жоанн Верморель: Конечно. Основная проблема не обязательно заключается в том, что предположения эксперта неверны. Эксперт по цепи поставок может действительно точно оценить, что группа продуктов имеет одинаковую сезонность. Проблема заключается в том, что со временем поддержание этой системы становится кошмаром. Каждый раз, когда вы запускаете новый продукт, вам нужно убедиться, что он попадает в правильную корзину. Хотя начальная кластеризация может быть хорошей, она склонна деградировать и становиться неэффективной со временем.

Кирен Чандлер: Итак, как помогает переход к машинному обучению в этом случае?

Жоанн Верморель: С помощью настройки машинного обучения вы можете автоматически поддерживать свои сезонные корзины. Это значительно повысит точность, потому что ваши корзины, даже если они не идеальны, не будут деградировать со временем. Они восстанавливаются каждый раз, когда вам это нужно.

Кирен Чандлер: Это очень информативно. К сожалению, нам приходится завершить нашу беседу на сегодня. Спасибо за ваше время, Жоанн.

Жоанн Верморель: Пожалуйста, это было приятно.

Кирен Чандлер: Это все на этой неделе. Мы вернемся на следующей неделе с новой серией. До тех пор, спасибо всем за просмотр.