RecSys · учебник
Тренажёр Виджеты О проекте Все главы

Режим повторения

Вопросы с собеседований

Все 202 вопросов учебника подряд. Сначала отвечаете сами, потом раскрываете ответ и помечаете «знаю» или «повторить» — отметки сохраняются в браузере.

все Часть I · 6 Часть I · 6 Часть I · 6 Часть I · 6 Часть II · 5 Часть II · 7 Часть II · 7 Часть II · 6 Часть II · 6 Часть III · 8 Часть III · 9 Часть III · 8 Часть III · 8 Часть IV · 8 Часть IV · 8 Часть IV · 9 Часть V · 8 Часть V · 8 Часть VI · 9 Дополнение · 6 Дополнение · 5 Дополнение · 5 Дополнение · 7 Дополнение · 7 Дополнение · 7 Дополнение · 5 Дополнение · 5 Дополнение · 4 Дополнение · 4 Дополнение · 9
Часть I · Задача: почему рекомендации устроены именно так
Что такое длинный хвост и как измерить, насколько он длинный?
к главе
Часть I · Задача: почему рекомендации устроены именно так
Почему длинный хвост делает холодный старт неизбежным?
к главе
Часть I · Задача: почему рекомендации устроены именно так
Как бизнес-модель влияет на целевую функцию рекомендаций?
к главе
Часть I · Задача: почему рекомендации устроены именно так
Почему оптимизация прокси-метрики со временем портит продукт?
к главе
Часть I · Задача: почему рекомендации устроены именно так
Почему рекомендательная система многостадийная, а не одна большая модель?
к главе
Часть I · Задача: почему рекомендации устроены именно так
Какой метрикой мерить кандидатогенерацию и почему не точностью?
к главе
Часть I · Данные и смещения
Почему в продакшене учат на неявном фидбеке, а не на оценках?
к главе
Часть I · Данные и смещения
Что на самом деле предсказывает модель, обученная на логах?
к главе
Часть I · Данные и смещения
Почему нельзя брать случайные айтемы каталога негативами для ранкера?
к главе
Часть I · Данные и смещения
Перечислите основные смещения и чем они отличаются по механизму.
к главе
Часть I · Данные и смещения
Почему позиционное смещение нельзя вылечить моделью?
к главе
Часть I · Данные и смещения
Как быстро замыкается feedback loop и как это заметить?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Почему кандидатогенерацию меряют полнотой, а ранжирование — нет?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Почему Recall@K нельзя сравнивать при фиксированном K?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Чем NDCG лучше MAP и Precision@k?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Почему одна инверсия не равна другой инверсии?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Что AUC не показывает и когда это критично?
к главе
Часть I · Метрики: чем меряют кандидатогенерацию и ранжирование
Micro или macro: по чему усреднять метрику?
к главе
Часть I · Валидация и эксперимент
Почему нельзя делать случайный сплит?
к главе
Часть I · Валидация и эксперимент
Что делать с холодными пользователями и айтемами в тестовой выборке?
к главе
Часть I · Валидация и эксперимент
Зачем нужен бейзлайн популярности, если он заведомо хуже?
к главе
Часть I · Валидация и эксперимент
Сколько трафика нужно, чтобы поймать прирост в 1%?
к главе
Часть I · Валидация и эксперимент
Почему нельзя подглядывать в результаты A/B по ходу?
к главе
Часть I · Валидация и эксперимент
Когда рандомизация по пользователям даёт смещённую оценку?
к главе
Часть II · Коллаборативная фильтрация и меры похожести
Чем отличаются Жаккар, косинус и PMI?
к главе
Часть II · Коллаборативная фильтрация и меры похожести
Почему PMI нельзя использовать в чистом виде?
к главе
Часть II · Коллаборативная фильтрация и меры похожести
Правда ли, что NPMI очищает похожесть от популярности?
к главе
Часть II · Коллаборативная фильтрация и меры похожести
Чем выученная item-item матрица лучше посчитанной?
к главе
Часть II · Коллаборативная фильтрация и меры похожести
EASE или SLIM: в чём разница и что выбрать?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Чем матричная факторизация отличается от коллаборативной фильтрации?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Почему «SVD» в рекомендациях — не SVD?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Почему ALS предпочитают SGD в продакшене?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Что такое ранг и как его выбирать?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Зачем нужна регуляризация в ALS — назовите обе роли.
к главе
Часть II · Матричная факторизация, ALS и fold-in
Как iALS работает с неявным фидбеком?
к главе
Часть II · Матричная факторизация, ALS и fold-in
Как выдать рекомендации пользователю, которого не было в обучении?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Что такое folding и почему это фатально для кандидатогенератора?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Почему модель с folding внутри своей группы работает лучше?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Решают ли in-batch негативы проблему folding?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Почему вклад негатива в градиент зависит от того, как модель его оценила?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Выведите LogQ-коррекцию и объясните, что она делает.
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Как оценить Q на потоке, где нет фиксированного словаря?
к главе
Часть II · Двухбашенные модели: folding, негативы и LogQ
Зачем нормировать эмбеддинги и зачем при этом температура?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Почему ID-эмбеддинги называют самой мощной моделью объекта?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Почему свободные эмбеддинги плохо работают на хвосте?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Что такое one-epoch phenomenon и почему нельзя просто уменьшить разреженность?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Почему контентное кодирование вытягивает хвост?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Чем платят за переход на контентные признаки?
к главе
Часть II · Кодирование объектов: обучаемые эмбеддинги против контентных
Что даёт hashing trick, кроме экономии памяти?
к главе
Часть II · ANN, квантизация и semantic IDs
Почему нельзя просто перебрать все векторы?
к главе
Часть II · ANN, квантизация и semantic IDs
Чем MIPS отличается от поиска ближайших соседей?
к главе
Часть II · ANN, квантизация и semantic IDs
Как устроен HNSW и что такое efSearch?
к главе
Часть II · ANN, квантизация и semantic IDs
Что даёт product quantization и чем за это платят?
к главе
Часть II · ANN, квантизация и semantic IDs
Что такое semantic IDs и зачем они нужны?
к главе
Часть II · ANN, квантизация и semantic IDs
Что такое generative retrieval и в чём его риск?
к главе
Часть III · Обучение ранжированию
Чем pointwise, pairwise и listwise отличаются по смыслу?
к главе
Часть III · Обучение ранжированию
Выведите BPR.
к главе
Часть III · Обучение ранжированию
Почему AUC и NDCG не видят калибровки, и когда это больно?
к главе
Часть III · Обучение ранжированию
Что такое LambdaRank и почему его считают listwise-лоссом?
к главе
Часть III · Обучение ранжированию
Как устроен YetiRank и чем он отличается от LambdaRank?
к главе
Часть III · Обучение ранжированию
Когда YetiRank применять не стоит?
к главе
Часть III · Обучение ранжированию
Чем listwise-софтмакс отличается от sampled softmax в кандидатогенерации?
к главе
Часть III · Обучение ранжированию
Какое ограничение есть у всех трёх семейств сразу?
к главе
Часть III · Признаки
Почему в рекомендациях не хватает градиентного бустинга?
к главе
Часть III · Признаки
А когда бустинг наоборот лучше?
к главе
Часть III · Признаки
Покажите, что эмбеддинг — это линейный слой.
к главе
Часть III · Признаки
Как выбрать размер эмбеддинга?
к главе
Часть III · Признаки
Какие оптимизации эмбеддинг-слоя вы знаете?
к главе
Часть III · Признаки
Зачем преобразовывать вещественные признаки и как?
к главе
Часть III · Признаки
Почему час нельзя подавать числом от 0 до 23?
к главе
Часть III · Признаки
Что такое PLE и чем оно лучше биннинга?
к главе
Часть III · Признаки
Почему дискретизованный semantic ID работает лучше плотного контентного вектора?
к главе
Часть III · Взаимодействия признаков
Расскажите цепочку моделей взаимодействий признаков.
к главе
Часть III · Взаимодействия признаков
Что не так с явными кросс-признаками?
к главе
Часть III · Взаимодействия признаков
Как FM решает обе проблемы?
к главе
Часть III · Взаимодействия признаков
Почему нельзя просто поставить MLP и надеяться, что он выучит произведения?
к главе
Часть III · Взаимодействия признаков
Как устроен кросс-слой DCN-v2?
к главе
Часть III · Взаимодействия признаков
Как комбинировать cross network с MLP?
к главе
Часть III · Взаимодействия признаков
Почему обычный трансформер плохо подходит для признаков?
к главе
Часть III · Взаимодействия признаков
Почему добавление слоёв в MLP ухудшает качество и что с этим делают?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Зачем ранжирующей модели несколько задач и в чём беда shared bottom?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Что такое MMoE и чем он отличается от MoE?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Что такое ESMM и какую проблему он решает?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Почему CTR выше на первых позициях и что с этим делать?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Как устроена bias-башня?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Зачем учиться на предсказания учителя, если есть настоящие метки?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Почему у ученика делают две головы?
к главе
Часть III · Мультизадачность, дебиасинг и дистилляция
Где дистилляция ломается в проде?
к главе
Часть IV · Трансформеры над историей
Чем target attention отличается от усреднения истории?
к главе
Часть IV · Трансформеры над историей
Почему в DIN не нормализуют веса внимания софтмаксом?
к главе
Часть IV · Трансформеры над историей
Что делает температура внимания?
к главе
Часть IV · Трансформеры над историей
Расскажите про SASRec, BERT4Rec и чем закончилась их история.
к главе
Часть IV · Трансформеры над историей
Почему в рекламе ушли от раннего связывания?
к главе
Часть IV · Трансформеры над историей
Почему в историю берут клики, а не показы?
к главе
Часть IV · Трансформеры над историей
Как работать с очень длинной историей?
к главе
Часть IV · Трансформеры над историей
Как измеряют время пребывания на документе?
к главе
Часть IV · Переранжирование и разнообразие
Зачем нужен отдельный слой переранжирования, если ранкер уже всё отсортировал?
к главе
Часть IV · Переранжирование и разнообразие
Чем разнообразие отличается от exploration?
к главе
Часть IV · Переранжирование и разнообразие
Как измерить разнообразие?
к главе
Часть IV · Переранжирование и разнообразие
Что такое MMR?
к главе
Часть IV · Переранжирование и разнообразие
Как подобрать λ?
к главе
Часть IV · Переранжирование и разнообразие
Что такое DPP и почему определитель означает разнообразие?
к главе
Часть IV · Переранжирование и разнообразие
Почему жадный алгоритм здесь допустим?
к главе
Часть IV · Переранжирование и разнообразие
Можно ли обойтись без отдельного слоя разнообразия?
к главе
Часть IV · Exploration и бандиты
Что такое петля обратной связи и как из неё выбраться?
к главе
Часть IV · Exploration и бандиты
Выведите бонус UCB.
к главе
Часть IV · Exploration и бандиты
Чем Thompson отличается от UCB?
к главе
Часть IV · Exploration и бандиты
Почему в проде чаще берут Thompson, если UCB даёт больше награды?
к главе
Часть IV · Exploration и бандиты
Что брать за ручку в рекомендациях?
к главе
Часть IV · Exploration и бандиты
Почему бандитный слой ставят на переранжирование?
к главе
Часть IV · Exploration и бандиты
Откуда брать σ и какая именно σ нужна?
к главе
Часть IV · Exploration и бандиты
Как настраивать силу бонуса?
к главе
Часть IV · Exploration и бандиты
Когда бандитный слой не нужен?
к главе
Часть V · Данные и логирование
Зачем нужны два контура вычисления признаков?
к главе
Часть V · Данные и логирование
Что такое feature skew и почему это важно?
к главе
Часть V · Данные и логирование
Логировать признаки или восстанавливать их потом?
к главе
Часть V · Данные и логирование
Какой минимальный набор логов нужен?
к главе
Часть V · Данные и логирование
Что такое ID Graph и зачем он нужен?
к главе
Часть V · Данные и логирование
Что такое покрытие фичи и почему за ним следят?
к главе
Часть V · Данные и логирование
Какие бывают виды дрейфа и как их детектировать?
к главе
Часть V · Данные и логирование
Как устроено переобучение и чем рискует онлайн-дообучение?
к главе
Часть V · Рантайм
Почему кандидатогенерацию и признаки выносят в отдельные сервисы?
к главе
Часть V · Рантайм
Где ставить фильтры и почему?
к главе
Часть V · Рантайм
Чем опасна массовая инвалидация кеша?
к главе
Часть V · Рантайм
Как устроен фильтр Блума и зачем он в рекомендациях?
к главе
Часть V · Рантайм
Зачем в блендинге PID-контроллер?
к главе
Часть V · Рантайм
Что делать, когда часть системы недоступна?
к главе
Часть V · Рантайм
Что такое тыква и как с ней работать?
к главе
Часть V · Рантайм
Что мониторить в рекомендательном сервисе?
к главе
Часть VI · Проектирование системы
Спроектируйте рекомендательную систему для X. С чего начнёте?
к главе
Часть VI · Проектирование системы
Почему целеполагание нельзя пропускать?
к главе
Часть VI · Проектирование системы
Как понять, нужна ли кандидатогенерация?
к главе
Часть VI · Проектирование системы
Бизнесу нужны подписки. Почему нельзя мерить подписки?
к главе
Часть VI · Проектирование системы
Как быстро сгенерировать идеи для признаков?
к главе
Часть VI · Проектирование системы
Что такое каннибализация поверхностей и как с ней быть?
к главе
Часть VI · Проектирование системы
Как сделать онбординг холодного пользователя?
к главе
Часть VI · Проектирование системы
Что меняется, когда в системе появляются авторы?
к главе
Часть VI · Проектирование системы
Как разложить бюджет ответа по стадиям?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Зачем разделять ранжирование и фильтрацию по видимости? Почему не занизить скор?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Почему фильтрация по видимости стоит после ранжирования, а не до?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Что даёт предсказание отдельных действий вместо одного скора релевантности?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Почему кандидатам запрещено смотреть друг на друга в трансформере?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Зачем хеш-эмбеддинги, если можно вести словарь идентификаторов?
к главе
Дополнение · Открытый код ленты «For You»: что это и как читать
Что важнее для понимания системы: код пайплайна или веса модели?
к главе
Дополнение · Пайплайн: как лента собирается из типовых стадий
Спроектируйте пайплайн рекомендательного сервиса. Какие стадии и в каком порядке?
к главе
Дополнение · Пайплайн: как лента собирается из типовых стадий
Что должно происходить, если один из источников кандидатов недоступен?
к главе
Дополнение · Пайплайн: как лента собирается из типовых стадий
Зачем нужен метод «включён ли» у каждой стадии?
к главе
Дополнение · Пайплайн: как лента собирается из типовых стадий
Почему гидратация запроса разбита на два круга?
к главе
Дополнение · Пайплайн: как лента собирается из типовых стадий
Как измерять, где пайплайн теряет время?
к главе
Дополнение · Источники: откуда вообще берутся посты
Зачем в системе несколько кандидатогенераторов, если один из них — обученная модель?
к главе
Дополнение · Источники: откуда вообще берутся посты
Как отдавать посты подписок за единицы миллисекунд?
к главе
Дополнение · Источники: откуда вообще берутся посты
Что такое SimClusters и чем он отличается от матричной факторизации?
к главе
Дополнение · Источники: откуда вообще берутся посты
Зачем держать в системе источник, пересчитываемый раз в неделю?
к главе
Дополнение · Источники: откуда вообще берутся посты
Можно ли переиспользовать посчитанный скор при следующем запросе?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Почему в двухбашенной модели отказались от обучаемого эмбеддинга пользователя?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Что такое semantic ID и чем он лучше хеша идентификатора?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Зачем нужны и in-batch, и глобальные негативы, если in-batch бесплатны?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Зачем LogQ-коррекция и почему её масштаб равен двум?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Почему для retrieval позитив — только лайк, а не любое взаимодействие?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Зачем хранить индекс кандидатов внутри чекпоинта модели?
к главе
Дополнение · Retrieval: две башни, хеши и semantic IDs
Векторы обеих башен нормируются. Что это меняет?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Как реализована изоляция кандидатов и что она даёт?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Почему конверсионные головы обучаются только на кликнутых постах?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Зачем разные оптимизаторы для плотных слоёв и эмбеддингов?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Что предсказывается регрессией, а не классификацией, и зачем?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Зачем добавлять шум в признак «час дня»?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
Ранкер вдвое шире ретривера. Почему не наоборот?
к главе
Дополнение · Ранжирование: трансформер, который запрещает кандидатам смотреть друг на друга
История в модели двусторонняя, без причинной маски. Не утечка ли это?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Почему нельзя сказать, что жалоба перечёркивает 468 лайков?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Зачем финальный скор загоняют в неотрицательную область?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Как реализовано разнообразие по авторам и чем это лучше квоты?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Почему ответы и репосты от людей, на которых вы подписаны, получают дисконт?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Что происходит с постами новых авторов и при чём тут бандиты?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Зачем нужен DPP, если разнообразие уже наводится затуханием по автору?
к главе
Дополнение · Скоринг: из вероятностей действий в одно число
Как вы поймёте, что вес выбран правильно?
к главе
Дополнение · Фильтрация: двадцать девять поводов не показать пост
В каком порядке ставить фильтры в рекомендательном пайплайне?
к главе
Дополнение · Фильтрация: двадцать девять поводов не показать пост
Почему отбирают больше постов, чем показывают?
к главе
Дополнение · Фильтрация: двадцать девять поводов не показать пост
Как гарантировать, что пользователь не увидит один и тот же пост дважды?
к главе
Дополнение · Фильтрация: двадцать девять поводов не показать пост
Как измерить, сколько ценности приносит определённый тип контента в ленте?
к главе
Дополнение · Фильтрация: двадцать девять поводов не показать пост
Фильтр по возрасту выбрасывает всё старше 48 часов. Не теряем ли мы хорошее?
к главе
Дополнение · Разметка и видимость: можно ли показать этот пост
Зачем в системе модерации три возможных ответа, а не два?
к главе
Дополнение · Разметка и видимость: можно ли показать этот пост
Как использовать сразу два детектора одного и того же — с высокой точностью и с высокой полнотой?
к главе
Дополнение · Разметка и видимость: можно ли показать этот пост
Как оценить репутацию аккаунта и почему нужно несколько способов?
к главе
Дополнение · Разметка и видимость: можно ли показать этот пост
Чем детектор ботов похож на рекомендательную модель?
к главе
Дополнение · Разметка и видимость: можно ли показать этот пост
Почему решение о видимости не встроено в ранжирующую модель?
к главе
Дополнение · Блендинг: лента состоит не только из постов
Как встроить рекламу в ранжированную ленту?
к главе
Дополнение · Блендинг: лента состоит не только из постов
Зачем ограничивать рекламу долей от «безопасных» постов?
к главе
Дополнение · Блендинг: лента состоит не только из постов
Как часто показывать блок рекомендаций аккаунтов?
к главе
Дополнение · Блендинг: лента состоит не только из постов
Что должно происходить после отправки ответа пользователю?
к главе
Дополнение · Конфигурация: как система меняется, не меняясь
Как организовать конфигурацию рекомендательной системы, чтобы можно было экспериментировать?
к главе
Дополнение · Конфигурация: как система меняется, не меняясь
Если значения живут во внешней конфигурации, какой смысл в открытом коде?
к главе
Дополнение · Конфигурация: как система меняется, не меняясь
Расскажите про случай, когда хорошие метрики скрывали проблему.
к главе
Дополнение · Конфигурация: как система меняется, не меняясь
Как понять, что параметр в коде стоит нулём: это выключено или сломано?
к главе
Дополнение · Чему этот код учит о теории
Спроектируйте ленту социальной сети. С чего начнёте?
к главе
Дополнение · Чему этот код учит о теории
Как представить пользователя и айтем, если контент живёт часы?
к главе
Дополнение · Чему этот код учит о теории
Модель предсказывает десяток разных действий. Как свести их в один скор?
к главе
Дополнение · Чему этот код учит о теории
Как не дать одному автору занять всю ленту?
к главе
Дополнение · Чему этот код учит о теории
Как поддержать новых авторов, не сломав ленту?
к главе
Дополнение · Чему этот код учит о теории
Пользователь жалуется, что видит один и тот же пост дважды. Где искать?
к главе
Дополнение · Чему этот код учит о теории
Как измерить, сколько ценности приносит определённый тип контента?
к главе
Дополнение · Чему этот код учит о теории
Метрики выросли, а пользователи жалуются. Что делать?
к главе
Дополнение · Чему этот код учит о теории
Что бы вы сделали иначе, чем сделано в X?
к главе