Понимание метода машинного обучения «Матрикснет» дает возможность разобраться, каким образом нужно подбирать семантику и совершенствовать сайт, почему эффект оптимизации может проявиться не сразу или отсутствовать совсем.
Яндекс начал использовать новый алгоритм, учитывающий большое количество факторов ранжирования, в 2009 году. «Матрикснет» продемонстрировал выдающиеся способности к переобучению без опасности выявить несуществующие закономерности и увеличения количества асессорских оценок.
В качестве примера возьмем два устройства. Одно из них — машина с единственным рычагом, нажатие которого позволяет запустить или завершить процесс. Второе устройство — сложный механизм с множеством кнопок, с их помощью можно изменять параметры процесса. Именно таким является созданный Яндексом «Матрикснет». Этот алгоритм позволяет задавать отдельные настройки для каждого класса запросов.
Существует большое количество факторов, способных по отдельности или в комплексе определять тип сайта с учетом конкретных условий. Так, избыток продвигаемых запросов в тексте на странице результатов поиска может отрицательно отразиться на репутации ресурса в глазах поисковика. При этом если страница является каталогом товаров, большое количество повторений ключа оправданно и допустимо.
Запуск алгоритма «Матрикснет» дал возможность создать сложную и длинную формулу ранжирования, включающую десятки тысяч коэффициентов. Такой метод машинного обучения за короткое время проверяет множество параметров, причем для этого не приходится существенно увеличивать число обслуживающих серверов и другого оборудования.
Архитектура
Для формирования списка релевантных ответов поисковая система использует несколько серверов. Каждый из них создает собственный список сайтов, отвечающих запросу пользователя. Результаты работы всех серверов — множество потенциально релевантных страниц. Они проходят проверку по формуле, созданной «Матрикснетом». Ее основные составляющие: класс запроса, тип элемента и другие характеристики. Благодаря этой технологии на первых позициях выдачи оказываются наиболее релевантные ресурсы, следовательно, пользователь получает максимально полный ответ на интересующий вопрос.
Перед обработкой поискового запроса:
составляется список факторов — описание страницы, сайта, ссылок и запроса по множеству различных признаков;
происходит процесс обучения — «Матрикснет» определяет характеристики ресурсов, которые занимают высокие позиции в выдаче. На этом этапе выполняется асессорская оценка обучающей выборки, на основе которой и создается формула ранжирования.
Алгоритм поисковика быстро совершенствуется: в течение последних лет добавилась возможность прямого взаимодействия с веб-мастерами (переписка), разработаны четкие инструкции для асессоров, а также новые критерии оценки ресурсов.
Процесс обучения
Этот процесс базируется на схеме взаимодействия машины и человека. В качестве входных данных берется множество подобранных факторов, а также подготовленная асессорами обучающая выборка. В ней представлены не только высоко оцененные, но и нерелевантные запросу ресурсы.
Входные данные загружаются в систему. Затем она обрабатывает информацию, выделяет характеристики сайтов, которые имеют высокую и низкую релевантность. Данные факторы представлены в числовом виде, так что расчет формулы сводится к подбору коэффициентов. Это делается путем решения математической системы уравнений.
Таким же образом можно представить создание формулы ранжирования:
20 и 29 — асессорские оценки;
2 и 5 — показатели двух факторов одного ресурса;
3 и 7 — характеристики другого сайта;
k1 и k2 — коэффициенты, отражающие вклад факторов в оценку релевантности.
На самом деле подходы к выявлению значимых факторов и алгоритмы их определения значительно сложнее. Названия: «метод Ньютона для классификации», gradient boosting и «регуляризация в листьях» — говорят сами за себя.
Сегодня вместо технологии «Матрикснет» Яндекс использует новый метод машинного обучения — CatBoost. Он дает более точные результаты в задачах по ранжированию, регрессии и классификации, а также учитывает данные в нечисловой форме. Пользоваться библиотекой машинного обучения CatBoost могут все желающие: она выложена в открытом доступе. Более подробную информацию о методе вы найдете в