GlowByte: почему волну мониторинга цен нельзя отдавать по частям

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

О том, как в методике GlowByte искать выбросы, кто принимает решение по каждому из них и как организовать выдачу очищенных данных, рассказывает Алексей Чванов, бизнес-архитектор GlowByte.
Это второй материал серии о подготовке цен конкурентов. В первом, «GlowByte: промоценник на полке еще не значит, что есть промо», я разбирал, как определить тип цены конкурента.

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

  • По марже конкурента. Вычисляется маржа конкурента в процентах от нашей себестоимости. Отсекаются цены конкурентов ниже порогового значения.
  • По дельте с нашей ценой. Вычисляется дельта в процентах между ценой конкурента и нашей ценой. Отсекаются цены, которые выходят за границы «наша цена плюс-минус дельта».
  • По отклонению от медианы в локации. Цена конкурента сравнивается с ценами других конкурентов в той же локации в той же волне мониторинга. Отсекаются цены, которые выходят за границы «медиана рынка плюс-минус дельта».
  • По отклонению от средней по сети конкурента в локации. Для сети конкурента в локации рассчитывается среднее по ценам точек этого конкурента. Если цена точки отличается от средней больше, чем на пороговое значение, цена отсекается.
  • По отклонению от средней по сети конкурента на истории. Среднее рассчитывается по ценам предыдущих мониторингов. Если цена точки в текущем мониторинге отличается от средней больше, чем на пороговое значение, цена отсекается.
Для первых двух подходов пороговые значения задаются в произвольном разрезе «категория и ценовой сегмент». Каждому подходу нужен подбор параметров отсечения, и подбирать их нужно на основе прогона заранее подготовленных данных с известными выбросами.
Статистические методы
Кроме бизнес-правил возможно применять статистические методы. С подобными задачами на практике справляются даже самые простые. Например, метод на основе межквартильных расстояний. При настройке системы на ваших данных коэффициенты, возможно, придется подобрать, по умолчанию они равны 1,5. Выбросом признается все, что выходит за границы этого диапазона.
Также на практике неплохо показал себя метод скорректированных интервалов. Он лучше подходит для асимметричных распределений. От предыдущего метода он отличается тем, что включает экспоненциальную функцию медианного коэффициента. Это позволяет учитывать степень и направление асимметрии при определении границ выбросов.

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

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

Поэтому в методике GlowByte закреплено простое правило. Потребителям отправляется вся провалидированная волна мониторинга целиком или не отправляется вообще. Такое требование хорошо реализуется, если работа с данными устроена по журналам, где каждая волна мониторинга загружается в свой журнал.
Что решает человек
Валидация подразумевает обязательную проверку пользователем значений, которые выявила система автоматической очистки. Для каждого выброса аналитик принимает одно из решений: оставить решение системы, подтвердить цену как корректную, отметить цену как ошибочную и исключить из анализа, вручную скорректировать цену или запросить дополнительную проверку у подрядчика по мониторингу цен. Для строк журнала предусмотрены статусы «принято», «отклонено», «скорректировано» и «повторный мониторинг». После решений база цен конкурентов обновляется целиком по журналу.

Для больших массивов данных в идеале нужна специализированная система с интуитивно понятным интерфейсом. Зрелых систем в виде готового коробочного решения на рынке практически нет. Как правило, торговые сети либо создают такие системы сами, либо используют шаблоны в Excel и Access.
Как сократить объем ручной проверки
Чтобы сократить объем ручной валидации, мы в GlowByte советуем заниматься качеством данных еще на этапе сбора.

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

2.Зафиксируйте пороговые значения в разрезе «категория и ценовой сегмент».

3.Убедитесь, что системы-потребители получают провалидированную волну мониторинга целиком.

4.Определите, кто из сотрудников отвечает за ручную валидацию подсвеченных цен.

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