Сегодня, 22 августа 2017 года, Яндекс официально представил новую версию поиска на базе нового алгоритма «Королёв». Что же касается самого алгоритма, то в его основе лежит нейронная сеть, которая умеет соотносить смысл запроса с содержимым веб-страниц. Такой подход заметно повышает точность выдачи.
Не далее как в прошлом году отечественная поисковая система запустила алгоритм под названием «Палех», призванный находить веб-страницы, которые соответствуют запросам не только по ключевым словам, но и по смыслу. Этот релиз стал первым шагом к развитию алгоритмов поиска на базе нейронных сетей.
Благодаря «Палеху» поисковая система смогла точнее отвечать на сложные запросы из «длинного хвоста». Релевантность результатов напрямую связана с количеством знаний, которые поиск накопил о каждом из запросов, а в случае с редкими запросами поведенческой статистики может не хватать. Эту проблему и был призван решить запуск.
Алгоритм «Королёв» стал следующим этапом развития поисковой системы. Он научился сравнивать семантические векторы поисковых запросов и веб-страниц целиком, а не только их заголовков.
Поскольку все тексты веб-страниц преобразуются в семантические векторы силами нейросети, все операции требуют значительных вычислительных ресурсов. Если в «Палехе» смысловой анализ — этап завершающий, и через него проходят всего 150 документов, то в «Королёве» смысловой анализ проходят уже 200 тысяч документов. Именно по этой причине «Королёв» высчитывает векторы страниц не в режиме реального времени, а ещё на стадии индексирования.
На этапе ввода запроса пользователем, алгоритм сравнивает вектор этого запроса с уже известными ему векторами страниц. Но и это еще не все: по замыслу разработчиков, алгоритм учитывает и другие запросы, по которым люди переходили на эту же страницу. Это позволяет выявлять и устанавливать дополнительные смысловые связи, совершенствуя поиск.