Внедрение Amazon Forecast в розничной торговле: путь от POC к производственной платформе PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Внедрение Amazon Forecast в розничной торговле: путь от POC к производству

Прогноз Амазонки — это полностью управляемая служба, которая использует статистические алгоритмы и алгоритмы машинного обучения (ML) для предоставления высокоточных прогнозов временных рядов. Недавно, основываясь на Amazon Forecast, мы помогли одному из наших розничных клиентов точно прогнозировать спрос в течение 8 недель. Решение улучшило ручной прогноз в среднем на 10% в отношении ВАПЕ метрика. Это приводит к прямой экономии 16 рабочих часов в месяц. Кроме того, мы подсчитали, что при правильном количестве товаров продажи могут увеличиться на 11.8%. В этом посте мы представляем рабочий процесс и критически важные элементы для реализации — от проверки концепции (POC) до производства — системы прогнозирования спроса с Amazon Forecast, ориентированной на проблемы в сфере розничной торговли.

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

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

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

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

Проблемы с данными

Большой объем чистых и качественных данных является ключевым требованием для получения точных прогнозов на основе машинного обучения. Данные о качестве, включая исторические данные о продажах и связанные с ними данные (такие как запасы, цены на товары и рекламные акции), необходимо собирать и консолидировать. Разнообразие данных из нескольких ресурсов требует современной платформы данных для объединения разрозненных хранилищ данных. Кроме того, своевременный доступ к данным необходим для частых и детальных прогнозов спроса.

проблемы машинного обучения

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

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

Операционные проблемы

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

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

Быстрое создание прототипа системы прогнозирования на основе машинного обучения с помощью Amazon Forecast

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

Исследование данных

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

итерация

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

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

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

автоматизация

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

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

  • Повышение точности прогноза (техническое) – Вычислите точность прогноза в отношении фактических данных о продажах и сравните с существующей системой прогнозирования, включая ручные прогнозы.
  • Сокращение отходов (бизнес) – Сокращение чрезмерного прогнозирования, чтобы уменьшить потери
  • Улучшение показателей на складе (бизнес) – Уменьшить занижение прогнозов, чтобы улучшить уровень запасов на складе.
  • Оценка увеличения валовой прибыли (бизнеса) – Сократите потери и улучшите уровень складских запасов, чтобы увеличить валовую прибыль.

Мы суммируем рабочий процесс разработки на следующей диаграмме.

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

Пошаговый рабочий процесс для разработки системы прогнозирования

Генерация целевого набора данных

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

Бизнес определяет, как прогнозирование влияет на производственную систему:

  • горизонт – Количество прогнозируемых временных шагов. Это зависит от основной бизнес-проблемы. Если мы хотим пополнять уровень запасов каждую неделю, то еженедельный или ежедневный прогноз кажется подходящим.
  • Зернистость – Детализация ваших прогнозов: периодичность по времени, например, ежедневно или еженедельно, разные местоположения магазинов и разные размеры одного и того же товара. В конце концов, прогноз может быть комбинацией SKU каждого магазина с ежедневными точками данных.

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

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

Прогнозируемость данных и классификация шаблонов данных

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

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

Внедрение Amazon Forecast в розничной торговле: путь от POC к производственной платформе PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Стоит отметить, что этот анализ предсказуемости предназначен для каждой детализированной позиции (например, SKU-Store-Color-Size). Довольно часто в производственной системе прогнозирования спроса разные товары следуют разным схемам. Поэтому важно разделять элементы по разным шаблонам данных. Типичным примером являются быстро движущиеся и медленно движущиеся предметы; другим примером могут быть плотные и разреженные данные. Кроме того, у мелкозернистого предмета больше шансов получить комковатый узор. Например, в магазине одежды продажи одного популярного предмета могут быть довольно гладкими ежедневно, но если мы дополнительно разделим продажи предмета для каждого цвета и размера, он вскоре станет разреженным. Таким образом, уменьшение степени детализации с SKU-Store-Color-Size до SKU-Store может изменить структуру данных с неравномерной на гладкую и наоборот.

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

Обогащение данных и выбор дополнительных наборов данных

Когда мы хотим использовать дополнительные наборы данных для повышения эффективности результатов прогнозирования, мы можем положиться на наборы данных временных рядов и наборы данных метаданных. В сфере розничной торговли, основываясь на интуиции и знании предметной области, такие функции, как запасы, цена, продвижение по службе, зимний или летний сезоны, могут быть импортированы в виде связанных временных рядов. Самый простой способ определить полезность функций — через их важность. В прогнозе это делается с помощью анализа объяснимости. Прогноз Объяснимость предиктора помогает нам лучше понять, как атрибуты в наборах данных влияют на прогнозы для цели. Прогноз использует метрику, называемую оценкой воздействия, для количественной оценки относительного влияния каждого атрибута и определения того, увеличиваются ли они или уменьшаются значения прогноза. Если один или несколько атрибутов имеют нулевую оценку влияния, то эти атрибуты не оказывают существенного влияния на значения прогноза. Таким образом, мы можем быстро удалить функции, которые оказывают меньшее влияние, и итеративно добавлять потенциальные. Важно отметить, что оценки воздействия измеряют относительное влияние атрибутов, которые нормализованы вместе с оценками воздействия всех других атрибутов.

Как и во всех проектах машинного обучения, повышение точности с помощью дополнительных функций требует повторяющихся экспериментов. Вам нужно поэкспериментировать с несколькими комбинациями наборов данных, наблюдая за влиянием дополнительных изменений на точность модели. Вы можете попробовать запустить несколько экспериментов с прогнозами через консоль прогнозов или с помощью Записные книжки Python с API прогнозов. Кроме того, вы можете присоединиться к AWS CloudFormation, который развертывает предоставленные AWS готовые решения для распространенных случаев использования (например, Повышение точности прогнозов с помощью решения для машинного обучения). Прогноз автоматически разделяет набор данных и создает метрики точности для оценки предикторов. Для получения дополнительной информации см. Оценка точности предиктора. Это помогает специалистам по обработке и анализу данных выполнять итерации быстрее для достижения наилучшей производительной модели.

Расширенное улучшение и обработка крайних случаев

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

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

На пути к производству: обновление набора данных, мониторинг и переобучение

Давайте рассмотрим пример архитектуры с прогнозом, как показано на следующей диаграмме. Каждый раз, когда конечный пользователь консолидирует новый набор данных на Простой сервис хранения Amazon (Amazon S3), срабатывает Шаговые функции AWS для управления различными компонентами, включая создание задания импорта набора данных, создание автоматического предиктора и создание прогнозов. После создания результатов прогноза на этапе «Создать экспорт прогноза» они экспортируются в Amazon S3 для последующих потребителей. Дополнительные сведения о подготовке этого автоматизированного конвейера см. Автоматизация с помощью AWS CloudFormation. Он использует стек CloudFormation для автоматического развертывания наборов данных в корзине S3 и запуска конвейера прогнозов. Вы можете использовать тот же стек автоматизации для создания прогнозов с собственными наборами данных.

Внедрение Amazon Forecast в розничной торговле: путь от POC к производственной платформе PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Есть два способа включить последние тенденции в систему прогнозирования: обновление данных или переобучение предиктора.

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

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

Заключение

Amazon Forecast — это сервис прогнозирования временных рядов, основанный на машинном обучении и созданный для анализа бизнес-показателей. Мы можем интегрировать прогнозирование спроса с высокой точностью, комбинируя исторические продажи и другую соответствующую информацию, такую ​​как запасы, рекламные акции или сезон. В течение 8 недель мы помогли одному из наших розничных клиентов добиться точного прогнозирования спроса — улучшение на 10 % по сравнению с ручным прогнозом. Это приводит к прямой экономии 16 рабочих часов в месяц и расчетному увеличению объема продаж до 11.8%.

В этом посте описаны распространенные методы перехода вашего проекта прогнозирования от проверки концепции к производству. Начните прямо сейчас с Прогноз Амазонки для получения высокоточных прогнозов для вашего бизнеса.


Об авторах

Внедрение Amazon Forecast в розничной торговле: путь от POC к производственной платформе PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Янвэй ЦуйКандидат наук, специалист по проектированию решений по машинному обучению в AWS. Он начал исследования в области машинного обучения в IRISA (Исследовательский институт компьютерных наук и случайных систем) и имеет многолетний опыт создания промышленных приложений на базе искусственного интеллекта для компьютерного зрения, обработки естественного языка и онлайн-прогнозирования поведения пользователей. В AWS он делится опытом в этой области и помогает клиентам раскрыть потенциал бизнеса и добиться реальных результатов с помощью машинного обучения в любом масштабе. Вне работы любит читать и путешествовать.

Внедрение Amazon Forecast в розничной торговле: путь от POC к производственной платформе PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Гордон Ван является старшим специалистом по данным в команде профессиональных услуг Amazon Web Services. Он поддерживает клиентов во многих отраслях, включая средства массовой информации, производство, энергетику, розничную торговлю и здравоохранение. Он увлечен компьютерным зрением, глубоким обучением и MLOps. В свободное время любит бегать и ходить в походы.

Отметка времени:

Больше от Машинное обучение AWS