Читать «SEO для клиента» онлайн - страница 51

Сергей Кудрявцев

Алгоритм

Каждая поисковая система хранит в своем индексе несколько миллиардов документов. Когда пользователь задает запросы, поисковая машина из базы данных выбирает те документы (страницы), которые подходят для ответа. Для простоты будем считать, что из базы данных изымаются адреса, на страницах которых содержатся заданные пользователем ключевые слова.

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

В последнее время поисковыми системами используется машинное обучение для ранжирования сайтов в результатах выдачи. Давайте рассмотрим работу данного алгоритма на абстрактном примере.

Представим, что нам нужно научить робота определять, какие яблоки спелые (хорошие), а какие – нет (плохие). Робот умеет определять некоторые свойства яблока (рис. 9.1).

Рис. 9.1. Свойства яблока

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

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

Аналогично происходит и в поисковой системе. Существует подразделение специально обученных сотрудников, которые обучают алгоритм, то есть вручную просматривают сайты по запросам, относят их к хорошим (релевантным) и плохим (нерелевантным). На основе такой разметки и анализа более 800 факторов происходит обучение поискового механизма. Иначе говоря, робота учат отличать релевантные сайты от нерелевантных. А дальше робот уже на основе полученных знаний самостоятельно может определить, насколько релевантна та или иная страница конкретному запросу пользователя.

Цифра, которая определяет релевантность, является не целым числом. В списке страниц, которые были подобраны для ответа пользователя, напротив каждого адреса прописывается данная цифра. Далее проводится сортировка списка по значению релевантности – и на первых местах поисковой системы показываются наиболее релевантные страницы.

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