"Построение рекомендательной системы на Python" Василий Лексин (Avito)
Рекомендации в Avito - Василий Лексин (Avito)
Transcript of Рекомендации в Avito - Василий Лексин (Avito)
Рекомендации в АвитоПрименение машинного обучения для построения
персональных рекомендацийВасилий Лексин
222
• User-item:
• Объявления, которые в настоящий момент ищет пользователь
• Дополняющие товары/услуги
• User-category:
• Категории текущих интересов пользователя
• Кросс-категориальные рекомендации
• Item-item:
• Рекомендации похожих объявлений
• Дополняющие товары/услуги
• Рекомендации поисковых запросов
Какие рекомендации нужны на Авито?
333
• Где можно показывать user-item рекомендации?
• Email’ы с подборкой рекомендованных объявлений
• Push-уведомления со ссылкой на персональные рекомендации в приложении
• Рекомендации на главной странице Android/iOS приложений
• Где можно показывать item-item рекомендации?
• Страница объявления
• Email кампании
Где можно показывать рекомендации?
444
Email’ы с подборкой рекомендованных объявлений
555
Рекомендации на главной странице Android/iOS приложений
666
• Входные данные:
• История действий пользователей на сайте: просмотры, поисковые запросы, контакты, избранное
• Профили пользователей: данные из привязанных аккаунтов соц. сетей, локация
• Все активные объявления Авито: title, description, params, price
• Задача:
• Для каждого активного пользователя показать top N объявлений с наибольшей вероятностью запроса контакта (звонок или отправка
сообщения)
Постановка задачи user-item рекомендаций
777
• Пользователя, как правило, интересует типовой товар:
• на который есть много активных объявлений,
• объявления быстро закрываются
• Лучше строить рекомендации не на конкретных объявлениях, а на типовых товарах
• Объявления создаются обычными пользователями: много неполных описаний
Специфика рекомендаций на Авито
888
• Offline модели (отставание 1-2 часа):
• Коллаборативная фильтрация
• Контентные рекомендации
• Гибридные рекомендации
• Online модели (отставание не более 5 секунд):
• Должны в реальном времени учитывать интересы пользователя
• Должны уметь рекомендовать самые свежие объявления
• Как правило, применяются простые методы
Методы построения рекомендаций
999
• Offline-метрики на кросс-валидации: precision, recall, NDCG, R-score
• Online-метрики: CTR, CTR на top N
• Online сплит-тесты: показ рекомендаций от различных моделей vs. случайная подборка объявлений
• Целевая метрика: прирост в количестве запросов контактов на A/B тесте
Оценка качества моделей
101010
Визуальное тестирование моделей и сбор отзывов
111111
Наши offline-модели хорошо показали себя на RecSys Challenge 2016
Rank Team Score
1 YunOS-OneSearch (Alibaba Group) 2 052 185,54
2 mim-solutions 2 035 964,16
3 DaveXster 2 005 263,73
4 PumpkinPie 1 866 477,77
5 milk tea 1 846 420,12
6 mdr_rec 1 823 472,31
7 Avito 1 677 898,52
8 recometric 1 677 233,84
9 nodalpoints 1 671 812,08
10 lucky_dog 1 632 828,82
21 XING baseline 1 397 030,74
… 119 teams
121212
Совсем скоро:
конкурс по построению рекомендательной системы от Авито!
Спасибо за вниманиеВасилий Лексин[email protected]