рекомендательные системы · ВКонтакте · машинное обучение · искусственный интеллект · алгоритмы · данные3 сентября в 17:32 · 6 мин

+11% времени в ленте ВКонтакте: как алгоритмы и композитный таргет изменили рекомендации в 2026 году

Группа рекомендаций ВКонтакте обновила архитектуру своей ленты, переведя ранжирование на композитный мультитаргет и заменив стохастические методы на детерминированный алгоритм Брезенхема. В результате пользовательское время в приложении выросло на 11% за 2026 год, а эффективность сигналов обратной связи значительно возросла за счет учета контекста действий.

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

# От обновлённого ранкера до алгоритма Брезенхема: что дало + 11% ко времени в ленте ВКонтакте в 2026 году

Приветствую. В мире искусственного интеллекта и рекомендательных систем часто бывает так, что значительный качественный скачок достигается не одной громкой революционной моделью, а серией точечных инженерных улучшений. За прошедшие месяцы 2026 года команда VK (AI) достигла важной метрики: время, проведенное пользователями в ленте, выросло на 11%. Эта статистика стала итогом работы над системой рекомендаций, где каждое изменение валидировалось и вносило свой вклад в общую картину.

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

Детерминизм вместо случайности: алгоритм Брезенхема

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

Команда заменила стохастический алгоритм на детерминированный метод, известный как алгоритм Брезенхема. Изначально он был создан для растровой графики для рисования диагональных линий на сетке пикселей с максимальной точностью. Инженеры перенесли эту логику на форматирование ленты: теперь вместо пикселей рассматриваются карточки контента.

Как это работает: Алгоритм отслеживает «долг» каждого формата. На каждом шаге отдачи контента карточка той категории, которая отстает от целевой пропорции сильнее всего, получает приоритет. Это гарантирует, что пользователь увидит правильный баланс контента не только в длинной хронологической сводке, но и в любом произвольном окне просмотра. Если два человека одинаково любят путешествия, но предпочитают видео — один получит их, а второй — длинный текст с фотографиями. Модель анализирует поведенческие сигналы (досмотревания, лайки) и строит персональное соотношение.

Композитный мультитаргет: контекст имеет значение

Вторая фундаментальная трансформация коснулась самого ранкера — системы, определяющей порядок публикаций. Традиционный подход к мультитаргетингу (обучение на нескольких типах действий одновременно) рассматривал каждый сигнал изолированно: лайк давал фиксированный плюс, скрытие — фиксированный минус, репост — константу. Это игнорировало контекст.

Однородное действие может иметь разную природу в зависимости от окружения. «Шер» (поделиться) может быть проявлением интереса или способом быстро скрыть контент с кринж-фотографиями. Переход в профиль автора может означать как желание узнать больше, так и раздражение. Классическая модель не видела этих нюансов, теряя важную семантику.

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

Учет времени и противоречивые сигналы

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

Система ввела четкие временные метрики: * Короткий просмотр (скип): Считается самостоятельным отрицательным сигналом. * Отсутствие просмотра: Если пользователь открыл пост и закрыл его через пару секунд без взаимодействия с контентом, это снижает оценку. * Длительное чтение: Длинные просмотры дают дополнительный позитивный сигнал.

При расчете итогового таргета система последовательно проверяет сигналы: 1. Исключаются противоречивые сценарии (например, лайк и скрытие одновременно), так как они вносят шум. 2. Обрабатываются однозначные действия (подписка, жалоба, отписка) с учетом их веса. 3. Неоднозначные события (шер, переход в профиль) получают динамический вес. Если «шер» сопровождается лайком, он усиливает позитив. Если после него следует скрытие — оценка становится резко отрицательной.

Результат обновления ранкера: * CTR по лайкам вырос на 30%. * Снижение нежелательных реакций (скрытие, скип) составило 10%. * Заметный прирост в комментариях, репостах и подписках.

Интерпретируемые вероятности и новые источники данных

Технические улучшения затронули и математический аппарат, лежащий в основе признаков модели.

ALS (Alternating Least Squares): Матричная факторизация ALS давно используется для сжатия истории взаимодействий в векторы. В 2026 году была проведена её оптимизация. Веса событий теперь привязаны к вероятности лайка, что дало скорам понятную интерпретацию. Также была улучшена устойчивость модели к разному объему данных о взаимодействии с авторами: переход на вероятностную оценку позволил корректнее сопоставлять авторов с разной частотой публикаций.

I2I (Item-to-Item) и свежие интересы: Рекомендации не должны быть статичными. Интерес пользователя меняется динамически: от отпуска в Стамбуле до ремонта квартиры. Система внедрила сервис I2I, который подбирает контент на основе конкретного прочитанного объекта, а не всего профиля целиком. Один пост становится точкой входа в новую тему. При этом лента не перестраивается полностью после одного действия, а аккуратно подмешивает материалы новой тематики, наблюдая за реакцией. Это позволяет избегать эффекта, когда случайный клик определяет выдачу на месяц вперед.

Холодная стартовая лента и социальный контекст: Для новых и малоактивных пользователей, у которых еще нет истории, созданы отдельные модели с динамическими квотами. Стартовая лента формируется даже на скудных данных.

Кроме того, в ленту интегрирован социальный контекст. Система учитывает лайки и комментарии друзей, показывая материалы, оцененные знакомыми, и добавляя подсказки об авторе отзыва. Это не заменяет персонализацию, а дополняет её социальным доказательством, помогая найти релевантный контент через людей.

Выводы для инженерии рекомендаций

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

Четыре ключевых принципа, выведенных командой VK: 1. Таргет дисциплинирует систему: Проще убрать вознаграждение за то поведение, которое не нравится, чем пытаться компенсировать ошибки сложными правилами. 2. Сигналы взаимосвязаны: Игнорирование контекста делает модель слепой к истинному намерению пользователя. Разные действия в разных контекстах должны иметь разные веса. 3. Интерпретируемость критична: Переход к вероятностным скорам упрощает валидацию, отладку и масштабирование моделей. 4. Дисперсия — это дефект: Правильная пропорция в среднем ничего не значит для пользователя. Детерминированное соблюдение пропорций на экране важнее любой сложной модели.

Рост времени в ленте — это не самоцель, а индикатор того, что человек быстрее находит нужный контент и меньше листает мимо. Баланс между прошлым и настоящим, знакомым и новым достигается не одной моделью, а всей инфраструктурой, где каждое звено работает слаженно.

*Автор статьи: Степан Малькевич, руководитель группы рекомендаций ленты ВКонтакте.*

Первоисточники

Habr AI
← Вернуться в эфир