Information Retriever
3.9K subscribers
276 photos
1 video
8 files
148 links
Author: @kkhrylchenko

Рекламу не размещаю.
Download Telegram
😎

P.S: про RecSys Substack уже писал вот здесь :)
🔥253
Deep RecSys Course IV.

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

* Обучаемые эмбеддинги, плюсы и минусы
* Контентное кодирование и inductive bias
* Unsupervised representation learning как альтернатива для выучивания векторных представлений
* Методы кодирования пользователей

Также немного поговорили про методы нейросетевого кандгена, которые выходят за рамки двухбашенных моделей — multi-interest модели, mixture of logits, generative retrieval.

Получилось за две лекции рассказать всю базу про нейросетевой кандген, за исключением деталей про трансформеры и генеративный ретривал. Но про них будут отдельные лекции. Для сравнения, в прошлом году в ШАДе была всего одна сжатая лекция про нейросетевой кандген (слайды). Я уставший, но довольный :)

2. На семинаре Артём Матвеев рассказывал про практические аспекты обучения нейросетевых моделей для рекомендаций — какими инструментами для обучения мы пользуемся, на какие принципы опираемся и какой код пишем.

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

Github | YouTube

P.S: суммарное время просмотра курса на ютубе — уже 400 часов. Это можно было бы один раз почти весь One Piece посмотреть :)
🔥4111👍5❤‍🔥1😁1
Deep RecSys Course V.

Новое занятие курса уже на ютубе (а слайды — на github). Начали тему нейросетевого ранжирования:

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

2. На семинаре Артём Матвеев разобрал статью Unified Embedding: Battle-Tested Feature Representations for Web-Scale ML Systems и сказал пару слов про On Embeddings for Numerical Features in Tabular Deep Learning.

P.S: ещё выступал вчера на коллоквиуме ФКН по теме своей последней статьи, когда появится запись — напишу.
🔥37👍6❤‍🔥43
Deep RecSys Course VI.

Канал временно превратился в инструмент анонса выхода новых занятий курса на ютубе, но я надеюсь вас это не смущает :)

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

На лекции поговорили про:
1. Моделирование взаимодействия признаков — от линейных моделей и факторизационных машин до DCN-v2 и новомодных трансформерных моделей
2. Что используем в качестве глубоких слоев (ResNet / DenseNet)
3. Про multi-task modeling — одновременное обучение на разные типы сигнала и специальные архитектуры типа MMoE (multi-gate MoE). А ещё немного затронули entire space multi-task modeling
4. И чуть-чуть поговорили про position bias в ранжировании и как с ним бороться, а также про knowledge distillation

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

На семинаре Артём Матвеев разобрал статью про DCN-v2.

YouTube | Github.
48🔥28❤‍🔥9
Deep RecSys Course VII.

Преодолели экватор курса!

Я уже, конечно, знатно подустал, столько лекций делать. Подготовка каждой лекции занимает до четырех фулл-тайм дней даже при условии, что я далеко не все лекции делаю с нуля. Набросать структуру лекции, расписать текстовый скрипт о чем буду говорить (это, по сути, подготовка главы для книги), изучить материал и доуточнить содержимое (пройтись по старым и новым статьям), сделать скелет презентации, добавить иллюстрации и ссылки.

К счастью сейчас будет небольшой перерыв на пару недель, после следующей лекции. Планирую посетить Японию :)

Вышло седьмое занятие про трансформеры и анализ истории пользователя. Успели покрыть:
1. Ранжирование (DIN, BST, TransAct, OneTrans, MixFormer)
2. Кандген/representation learning (SASRec, BERT4Rec, PinnerFormer)
3. И еще был небольшой recap механизма внимания и трансформеров в начале лекции

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

На семинаре Владимир Байкалов разбирал статьи про моделирование пользователей в Пинтересте — PinnerFormer и TransAct (да-да, там есть и более свежие статьи, но они скорее относятся к поздним лекциям курса; в учебных целях было полезно разобрать именно эти модели).

YouTube | Github.
47🔥15❤‍🔥4👍1
Deep RecSys Course VIII.

Залил на ютуб запись восьмого занятия курса. Кратенько про содержимое:

1. На лекции поговорили про трансформеры в Яндексе и затем про графовые нейросети — моделирование user-item взаимодействий в виде двудольного графа, эволюцию Пинтереста от GraphSAGE к обучаемым эмбеддингам

2. На семинаре Сергей Макеев и Александр Андреев @life_struggle_mosaic выступили с подробным разбором нашего решения RecSys Challenge 2025

YouTube | Github

P.S: отправляемся на перерыв до 21-го апреля :)

P.P.S: кстати, уже перемахнули за 1300 часов просмотра!
🔥277❤‍🔥3👍1
Deep RecSys Course IX.

Возвращаемся после перерыва с новым занятием — в этот раз с гостевой лекцией от Риты Мишустиной, руководителя группы нейросетевого ранжирования рекламы в Яндексе. Запись лекции прикладываю, а вот Q&A с Ритой после лекции, который продлился больше часа, был не под запись :)

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

Рассказ получился хороший, думаю по нему можно онбордить новых сотрудников в ML рекламы Яндекса :)

YouTube | Github

Fun fact: и я, и Рита начинали свою карьеру в Яндексе в 2020-м году в службе компьютерного зрения))
🔥4815❤‍🔥7👍1🐳1
Deep RecSys Course X.

Начинаем серию из двух занятий про обучение с подкреплением!

На лекции:

1. Закончили тему графовых моделей - обсудили unsupervised graph learning, модели от Twitter и TikTok.

2. Обсудили задачу RL бандитов - что такое feedback loop и зачем нужен exploration, формализацию бандитной задачи, простые алгоритмы ее решения.

На семинаре обсуждали использование бандитных алгоритмов в Ютубе:

1. Разобрали статью про кандген — Online Matching: A Real-time Bandit System for Large-scale Recommendations

2. Немного затронули ранжирование — Long-Term Value of Exploration: Measurements, Findings and Algorithms

YouTube | Github

P.S: эту легендарную картинку со странички лабы Microsoft Research SV можно увидеть в большей части лекций и докладов про бандитов :)
🔥365❤‍🔥4🥰1
В первые две минуты аниме Lazarus (последняя на текущий момент работа Шиничиро Ватанабэ, автора моего любимого Ковбоя Бибопа) есть сцена, в которой герой в автомобиле пользуется разговорными рекомендациями — просит включить музыку с нужным вайбом.

А у нас вышло новое, одиннадцатое занятие Deep Recsys курса. Оно, конечно, не про разговорные рекомендации, но тоже тема интересная!

На лекции:
1. Сделали переход от next item prediction к RL
2. Обсудили алгоритм REINFORCE: рассмотрели all-actions и reward-to-go версии, вывели оптимальный baseline, сделали off-policy correction

На семинаре разобрали статью Top-K Off-Policy Correction for a REINFORCE Recommender System про применение REINFORCE в Youtube.

YouTube | Github

P.S: курс постепенно подходит к концу. Осталось три занятия — одна гостевая лекция и два занятия одно занятие про генеративные модели.
1🔥4410👏7❤‍🔥3👍1🤣1😈1
Сегодня у нас в дипрексис курсе было большое занятие про генеративные рекомендации. Лекция получилась насыщенная, тем много, если вам интересно, что сейчас происходит в области — стоит посмотреть!

О чем рассказывал:

1. Что такое генеративные модели. Сейчас словом "генеративный" называют все что попало; и рекомендаций это тоже коснулось. Если хотите уметь подловить человека, когда он использует термин неправильно — эта секция для вас))

2. Генеративное ранжирование. В 2024 году вышла нашумевшая статья "Actions speak louder than words...", которая много кого вдохновила (включая меня) на то, чтобы перейти на авторегрессивное обучение рекомендательных моделей и сделать попытку их замасштабировать (spoiler: так появился ARGUS). Узнать, действительно ли в этой статье были "генеративные рекомендации" или это фейк можно по ссылке...

3. Generative retrieval & semantic IDs. В 2023 году вышла статья "Recommender systems with generative retrieval", которая представила концепт "semantic IDs" (дискретные представления объектов на основе контента для рекомендаций) и объединила его с генеративным ретривалом из DSI. Сначала статью не заметили, но на сцену VideoRecSys воркшопа RecSys'24 вышел небезызвестный Эд Чи и понеслось: сейчас все вокруг внедряют generative retrieval вместо двухбашенных моделей, а semantic IDs стали ключевым строительным кирпичиком и для генеративных кандгенов, и для одностадийных рексистем, и для разговорных рексистем. Чтобы научиться поддерживать светскую беседу про семантические айдишники, надо всего лишь нажать сюда

4. Одностадийные рексистемы. В 2025 году вышел очередной next big thing в рекомендациях — OneRec. В статье инженеры из Kuaishou описали успешный рецепт внедрения одностадийной рексистемы: generative retrieval + encoder-decoder + RL. Но есть один нюанс — узнать его можно по ссылке...

5. Разговорные рексистемы. В наше время рекомендательные системы очень хорошо удерживают внимание пользователей. Когда заработает долгосрочный RL из прошлой лекции, все станет еще хуже)) Единственное решение — дать пользователям больше контроля над рекомендациями. Но всякие разные настройки/ползунки/фильтры не работают, люди ими не пользуются. Выход есть — и это разговорные рекомендации! Чтобы узнать, чем занимаются инженеры из YouTube и Spotify прямо сейчас в 2026 году, нужно всего лишь... (тык)

На семинаре был разбор той самой статьи "Recommender systems with generative retrieval" из пункта 3.

Слайды лекции доступны на Github.

В курсе осталось одно занятие — гостевая лекция. Фух! Можно приступать к следующей фазе захвата рекомендательного мира 👀
🔥61👍2518❤‍🔥2🥰2
Wake up, honey, a new Google DeepMind RecSys paper just dropped.

Вышла статья ORBIT: Preserving Foundational Language Capabilities in GenRetrieval via Origin-Regulated Merging от авторов TIGER и PLUM.

Если натюнить LLM на рекомендательную задачу, она теряет способность "разговаривать", если не тюнить — качество рекомендаций плохое. Как получить модель, которая одновременно и разговаривает, и хорошо рекомендует?

Про PLUM. В PLUM они файнтюнили Gemini на задачу рекомендаций в два этапа:
1) Сначала учили модель понимать каталог через две задачи — предсказание следующего айтема и восстановление метаданных айтема по semantic ID
2) Затем дообучали на generative retrieval

В статье были черри-пикнутые примеры на тему того, что после первой стадии модель все еще понимает естественный язык. Но про вторую стадию таких примеров не было, что наводило на мысль, что после generative retrieval fine-tuning разговорные способности теряются. Собственно, в новой статье они про это явно сказали.

Что делают в новой статье. Используют model merging — простое усреднение параметров нескольких чекпойнтов модели. Берут исходный "разговорный" чекпойнт LLM (здесь это 1B версия Gemma3) и усредняют его с дообученной на рекомендации версией. Если усреднять уже в самом конце дообучения, то работает плохо, а вот если по мере дообучения раз в какое-то количество шагов — работает хорошо.

Origin-Regulated Merging. Метод Soup-to-go, который раз в K шагов обновления параметров делает слияние моделей, уже довольно неплохо работает. Но авторы смогли относительно него еще улучшиться — заметили, что чем "дальше" модель от исходного разговорного чекпойнта, тем больше падают способности, связанные с текстом. Они ввели метрику близости между чекпойнтами модели (рассматривают два варианта — евклидово расстояние и доля несовпадающих по знаку параметров) и задали пороговое значение метрики, после которого должно срабатывать слияние текущего чекпойнта с исходной LLM. Сначала слияние происходит часто (e.g., каждые 500 шагов), затем реже (каждые 3к шагов).

Мое мнение.
* Как всегда, пользуются надежным рецептом успеха — адаптируют к рексистемам общие deep learning техники. Кажется, в DL такой трюк используют с 2022-го года — начиная со статьи Model Soups
* Для замера рекомендательного качества используют очень нереалистичный сетап из TIGER — Amazon reviews с leave-one-out сплитом, еще и всего 20 событий в истории пользователя
* И важный момент — усредненная модель всё еще существенно хуже на рекомендательных задачах, чем просто зафайнтюненная модель; и хуже на разговорных, чем исходный LLM чекпойнт
🔥32😁64
Deep RecSys Course XIII.

Сегодня было финальное занятие курса — гостевая лекция от Лёши Васильева, руководителя команды рекомендательных систем Sber AI Lab. Лёша в подробностях рассказывал про статьи, в написании которых участвовала его команда; некоторые из них мы уже упоминали в рамках курса.

Был блок статей про оценку качества:
1. Quality Metrics in Recommender Systems: Do We Calculate Metrics Consistently?
2. An Analysis of Sequential Patterns in Datasets for Evaluation of Sequential Recommendations
3. Time to Split: Exploring Data Splitting Strategies for Offline Evaluation of Sequential Recommenders

И про алгоритмы:
1. Turning Dross Into Gold Loss: is BERT4Rec really better than SASRec?
2. Autoregressive Generation Strategies for Top-K Sequential Recommendations
3. Let It Go? Not Quite: Addressing Item Cold Start in Sequential Recommendations with Content-Based Initialization

У Лёши есть тг-канал — @recsys_themes. Подписывайтесь!

YouTube
20👍11