Впровадження Amazon Forecast у галузі роздрібної торгівлі: шлях від POC до виробництва PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Впровадження Amazon Forecast у сфері роздрібної торгівлі: шлях від POC до виробництва

Прогноз Amazon – це повністю керована служба, яка використовує статистичні алгоритми та алгоритми машинного навчання (ML) для надання високоточних прогнозів часових рядів. Нещодавно на основі прогнозу Amazon ми допомогли одному з наших роздрібних клієнтів отримати точне прогнозування попиту протягом 8 тижнів. Рішення покращило ручний прогноз у середньому на 10% щодо WAPE метрика. Це призводить до прямої економії 16 робочих годин на місяць. Крім того, ми підрахували, що, заповнивши правильну кількість позицій, продажі можуть зрости до 11.8%. У цій публікації ми представляємо робочий процес і критичні елементи для впровадження — від перевірки концепції (POC) до виробництва — системи прогнозування попиту за допомогою Amazon Forecast, зосередженої на проблемах у галузі роздрібної торгівлі.

Передумови та актуальні проблеми прогнозування попиту в галузі роздрібної торгівлі

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

  • Збільшення продажів за рахунок кращої доступності продукту та зменшення зусиль, пов’язаних із переміщенням між магазинами
  • Надання більш надійної інформації для покращення використання ємності та завчасного уникнення вузьких місць у забезпеченні ємності
  • Мінімізація запасів і виробничих витрат і покращення оборотності запасів
  • Представляючи загальний кращий досвід клієнтів

Методи ML демонструють велику цінність, коли присутній великий обсяг якісних даних. Сьогодні управління поповненням на основі досвіду або прогнозування попиту все ще є основним напрямком для більшості роздрібних торговців. З метою покращення взаємодії з клієнтами все більше роздрібних торговців бажають замінити системи прогнозування попиту на основі досвіду прогнозами на основі ML. Однак роздрібні торговці стикаються з багатьма проблемами під час впровадження систем прогнозування попиту на основі ML у виробництво. Ми підсумовуємо різні проблеми за трьома категоріями: проблеми з даними, проблеми з ML та операційні проблеми.

Проблеми з даними

Великий обсяг чистих якісних даних є ключовою вимогою для створення точних прогнозів на основі ML. Необхідно збирати та консолідувати дані про якість, включаючи історичні дані про продажі та пов’язані з ними дані (такі як інвентар, ціни на товари та рекламні акції). Різноманітність даних з багатьох ресурсів потребує сучасної платформи даних для об’єднання даних. Крім того, своєчасний доступ до даних необхідний для частих і детальних прогнозів попиту.

Проблеми ML

Розробка просунутих алгоритмів машинного навчання потребує досвіду. Реалізація правильних алгоритмів для правильної проблеми потребує як глибоких знань предметної області, так і компетенції ML. Крім того, для вивчення великих доступних наборів даних потрібна масштабована інфраструктура машинного навчання. Крім того, підтримка алгоритмів машинного навчання у виробництві потребує компетенцій у сфері машинного навчання, щоб проаналізувати першопричину деградації моделі та правильно перенавчити модель.

Для вирішення практичних бізнес-завдань створення точних прогнозів — це лише частина історії. Особам, які приймають рішення, потрібні імовірнісні прогнози в різних квантилях, щоб прийняти важливі компромісні рішення щодо досвіду клієнтів і фінансових результатів. Їм також потрібно пояснити прогнози зацікавленим сторонам і виконати аналіз "що, якщо", щоб дослідити, як різні сценарії можуть вплинути на результати прогнозу.

Операційні виклики

Зменшення операційних зусиль щодо підтримки економічно ефективної системи прогнозування є третьою головною проблемою. У звичайному сценарії прогнозування попиту кожен товар у кожному місці має свій власний прогноз. Потрібна система, яка може керувати сотнями тисяч прогнозів у будь-який час. Крім того, кінцевим бізнес-користувачам потрібна інтеграція системи прогнозування в існуючі нижчі системи, такі як існуючі платформи керування ланцюгом поставок, щоб вони могли використовувати системи на основі ML без модифікації існуючих інструментів і процесів.

Ці виклики особливо гострі, коли бізнес великий, динамічний і розвивається. Щоб вирішити ці проблеми, ми ділимося історією успіху клієнта, яка скорочує зусилля для швидкої перевірки потенційної вигоди для бізнесу. Це досягається завдяки створенню прототипів за допомогою Amazon Forecast — повністю керованого сервісу, який надає точні результати прогнозування без необхідності керувати основними інфраструктурними ресурсами та алгоритмами.

Швидке створення прототипів для системи прогнозування на основі ML за допомогою Amazon Forecast

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

Дослідження даних

Дослідження даних часто передбачає інтенсивне обговорення з дослідниками даних або аналітиками бізнес-аналітики, щоб ознайомитися з історичним набором даних про продажі та доступними джерелами даних, які потенційно можуть вплинути на результати прогнозу, наприклад інвентаризація та минулі рекламні заходи. Одним із найефективніших способів є консолідація даних про продажі, як цільового набору даних, із сховища даних на ранній стадії проекту. Це ґрунтується на тому факті, що в результатах прогнозу часто переважають моделі цільового набору даних. У сховищах даних часто зберігаються повсякденні бізнес-дані, і вичерпне розуміння протягом короткого періоду часу є складним і займає багато часу. Наша пропозиція полягає в тому, щоб зосередитися на створенні цільового набору даних і переконатися, що цей набір даних правильний. Ці дослідження даних і базові результати часто можна отримати протягом кількох днів, і це може визначити, чи можна точно спрогнозувати цільові дані. Далі в цьому дописі ми обговоримо прогнозованість даних.

Ітерація

Отримавши базові результати, ми можемо продовжити додавати пов’язані дані, щоб побачити, як вони можуть вплинути на точність. Це часто робиться шляхом глибокого занурення в додаткові набори даних; для отримання додаткової інформації див Використання пов’язаних наборів даних часових рядів та Використання наборів метаданих елементів.

У деяких випадках можна підвищити точність Amazon Forecast, навчивши моделі з підмножинами набору даних, що функціонують подібно, або видаливши розріджені дані з набору даних. Під час цієї фази ітераційного вдосконалення складною частиною (справедливою для всіх проектів ML) є те, що поточна ітерація залежить від ключових висновків і ідей попередньої ітерації, тому ретельний аналіз і звітність є ключовими для успіху.

Аналіз можна проводити кількісно та емпірично. Кількісний аспект відноситься до оцінки під час ретестування та порівняння метрики точності, наприклад WAPE. Емпіричний аспект стосується візуалізації кривої прогнозу та фактичних цільових даних, а також використання знань предметної області для включення потенційних факторів. Ці аналізи допомагають вам виконувати ітерацію швидше, щоб подолати розрив між прогнозованими результатами та цільовими даними. Крім того, представлення таких результатів у щотижневому звіті часто може надати впевненості кінцевим користувачам.

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

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

Критерії успіху можна оцінити за допомогою отриманих результатів як з технічної, так і з бізнес-точок зору. Протягом періоду оцінки ми можемо оцінити потенційні вигоди для наступного:

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

Ми підсумовуємо робочий процес розробки на наступній діаграмі.

У наступних розділах ми обговорюємо важливі елементи, які слід враховувати під час впровадження.

Покрокова схема розробки системи прогнозування

Генерація цільового набору даних

Першим кроком є ​​створення цільового набору даних для прогнозу. У галузі роздрібної торгівлі це стосується історичних часових рядів даних про попит і продажі роздрібних товарів (SKU). Під час підготовки набору даних важливим аспектом є деталізація. Ми повинні враховувати деталізацію даних як з вимог бізнесу, так і з технічних вимог.

Бізнес визначає, як прогнозування результатів у виробничій системі:

  • Горизонт – Кількість прогнозованих часових кроків. Це залежить від основної бізнес-проблеми. Якщо ми хочемо поповнювати рівень запасів щотижня, то тижневий або щоденний прогноз видається доречним.
  • Гранулярність – Деталізація ваших прогнозів: періодичність, як-от щодня чи щотижня, різні місця розташування магазинів і різні розміри одного товару. Зрештою, прогноз може бути комбінацією SKU кожного магазину з щоденними точками даних.

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

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

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

Одним із ключових відомостей, які ми можемо отримати з цільового набору даних, є його здатність створювати якісні прогнози. Це можна проаналізувати на дуже ранній стадії проекту ML. Прогноз сяє, коли дані показують сезонність, тенденції та циклічність.

Щоб визначити прогнозованість, існує два основних коефіцієнти: мінливість часу попиту та мінливість кількості попиту. Мінливість часу попиту означає інтервал між двома випадками попиту, і він вимірює регулярність попиту в часі. Мінливість кількості попиту означає коливання кількості. Наступний малюнок ілюструє деякі різні моделі. Точність прогнозу сильно залежить від прогнозованості продукту. Для отримання додаткової інформації див Класифікація попиту: чому прогнозованість важлива.

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

Крім того, не всі товари однаково сприяють продажам. Ми помітили, що внесок товарів часто відповідає розподілу Парето, за яким найвищі товари спричиняють більшу частину продажів. Продажі цих найкращих товарів часто проходять гладко. Предмети з нижчими показниками продажів часто бувають кусками та нестабільними, тому їх важко оцінити. Додавання цих товарів може фактично знизити точність найпопулярніших товарів. На основі цих спостережень ми можемо розділити товари на різні групи, навчити модель прогнозу на найпопулярніших предметах і обробляти товари з нижчими продажами як кутові випадки.

Збагачення даних і вибір додаткового набору даних

Якщо ми хочемо використовувати додаткові набори даних для покращення ефективності результатів прогнозу, ми можемо покластися на набори даних часових рядів та набори даних метаданих. У сфері роздрібної торгівлі, ґрунтуючись на інтуїції та знаннях домену, такі характеристики, як інвентар, ціна, рекламна акція та зимовий або літній сезони, можна імпортувати як пов’язані часові ряди. Найпростіший спосіб визначити корисність функцій – це їх важливість. У Forecast це робиться за допомогою аналізу пояснюваності. Прогноз Провісник пояснення допомагає нам краще зрозуміти, як атрибути в наборах даних впливають на прогнози для цілі. Прогноз використовує показник, який називається балами впливу, щоб кількісно визначити відносний вплив кожного атрибута та визначити, чи збільшують вони чи зменшують прогнозовані значення. Якщо один або кілька атрибутів мають нульову оцінку впливу, то ці атрибути не мають істотного впливу на прогнозовані значення. Таким чином ми можемо швидко видалити функції, які мають менший вплив, і додавати потенційні ітераційно. Важливо зазначити, що показники впливу вимірюють відносний вплив атрибутів, які нормалізуються разом із показниками впливу всіх інших атрибутів.

Як і в усіх проектах ML, підвищення точності за допомогою додаткових функцій потребує ітераційних експериментів. Вам потрібно експериментувати з кількома комбінаціями наборів даних, одночасно спостерігаючи за впливом поступових змін на точність моделі. Ви можете спробувати запустити кілька експериментів Forecast через консоль прогнозу або за допомогою Ноутбуки Python з API Forecast. Крім того, ви можете на борту з AWS CloudFormation, яка розгортає AWS, надала готові рішення для звичайних випадків використання (наприклад, the Підвищення точності прогнозів за допомогою рішення машинного навчання). Прогноз автоматично розділяє набір даних і створює показники точності для оцінки прогнозів. Для отримання додаткової інформації див Оцінка точності прогнозу. Це допомагає дослідникам обробки даних швидше виконувати ітерації, щоб досягти найкращої моделі.

Розширене вдосконалення та обробка кутових випадків

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

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

На шляху до виробництва: оновлення набору даних, моніторинг і перенавчання

Давайте розглянемо приклад архітектури за допомогою Forecast, як показано на наступній діаграмі. Щоразу, коли кінцевий користувач консолідує новий набір даних Служба простого зберігання Amazon (Amazon S3), це запускає Функції кроку AWS для організації різних компонентів, включаючи створення завдання імпорту набору даних, створення автоматичного прогнозу та генерування прогнозів. Після створення результатів прогнозу крок «Створити експорт прогнозу» експортує їх до Amazon S3 для подальших споживачів. Додаткову інформацію про те, як налаштувати цей автоматизований конвеєр, див Автоматизація за допомогою AWS CloudFormation. Він використовує стек CloudFormation для автоматичного розгортання наборів даних у сегменті S3 і запуску конвеєра прогнозу. Ви можете використовувати той самий стек автоматизації для створення прогнозів із власними наборами даних.

Впровадження Amazon Forecast у галузі роздрібної торгівлі: шлях від POC до виробництва PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

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

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

Однак, якщо ви хочете, щоб ваш предиктор навчався на нових даних, ви повинні створити новий предиктор. Можливо, вам знадобиться перенавчати модель, коли змінюються моделі даних (сезонність, тренди чи цикли). Як зазначено в Постійно відстежуйте точність провісників за допомогою Amazon Forecast, продуктивність предиктора буде коливатися з часом через такі фактори, як зміни в економічному середовищі чи поведінці споживачів. Тому, можливо, знадобиться перенавчати предиктор або створити новий предиктор, щоб забезпечити продовження високоточних прогнозів. За допомогою моніторинг предикторів, Forecast може відстежувати якість ваших предикторів, дозволяючи вам зменшити оперативні зусилля, допомагаючи вам приймати більш обґрунтовані рішення щодо збереження, перенавчання або відновлення ваших предикторів.

Висновок

Amazon Forecast — це служба прогнозування часових рядів, яка базується на ML і створена для аналізу бізнес-метрик. Ми можемо інтегрувати прогнозування попиту з високою точністю, поєднуючи історичні продажі та іншу відповідну інформацію, таку як запаси, акції чи сезон. Протягом 8 тижнів ми допомогли одному з наших роздрібних клієнтів досягти точного прогнозу попиту — покращення на 10% порівняно з прогнозом, зробленим вручну. Це призводить до прямої економії 16 робочих годин на місяць і прогнозованого зростання продажів до 11.8%.

У цьому дописі розповідається про загальні практики для переведення вашого проекту прогнозування від підтвердження концепції до виробництва. Почніть зараз із Прогноз Amazon для отримання високоточних прогнозів для вашого бізнесу.


Про авторів

Впровадження Amazon Forecast у галузі роздрібної торгівлі: шлях від POC до виробництва PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Янвей Цуй, PhD, є спеціалістом з машинного навчання архітектором рішень у AWS. Він почав дослідження машинного навчання в IRISA (Дослідницький інститут комп’ютерних наук і випадкових систем) і має кілька років досвіду створення промислових додатків на основі штучного інтелекту для комп’ютерного зору, обробки природної мови та прогнозування поведінки користувачів в Інтернеті. У AWS він ділиться досвідом у галузі та допомагає клієнтам розкрити бізнес-потенціал та досягти практичних результатів за допомогою машинного навчання в масштабі. Поза роботою любить читати та подорожувати.

Впровадження Amazon Forecast у галузі роздрібної торгівлі: шлях від POC до виробництва PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Гордон Ван є старшим спеціалістом із обробки даних у групі професійних послуг Amazon Web Services. Він підтримує клієнтів у багатьох галузях, включаючи ЗМІ, виробництво, енергетику, роздрібну торгівлю та охорону здоров’я. Він захоплюється комп’ютерним зором, глибоким навчанням і MLO. У вільний час любить бігати та піші прогулянки.

Часова мітка:

Більше від AWS Машинне навчання