Положите это в корзину: как настроить рекомендательную систему для предсказания покупок на основе предыдущего опыта

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

Рекомендательные системы стали неотъемлемой частью современного ритейла. Они помогают покупателям найти интересующие их товары и услуги, а также предсказывают, что они могут приобрести в будущем на основе их предыдущих покупок. Эти системы играют важную роль в улучшении пользовательского опыта, увеличении конверсии и повышении доходности компаний. В этой статье мы, команда «ДатаЛаб»* (ГК «Автомакон»), рассмотрим, как настроить рекомендательную систему для точного прогнозирования покупок на основе опыта покупателей, исследования закономерностей в покупках и других факторов.

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

*«ДатаЛаб» —  команда профессионалов в области аналитики, больших данных, разработки программного обеспечения, машинного обучения и искусственного интеллекта. 

Новый алгоритм на основе закономерностей

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

Рассмотрим, как работает алгоритм на примере. Предположим, что в магазине доступны следующие товары:

  • Бананы, Молоко, Помидоры, Хлеб, Шоколад, Яблоки, Яйца

И имеются следующие корзины:

  • Бананы, Хлеб, Яблоки, Яйца

  • Молоко, Хлеб, Яблоки

  • Молоко, Помидоры, Шоколад, Яблоки

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

Построим матрицу смежности графа – квадратную матрицу, где строки и колонки – это товары, а на пересечении – сколько раз товары покупались вместе:

Построив такую матрицу, мы можем решать сразу 2 задачи:

  1. Предсказание следующего товара в корзине;

  2. «Поиск сопутствующих товаров» или «С этим товаром часто покупают», что в данных терминах эквивалентно задаче предсказания следующего товара в корзине из одного товара.

Рассмотрим на примере корзины, состоящей из одного товара – Хлеба. Для каждого товара посчитаем вероятность его появления в качестве следующего товара:

Для удобства обозначим суммы пересечений всех товаров с Хлебом как Σ:

Получается, что Яблоки – это ТОП-1 сопутствующий товар, или наиболее вероятный следующий товар в корзине. В ТОП-4 входят также Бананы, Молоко, Яйца. На больших данных получается большее разнообразие.

Как определить, какой товар будет следующим? Для этого положим в нашу виртуальную корзину предсказанный товар – Яблоки, и снова посчитаем вероятности для следующего товара в корзине:

Получается, что следующим товаром в корзину пойдет Молоко. В итоге корзина состоит из следующих товаров: Хлеб, Яблоки, Яйца.

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

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

Источник: https://habr.com/ru/companies/automacon/articles/749050/


Интересные статьи

Интересные статьи

После публикации https://habr.com/ru/news/t/723638/ меня попросило несколько человек написать гайд для новичков, как же это всё запустить поиграться где-нибудь на арендованном сервере, если локальная ...
Работа по специальности: можно ли сломать систему?Как команда из сферы нефтепереработки открыла свой R&D стартап и что из этого получилось. Следует ли биться головой об лёд, пытаясь достигнуть усп...
В данной статье приведен скоуп информации о том, что взять за основу, чтобы развернуть свой домашний Linux-сервер и систему визуализации на нем, используя MQTT в качестве транспорта с о...
Всем привет! В этой статье я расскажу об инфраструктуре автоматизированного тестированния в большом проекте, а именно облачного провайдера Open Telekom Cloud.Open Telekom Cloud - самый крупный европей...
Привет, Хабровчане! В конце августа в OTUS запускается 2 мощных курса по обратной разработке кода (реверс-инжиниринг). В связи с этим приглашаем вас на День Открытых дверей, где Арту...