AI и машинное обучение

Учебник Рекомендательные системы для начинающих

24 урока · 8 разделов · бесплатно, без регистрации

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

Этот курс ведёт от базовых идей к промышленным решениям. Мы разберём, чем явный фидбэк отличается от неявного и почему разреженность — главная боль; реализуем коллаборативную фильтрацию (user-based и item-based) и матричное разложение прямо на чистом Python; научимся бороться с холодным стартом; построим контентные и гибридные рекомендации; заглянем в two-tower и трансформеры; и поймём, как устроена настоящая продакшн-система «кандидаты → ранжирование → бизнес-правила». Отдельно обсудим метрики, офлайн- и онлайн-оценку и этику рекомендаций.

Курс опирается на знания из учебников «Машинное обучение», «Глубокое обучение», «RAG и векторные БД» и «Статистика». Все ключевые алгоритмы реализованы на стандартной библиотеке Python и снабжены проверяемым выводом — их можно запустить прямо в браузере.

Курс «Рекомендательные системы» состоит из 8 разделов и 24 уроков: Зачем нужны рекомендательные системы, Постановка задачи и данные, Коллаборативная фильтрация, Матричное разложение, Контентные и гибридные рекомендации, Нейросетевые рекомендации, Оценка качества рекомендаций и Продакшн, масштаб и этика. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Зачем нужны рекомендательные системы

    1. Что такое рекомендательная система и зачем она нужна

      Рекомендательная система: определение, примеры Netflix, YouTube и маркетплейсов, эффект длинного хвоста и бизнес-ценность.

    2. Типы рекомендаций

      Персональные рекомендации, похожие товары, популярное и «вместе покупают»: где и зачем применяется каждый тип.

    3. Явный и неявный фидбэк

      Явный фидбэк (оценки) против неявного (клики, просмотры, покупки): в чём разница и почему неявный сигнал сложнее.

  2. 2 Постановка задачи и данные

    1. Матрица взаимодействий пользователь-товар

      Как устроена матрица взаимодействий пользователь-товар и почему разреженность — главная проблема рекомендаций.

    2. Популярность и эвристики как baseline

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

  3. 3 Коллаборативная фильтрация

    1. Идея коллаборативной фильтрации

      Коллаборативная фильтрация: «похожим людям нравится похожее». Базовая идея, типы и связь с матрицей взаимодействий.

    2. Метрики похожести

      Косинусная похожесть, корреляция Пирсона и коэффициент Жаккара: как измерять сходство пользователей и товаров.

    3. User-based коллаборативная фильтрация

      User-based CF: поиск похожих пользователей по косинусу и прогноз оценок взвешенным усреднением. Реализация на Python.

    4. Item-based коллаборативная фильтрация

      Item-based CF: похожесть товаров, подход Amazon и почему он стабильнее user-based. Реализация на Python.

  4. 4 Матричное разложение

    1. Скрытые факторы и идея SVD

      Латентные факторы в рекомендациях: как SVD и ALS раскладывают матрицу взаимодействий на скрытые признаки.

    2. Матричное разложение градиентным спуском

      Реализация матричного разложения на чистом Python: обучение латентных факторов стохастическим градиентным спуском.

    3. Проблема холодного старта

      Холодный старт нового пользователя и нового товара: почему CF здесь бессильна и какие стратегии спасают.

  5. 5 Контентные и гибридные рекомендации

    1. Контентные рекомендации

      Контентные рекомендации: профиль пользователя по признакам товаров, TF-IDF и связь с векторными представлениями.

    2. Гибридные системы

      Гибридные рекомендации: как совмещать контентные и коллаборативные модели и зачем это нужно.

  6. 6 Нейросетевые рекомендации

    1. Эмбеддинги и two-tower архитектура

      Two-tower модель рекомендаций: эмбеддинги пользователя и товара, генерация кандидатов и связь с ANN-поиском.

    2. Deep learning для рекомендаций

      Нейро-CF, последовательные модели и трансформеры для рекомендаций: что смотрел подряд и как это предсказать.

    3. Ранжирование (learning to rank)

      Learning to rank в рекомендациях: признаки кандидатов, попарный подход и бустинг для ранжирования.

  7. 7 Оценка качества рекомендаций

    1. Метрики точности и ранжирования

      precision@k, recall@k, MAP и NDCG: как измерять качество рекомендаций. Реализация метрик на Python.

    2. Разнообразие, новизна и покрытие

      Beyond-accuracy метрики рекомендаций: разнообразие, новизна, покрытие каталога и почему точность — не всё.

    3. Офлайн и онлайн оценка

      Офлайн-метрики против A/B-тестов: почему офлайн-оценка рекомендаций обманчива и зачем нужен онлайн-эксперимент.

  8. 8 Продакшн, масштаб и этика

    1. Архитектура продакшн-рекомендера

      Промышленный конвейер рекомендаций: генерация кандидатов, ранжирование, бизнес-правила и real-time слой.

    2. Масштаб и ANN-поиск

      Масштабирование рекомендаций до миллионов товаров: приближённый поиск ближайших соседей (ANN) и векторные БД.

    3. Проблемы и этика рекомендаций

      Popularity bias, фильтр-пузырь, разнообразие, манипуляция и этика рекомендательных систем.

    4. Инструменты и кейс на MovieLens

      Обзор библиотек рекомендаций (Surprise, implicit, LightFM, RecBole) и сквозной кейс рекомендателя фильмов на MovieLens.

py
Курс по теме
Пройдите курс «Python с нуля» — по шагам, с проверкой
8 уроков · ~14 ч · теория, упражнения и экзамен с бейджем
Открыть курс →