пнвтсрчтптсбвс
1234567
891011121314
15161718192021
22232425262728
2930     
       

Реклама


  Технологии/Явление

Поиск, который мы делаем вместе

Отечественный поисковик Яндекс запустил новую версию поиска, основанную на алгоритмах «Королёв»

Отечественный поисковик Яндекс запустил новую версию поиска, основанную на алгоритмах «Королёв» 25.08.2017
17:11

Поиск, который мы делаем вместе


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

 

Слова и смыслы


Прежде чем рассказывать про настоящее и будущее поиска, вспомним его прошлое. Первые поисковые системы появились в середине 1990-х годов, когда интернет был совсем небольшим — счёт сайтов шёл на тысячи. Чтобы помочь человеку найти нужное, достаточно было составить список веб-страниц, где есть слова из поискового запроса. О сложном ранжировании — то есть упорядочивании страниц по степени соответствия запросу — речь не шла. Считалось, что чем чаще в документе встречаются слова из запроса, тем лучше он подходит.

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

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

Поиск, однако, по-прежнему опирается на слова. Перед тем как пустить в ход сложную формулу ранжирования, поисковые машины составляют список «предварительно подходящих» веб-страниц — таких, в которых есть слова из запроса. Нам, людям, понятно, что один и тот же смысл можно выразить разными словами. Веб-страница может не содержать всех слов из запроса, но тем не менее очень хорошо на него отвечать. Однако объяснить это машине довольно сложно.

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

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

 

Как работает алгоритм «Королёв»


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

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

 

Эффект «Королёва»


Умение понимать смысл особенно полезно при обработке редких и необычных запросов — когда люди пытаются описать своими словами свойства того или иного объекта и ожидают, что поиск подскажет его название.

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

 

Люди учат машины


В Яндексе уверены, что использование машинного обучения, а особенно нейросетей, рано или поздно позволит научить поиск оперировать смыслами на уровне человека. Но без помощи людей тут не обойтись. Чтобы машина поняла, как решать ту или иную задачу, необходимо показать ей огромное количество примеров: положительных и отрицательных. Такие примеры дают пользователи Яндекса.

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

Чтобы поиск развивался, люди должны постоянно давать оценку его работе. Когда-то выставлением оценок занимались только сотрудники Яндекса — так называемые асессоры. Но чем больше оценок, тем лучше — поэтому в компании было принято решение привлечь к этому всех желающих. Так появился сервис Яндекс.Толока.

На сегодня в сервисе зарегистрировано более миллиона пользователей: они анализируют качество поиска и участвуют в улучшении других сервисов Яндекса. Задания на Толоке оплачиваются — сумма, которую можно заработать, указана рядом с заданием. За два с лишним года существования сервиса толокеры дали около двух миллиардов оценок.

В основе современного поиска лежат сложные алгоритмы. Хоть алгоритмы и придумывают разработчики, но именно пользователи Яндекса помогают сделать новый поиск еще лучше.



<< Предыдущая В начало рубрики Следующая >>



Конкурсы

Реклама