В основе работы каждой поисковой системы лежат свои алгоритмы ранжирования, посредством которых и происходит «магия» — одни сайты оказываются на первой странице, а другие за ТОП-50. Понимание принципов работы поисковых алгоритмов — это азбука любого SEO-специалиста. И если с принципами построения PageRank знакомы очень многие, то есть алгоритмы менее известные, но не менее интересные.

Итак, существует два подхода к ссылочному ранжированию:

  • глобальный анализ (не зависящий от запроса), например, PageRank;
  • локальный анализ (зависящий от запроса), например, HITS.

Да, друзья, речь пойдет именно об алгоритме HITS.

История создания и базовые принципы HITS

В 1999 году Джон Клейнберг предложил альтернативный подход к ссылочному ранжированию, который вошел в историю как HITS (Hyperlink Induced Topic Search). Основным аргументом Джона стало то, что далеко не всегда авторитетные страницы ссылаются на другие авторитетные страницы. Напротив, существует определенный тип страниц, которые берут на себя функцию посредников (hubs) и содержат ссылки на полезные ресурсы.

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

Алгоритм базируется на следующих принципах:

  • определения авторитетности страниц осуществляется для каждого поискового запроса «на лету»;
  • расчет коэффициентов алгоритма HITS может быть выполнен на стороне компьютера (обрабатывается намного меньше страниц по сравнению с алгоритмом PageRank);
  • при расчете показателей страницы-посредника учитываются показатели страниц, на которые она ссылается (хороший «посредник» ссылается на авторитетных «авторов»);
  • при расчете показателя страницы-автора учитываются показатели страниц посредников, которые ссылаются на нее.

Как работает алгоритм HITS

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

Более наглядно это продемонстрировано на рисунке ниже.

После получения базового набора начинается сам процесс ранжирования. Для этого алгоритм выполняет ряд итераций.

Каждая итерация состоит из таких этапов:

  • обновления авторитетной оценки каждой страницы, равно как суммы всех оценок «посредников», указывающих на нее;
  • обновление посреднической оценки каждой страницы путем суммирования авторитетных оценок страниц, на которые они указывают;
  • этап нормализации значений «посредника» и «автора»;
  • повторение (пока значения не перестанут колебаться).

На рисунке выше мы видим, что авторитетность автора рассчитывается по тому же принципу, что и PageRank. Что касается авторитетности хабов (Hub(P)), то здесь важную роль играют исходящие ссылки (что не учитывается в алгоритме Google) — указывая на трастовые страницы, они повышают свою значимость как посредника.

HITS против PageRank

Фундаментальным отличием HITS от PageRank является то, что алгоритм зависит от запроса пользователя. Сначала определяется базовый набор для каждого запроса (список релевантных страниц и страниц, на которые они ссылаются), а потом осуществляется калькуляция оценок для «авторов» и «посредников» внутри графа. То есть, во внимание берутся как входящие ссылки (автор), так и исходящие (посредник).

А вот PageRank в «экосистеме» учитывает только входящие ссылки и не выделяет такое понятие, как «хаб» (посредник).

Еще одним важным отличием HITS является то, что калькуляции показателей осуществляются после формирования корневого набора (в момент запроса пользователя). Отсюда и «растут ноги» времязатратности алгоритма. PageRank может возвращать результаты намного быстрее, что в современном динамическом мире, бесспорно, плюс в его пользу.

Среди прочих преимуществ HITS — способность ранжировать сайты на основе ссылок, релевантных запросу пользователя (потенциально они являются более авторитетными «посредниками»). PageRank же учитывает все ссылки, которые указывают на страницу.

Почему HITS проиграл PageRank «войну алгоритмов»?

В основе алгоритма HITS лежит очень интересный подход, который в «идеальном мире» мог бы стать альтернативой PageRank. Но, к сожалению, мир SEO не идеален. Главной и пока не разрешенной проблемой алгоритма HITS является отсутствие эффективных способов борьбы со спамом. Так как он выполняется под запрос, то все коэффициенты рассчитываются online. В этом случае тяжело реализовать даже самые простые механизмы распознавания покупных ссылок, спамной перелинковки, линкомоек и т.п.

Поэтому то, что на время создания алгоритма было очень прогрессивным и обеспечивало более качественную выдачу, в современных реалиях SEO является почти бесполезным. Если Google путем реализации фильтров смог купировать влияния спама на расчет PageRank (или хотя бы свести его до допустимого показателя ), то HITS перестроить не получилось.

Еще одной важной особенностью алгоритма HITS является «сдвиг тематики» (или же Topic Drift). Он возникает, когда документы сильно связаны между собой, но часть из них не релевантна запросу пользователя. В процессе формирования базового набора, нерелевантные страницы попадают в граф и, за счет большого авторитета, «смещают» результаты выдачи.

Во время расширения корневого набора до базового можно «выбрасывать» те страницы, которые по семантике не релевантны запросу

И хотя данную проблему решить не так и сложно, знать о ней стоит.

Вместо заключения: несмотря на то, что алгоритм HITS потерял свою актуальность, принципы, которые в нем заложены, заслуживают внимания. Мне было интересно в них разобраться. Надеюсь, Вам тоже.

А о каком алгоритме поискового ранжирования вы еще хотели бы узнать?