"Анализ поведения пользователей и персонализация...

Post on 16-Dec-2014

4.322 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Традиционный подход к поиску рассматривает запросы пользователей вне контекста их личных предпочтений, истории обращения к поисковику, предшествующей активности в браузере. Использование таких данных способно существенно улучшить качество поиска, сделав его персональным. Как правило, различают «длинную» и «короткую» персонализации. Длинная персонализация основана на постоянных предпочтениях человека: привязанности к конкретным ресурсам, общей заинтересованности в какой-либо тематике. Короткая персонализация, напротив, касается сиюминутных потребностей. Она основана на контексте конкретного запроса — учитываются последние обращения человека к поисковику и те страницы, которые он посетил непосредственно перед данным запросом. Одной из главных проблем при построении персонального поиска становится обработка и анализ данных о пользовательском поведении. В докладе мы продемонстрируем, как она решается, и как это помогает делать короткую персонализацию.

TRANSCRIPT

1

2

Персонализация поиска: контекстное ранжирование

Юрий Устиновский

3

Персонализация

Общая схема

4

«Интернет, 12 декабря 2012 года. Яндекс запустил персональный поиск. Он предлагает пользователям подсказки и ответы, учитывая их личные интересы и предпочтения. Так, по запросу [гарри поттер] любителю чтения Яндекс найдет прежде всего книгу, а не фильм или игру».

Корпоративный блог http://company.yandex.ru/

5

Персонализация

!  Цель – сократить время от первого задания запроса до решения поисковой задачи

!  Данные – информация о том откуда, когда и кем задан запрос

!  Метод – ранжирование документов с учетом персонального контекста

6

Персонализация

Можно выделить два типа персонализации поиска: !  Длинная персонализация

Учитывает устойчивые предпочтения пользователя (знание языков, образование, профессиональные интересы, хобби)

!  Короткая персонализация

Ориентируется на сиюминутные потребности пользователя (поиск товаров, услуг, отзывов, статей на заданную тему)

7

Длинная персонализация

Как должна выглядить выдача по запросу «вендетта»? Для меломана и любителя кино по-разному.

8

Длинная персонализация

9

Длинная персонализация

10

Короткая персонализация

Пользователи взаимодействуют с поисковой системой непрерывно

!  Поисковые сессии

–  Последовательности запросов связанных одной информационной потребностью

–  Действия на поисковой выдаче

Используем для извлечения контекста о запросе. Как должна выглядить выдача по запросу «ягуар»?

11

Контекстное ранжирование

Ягуар  

Дикие  кошки  

Mercedez  benz  s  

Яга   Кощей  Иванушка  дурачок  

По-разному для людей искавших до этого информацию по запросам «дикие кошки» и «mercedes benz s»  

12

Поисковые сессии

0% 5%

10% 15% 20% 25% 30% 35% 40% 45%

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Дол

я за

прос

ов

Позиция запроса в поисковой сессии

Поисковые сессии помогают в персонализации >60% запросов.

13

Поисковые сессии

Однако, все еще не работают для ~40% запросов. Выход – найти новый источник контекста для данного запроса: !  Навигационные сессии

–  Действия в браузере помимо переходов с выдачи Яндекса: переходы по ссылкам, переключение между вкладками, открытие страниц из закладок.

Навигационная сесиия, объединенная одной информационной потребностью называется логической сессией.

14

Логические сессии

Выделение логической сессии внутри навигационной сложная задча. •  "Intent-­‐Based  Browse  AcGvity  SegmentaGon".  35th  European  Conference  on  IR  Research,  ECIR  2013  h\p://bit.ly/yuraust13  

!  Эвристический алгоритм: относим две соседние страницы навигационной сессии к одной логической сессии, если между их посещением прошло меньше T минут.

15

Логические сессии

0% 5%

10% 15% 20% 25% 30% 35% 40% 45%

0 1 2 3 4 5 6 7

Дол

я се

ссий

Количество страниц, просмотренных пользователем до задания запроса

Логические сессии потенциально помогают в персонализации 59% запросов, для которых не работают поисковые сессии

16

Контекстное ранжирование

Используем логические сессии

17

Контекстное ранжирование

Doc(1)   Doc(2)   Doc(3)   Query  

Url(1)  

Url(2)  

Url(3)  

Url(4)  

Url(5)  

Url(6)  

Url(7)  

Url(8)  

Url(9)  

Url(10)  

Контекст – документы Doc(1), Doc(2), Doc(3). Хотим упорядочить страницы Url(i) поисковой выдачи с учетом контекста.

18

Контекстное ранжирование

Возникают следующие задачи 1.  Понять полезен ли контекст для запроса. 2.  Если «да», то измерить релевантность каждого из документов Url(i)

контексту.

Обе задачи решаются при помощи машинного обучения.

19

Персональные оценки релевантности

!  Ключевой элемент любого алгоритма машинного обучения – обучающее множество и разметка. В персональном поиске особенно трудно собрать оценки релевантности.

20

Персональные оценки релевантности

!  Посмотрим, какие документы пользователи просматривают, и попробуем их отранжировать исходя из контекста так, чтобы показывать выше.

Плюсы: возможность неограниченно наращивать обучающее множество

Минусы: необходимость очистки данных от бесполезных сессий и шума

21

Признаки

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

!  Для каждого документа Url(i) мы извлекаем от 42 до 267 признаков, характеризующих запрос, неперсонализированную выдачу, текущую логическую сессию, её связь с нашим документом.

22

Основные признаки

1. Характеристики запроса 1.  Сколько документов найдено 2.  Насколько разнообразна выдача 3.  Навигационный ли запрос

23

Основные признаки

2. Характеристики логической сессии 1.  Время проведенное на Doc(j) 2.  Вероятность сформулировать запрос после Doc(j) 3.  Количество страниц в логической сессии

24

Основные признаки

3. Близость между Doc(j) и Url(i) 1.  Вероятность того, что Doc(j) и Url(i) окажутся в одной логической

сессии 2.  Совпадают ли Doc(j) и Url(i), их хосты 3.  Pointwise mutual information

25

Основные признаки

4. Близость между Doc(j) и Url(i) аггрегированная по всем документам Doc(j)

26

Основные признаки

5. Позиция Url(i) в неперсонализированной выдаче

27

«В 2009 году Яндекс внедрил новый метод машинного обучения — Матрикснет. Важная особенность этого метода в том, что он устойчив к переобучению. Это позволяет учитывать очень много факторов ранжирования — и при этом не увеличивать количество оценок асессоров и не опасаться, что машина найдет несуществующие закономерности».

Корпоративный блог http://company.yandex.ru/

28

Метод машинного обучения

!  Обучаем Matrixnet на признаках, минимизируя квадратичное отклонение от разметки на обучающем множестве.

!  Ранжируем согласно обученной оценке.

!  Как понять, работает ли наше контекстное ранжирование?

29

Метрика MRR (mean reciprocal rank)

Ключевая метрика Чем больше, тем лучше. !  Увеличивает ли наше персональное ражирование MRR?

!  Можно понять анализируя исторические логи.

30

Метрика MRR (mean reciprocal rank)

!  Идея: смотрим как изменилось бы значение MRR, если бы и раньше выдача была персонализированной.

!  Предположение: если документ кликнут в старой выдаче, то он будет кликнут и в новой. Как следствие, получаем оценку снизу на реальный MRR нашего алгоритма

31

Результаты

3.4%

3.4%

3.5%

3.5%

3.6%

3.6%

3.7%

3.7%

3.8%

3.8%

1 2 3 4 5 6 7 8 9 10

Отн

осит

ельн

ое у

лучш

ение

MRR

на

затр

онут

ых

запр

осах

Анализируемая длина логической сессии

32

Выводы

!  Использование навигационного контекста значимо улучшает качество ранжирования

!  Данных уже об одной странице, посещенной перед заданием запроса достаточно, чтобы улучшить ранжирование

!  Более тонкий анализ пользовательского поведения потенциально может значительно улучшить контекстное ранжирование

33

Спасибо за внимание

34

Юрий Устиновский Исследователь-разработчик

yuraust@yandex-team.ru

top related