Персональні рекомендації: як це працює
Блок з персональними рекомендаціями на сайті потрібен, щоб запропонувати клієнтам інші товари, які можуть їх зацікавити, і збільшити середній чек.
Це один з кращих способів назавжди підняти відсоток продажів і одночасно поліпшити сервіс.
Як це зробити? Найпростіше рішення — показувати користувачеві те, що йому подобається. Це можуть бути речі про які він говорив прямо — поставив лайк або зберіг в обране. Рішення трохи складніше — демонструвати те, що неявно цікавить покупця, наприклад, інші товари з переглянутих категорій. А ще можна показувати те, що подобається іншим користувачам і те, що вигідно продавати саме зараз, і все це з урахуванням головного параметра — потенційного інтересу покупця до продукту.
Алгоритми персональних рекомендацій
Отже, звідки ви будете знати, чим цікавиться покупець? Невже правда, що Інстаграм і Фейсбук підслуховують про що ми говоримо, і вашому сайту теж потрібна така технологія? Насправді ні.
Персональні рекомендації товарів на сайтах і реклама в соціальних мережах підбираються програмними алгоритмами. Це складні математичні розрахунки простих і логічних по суті взаємозв'язків. Все, що потрібно для того, щоб їх побудувати — інформація про продукти і клієнтів, яка вже є у вас в базі.
Щоб з цих даних отримати персональні рекомендації, використовують 4 основних алгоритмів обробки:
- Контентна фільтрація. Те, що подобається конкретному користувачу.
- Спільна фільтрація. Те, що подобається іншим користувачам, зі схожими смаками.
- Кластеризація. Визначення подібностей між користувачами і елементами.
- Категоризація. Автоматичне групування елементів в категорії за загальними атрибутами.
Для отримання максимального ефекту всі ці принципи потрібно комбінувати, а також адаптувати під особливості вашого проєкту. Для цього створюються математичні моделі і використовується машинне навчання, а ще проводиться дуже багато тестів. У загальному вигляді ваш алгоритм персональних рекомендацій буде працювати так, як описано нижче.
Спільна фільтрація і кластеризація: базова модель
Перший крок на шляху до дієвих персональних рекомендацій — базова модель на основі матриці клієнт-продукт з таблиці покупок.
Такий підхід дозволяє припустити, що сподобається вашим покупцям на основі вподобань інших. Наприклад, якщо один з них купив продукти 1 і 2, а інший тільки 2, то йому можливо буде цікавий і 1.
Алгоритми спільної фільтрації включають навчання моделі — розкладання матриці клієнт-продукт на дві з латентними (неявними) ознаками. При перемноженні матриць клієнти х ознаки і продукти х ознаки, і виходить нова матриця, в якій буде видно, які покупки впливають один на одного найсильніше. Це будуть великі значення, які з'являться в порожніх клітинах. Ось з них і будуть вибиратися рекомендації.
Тепер залишається тільки додати функцію, яка буде множити вектор ознак клієнтів на матрицю ознак продуктів, щоб отримати персональні розрахунки для кожного. І ще одну, яка буде вибирати позиції з найбільшим значенням.
На практиці, вся ця математична магія реалізується помірно просто за допомогою бібліотек для тих мов і технологій, що використовують розробники вашого сайту або програми. В результаті, показуючи людям, що подобається іншим зі схожими смаками, можна підвищити конверсію в замовлення до 10%, в порівнянні з демонстрацією просто хітів продажів.
Спільна фільтрація працює тим краще, чим більше у вас покупців і чим частіше вони щось купують. В такому випадку у моделі буде більше даних, а значить релевантність рекомендацій зросте.
Щоб поліпшити модель на основі спільної фільтрації, підключають інші алгоритми. Вони по суті будуть робити те ж саме — створювати і обробляти розріджені матриці з даними. Три категорії параметрів для поліпшення персональних рекомендацій:
- Дії.
Не всі, хто відвідує ваш сайт, роблять покупку, але при цьому кожен робить щось, що можна використовувати для поліпшення персональних рекомендацій. Якщо клієнт додав товар в корзину або обране, вам варто не тільки писати йому e-mail з нагадуваннями про це, але і використовувати ці дані для поліпшення своєї моделі рекомендацій. Точно так само можна призначити невелику вагу результатам пошуку товарів без інших явних дій, особливо при наявності інструментів детального відстеження поведінки. Якщо клієнт довго не йшов зі сторінки, вивчаючи характеристики, це безперечно означає що його цікавить цей товар і подібні до нього.
- Термін давності.
Смаки і переваги людей змінюються, а тому нелогічно привласнювати однакову вагу покупкам зробленим на цьому тижні і рік тому. Якщо у вас всесезонні товари, досить додати коефіцієнт, який буде знижувати значимість по експоненті з плином часу. А якщо ви продаєте одяг, спортивне спорядження чи інші продукти, попит на які змінюється в залежності від пори року, то формула трохи ускладнюється. Найбільш значним стає те, що купували в минулому сезоні, а не місяць тому.
- Явні ознаки.
Для налаштування персональних рекомендацій можна використовувати практично все, що ви знаєте про своїх клієнтів і продукти.
- Для товарів обов'язково враховувати ціну, виробника і категорію, а також максимум інших характеристик, в залежності від особливостей продукту.
- Для клієнтів базовими значеннями будуть стать, вік, ОС з якої він заходив в минулий раз і канал, який його привів.
Для всіх цих значень (клієнтів і продуктів окремо) знову створюються матриці, які об'єднуються зі створеними раніше. Таким чином виходять «парні» ознаки, комбінація з латентних і явних.
Точність рекомендацій, створених з урахуванням додаткових ознак, а разом з нею і конверсія отримують статистично значущі значення. Щоб дізнатися точні, доведеться проводити А / В тестування та інші перевірки саме для вашого проєкту.
Не існує універсального алгоритму рекомендацій. Щоб довести до відносного ідеалу описану вище модель, буде потрібно кілька тижнів активних тестів і машинне навчання вашого алгоритму для оптимізації гіперпараметрів.
Результатом такої роботи будуть правильно математично розраховані ймовірності і автоматизований показ персональних рекомендацій, а головне помітне підвищення конверсії.
Як це працює: довгострокові і короткострокові рекомендації
Вся зібрана заздалегідь інформація використовується для створення довгострокових рекомендацій. Працює це так: раз на добу, найкраще вночі, коли сервери не так навантаженні, ваша модель рекомендацій перераховує всі параметри і зберігає нові значення у відведене їм місце в сховище. Звідти вони будуть підтягуватися на сайт, коли знадобляться, а ще ви зможете діставати їх звідти для інших цілей, наприклад, для тих же персоналізованих електронних листів.
Короткострокові рекомендації — більш інтерактивна версія цієї схеми. Щоб не бентежити клієнтів, показуючи їм товари на основі того, що вони шукали раніше, якщо зараз шукають зовсім інше, або для того, щоб швидко підлаштовуватися під вибрані фільтри, потрібно розділити навчання моделі і видачу рекомендацій.
В такому випадку алгоритм буде реагувати на дії користувача в режимі реального часу, отримуючи інформацію про те, хто і що зараз шукає, і оновлювати для нього рекомендації. Для реалізації такої функції буде потрібно більше обчислювальних потужностей і додаткові поліпшення алгоритму. Зокрема, потрібно буде додати мікросервіс, що відслідковує дії і користувачів, пересилає запити на рекомендації і відображає їх клієнту.
Різноманітність і інші поліпшення
Навіть базові персональні рекомендації вже принесуть вам відчутну користь. Проте алгоритм можна навчати і далі. Наприклад, використовувати категоризацію — розділяти користувачів і товари на групи за не очевидними для штучного інтелекту ознаками. Алгоритм можна легко навчити кому показувати товари дешевше, а кому дорожче, а також виділяти охочих купити оптом або мисливців за знижками. При цьому, якщо ви хочете, щоб він міг відрізнити, наприклад, корпоративні покупки від особистих, йому потрібно буде допомогти.
Ще один варіант поліпшення — додавання «різноманітності». Якщо видавати рекомендації виключно за вагою, вони можуть бути дуже передбачуваними, що не завжди добре для збільшення чека. Іноді краще витягнути нестандартний товар з середини і навіть кінця списку, особливо якщо клієнт не зацікавився запропонованими спочатку. Для додавання «ефекту несподіванки» теж є свої алгоритми, що показують непогані результати на практиці.
Висновок
Персональні рекомендації — це дійсно в деякому роді магія. Магія математики і статистики. Щоб отримати «розумний» алгоритм, який буде показувати максимально релевантні товари кожному відвідувачеві сайту, вашим розробникам потрібно буде створити модель рекомендацій і навчити її. Це одне з рядових завдань при розробці або модернізації сайту, яка проте вимагає досвіду і компетенції, а ще часу на налагодження.
Щоб зробити базовий алгоритм оптимальним для вашого проєкту, буде потрібно провести значну кількість тестів, але в результаті у вас буде інструмент, який просто підвищує продажі, не вимагаючи втручання і додаткових інвестицій. Покупці, дуже часто навіть не усвідомлюючи цього, позитивно ставляться до наявності такого блоку і охоче замовляють товари, показані в ньому.
Якщо хочете додати до свого проєкту персональні рекомендації — ми зробимо це для вас.