Этот проект был выбран потому, что он позволяет науке о данных и машинному обучению делать прогнозы продаж в розничных магазинах. Конкурс Walmart Recruiting Store Forecasting Forecasting, организованный Kaggle, предоставляет набор исторических данных о продажах в магазинах Walmart в Соединенных Штатах. Цель конкурса — прогнозировать продажи отдельных магазинов. Ожидается, что с помощью прогностических моделей и алгоритмов машинного обучения участники будут создавать более точные прогнозы, чем традиционные методы. Этот конкурс предоставляет прекрасную возможность попрактиковаться в анализе данных и навыках прогнозного моделирования.

Набор данных и функции

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

Ссылка на набор данных: https://www.kaggle.com/c/walmart-recruiting-store-sales-forecasting/data

Краткая литература

Анализ временных рядов. В нескольких исследованиях анализ временных рядов использовался для прогнозирования продаж Walmart. Например, Чима и Бхатнагар (2021) использовали модель сезонной авторегрессии интегрированной скользящей средней (SARIMA) для прогнозирования продаж Walmart. Они обнаружили, что SARIMA превосходит другие традиционные модели прогнозирования, такие как экспоненциальное сглаживание и ARIMA. Точно так же Лю и Лю (2019) применили метод Холта-Уинтерса для прогнозирования продаж Walmart на уровне магазина. Они обнаружили, что метод превосходит другие модели временных рядов с точки зрения точности.

Машинное обучение. Методы машинного обучения, такие как нейронные сети и машины опорных векторов, также применялись для прогнозирования продаж Walmart. Например, Ли и др. (2020) разработали модель на основе нейронной сети для прогнозирования продаж Walmart. Они обнаружили, что эта модель превосходит другие традиционные модели, такие как ARIMA и экспоненциальное сглаживание. Аналогичным образом Ян и Лин (2019) применили регрессию опорных векторов для прогнозирования продаж Walmart. Они обнаружили, что этот метод превосходит другие модели машинного обучения, такие как искусственные нейронные сети и деревья решений.

Аналитика больших данных. Аналитика больших данных стала мощным инструментом для прогнозирования продаж Walmart. Например, Мяо и соавт. (2020) разработали модель на основе больших данных для прогнозирования продаж Walmart. Они обнаружили, что эта модель превосходит другие традиционные модели, такие как ARIMA и Holt-Winters. Точно так же Filedes et al. (2019) использовали подход больших данных для повышения точности прогнозов продаж Walmart. Они обнаружили, что включение внешних данных, таких как погода и экономические показатели, повышает точность прогнозов.

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

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

Методология

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

Здесь мы разделяем 45 магазинов на 30 и 15, а затем снова делим 30 на 20 и 10.

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

Перед выполнением EDA были предприняты шаги:

Объединение существующих трех наборов данных в один.

Учитывая записи с положительными недельными_продажами.

Объединение столбцов уценки в один унифицированный столбец.

Исследовательский анализ данных

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

Самые высокие средние недельные продажи были отмечены в декабре, а самые низкие — в мае и июне. Это свидетельствует о том, что у компании хорошие показатели продаж, а также наличие постоянной клиентской базы.

Согласно графику средних недельных продаж компании по типам магазинов, в магазинах типа А были самые высокие средние недельные продажи, за ними следуют магазины типа В и типа С.

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

На этом графике показаны средние еженедельные продажи компании по типам магазинов. Это показывает, что магазины типа А имеют самые высокие средние недельные продажи по сравнению с магазинами типа В и типа С.

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

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

На диаграмме видно, что большая часть данных (92,96%) относится к непраздничным дням, и только 7,04% — к праздникам.

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

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

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

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

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

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

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

Это может быть признаком местной экономики и спроса на рабочие места в этом районе, что может повлиять на продажи магазина.

Это дает нам представление о тенденциях и закономерностях продаж в магазине за определенный период. Из этого графика видно, что продажи магазинов типа A и типа B растут, а продажи магазинов типа C снижаются.

Это говорит о том, что магазины типа A и типа B более популярны и имеют больше покупателей, чем магазины типа C.

Эта визуализация помогает быстро определить, какие магазины являются самыми большими и самыми маленькими с точки зрения размера. Площадь самого большого магазина составляет 20 000 квадратных футов, а площади самых маленьких магазинов — около 4 000 квадратных футов.

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

Анализ временных рядов

Модели временных рядов предполагают, что данный набор данных временных рядов является стационарным, что означает, что его среднее значение и дисперсия постоянны.

Чтобы определить, является ли ряд стационарным, мы использовали расширенный тест Дики Фуллера.

Как мы видим, наше значение p меньше (0,5) и даже меньше (0,01). Таким образом, мы можем с достаточной уверенностью сказать, что можем отклонить нуль (единичный корень, нестационарные данные) и можем предположить, что наши данные стационарны.

Кроме того, наш ADF намного меньше нашего (1%) значения достоверности (-3,43), поэтому у нас есть еще одно подтверждение того, что мы можем отвергнуть нулевую гипотезу.

Мы выбрали Auto-ARIMA, а не ARIMA, потому что найти идеальные значения для количества авторегрессоров (p), нескольких скользящих средних (q) и интегрирования (разница, d) в модели ARIMA сложно и требует много времени.

В Auto-ARIMA значения триплета (p, q, d) отображаются автоматически на основе наименьших оценок AIC и BIC, что оказывается более важным, поскольку лучше отражает модель.

Мы видим, что этот метод вполне корректно подогнал тестовые значения. Ниже приведены показатели эффективности метода Холта-Уинтерса.

Классификация моделей

Шаг 1: Мы разбиваем 45 магазинов на 30 и 15.

Шаг 2: Поиск лучших гиперпараметров с помощью метода GridsearchCV

Шаг 3: Модель с лучшими гиперпараметрами используется для прогнозирования набора тестов.

Первоначально мы рассчитали баллы r2 для тестового набора, состоящего из 15 случайных магазинов.

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

Из таблицы видно, что модель DecisionTreeRegressor имеет значительно высокий показатель R-квадрата для обучения, равный 0,996, что указывает на то, что модель может быть переобученной.

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

Таким образом, XGBoost, кажется, работает лучше всех моделей, поскольку имеет высокий показатель R-квадрата на тестовом наборе и относительно низкий риск переобучения.

Из таблицы видно, что все модели имеют относительно высокие показатели R-квадрата как для обучающей, так и для тестовой выборки. Однако модель DecisionTreeRegressor имеет значительно высокий показатель R-квадрата для обучения, равный 1,0, что указывает на то, что модель может быть переобучена для тестовых данных.

Модели RandomForestRegressor и XGBoost имеют относительно высокие показатели R-квадрата как для обучающих, так и для тестовых наборов и более низкий риск переобучения по сравнению с моделью DecisionTreeRegressor.

Таким образом, модель RandomForestRegressor кажется лучшей среди всех моделей, поскольку она имеет высокий показатель R-квадрата на тестовом наборе и относительно низкий риск переобучения.

Ссылки

Чима, Массачусетс, и Бхатнагар, А. (2021). Предиктивный анализ прогнозирования продаж с использованием моделей SARIMA: пример Walmart. Журнал розничной торговли и потребительских услуг, 58, 102307.

Файлдс, Р., Ма, Л., Коласса, С., и Хуанг, В. (2019). Прогнозирование спроса с помощью больших данных: обзор. Европейский журнал оперативных исследований, 267(3), 1019–1033.

Ли, Ю., Чжао, З., Лю, К., и Хуанг, Дж. (2020). Модель на основе нейронной сети для прогнозирования продаж Walmart. Доступ IEEE, 8, 63127–63135.

Лю, Х., и Лю, X. (2019). Прогнозирование продаж Walmart на уровне магазина: применение метода Холта-Уинтерса. Журнал розничной торговли и потребительских услуг, 48, 270–277.

Мяо, X., Чен, С., Лю, С., и Чжоу, Ю. (2020). Модель на основе больших данных для прогнозирования продаж Walmart. Сложность, 2020, 1–11.

Ян, К., и Лин, Дж. (2019). Прогнозирование продаж Walmart с использованием регрессии опорных векторов. Журнал розничной торговли и потребительских услуг, 50, 221–226.