На один и тот же вопрос может быть несколько правильных ответов — в зависимости от нужд пользователя. Например, кому-то по запросу [nevermind] нужно найти перевод слова, а кому-то — альбом Nirvana. Персональный поиск умеет учитывать личные интересы и предпочтения пользователя и выбирать наиболее подходящий для него ответ.
В основе персонального поиска лежит анализ поискового поведения — например, какие запросы задает человек, на какие сайты переходит, на каком языке общается с поисковой системой. Анализируя вопросы и переходы пользователя, Яндекс делает вывод о том, что ему сейчас важно и интересно. Так, если человек часто ищет бесплатный софт, бесплатные книги и музыку, вероятно, его в принципе интересует бесплатный контент. Эти данные учитываются как при выборе подсказок, так и при поиске персонального ответа на вопрос.
Подсказки
Выбирая для человека подсказки, Яндекс пытается предугадать его следующие запросы. При этом поисковая система опирается на вопросы людей с похожим поисковым поведением. Для этого было выделено 400 000 групп пользователей, интересы которых более-менее сходны. Разумеется, человек не зачисляется ни в одну из этих групп навсегда. По мере изменения интересов он переходит из одной группы в другую.
Практика показывает, что примерно четверть своих запросов пользователи задают повторно и часто кликают по одним и тем же результатам. Таким образом они переходят к любимым сайтам и документам. Чтобы облегчить им эту задачу, Яндекс добавляет в подсказки недавние запросы человека и его любимые сайты. Разумеется, при вводе запроса на соответствующие буквы. Например, если вчера пользователь спрашивал про [обои для гостиной], сегодня Яндекс сам предложит ему этот запрос в подсказках. А завсегдатаю ВКонтакте покажет ссылку на его любимую сеть — стоит только начать вводить её название в поисковой строке.
Отбирая персональные подсказки, Яндекс учитывает также, какие запросы характерны для одной поисковой сессии. Например, если человек только что спрашивал [назад в будущее], и следующий его запрос начинается на «к», [кристофер ллойд] будет более полезен в подсказках, чем другие запросы на эту букву.
Персональный ответ
Мало помочь человеку задать вопрос, нужно еще подобрать ему наилучший ответ. Для этого используется специальная формула ранжирования. Она подстраивается под каждого пользователя с учётом его интересов и языковых предпочтений. С помощью персональной формулы Яндекс определяет, насколько каждый из найденных по запросу документов подходит конкретному человеку. Все документы получают свою оценку и располагаются в результатах поиска в соответствующем порядке. Получается, что по одному и тому же запросу два разных человека видят разные ответы. Например, вот как различаются подсказки и результаты поиска для людей с разной поисковой историей:
![](//avatars.mds.yandex.net/get-bunker/61205/fb45691e88117f630b92b3dd5c15e67b1cb5f3ee/orig)
Формула ранжирования учитывает как постоянные (долгосрочные и среднесрочные), так и сиюминутные интересы человека. Все они в разной мере влияют на качество ответа на вопрос. Так, постоянные интересы отражают языковые предпочтения пользователя, его привычки и близкие ему темы. А сиюминутные — показывают, что важно человеку прямо сейчас. Например, пользователь, который обычно спрашивает про кино и музыку, может неожиданно заинтересоваться компьютерными играми, а потом надолго о них забыть. Таких интересов, которые быстро возникают и так же быстро сходят на нет, больше половины.
Чтобы быть в курсе постоянных интересов пользователя, Яндекс анализирует его поисковую историю за последние два месяца и за неделю. А чтобы следить за сиюминутными интересами – обрабатывает данные поисковых сессий в режиме реального времени. Это позволяет понять, что важно человеку прямо сейчас, и подстроиться под его интересы. Скажем, если в поисковой сессии любителя литературы вместе с названием произведения встретилось слово [афиша], возможно, что в данный момент человека интересует экранизация. Вот как различаются результаты поиска с учётом и без учёта сиюминутных интересов пользователя:
![](//avatars.mds.yandex.net/get-bunker/56833/3c9fbc96f85bc658801baf692c3465316c449fc7/orig)
Чтобы мгновенно реагировать на изменения в поисковом поведении людей, Яндекс создал систему обработки данных в режиме реального времени. Она обрабатывает более 10ТБ данных в сутки, постоянно корректируя свои знания о потребностях пользователей.
Благодаря этой системе запросы и клики, которые человек сделал только что, начинают влиять на результаты поиска уже через несколько секунд.
По умолчанию персональный поиск работает для всех пользователей поиска. И чем больше запросов задаёт человек, тем лучше поиск его понимает. Впрочем, каждый пользователь может сам решать, нужны ему ответы с учетом интересов или нет. Персональный поиск можно в любой момент включить или отключить в настройках сервиса.