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

О проекте

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

Что это

Материалов по рекомендательным системам много, и почти все отвечают на вопрос «что делают». Заметно реже — на вопрос «почему именно так и где это ломается». Этот учебник вырос из попытки разобрать каждую тему до второго уровня.

Отсюда три особенности формата:

Как проверяются утверждения

Три уровня проверки
  • Математика виджетов сверена с независимой реализацией на Python: те же входы, отдельно написанный код, допуск 1e-9. Симуляции folding и бандита-переранжировщика сверены бит-в-бит.
  • Утверждения о чужом коде проверяются автоматически. Скрипт извлекает параметры прямо из исходников и сверяет с тем, что написано в тексте, — 122 сверки. Утверждение не может разойтись с кодом, который описывает.
  • Целостность страниц — отдельная проверка: битые якоря, дубли идентификаторов, неотрендеренные формулы, ссылка «виджет …» в раздел, где виджета нет. Все эти классы ошибок встречались вживую, поэтому и проверяются.

Откуда материал

Два источника, и оба — свои.

ЧастьИсточник
Разбор реальной системы Собственный анализ открытого кода ленты «For You» в X. Короткие фрагменты кода цитируются под Apache 2.0 с указанием файла и коммита; объяснение, структура, схемы, числа и виджеты — наши
Теория Первоисточники: статьи, открытая документация, открытый код. Каждое утверждение сопровождается ссылкой на работу, из которой взято, а каждый численный пример — скриптом в _tools/, которым он посчитан
Что здесь процитировано

Единственный чужой материал в учебнике — короткие фрагменты исходного кода x-algorithm, распространяемого под лицензией Apache 2.0. Каждый фрагмент подписан: файл, коммит, ссылка на оригинал. Полный перечень — в файле NOTICE репозитория.

Все схемы нарисованы для этого учебника: ни один рисунок в тексте не является картинкой — вся графика глав это inline-SVG прямо в разметке страницы, поэтому она масштабируется, читается в тёмной теме и не может разойтись с текстом вокруг.

Растровых файлов в проекте два вида, и оба вне текста: брендовый знак и обложки глав. Обложки нарисованы моделью по промптам, которые лежат в репозитории (docs/_tools/cover_prompts.md) — это украшение оглавления и превью ссылки, а не содержание. Ни один разбор, ни одна схема и ни одно число из них не берутся.

Автор

TLIAMOV LAB

Анвар Тлямов — ML-инженер, занимаюсь рекомендательными системами. Учебник вырос из собственной подготовки к собеседованиям: почти всё, что удавалось найти, объясняло, что делают, и почти ничего — почему именно так и где это ломается. Этот второй уровень я и записал.

Написать: LinkedIn. Вопросы по учебнику, замеченные ошибки и предложения приветствуются.

Права

Текст учебника, схемы и структура — авторские, все права сохранены. Инструменты сборки и проверки, а также исходный код виджетов, опубликованы под лицензией MIT: их можно брать и использовать свободно.

Цитирование фрагментов для обзора, преподавания или разбора — обычное добросовестное использование и не требует ничьего разрешения.

Состояние

Теоретическая часть написана целиком: девятнадцать глав от постановки задачи до проектирования системы. Разбор открытого кода реальной ленты — одиннадцать глав — тоже готов.

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

Статистика

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

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