О чем речь? С рекомендательными системами сталкивался каждый, кто хоть раз пользовался крупным маркетплейсом или онлайн-кинотеатром. Товары, помеченные как рекомендованные, и есть результат работы такой опции.
Как устроена? Рекомендательная система может быть организована несколькими способами: с учетом оценок пользователей, наобум или смешанным образом. Настроить ее может не только крупный бизнес, но и небольшие интернет-магазины.
В статье рассказывается:
- Суть рекомендательной системы
- Как работает рекомендательная система
- Типы рекомендательных систем
- Характеристики рекомендательной системы
- Стратегии рекомендательных систем
- Алгоритмы рекомендательных систем
- Пример создания рекомендательной системы
- Оценка рекомендательной системы
- Мифы про рекомендательные системы
-
Чек-лист: Как добиваться своих целей в переговорах с клиентамиСкачать бесплатно
Суть рекомендательной системы
Впервые о рекомендательных системах заговорили в 1990-х. Уже в 2000-е годы они стали важным элементом е-коммерции, ведущие мировые бренды быстро ощутили экономическую выгоду от использования этого инструмента. Важнейшие его плюсы:
-
Увеличение продаж.
-
Сохранение лояльности аудитории и снижение ее оттока.
-
Рост прибыли и средней стоимости покупки.
Опыт первого использования умных рекомендаций показал, что этот инструмент имеет обширные перспективы не только в продажах, но и во многих других веб-сервисах. Первой систему активно начала использовать стриминговая платформа Netflix. Эффект был следующий:
-
Клиенты, получая персональные рекомендации, продолжали пользоваться сервисом и не искали контент на других ресурсах.
-
Выросли объемы продаж и просмотров.
Опыт Netflix привлек внимание других крупных сервисов. Сегодня умные рекомендации используются практически на всех солидных интернет-площадках, будь то электронный магазин или онлайн-кинотеатр. Рекомендательные системы не только помогают удержать пользователя и увеличить стоимость среднего чека, но и позволяют непосредственно формировать предпочтения клиентов. Многим из нас эта ситуация знакома. Разберём конкретный пример.
Допустим, что вы решили заняться бодибилдингом, однако у вас нет ни знаний о системах тренировок, ни навыков обращения со спортивным инвентарём. Если начать искать в социальных сетях сообщества, посвященные данной тематике, то в течение следующих нескольких дней пользователь будет получать рекомендации других групп и пользователей, рассказывающих о строительстве тела, из которых и будут черпаться данные. Таким образом, эта система формирует ограниченное информационное пространство для каждого потребителя.
Формирование умных рекомендаций – непростая задача с точки зрения анализа данных и технической реализации. Она решается на основе ряда более простых математических алгоритмов. Чтобы лучше понять, как создаются системы рекомендаций, обратимся к типичному маркетплейсу. Если человек просматривает информацию о товаре, то в соседнем меню ему будут предложены еще несколько продуктов. По меньшей мере, некоторые из них вызывают интерес у пользователя и вполне соответствуют его предпочтениям.
Как работает рекомендательная система
Экспертами отмечается, что разработанная Netflix рекомендательная система Cinematch – одна из наиболее эффективных. Компания держит в секрете нюансы ее работы, однако общие принципы вполне понятны. При создании аккаунта на сервисе пользователю сразу предлагается отметить несколько любимых фильмов. На основе этой выборки ему будут предложены ленты для просмотра. В дальнейшем можно отмечать просмотренный контент сердечками или дизлайками, алгоритм учтет их при формировании списка рекомендаций.
Умные предложения Netflix формируются на основе множества параметров: в какое время пользователь заходит на сервис, какие он фильмы смотрел, как долго, где он находился, каков его пол, возраст, иные данные. Все картины на Netflix до того, как они будут показаны посетителю, сначала анализируются специальными сотрудниками, которые составляют описание контента, добавляют в него необходимые отметки, теги. Такая подготовка позволяет с помощью поиска находить нужные киноленты даже по весьма размытым запросам, например, «Фильм про войну в Руанде».
Читайте также!
Netflix обрабатывает информацию о пользователях и контенте, чтобы с помощью специальных математических алгоритмов выбрать значимую информацию и предложить действительно интересные ленты. При этом учитывается не только содержание просмотренного ранее контента, но и то, когда он был просмотрен. Чем новее информация, тем больший вес она имеет в алгоритме. Вместе с тем может быть предложен материал, соответствующий знаменательным датам той или иной страны, например, фильмы, актуальные для Дня независимости в США.
Cinematch анализирует как прямо указанную информацию, так и косвенные данные. Если после просмотра фильма пользователь добавил его в избранное, это явно говорит о положительной оценке и это будет учтено при формировании рекомендаций. Но если пользователь за один день просмотрел целый сезон какого-то сериала, не обозначив его как любимый, алгоритм учтет этот факт аналогичным образом.
Также Cinematch обрабатывает данные о группах клиентов. Разумеется, они формируются на основе определённых общих признаков для всех пользователей, включенных в сегменты, которых на Netflix насчитывается более 2 000. Соответственно, на содержание рекомендаций влияют предпочтения не только данного пользователя, но и других клиентов, входящих в его группу.
Показательно то, что в интернете можно без труда найти ресурсы для бесплатного просмотра фильмов, при этом на Netflix только за 2020 год платный аккаунт зарегистрировали 200 млн пользователей. Cinematch сыграл в этом далеко не самую последнюю роль.
Типы рекомендательных систем
Различают четыре системы умных рекомендаций. Остановимся на каждой из них более подробно.
Коллаборативная фильтрация (collaborative filtering)
Рекомендации пользователю формируются на основе как его собственных оценок, так и по опыту других пользователей, имеющих похожие предпочтения.
Разберем простейший пример. Иван и Василий болеют за хоккейный клуб «Динамо». Также у них есть и другое общее увлечение – активный туристический отдых. А еще они оба предпочитают музыку в стиле хард-рок. Также есть пользователь Семен, он тоже пристально следит за «Динамо» и обожает тяжелую музыку. Сведений о том, как он проводит свой досуг, не имеется, но поскольку два из трех его интересов совпадают с интересами Ивана и Василия, то алгоритм всем троим предложит товары для туризма.
Этот подход реализован на многих веб-сервисах, например, Ласт.фм, Имхонет. Так можно с высокой степенью вероятности определить предпочтения пользователей, разделяющих определённый интерес. Однако недостатком этого способа рекомендаций является отсутствие исходных данных о новых пользователях, поэтому сформировать для них актуальные рекомендации будет трудно, что вызовет немалый процент отказов.
Основанные на контенте (content-based)
Также широко используемый подход. Он основан на привлечении любой доступной информации о клиенте: предпочитаемый бренд, жанр, размер, функции товара и т. д. Стадия знакомства с пользователем здесь пропускается. Этот алгоритм часто применяют в онлайн-кинотеатрах, магазинах. Так, сервис IVI формирует рекомендации на основе информации о жанрах, странах, в которых сняты фильмы, актёрском составе и т. д.
Важным достоинством этого алгоритма является способность в большинстве случаев предложить пользователю более или менее подходящий контент. Однако в первое время использования сервиса могут быть ошибки, так как информация о клиенте минимальна.
Основанные на знаниях (knowledge-based)
Здесь задействуются данные в какой-либо сфере: о пользователях, товарах, покупках и т. д. – о любых сведениях, которые помогут сформировать рекомендации. Предпочтения других пользователей здесь не учитываются. Различают case-based, demographic-based, utility-based, critique-based, whatever-you-want-based и т. д. Число оснований, которое используют для составления рейтинга, ограничивается лишь фантазией разработчиков платформы. Использован может быть любой признак, в зависимости от специфики продукта и целевой аудитории.
Так, онлайн-магазин Apple reStore рекомендует потенциальным покупателям товары на основе истории просмотра продукции. При покупке игровой приставки PS4 клиенту также предлагается приобрести шлем виртуальной реальности, популярные игры, другие аксессуары. Так компании удается ощутимо увеличить чек с одного клиента.
Системы рекомендаций отличаются высокой точностью предсказания действительных интересов пользователя, формируя по-настоящему полезные советы. Алгоритм, используемый «М.Видео», может порекомендовать при покупке телевизора продвинутую стереосистему, но никак не газовую плиту. Недостатком системы является необходимость большого объема исходной информации и трудности ее получения и систематизации. Однако полученный результат окупает и вложения, и время.
Гибридные (hybrid)
Пожалуй, в любой сфере деятельности находятся энтузиасты, пытающиеся из нескольких элементов синтезировать один инструмент, объединяющий в себе достоинства и лишенный недостатков своих прототипов. Разные виды рекомендательных систем в этом смысле – не исключение. Комбинированные алгоритмы дают возможность использовать преимущества различных подходов.
Гибридные схемы используют обычно крупные компании, поскольку реализация подобных систем – исключительно сложная техническая задача, требующая высочайшей квалификации маркетологов и программистов.
Соответственно, какого-то универсального рецепта здесь быть не может. Возможности системы, ее эффективность зависят от навыков разработчиков и поставленных перед ними задач. Если вспомнить тот же Netflix, то используемая им рекомендательная система состоит из 27 различных алгоритмов.
Чаще всего используют несколько способов комбинирования:
-
Раздельное использование коллаборативных и контентных алгоритмов, данные от которых затем объединяются.
-
Имплементация отдельных контентных правил в коллаборативный алгоритм.
-
Имплементация отдельных коллаборативных элементов в контентный подход.
-
Создание нового алгоритма, использующего в равной степени элементы обоих, представленных выше.
Как правило, описанные подходы составляют основу, в которую внедряются иные элементы в зависимости от задач, сферы деятельности. Аналогично knowledge-based-алгоритму, основной минус гибридных подходов – сложность практической реализации.
Характеристики рекомендательной системы
Ключевая функция рекомендательной системы – сообщение пользователю о товаре, способном заинтересовать его непосредственно в данный момент. Клиент получает ценные сведения, а сервис зарабатывает на оказании качественных услуг. Причем сервис подразумевает не только непосредственную продажу продукта. Доход от услуг может составлять комиссионное вознаграждение, а также выражаться в росте лояльности клиентов, которая поможет удержать потребителя и побудить его вновь воспользоваться ресурсом.
Структура бизнеса определяет и функции, которые возлагаются на рекомендательные системы. Например, для TripAdvisor они составляют основу бизнес-модели, а в типичном онлайн-магазине они помогают улучшить пользовательский контент и упростить поиск в каталоге. Индивидуализация интернет-маркетинга стала выраженной тенденцией за последние 10 лет. В McKinsey подсчитали, что Amazon получает до 35 % прибыли за счёт товаров и услуг, предложенных пользователю в рекомендациях. Для Netflix это показатель еще более впечатляющий – 85 %. Важнейшая задача, решаемая с помощью рекомендательных систем – достижение максимальной удовлетворённости клиента.
Остановимся на основных особенностях рекомендательных систем, которые присущи каждой:
-
Объект рекомендации. Это те товары, услуги, материалы, которые предлагаются. В обобщённом виде – это любой контент, способный привлечь внимание пользователя. Для Wildberries, Яндекс.Маркет это – товары, для Spotify – аудиоконтент, для Youtube – выбранные алгоритмом видеоролики, для ресурсов вроде ТАСС, Интерфакс – новости и статьи. Продолжать можно до бесконечности.
-
Задача рекомендации. То, для чего пользователю предоставляется соответствующий контент: покупка, сбор информации, сообщение каких-то сведений и т. д.
-
Контекст рекомендации. То действие, при выполнении которого потребитель получает рекомендации, например, просмотр фильма, чтение новостей, изучение описания товара или услуги и т. д.
-
Источник рекомендации. Субъект, от которого исходят данные. Это может быть сообщество, другие пользователи (по их отзывам формируется, например, рейтинг заведения в TripAdvisor).
-
Степень индивидуализации. Алгоритм может сформировать одинаковые рекомендации для всех пользователей, находящихся в определённой локации, принадлежащих к некоторой возрастной группе или полу, но без учета данных о клиенте. Более совершенные уже составляют предложения, основанные на информации о потребителе: его истории просмотров и покупок, содержании избранного – любых данных, которые прямо или косвенно позволяют судить о его предпочтениях и потребностях.
-
Прозрачность. Пользователь с большим доверием будет относится к рекомендациям, если он понимает, каким образом они составлены. Это позволяет избежать встречи с системами, в которых товары показаны только потому, что они имеют более высокую (т. е. выгодную для продавца) стоимость.
Качественно разработанная рекомендательная схема должна обнаруживать признаки махинаций (искусственную накрутку рейтинга, заказные отзывы и др.). Иногда манипуляции неумышленные. Если в прокат выходит новая часть кинофраншизы, в первые недели ее зрители – фанаты, объективность которых низка, и оценка может оказаться гораздо выше, чем она будет через пару месяцев.
-
Формат рекомендации. Область рабочего пространства, в котором размещаются предложения. Это может быть лента товаров, поп-ап-окно, автоматически составленный плейлист, рекомендованный для прослушивания, и др.
Читайте также!
Стратегии рекомендательных систем
Рекомендации позволяют получать важную информацию, которую можно использовать для повышения удовлетворённости клиента. Пользователю же они предоставляют дополнительные блага, повышая его лояльность к компании.
Стратегии, реализуемые в системах рекомендаций, можно разделить на несколько видов:
-
Глобальные (global) рекомендательные подходы.
-
Контекстные (contextual).
-
Персонализированные (personalized) рекомендательные подходы.
Эти названия говорят сами за себя, позволяя понять, каким продуктам лучше подходит каждая из указанных категорий. Определяя наиболее подходящую стратегию, маркетолог использует как данные о пользователе, так и информацию о товаре или услуге, различные метрики, на основании которых разрабатывается долгосрочная политика рекомендательных систем.
-
Глобальные (global) стратегии
Наиболее простые в реализации. Клиенту демонстрируются товары и услуги, которые пользуются наибольшим спросом, соответствуют модным трендам.
-
Контекстные (contextual) стратегии
За основу берется информация о самом товаре (product context) – технические особенности, назначение, популярность у определённой аудитории или ее сегментов. Также учитывается то, с какими изделиями и как часто пользователи приобретают рекомендуемый продукт.
-
Персонализированные (personalized) стратегии
Наиболее продвинутые, но и наиболее сложные. Здесь используется не только product context, но и данные о самом клиенте (user data), его предпочтения, активности, история покупок, сохраненные, но не купленные товары и т. д. Для эффективной реализации такой стратегии маркетологу нужны данные о поведении пользователя (behavioral data), его действиях не только на данном ресурсе, но и на других платформах.
Для того чтобы составить рекомендации для одного клиента, может использоваться массив информации обо всех остальных пользователях ресурса, имеющих сходные поведенческие особенности. Это характерно, в частности, для стратегии совместной фильтрации («Collaborative Filtering» strategy). Может использоваться алгоритм по сходствам (affinity-based recommendations), который формируется по информации в пользовательских профилях. Сопоставляя аналогии, система подбирает рекомендации, соответствующие явным приоритетам клиента.
Глобальные стратегии подходят для применения в отношении любого пользователя, независимо от того, новый это посетитель или давний, лоялен он к бренду или нет. Если же задействуются персонализированные и контекстуальные стратегии, то для их эффективности потребуется информация о клиенте, в частности, о сходствах его предпочтений (персонализированные стратегии) или о его местонахождении (контекстуальные).
Чем полнее учет данных о пользователе в рекомендациях, тем выше их эффективность. Достаточно объемный массив информации формируется в отношении постоянных клиентов, поэтому для них нет смысла использовать глобальную стратегию, нужно задействовать контекстные и персонализированные, т. к. они позволяют максимально учесть персональные сведения. Эффективность повышается при комбинировании нескольких стратегий.
Алгоритмы рекомендательных систем
-
Корреляция Пирсона
Благодаря этому алгоритму можно определить сходные черты нескольких клиентов. Для этого используется анализ линейной зависимости по двум признакам. Нужно учитывать, что этот подход не годится для исследования группы пользователей.
-
Принцип совместной фильтрации
Наряду с жесткой кластеризацией используется и этот принцип, также учитывающий предпочтения и действия пользователей, но имеющий более сложный алгоритм. К сожалению, в нем есть как минимум два недостатка. Первый касается новых пользователей, для которых в связи с отсутствием достаточной информации сложно подобрать актуальные предложения. Второй – это холодный старт: малое число новейших продуктов в системах рекомендаций.
-
Кластеризация
В основе данного подхода лежит определение сходства между пользователями по заданному пространству признаков. Эти свойства различны для каждого ресурса, в зависимости от контента. Для интернет-магазина это могут быть предметы одежды, для аудиосервиса – музыкальные композиции. При совпадении или сходстве признаков нескольких пользователей, эти клиенты группируются в кластеры.
-
Принцип фильтрации содержимого
Метод, симметричный совместной фильтрации. При ней используется информация о том, что понравилось другим пользователям. А фильтрация содержимого предполагает применение данных о собственных отметках потребителя. Недостатками этого подхода являются холодный старт и стандартность рекомендаций.
Пример создания рекомендательной системы
Для примера мы используем в Yandex DataSphere рекомендательный алгоритм, созданный компанией GlowByte, которая является лидером отрасли на российском рынке BI и Big Data. Персональные предложения для пользователя формируются на основе как контекста ситуации, так и ранее сделанных покупок. Алгоритм подбирает ряд рекомендаций на основе информации о товарах в корзине, датах приобретения, личной истории активности, иных сведений. Этот способ можно использовать в розничных продажах и организациях общепита. Размер компании, ее оборот роли не играют, анализируется лишь материал о пользователе.
В инструкции применяются синтетические сведения, также будут нужны данные о товарах, покупателях, совершенных ими приобретениях. Код для рекомендательной системы можно получить из ноутбука от GlowByte. В нем присутствуют выборки сведений, машинное обучение, формирование рекомендаций.
Потребуется учётная запись в Yandex Cloud, а также адаптированный интерфейс командной строки.
Действие 1: Создание проекта в DataSphere и добавление информации
Сперва нужно создать новый проект в Yandex DataSphere и данные. Потребуются: история корзины, свойства товаров, описание мест покупки, а также объективная информация (погода, экономическая ситуация).
Для создания нового проекта необходимо войти в консоль Yandex Cloud. Затем перейти в рабочую директорию, кликнуть «Создать ресурс» и отметить DataSphere. В появившемся диалоговом окне необходимо указать наименование и характеристики проекта. Кроме того, можно создать новую сервисную учетную запись, с помощью которой в дальнейшем будет выполняться обращение к ресурсам Yandex Cloud посредством API.
Далее необходимо открыть проект и добавить к нему сведения. В рассматриваемой ситуации таковыми являются CSV-файлы, в которых указана необходимая информация. Нужно подгрузить собственные, синтетические или реальные, данные. Также может возникнуть необходимость указать время совершения покупок, их перечень и характеристики, пол и возраст пользователей.
Действие 2: Подготовка данных для обучения модели
В основе нашей рекомендательной системы будет находиться задача классификации, определение, относится ли тот или иной товар к соответствующей группе или нет. Обучение модели потребует указания двух видов данных, полученных из истории корзин. Положительная запись подразумевает произвольный товар, удалённый из корзины, а отрицательная – ни разу не включавшийся в нее. Благодаря такому подходу можно разграничить продукты, которые нужно или не надо включать в корзину. Далее нужно наполнить каждую запись контекстом: описанием торговых точек, временем покупок, внешними свойствами. Код этих действий в процессе формирования датасета для обучения модели содержится в вышеуказанном ноутбуке.
В DataSphere применяется стандартный интерфейс Jupyter Notebook. GlowByte. Как правило, для подготовки информации и обучения могут использоваться разные ноутбуки, в демонстрационном устройстве эти действия выполняются совместно. Создавая рекомендательную систему, пользователь может работать с любым из указанных вариантов. В данной инструкции применяются готовые файлы ноутбуков.
Далее нужно сформировать для каждого товара векторные представления – совокупность характеристик, соответствующих тому, как товар представлен в корзинах. Для этого мы используем метод SVD-разложения, который широко примеряется в самых различных сферах машинного обучения. Составим матрицу, в которой строка – это корзина, столбец – товар, включенный в нее. Посредством SVD-разложения матрица раскладывается на три элемента. Для этого высчитывается косинусная мера между векторным представлением заданного товара и средним значением вектора корзины.
Это позволит установить степень сходства заданного товара и продуктов из конкретной корзины.
Для формирования персональных рекомендаций для пользователей применим вычисляемые RFM-агрегаты для каждого изделия: recency (давность приобретения товара), frequency (частота его покупки), monetary (расходы, сделанные каждым пользователем на соответствующий товар). Рассчитанные агрегаты выполняют роль предикторов прогнозной модели.
На выходе мы получаем датасет, который будет использоваться для решения задачи.
Действие 3: Обучение модели
Завершив подготовку данных, нужно выбрать методы обучения. По его окончании модель сможет ранжировать товары, исходя из их возможной относимости к корзине. На основе сформированных рангов и бизнес-метрик составляются рекомендации. Эксперты GlowByte установили, что самым подходящим в данной ситуации является принцип градиентного бустинга, который широко используется для составления классификаций и регрессий. Подойдут также всевозможные нейронные сети, если используемые данные содержат зависимости, которые можно с успехом применить в них и для глубокого обучения.
Далее запускаем обучение. По его окончании можно оценить значимость выбранных предикторов.
Следующий шаг – оценка качества сформированных моделей. Эксперты GlowByte утверждают, что ее удобнее проводить в два действия. Первое – оценка точности предсказания относимости товара к корзине. Второе – тестирование результата практического использования алгоритма. Первое действие в рассматриваемой ситуации выполняется на основе исторических данных посредством метрик оценки способа классификации. Второе – с помощью детального проектирования и реализации A/B-теста.
Действие 4: Деплой модели и анализ входящих запросов
Для предоставления стороннего доступа к рекомендательной системе эксперты GlowByte включили главные классы с методами, составляющими предложения, в собственный ноутбук. Он имеет базовый класс с рекомендациями, класс с вариантами для клиентов с историей или неизвестных пользователей. Также в него входит код для анализа запросов.
Демонстрационный ноутбук оснащен классом для составления рекомендаций, анализ внешних обращений можно составить своими силами, опираясь на код, представленный в этой статье. Обращение включает в себя метку времени и корзину, собранную клиентом, иные свойства.
Необходимо выполнить код ноутбука и закрепить чек-пойнт с деплоем. Эта операция выполняется в разделе Checkpoints, где нужно указать нужный, нажать Pin и озаглавить его как Deploy.
Указываем нужную ячейку и нажимаем в контекстном меню Deploy selected cell. Также называем ее Deploy, указываем чек-пойнт, ранее сохранённый для нее, и входные и выходные значения.
Убедимся, что ячейка активна. Заходим в меню Nodes, указываем ячейку Deploy и копируем ID – его нужно вписать в запрос.
Далее создается сторонний запрос. В этом поможет сервис REQBIN, также можно задействовать любой HTTP-клиент, способный транслировать параметризованные запросы. Подойдет Postman, расширение для браузера или curl.
Введем URL-адрес, используемый для POST-запроса:
https://datasphere.api.cloud.yandex.net/datasphere/v1/nodes/<node_id>:execute
(Вместо <node_id> указываем скопированный ID из ячейки Deploy).
Для авторизации используется IAM-токен. Его можно получить при помощи CLI Yandex Cloud. Токен указывается в меню Authorization. В меню контента заходим в JSON и прописываем следующие параметры:
{
"folder_id",
"b1XXXXXXXXXXXXXXi",
"input": {
"input_data": {
"user_id": 290000000,
"created_at": "2021-04-24T18-25:43.511Z",
"store_id": 742,
"slot_num": 5,
"session_id": "qwe-123-asd",
"items": [{
"name": "dish_1",
"code": 13,
},
{
"name": "dish_2",
"code": 77,
},
{
"name": "dish_3",
"code": 39,
}
]
}
}
}
Для folder_id в данном случае использован ID директории, где находится проект в DataSphere. Input_data определяется строением и содержанием данных и включает перечень из товаров, находившихся в корзине прежде. Также подойдет структура, аналогичная указанной в ноутбуке Deploy.
Кликаем Send в REQBIN, на выходе получаем JSON с данными, подобранными рекомендательной системой. В них входят 5 товаров, выбранных в соответствии с составленной клиентом корзиной. Здесь это товары с id 4, 5, 6, 62 и 58.
Таким образом, алгоритм обрабатывает сторонние запросы и готов к использованию. Хотя в рассмотренной инструкции для системы применяется синтетический датасет, она пригодна и для анализа реальных данных. Нейронные сети и ML-алгоритмы не рассмотрены, но использование градиентного бустинга дает возможность продуктивно классифицировать данные для формирования системы. Создать аналогичную под силу любому предприятию, независимо от его масштаба.
Оценка рекомендательной системы
Для всех методов машинного обучения, включая рекомендательные системы, необходимо оценивать эффективность работы, чтобы выбрать оптимальную методику. Способы для этого можно разделить на использующие: четкий набор показателей; человеческие суждения и степень удовлетворённости.
Оценка с помощью метрик
При использовании в модели чисел, в частности, прогнозов рейтинга, вероятности совпадения, оценить эффективность рекомендательной системы можно стандартным способом – на основе измерения количества ошибок. Подойдёт, например, среднеквадратичная ошибка (MSE). Модель использует для обучения некоторые взаимодействия, а остальные идут на тестирование.
Для модели, основанной на числовых значениях, допустимо использовать их преобразование в двоичный вид при помощи стандартного метода определения пороговых значений. Результаты больше него являются положительными, меньше – отрицательными. Так как совокупность данных о предыдущих взаимодействиях пользовательского элемента является двоичной, точность и повторный вызов можно измерить и для взаимодействий, не задействованных в обучении.
Если же рассматривать систему рекомендаций, использующую не числовые значения, а возвращающую лишь перечень рекомендаций (клиент-клиент, элемент-элемент на базе метода knn), то точность можно вычислить, используя оценку доли рекомендуемых элементов, с которыми пользователь не взаимодействовал. В этом случае следует принимать в расчёт лишь включенные в тестовую совокупность сведений, по которым имеются отзывы клиентов.
Оценка на основе человека
Создавая систему рекомендаций, необходимо получить модель, которая не только способна давать актуальные рекомендации, но и обладает иными полезными характеристиками, в частности, разнообразием и предсказуемостью рекомендаций.
Разумеется, никто не хочет, чтобы пользователь столкнулся с неразрешимой задачей в области ограничения информации. Термин «случайность» нередко применяют для характеристики тенденции, присущей модели или создающей такую площадку лимитов. Serendipity, для оценки которой можно использовать расчет расстояния между рекомендуемыми позициями, не может быть чрезмерно низкой, поскольку в этом случае возникнут зоны ограничения. В то же время она не может быть чрезмерно высокой, так как это значит, что интересы пользователей не учитываются в необходимой степени.
Чтобы предложенный потребителю выбор получился достаточно разнообразным, в него нужно включить как соответствующие его предпочтениям товары, так и не слишком похожие друг на друга. Так, любителям франшизы «Форсаж» придутся по вкусу все части – от первой до восьмой. Но вместо того, чтобы включить в рекомендации к первой части остальные 7, лучше будет посоветовать пользователю наряду с «Форсажем» фильмы «Угнать за 60 секунд и «Гонщик».
Важную роль в формировании у пользователя доверия к системе рекомендаций является ее объяснимость. Опытным путем доказано: если клиенту не ясно, почему ему советуются те или иные товары, авторитет системы падает. В этой связи полезно к предлагаемым товарам добавлять краткое пояснение: «Вместе с данным товаром также часто приобретают…», «Возможно, вас также заинтересует данный товар...».
Нужно учитывать, что, наряду со сложностью оценки категорий разнообразия и объяснимости, не менее тяжело определить эффективность рекомендации, не принадлежащей к набору данных для тестирования. Например, как выяснить, актуально ли предложение, прежде чем предоставить его клиенту? Это побуждает опробовать рекомендательную модель на практике. Так как основной задачей системы рекомендаций является побуждение к совершению заданного действия (переход по ссылке, прослушивание трека и др.), по выполнению его пользователем делается вывод о ее эффективности. В частности, может применяться A/B-тестирование, либо только выборка пользователей, но такие процессы нуждаются в достаточном уровне доверия к модели.
Мифы про рекомендательные системы
Сегодня наибольшее распространение такие алгоритмы имеют в практике крупных корпораций. Это объясняется тем, что разработка рекомендательной системы, основанной на искусственном интеллекте, требует значительных финансовых вложений, которые по карману далеко не всем. Кроме того, данные системы уже успели обрасти многочисленными мифами, далеко не все из которых соответствуют действительности. Разберем наиболее распространённые заблуждения:
-
Необходим анализ гигантского массива сведений.
Иногда разработка рекомендательной системы действительно нуждается в анализе огромного количества информации. Однако чаще всего эта задача вполне выполнима, если взять подготовленные к работе базы данных. Так, практически в каждой торговой точке используются онлайн-кассы, сведения из которых можно использовать для разработки алгоритма.
-
Искусственный интеллект недостаточно развит, чтобы ожидать от него создания эффективной рекомендательной системы.
Здесь в первую очередь нужно отметить, что на рынке существует множество успешно зарекомендовавших себя продуктов оценки эффективности рекомендательных систем. Имеются как платные, так и бесплатные решения. Кроме того, используемые алгоритмы постоянно совершенствуются, их эффективность неуклонно растет.
-
Расходы на создание рекомендательной системы имеют такие объемы, что они не окупятся.
Справедливость данного довода зависит от того, на какую аудиторию рассчитаны эти системы. Понятно, что несколько человек, даже если они воспользуются предложениями, не окупят затрат. Однако практика показывает, что для малого бизнеса рекомендательная система может быть создана по относительно небольшой цене. При этом она способна резко увеличить и средний чек, и объем продаж. Таким образом, затраты на алгоритмы могут окупиться в течение нескольких месяцев, а затем эти вложения начнут приносить доход.
Итак, мы рассказали об основах рекомендательных систем, принципах их работы. Они являются эффективным инструментом увеличения продаж, на который следует обратить внимание любому бизнесу. Конечно, разработка качественного алгоритма требует познаний в информатике, математике. Однако, во-первых, существует много готовых примеров рекомендательных систем, которые можно адаптировать под нужды конкретного предприятия, и во-вторых, практически всегда эта задача поручается специалистам, которые имеют необходимый опыт и способны обеспечить желаемый результат.