Пост про спрос ч.2
В первой части я разобрал проблему с сезонностью внутри дни и закинул удочку про распределение Пуассона.
2. Чертов Пуассон - продолжение
Напомню, в чем основная проблема: Если за 1/4 дня продали 1 штуку товара и он кончился - это не означает, что за весь день продали бы 4 штуки. Из-за длинного хвоста распределния Пуассона эта 1 штука могла быть продана просто случайно
Чтобы это побороть можно использовать среднее спроса за последние несколько дней и ограничивать восстановленный спрос, скажем, средним +2 std. На практике работают и дугие эвристики - предлагаю вам их придумать самим:)
Общая формула спроса = MIN(sales / weigted_OSA; avg_demand + 2 std)
3. Корреляция спроса и OSA (доступность товаров на полке)
На уровне отдельного товара не сложно придумать логику восстановления спроса из продаж. Проблемы начинаются, когда мы ее применили на всех видах того же мяса по отдельности, а в сумме по категории получаем что-то странное. Например, если вы забудете про ту фишку с Пуассоном, то на уровне товара проблем может быть и не видно. Но на уровне категории в периоды со спадом досутпности товаров (OSA) во всей категории можно увидеть рост спроса = положительная корреляция спроса и OSA
Это крупная проблема, которая может ломать всю логику заказа товаров в больших масштабах. Поэтому проверяйте, что на уровне категорий нет корреляции наполняемости (OSA) и спроса. Корреляции не должно быть из определения спроса: Спрос - обьем продаж при 100% наполняемости
FAQ
Почему нельзя обучать прогноз спроса только на днях с наполняемоcтью (OSA) = 100%?
- Можно, но только осторожно. Такой подход неизбежно ведет к проблемам из-за пропусков во временном ряду: классические методы ARIMA / Prophet плохо с ними работают, агрегаты за N дней плохо считаются, можно накосячить с внутринедельной сезонностью
Почему нельзя просто восстанавливать спрос значением прошлого дня?
- Восстановить можно, но тогда вы потеряете "особую" динамику спроса. Товар ведь заканчивается не случайно: началось промо, праздник, настала жара, что-то еще. Без знания настоящего таргета спроса в прошлом будет довольно сложно выучить эти зависимости в модели
Правильно определить таргет (спрос) в прошлом - чуть ли не половина успеха в прогноза спроса на будущее. Так что будьте внимательны 😉
Канал @ml4value
#timeseries
Post #343
7.27K