22 августа компания Яндекс презентовала новый алгоритм ранжирования «Королёв».

В основе нового алгоритма «Королёв», также, как и прошлогоднего «Палеха» лежит нейронная сеть. В обоих алгоритмах, запросы и веб страницы преобразуются в семантические векторы, скалярное произведение которых чем больше, тем запрос релевантнее.

Однако данные манипуляции при каждом поисковом запросе было производить ресурсозатратно, необходимы просто громадные вычислительные мощности, поэтому алгоритм «Палех», работал только на самых поздних стадиях ранжирования и обрабатывал только заголовки, а не весь контент страниц. Конкретно, нейросеть обрабатывала только 150 самых лучших страниц, прошедших все нижние стадии ранжирования.

«Королёв» обменял вычисления на память.

Анализ огромного количества пользовательских поведений, позволил не вычислять семантические векторы динамически, как было ранее, а предвычислять их на стадии индексации документов и хранить только результаты этих вычислений.

И теперь, при запросе поисковой машине требуется только достать вектор документа из поискового индекеса и перемножить его с вектором запроса, что значительно быстрее, чем вычислять вектор динамически. Что позволяет увеличить число страниц, обрабатываемых нейросетью до 200 000! Разумеется, при таком подходе потребуется дополнительное место для хранения предвычисленных векторов.

На презентации алгоритма сотрудники Яндекса представляли работу нейронной сети наглядно на поиске изображений. Как утверждают разработчики, раньше поиск по картинкам осуществлялся используя только тексты около картинок и их alt и title. Тоесть раньше, если бы мы искали изображения по запросу «Дерево», в поисковой выдаче мы бы получили только те изображения, на странице которых использовалось слово «дерево». Теперь же, умные алгоритмы научились распознавать именно очертания на самих картинках, и могут их идентифицировать по очертаниям, цветам и т.д. Ну что же, попытаемся это проверить.

Нейросеть «на кошечках»

Мы ввели в поисковую строку поиска по картинкам «кошка космонавт». Когда вводим такой запрос, что мы хотим увидеть на изображениях в выдаче:

  • Кошка (обязательно)
  • Космическое пространство
  • Планеты
  • Скафандр
  • Космический корабль

Разумеется, на большинстве изображений мы это и увидели: Кошак в скафандре в космическом пространстве. Однако у большинства картинок на страницах, где они находятся присутствуют ключевые слова «кошка» «космос» ''space cat'' и т.д. Однако нам встретились и такие изображения, на которых присутствуют элементы «космоса», а на страницах про это ничего не сказано: например:

Кот в стиральной машине, распознанной как скафандр

Космическое пространство на лицо

Нейросеть нашла очертания космоса

Космос, кошка и планета

Огни города идентифицировались как звезды, видимо

Без комментариев)))

Из этого всего можно сделать вывод, что Яндекс активно внедряет нейросети в свой поиск, однако для их обучения и переиндексации страниц еще требуется время.

Чего же ждать от нового алгоритма?

Алгоритм направлен на то, чтобы окончательно отсечь методы продвижения сайтов, направленные на манипуляции с ключевыми словами и перенасыщение текстов ими. В ТОП выдачи должны оставаться только осмысленные страницы, на которых пользователь найдет ответ на свой запрос. Постепенно из выдачи вылетят так называемые «переоптимизированные, заспамленные» тексты, абсолютно не несущие смысловой нагрузки. Процесс уже пошел, но, как всегда, необходимо время.

Все ли так хорошо и прекрасно?

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