Добро пожаловать в первую часть серии моих блогов о системах рекомендаций. Следите за будущими публикациями в ближайшие дни. Сегодняшняя тема — изучение правил ассоциации.
Вы когда-нибудь заблудились в каталоге фильмов Netflix, а затем наткнулись на очень точное предложение фильма? Или, может быть, вы просматривали страницу на Amazon, и ваше внимание привлек рекомендованный продукт — то, о чем вы не подозревали до этого момента. Если вам когда-либо было интересно узнать о невидимой силе, которая направляет ваш опыт в Интернете, позвольте мне познакомить вас с захватывающим миром систем рекомендаций.
"Без больших данных вы слепы и глухи посреди автострады". — Джеффри Мур
В современном мире бесчисленного количества контента, продуктов и пользователей потребителям может быть сложно принимать решения о покупке. Точно так же платформы электронной коммерции и потокового вещания изо всех сил пытаются привлечь внимание аудитории соответствующим контентом и продуктами. Здесь на помощь приходят рекомендательные системы. Этим платформам необходимо фильтровать контент и продукты на более мелкие наборы, чтобы ориентироваться на соответствующую аудиторию и увеличивать доход за счет вовлечения пользователей, что приводит к большему потреблению контента и покупкам.
Есть несколько способов выполнить эту задачу.
Одним из методов является использование простых рекомендательных систем. Эти системы основаны на правилах и основаны на знаниях бизнеса или отрасли. Они используют простые методы, такие как демонстрация товаров с самым высоким рейтингом в категории, популярных товаров или бестселлеров за все время.
В современном мире ИИ реализованы сложные алгоритмы и системы. Давайте изучим их особенности:
Изучение правил ассоциации
Walmart и отношения между подгузниками и пивом
Давайте начнем с интригующего примера, который привлек внимание в сфере розничной торговли.
История с пивом и подгузником в Walmart, несмотря на то, что она может стать городской легендой, служит убедительным примером силы интеллектуального анализа данных и систем рекомендаций, которые компании используют для понимания и влияния на поведение потребителей. Согласно статье из The Register (Oates, 2006), история гласит, что Walmart, объединив данные своих карт лояльности и систем точек продаж, обнаружил неожиданную корреляцию: в пятницу после обеда молодые американцы, купившие подгузники, также склонялся к покупке пива. Это неожиданное открытие привело к тому, что Walmart разместил пиво рядом с подгузниками, что, как сообщается, увеличило продажи пива. Однако в статье также отмечается, что конкретика этой истории, циркулирующей с 1992 года, может быть не совсем точной и может быть скорее «застольной басней» или аллегорией.
С другой стороны, статья Forbes 1998 года (Forbes 1998), которая является одним из самых ранних источников этой истории, не содержит никаких дополнительных подробностей о корреляции пива и подгузников. Вместо этого он фокусируется на более широкой теме интеллектуального анализа данных и его потенциале для выявления неожиданных моделей поведения потребителей. Несмотря на целостность истории о пиве и подгузниках Walmart, она остается яркой иллюстрацией того, как интеллектуальный анализ данных может выявить удивительные идеи и принять стратегические решения в розничной торговле.
На первый взгляд это может показаться странным, но при ближайшем рассмотрении в этом есть смысл. Вечер пятницы часто ассоциируется с тем, что родители делают покупки после работы на выходных. Новоиспеченные родители могли покупать подгузники для своих детей, в то время как отцы, которым, вероятно, было поручено заботиться о ребенке, пока мама делала покупки, брали пиво для себя. Следовательно, эти два несвязанных продукта часто покупали вместе по пятницам. Но что более удивительно, эта история восходит к 1992 году (упоминается в статье Forbes в 1998 году), когда данных было меньше, и это не было «хайпом».
Многие компании используют изучение ассоциативных правил, чтобы определить вероятность того, что определенные продукты будут куплены вместе. Этот метод, также известный как «анализ потребительской корзины», широко используется в онлайн- и офлайн-покупках. Это помогает компаниям организовывать свои предложения продуктов в физических магазинах и онлайн-рынках. Кроме того, он используется в качестве системы рекомендаций для онлайн-касс. Фактически, большинство торговых площадок электронной коммерции используют этот метод в качестве фоновой системы рекомендаций.
Мы используем априорный алгоритм, чтобы увидеть частоту покупки каждого товара и разных товаров вместе.
Что такое априорный алгоритм и как он работает?
Анализ потребительской корзины является ценным методом моделирования для розничных продавцов, позволяющим выявить часто встречающиеся комбинации товаров в транзакциях. Для этого используется алгоритм Априори — хорошо известный метод выявления часто встречающихся наборов элементов в больших наборах данных. Прежде чем приступить к изучению работы алгоритма, важно понять три основных показателя.
Поддержка:
Он измеряет частоту или изобилие элемента/набора элементов в наборе данных.
Поддержка набора элементов (который может быть одним элементом или комбинацией элементов) рассчитывается следующим образом:
Поддержка (X, Y) = Частота (X, Y) / N
Support(X, Y) = количество транзакций, в которых появляются X и Y / общее количество транзакций
Например, если у нас есть 100 транзакций и набор элементов {Пиво, подгузники} появляется в 10 из них, поддержка для {Пиво, подгузники} будет:
10/100 = 0.1 or 10%.
В контексте анализа потребительской корзины поддержка дает представление о том, как часто товары покупаются вместе. Высокое значение поддержки указывает на то, что элементы в наборе элементов довольно часто появляются вместе в наборе данных. Низкое значение поддержки указывает на обратное.
Важно отметить, что, хотя поддержка может помочь определить часто встречающиеся наборы элементов, она не предоставляет информации о силе или направлении какой-либо связи между элементами в наборе элементов.
Вот где вступают в действие такие показатели, как уверенность и рост.
Уверенность:
Он измеряет вероятность того, что товар Y будет куплен при покупке товара X. Это измеряется долей транзакций с товаром X, в которых также фигурирует товар Y.
Достоверность правила X -> Y (где X и Y — наборы элементов) рассчитывается следующим образом:
Достоверность (X, Y) = Частота (X, Y) / Частота (X)
Уверенность (X, Y) = количество транзакций, в которых появляются X и Y / количество транзакций, в которых появляется X
Например, если у нас есть правило, согласно которому при покупке пива подгузники также покупаются {Пиво -> Подгузники}, и мы знаем, что поддержка {Пиво, подгузники} равна 0,1, а поддержка {Пиво} — 0.2, то достоверность правила {Пиво -> Подгузники} будет:
0.1 / 0.2 = 0.5 or 50%.
В контексте анализа потребительской корзины высокое значение достоверности для правила {X -> Y} будет означать, что существует высокая вероятность того, что Y будет куплено, когда будет куплено X. Однако важно отметить, что это не подразумевает причинно-следственную связь или даже сильную связь. Элементы могут иметь высокую достоверность, но низкий рост (о чем я объясню в следующем абзаце). Это может произойти, если Y является популярным товаром, который часто покупают, независимо от того, покупается X или нет.
Подъем:
Он измеряет, как часто предшествующее (покупка X) и последующее (покупка Y) правила X->Y встречаются вместе, чем мы могли бы ожидать, если бы они были статистически независимыми.
Подъем правила X -> Y (где X и Y — наборы элементов) рассчитывается следующим образом:
Подъем = Поддержка (X, Y) / (Поддержка (X) * Поддержка (Y))
Подъем = вероятность того, что X и Y произойдут вместе / вероятность того, что X и Y произойдут независимо
Проще говоря, рост — это мера вероятности того, что товар Y будет куплен, когда будет куплен товар X, принимая во внимание популярность товара Y. Другими словами, он говорит нам, насколько более вероятно, что товар Y будет куплен, когда куплен X. , по сравнению с тем, когда Y покупается случайным образом.
В контексте анализа потребительской корзины:
Если подъем больше 1, это позволяет нам узнать, в какой степени эти два события зависят друг от друга, и делает эти правила потенциально полезными для прогнозирования последствий в будущих наборах данных.
Если подъем меньше 1, товары вряд ли будут куплены вместе.
Если прирост равен 1, это говорит нам о том, что вероятность появления элемента Y не зависит от появления элемента X. Другими словами, товары X и Y, скорее всего, будут покупаться вместе так же часто, как и по отдельности.
Например, если подъем {Подгузники} -> {Пиво} равен 2, это означает, что вероятность покупки пива и подгузников вместе в 2 раза выше, чем вероятность покупки только пива.
Теперь, когда мы определили ключевые показатели, мы можем углубиться в рабочий процесс алгоритма Apriori.
Вот пошаговое объяснение того, как работает алгоритм Априори:
- Установить минимальную поддержку и достоверность. Алгоритм Apriori использует минимальный порог поддержки, чтобы исключить наборы элементов из рассмотрения. Это связано с тем, что наборы элементов с низкой поддержкой либо бесполезны, либо могут привести к ложным ассоциациям из-за случайной вероятности появления элементов вместе.
- Возьмите все транзакции. Алгоритм начинается с создания таблицы частоты всех элементов, которые встречаются во всех транзакциях.
- Создание списка отдельных элементов. Затем алгоритм создает список с этими элементами и их частотой появления во всех транзакциях.
- Выберите значимые элементы: элементы, частота появления которых меньше порогового значения (минимальной поддержки), исключаются. Это связано с тем, что если элемент не соответствует минимальному порогу поддержки, его комбинации с другими элементами также, вероятно, будут ниже порога.
- Формирование комбинаций. Затем алгоритм формирует возможные комбинации двухэлементных элементов из оставшихся элементов в списке.
- Исключать элементы с низкой частотой возникновения. Любые комбинации, не соответствующие минимальному порогу поддержки, исключаются.
- Повторите процесс. Этот итерационный процесс формирования комбинаций и исключения тех, которые встречаются редко, продолжается до тех пор, пока не перестанут формироваться дальнейшие комбинации в рамках ограничений минимальной поддержки.
- Правила формы. Когда все комбинации найдены, формируются правила ассоциации.
Рассмотрим простой пример:
Предположим, у нас есть небольшой продуктовый магазин и у нас есть запись из 5 транзакций:
- Хлеб, Молоко
- Хлеб, Подгузник, Пиво, Яйца
- Молоко, подгузник, пиво, кока-кола
- Хлеб, Молоко, Подгузник, Пиво
- Хлеб, Молоко, Подгузник, Кола
Мы хотим применить априорный алгоритм, чтобы определить, какие товары часто покупаются вместе. Допустим, мы установили нашу минимальную поддержку на уровне 60 % (т. е. элемент должен быть в 60 % всех транзакций, чтобы считаться значительным), а нашу минимальную достоверность на уровне 80 %.
- Сначала мы создаем частотную таблицу всех элементов. Затем мы исключаем те элементы, которые не соответствуют нашей минимальной поддержке в 60%. При этом все элементы соответствуют минимальной поддержке.
- Далее мы создаем список возможных комбинаций двухэлементных элементов: {Хлеб, Молоко}, {Хлеб, Подгузник}, {Хлеб, Пиво}, {Хлеб, Яйца}, {Хлеб, Кола}, {Молоко, Подгузник}, {Молоко, Пиво}, {Молоко, Яйца}, {Молоко, Кола}, {Памперс, Пиво}, {Памперс, Яйца}, {Памперс, Кола}, {Пиво, Яйца}, {Пиво, Кола}, {Яйца , кока-кола}.
- Затем мы исключаем комбинации, которые не соответствуют нашей минимальной поддержке в 60%. Остальные комбинации: {Хлеб, Молоко}, {Хлеб, Подгузник}, {Молоко, Подгузник}, {Хлеб, Пиво}, {Молоко, Пиво}, {Подгузник, Пиво}, {Хлеб, Кола}, {Молоко, Кола}, {Подгузник, Кола}.
- Мы продолжаем этот процесс для комбинаций элементов из трех элементов до тех пор, пока не будут сформированы дальнейшие комбинации, отвечающие минимальной поддержке.
- Наконец, мы формируем правила из оставшихся комбинаций элементов. Например, из комбинации {Хлеб, Молоко} мы можем образовать два правила: «Если Хлеб, то Молоко» и «Если Молоко, то Хлеб». Мы рассчитываем достоверность этих правил и оставляем только те, которые соответствуют нашей минимальной достоверности 80%.
Алгоритм Apriori помогает идентифицировать часто покупаемые товары, которые сочетаются друг с другом. Эти данные можно использовать при принятии решений о продакт-плейсменте, рекламных акциях и многом другом.
Итак, у вас есть краткий обзор систем рекомендаций и того, как они работают. От простых рекомендательных систем до изучения правил ассоциации — мы изучили множество методов, которые предприятия и организации используют для лучшего понимания своих клиентов и предоставления им персонализированных рекомендаций.
В следующих статьях я более подробно расскажу о рекомендациях на основе контента и других системах совместной фильтрации. Оставайтесь с нами, чтобы узнать больше об увлекательном мире рекомендательных систем!
Использованная литература:
Форбс. (1998). Заблуждение интеллектуального анализа данных. Форбс. Получено с https://www.forbes.com/forbes/1998/0406/6107128a.html?sh=6fffeff86260
Оутс, Дж. (2006). Пиво и подгузники? Разоблачение розничного мифа. Регистр. Получено с https://www.theregister.com/2006/08/15/beer_diapers/
Intellipaat. (н.д.). Априорный алгоритм в науке о данных. Получено 26 июля 2023 г. с https://intellipaat.com/blog/data-science-apriori-algorithm/?US#3.