В СМИ «Яндекс» справедливо называют российским поисковым гигантом, ежедневно отвечающим на более чем 280 миллионов запросов пользователей. Некоторые из них постоянно повторяются и вводятся в поисковую строку почти ежесекундно — «одноклассники», «вконтакте», «скачать бесплатно». Другие — абсолютно уникальны и могут не повториться никогда — количество таких «эксклюзивных» запросов может достигать 100 миллионов в сутки.
Внешний вид графика, отражающего частоту распределения запросов, который составила команда «Яндекса», напомнил разработчикам сказочную птицу с клювом, туловищем и длинным хвостом. Острый клюв - относительно небольшой список наиболее распространённых и повторяющихся запросов. Более массивное, но менее плотное туловище - среднечастотные запросы. А объёмный разреженный массив редко встречающихся и уникальных запросов выступает в роли роскошного длинного хвоста.
Новый поисковый алгоритм даёт «Яндексу» возможность лучше обрабатывать даже самые нестандартные вопросы из «хвостовой области» фантастического пернатого, которое в сказках носит имя Жар-птицы. Изображения этой чудо-птицы — «фирменный знак» палехской миниатюры. Так «само-собой» было выбрано название нового алгоритма — «Палех».
Низкочастотные запросы относятся к самым различным категориям и их систематизация достаточно затруднена. В наиболее общей классификации, например, принято выделять необычные:
Запросы, отнесённые командой «Яндекса» к области «длинного хвоста», отличаются повышенной сложностью обработки для поисковой системы. Отвечая на вопросы, «принесённые в клюве», которые задают постоянно, алгоритм опирается на многочисленные данные пользовательской статистики. Релевантность ответа находится в прямой зависимости от информации о поведении пользователей — если алгоритм «знает», что большинство пользователей переходят по ссылке и остаются на странице, значит ресурс (с высокой степенью вероятности) соответствует запросу. В случае с уникальными запросами подобных данных просто не существует и «Яндекс» не может определить, насколько тот или иной сайт годится для решения проблемы пользователя.
Задача дополнительно осложнена тем, что слова, использованные пользователем в запросе, совсем не обязательно присутствуют на релевантной странице интернет-ресурса! Для выражения одного и то же смысла на сайте и в запросе могут быть использованы совершенно несовпадающие выражения.
Уникальные запросы-перья из области «длинного хвоста» практически никогда не совпадают и не повторяются, но, как и высокочастотные, должны быть обработаны максимально качественно, а ответы на них должны быть максимально релевантными.
Для решения этой задачи команда «Яндекса» решила привлечь нейронные сети.
Искусственный интеллект учат распознавать выбранные объекты (кошек, собак или деревья), например — в графике. Для этого в процессе обучения нейросетям показывается огромное количество визуальных образов, содержащих нужные объекты (в качестве положительных примеров) и видеоматериалы, где объекты отсутствуют (в качестве отрицательных примеров). В результате у нейросети формируется способность определять выбранные объекты на всех видах представленных изображений.
Обработка поисковых запросов в большинстве случаев основана на тексте — контенте, который вводится пользователем в поисковую строку и содержится в заголовках веб-страниц, а не визуальных образах, но принцип обучения остаётся неизменным: «плюс» и «минус». Каждый из предлагаемых сети примеров представляет собой пару «запрос-заголовок». Подбор примеров базируется на статистике, накопленной поиском. Опираясь на поведение пользователей, искусственные нейронные сети учатся «понимать», соответствует ли каждый определённый запрос заголовку той или иной страницы.
Работа любого компьютера основана, в первую очередь, на обработке числовых данных. Поэтому разработчики алгоритма стремились свести поиск соответствия между запросом и заголовком к анализу числовых значений. Они научили искусственный интеллект «переводить» известные поисковой системе заголовки в digital-формат — группы из 300 чисел. Таким образом была создана уникальная трехсотмерная «система координат» для каждого документа из базы данных «Яндекс». Размещая поисковый запрос, переведённый в цифровой вид, в этом пространстве, нейросеть сопоставляет его местоположение с вероятными ответами и подбирает наиболее релевантный — ближе всего находящийся.
Подобный метод обработки запросов и сопоставления получил название «семантического вектора». Подход доказал свою высокую эффективность при работе с запросами из области «хвоста» Жар-птицы — семантические векторы дают возможность находить ответы даже на наиболее низкочастотные запросы с отсутствующей пользовательской статистикой. Ещё более важным оказывается то, что представление запроса и заголовка в виде вектора 300-мерного пространства позволяет оценить степень их соответствия даже при отсутствии общих ключевых слов!
Использование семантического вектора ведётся командой «Яндекс» несколько месяцев и сегодня инструмент применяется не только в поиске, но и в других сервисах. В «Картинках», например, он отвечает за поиск изображений, максимально точно соответствующих текстовому описанию.
Инновационная технология предоставляет разработчикам огромные возможности. Ведь в семантический вектор могут быть переведены не только заголовки, а контент всей страницы или даже профиль пользователя! Это даст возможность в будущем создать модели, «оценивающие» семантическое соответствие запроса документу на уровне человека!