datawiz.io corporate blog
Algorithms
Big Data
Mathematics
4 February 2015

Apriori: новое или хорошо забытое старое



Рекомендательные (они же рекомендационные) системы уже около 20 лет используются в e-commerce. Самые успешные примеры мы можем видеть у гигантов Amazon и Taobao. Но как же быть с offline ритейлом? Применимы ли к нему эти существующие рекомендательные системы? И есть ли альтернатива?

Перед командой Datawiz возникла задача: создать подобную рекомендательную систему для offline ритейла. Все, чем мы обладали — данные о клиентах, которыми располагают ритейлеры — различные программы лояльности.

Нестандартное решение нашлось сразу — старый, добрый и проверенный алгоритм Apriori. Хотите узнать как использовать парный анализ по-новому? Добро пожаловать под кат.

Давайте рассмотрим один из примеров проведения парного анализа по данным программы лояльности магазина электроники.

Пример схематичен, не обессудьте.

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

Это их покупки:




Стандартное решение: Если применить классический парный анализ к этим чекам, то алгоритм Apriori проанализирует каждую отдельную покупательскую корзину (каждый отдельный чек). Алгоритм вычислит все возможные пары в каждом чеке; вероятность и частоту покупки этих товаров вместе.

В нашем примере, Apriori обнаружит одну очевидную пару “Телевизор — Переходник”, с высокой вероятностью и частотой покупки. Но так ли это? Всего лишь одна пара?

Наше решение: алгоритм тот же — подход другой. Интересно?

ШАГ 1


Мы объединяем все чеки Игоря в один чек. Также поступаем и с чеками Саши и других клиентов из программы лояльности. Мы получаем количество чеков, равное количеству клиентов, участвующих в программе лояльности.



ШАГ 2


После того, как мы объединили чеки для каждого клиента, применяем к ним алгоритм Apriori. Алгоритм все так же выделяет пару “Телевизор-Переходник”, как часто покупаемую. Но при этом он выдает и другие пары с высокой вероятностью покупки, которые раньше были невидны: “Телевизор-Аудиосистема”, “Переходник-Аудиосистема” и т.д.

ШАГ 3


Определяем временное расстояние между событиями, то есть интервал между покупками найденных нами пар. Это значение будет усредняться. Для пар “Телевизор-Аудиосистема” и “Переходник-Аудиосистема” этот интервал будет 1 год 4 мес.( (1 год + 1 год 8 мес)/2).

Итак, мы обнаружили пары, “разбросанные” во времени (ну или так — распределенные по длительному промежутку времени).

Зачем нам это нужно и “что мы имеем с этого гуся”?:)


Применив алгоритм Apriori к данным по программе лояльности и обнаружив эти “разбросанные” пары, мы можем создать рекомендательную систему.

Например, каждому новому клиенту, который приобретает Телевизор или Переходник, примерно через 1 год 4 мес. можно делать выгодное предложение по приобретению Аудиосистемы.

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



Далее, выбор за инструментом директ-маркетинга: e-mail, sms, телефонный звонок — все средства хороши.

Применение парного анализа данных по программах лояльности для разных типов ритейла:


В ритейлe электроники парный анализ по программе лояльности лучше всего проводить не по товарах, а по категориях товаров. Так как происходит постоянное пополнение ассортимента, смена и расширение модельных рядов.

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

В food-ритейле парный анализ по программе лояльности также применим.
Здесь частота покупок очень высокая, но тем легче выявить паттерны (покупательские шаблоны) клиентов. Хотя и пар будет значительно больше.

Пример: клиент основательно “тарится” раз в неделю — в субботу, но посреди недели (вторник-среда) постоянно приходит за йогуртом, булочками и прочими “вкусностями”. Если ритейлер предложит этому клиенту хорошую скидку на йогурты-булочки в субботу, клиент с высокой вероятностью не устоит перед этим предложением, потому что он их и так бы купил. А к среде йогурт благополучно закончится и клиент придет в магазин снова, ведь это привычка:).

К чему это все?


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

Ну, и чем лучше вы знаете своих клиентов, и чем персонализированнее ваше общение с ними — тем выше лояльность. Ведь именно для этого и существуют программы лояльности, не так ли?

P.S. О парном анализе для ритейла у нас есть статья на Хабре. (Как с помощью алгоритма Apriori мы анализируем покупательские корзины и выявляем парные товары (ключевые и сопутствующие), и каково практическое применение такого анализа при размещении товаров в торговом зале).

Не забудьте также ознакомиться с еще одной нашей статьей “Кластеризация: расскажи мне, что ты покупаешь, и я скажу кто ты”.

Всем добра!

+4
5.6k 37
Comments 1
Top of the day