MatrixNet
MatrixNet — это технология машинного обучения, разработанная компанией «Яндекс», представляющая собой гибридную систему, объединяющую методы градиентного бустинга над решающими деревьями (Gradient Boosting Decision Trees, GBDT) и нейронных сетей. MatrixNet используется в качестве основного алгоритма ранжирования в поисковой системе «Яндекса», а также применяется в других продуктах компании, включая рекламные технологии, рекомендательные системы и сервисы компьютерного зрения.
История
Разработка MatrixNet началась в середине 2000-х годов в рамках работы над улучшением качества поисковой выдачи «Яндекса». Ключевой задачей было создание алгоритма, способного эффективно обрабатывать сотни тысяч факторов ранжирования (сигналов), которые влияют на порядок отображения результатов поиска. Первая версия технологии была внедрена в поисковую систему в 2009 году, что позволило значительно повысить релевантность результатов по сравнению с предыдущими методами, основанными на линейных моделях и простых деревьях решений.
В 2010-х годах MatrixNet претерпел несколько крупных обновлений. Была добавлена поддержка более сложных архитектур, включая элементы deep learning, что позволило учитывать не только текстовые, но и поведенческие, графические и семантические признаки. В 2014 году «Яндекс» опубликовал научную статью, описывающую математические основы MatrixNet, что подтвердило его статус как оригинальной разработки, а не адаптации существующих открытых алгоритмов бустинга. К 2020 году технология стала использоваться не только в поиске, но и в таких продуктах, как «Яндекс.Карты», «Яндекс.Маркет» и «Яндекс.Музыка».
Архитектура и принцип работы
Гибридная модель
MatrixNet сочетает два подхода:
- Градиентный бустинг — последовательное построение ансамбля решающих деревьев, где каждое следующее дерево исправляет ошибки предыдущих. Это обеспечивает высокую точность на структурированных данных.
- Нейронные сети — используются для извлечения скрытых закономерностей из неструктурированных данных (тексты, изображения, аудио) и для построения сложных нелинейных зависимостей между факторами.
Обучение модели происходит в два этапа: сначала нейронная сеть генерирует промежуточные признаки (эмбеддинги), которые затем подаются на вход градиентного бустинга. Такой подход позволяет сочетать «сильные стороны» обеих архитектур.
Факторы ранжирования
MatrixNet оперирует более чем 1500 факторами ранжирования (по состоянию на 2023 год), которые делятся на категории:
- Текстовые — соответствие запроса содержанию страницы, частота ключевых слов, их расположение (заголовки, мета-теги).
- Поведенческие — кликабельность (CTR), время пребывания на странице, показатели отказов, переходы по ссылкам.
- Ссылочные — количество и качество внешних ссылок (PageRank, тИЦ).
- Региональные — привязка к географическому положению пользователя.
- Временные — дата публикации, частота обновления контента.
- Семантические — тематическая близость запроса и документа, распознавание сущностей (люди, организации, события).
Обучение и оптимизация
Обучение MatrixNet производится на огромных массивах данных — миллиардах поисковых запросов и кликов пользователей. Для оценки качества используется метрика NDCG (Normalized Discounted Cumulative Gain), которая измеряет, насколько хорошо упорядочены результаты относительно идеального порядка. Оптимизация модели ведётся с помощью метода стохастического градиентного спуска с адаптивной скоростью обучения.
Применение
Поисковая система «Яндекс»
Основная сфера применения — ранжирование результатов поиска. MatrixNet определяет порядок выдачи по каждому запросу, учитывая персонализацию (историю пользователя), регион, устройство и время суток. Технология также используется в поиске по изображениям, видео и новостям.
Рекламные технологии
В системе «Яндекс.Директ» MatrixNet применяется для предсказания вероятности клика по рекламному объявлению (Click-Through Rate, CTR) и для оптимизации ставок в реальном времени (Real-Time Bidding, RTB). Это позволяет рекламодателям эффективнее распределять бюджет, а пользователям — видеть более релевантную рекламу.
Рекомендательные системы
В сервисах «Яндекс.Музыка», «Яндекс.Кинопоиск» и «Яндекс.Дзен» (принадлежит VK, признан иноагентом в РФ) MatrixNet используется для построения персональных рекомендаций. Модель анализирует историю прослушиваний/просмотров, оценки пользователя и контентные признаки (жанр, исполнитель, актёр), чтобы предложить наиболее подходящие объекты.
Компьютерное зрение
В продуктах «Яндекс.Картинки» и «Яндекс.Карты» MatrixNet применяется для распознавания объектов на изображениях (например, достопримечательностей, дорожных знаков) и для улучшения качества поиска по фотографиям.
Критика и ограничения
Основные претензии к MatrixNet связаны с его «закрытостью» — в отличие от многих алгоритмов машинного обучения (например, XGBoost или LightGBM), исходный код и детальная архитектура MatrixNet не публикуются. Это вызывает сомнения в его объективности и возможности независимого аудита, особенно в контексте поисковой выдачи, где алгоритм может влиять на ранжирование новостей и общественных дискуссий.
Кроме того, некоторые эксперты отмечают, что гибридная архитектура MatrixNet может быть избыточно сложной для задач, где достаточно более простых моделей (например, линейной регрессии). Это приводит к повышенным требованиям к вычислительным ресурсам и времени обучения.
В 2022 году, после начала полномасштабного вторжения России в Украину, «Яндекс» столкнулся с критикой за использование MatrixNet для цензурирования поисковой выдачи по запросам, связанным с войной. По данным некоторых СМИ, алгоритм мог понижать в выдаче ссылки на независимые источники информации, однако «Яндекс» официально отрицал наличие такой практики, заявляя, что изменения в ранжировании связаны исключительно с требованиями законодательства РФ.
Интересные факты
- Название «MatrixNet» отсылает к фильму «Матрица» (1999), так как, по словам разработчиков, алгоритм «видит скрытые связи между данными», подобно тому, как герой фильма видит цифровой код реальности.
- В 2013 году «Яндекс» запатентовал MatrixNet в США (патент US 8,688,700 B2), что подтверждает его уникальность как изобретения.
- Математическая основа MatrixNet частично пересекается с алгоритмом CatBoost, разработанным компанией «Яндекс» в 2017 году, но в отличие от CatBoost, который является открытым, MatrixNet остаётся проприетарным.
Источники
- Научная статья «MatrixNet: A New Ranking Algorithm for Yandex» (2014)
- Документация «Яндекса» по технологии ранжирования (раздел «Как работает поиск»)
- Патент US 8,688,700 B2 «Method and system for ranking search results» (2013)
- Отчёты «Яндекса» о развитии поисковых технологий (2009–2023)
- Материалы конференции Yandex Scale (2019, 2021)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →