Python · прогноз доставки
Olist мог обещать доставку на три дня раньше
На заказах, которые я оставил для проверки, модель дала средний срок 17,91 дня вместо 20,94 дня у Olist. Опозданий тоже стало меньше: 3,44% вместо 4,50%.

Почему я это изучил
Olist задаёт дату доставки, которую покупатель видит при оформлении заказа. В данных за прошлые годы заказы часто приходили намного раньше этой даты. Но часть всё равно опаздывала. Я проверил, можно ли сократить обещанный срок без роста опозданий.
Что я сделал
Я работал примерно с 96 тысячами доставленных заказов. Сначала сравнил оценки заказов, пришедших раньше и позже срока. Затем обучил LightGBM предсказывать 90-й процентиль времени доставки, а не среднее. Сравнил модель со сроками Olist и простым расчётом по штатам продавца и покупателя. Для всех трёх вариантов использовал один тестовый период.
Что я выяснил
- Около двух третей заказов с опозданием больше пяти дней получили одну звезду. Ранние доставки оценивали выше, но после запаса в 7–16 дней оценки почти не росли. Дальнейшее увеличение срока уже не помогало.
- Модель p90 сократила средний обещанный срок примерно на три дня. Здесь p90 обозначает процентиль, который предсказывает модель. А 17,91 дня представляет среднее её прогнозов.
- Пункт назначения, расстояние и месяц покупки помогли модели. Простой расчёт по парам штатов не учитывал часть этих деталей и давал более длинные сроки.
Что я сделал бы дальше
Я бы сначала проверил новые даты на нескольких маршрутах. Перед запуском на всей площадке следил бы за опозданиями и отзывами покупателей.
Чего этот анализ не показывает
Это проверка на прошлых заказах, а не запуск в реальном магазине. Она не показывает, станут ли люди чаще покупать при более коротком сроке и сохранится ли результат на новых заказах.