Открыто

Хардкорный Machine Learning [2022-2023] [karpov.courses] [В. Бабушкин, В. Брсоян, С. Гафаров, И. Котенков, А. Сахнов, В. Ладенков] [Повтор]

Тема в разделе "Курсы по программированию", создана пользователем sonyking2090, 23 май 2022.

Цена: 170000р.-96%
Взнос: 6384р.

Основной список: 29 участников

Резервный список: 17 участников

  1. 23 май 2022
    #1
    sonyking2090
    sonyking2090 СкладчикСкладчик

    Хардкорный Machine Learning [2022-2023] [karpov.courses] [В. Бабушкин, В. Брсоян, С. Гафаров, И. Котенков, А. Сахнов, В. Ладенков] [Повтор]

    karpov.courses
    ML-HARD


    Научитесь строить ML-сервисы для решения реальных задач.


    1.png


    Для кого эта программа:
    1. ML-Разработчики

    Имеете опыт работы в областях, связанных с машинным обучением, и хотите научиться решать специфические и нестандартные задачи.​
    2. Тимлид
    Управляете командой ML-разработки и хотите познакомиться с передовым опытом построения сервисов для решения сложных бизнес-задач.​

    Вы освоите:
    1. Ранжирование и матчинг

    Алгоритмы автоматического сопоставления объектов позволяют решать множество важных задач бизнеса: выявление товаров-дублей, объединение данных о покупателях в онлайне и офлайне, анализ и мониторинг цен конкурентов. Разберём различные кейсы применения систем матчинга и ранжирования, рассмотрим технические тонкости их архитектур, познакомимся с передовыми подходами к обучению моделей и реализуем свою систему поисковых подсказок.​
    2. Динамическое ценообразование
    Эффективность деятельности многих компаний зависит от способности устанавливать оптимальные цены на продукцию с учётом различных факторов и изменений, происходящих на рынке. Научимся предсказывать ценовые диапазоны, рассмотрим актуальные для ценообразования метрики, познакомимся с «многорукими бандитами» и обучим одного из них выбирать стратегию расчёта цен для оптимизации выручки и маржинальности продаж.​
    3. Uplift-моделирование
    Сегментация потребителей по чистому эффекту от маркетингового воздействия позволяет бизнесу сосредоточить рекламный бюджет на клиентах, готовых выполнить целевое действие только при наличии коммуникации. Научимся оценивать величину этого эффекта с помощью uplift-моделей, разберём интересные кейсы из практики, спроектируем библиотеку факторов и построим свой алгоритм для поиска оптимальной аудитории.​
    4. Продвинутое A/B тестирование
    Важными задачами в A/B-тестировании являются ускорение тестов и повышение их чувствительности. Это позволяет компаниям быстрее внедрять позитивные изменения и вовремя отказываться от негативных. Научимся применять современные методы повышения чувствительности A/B-тестов, рассмотрим полный пайплайн тестирования и реализуем свой сервис для оценки экспериментов.​
    5. Сценарии деплоя ML-сервисов
    ML-инженеру важно уметь интегрировать свои решения в существующую инфраструктуру с учётом высоких требований к производительности и отказоустойчивости приложений. Рассмотрим различные сценарии развёртывания сервисов, обсудим принципы их проектирования и поддержания с точки зрения современного бэкенда и научимся грамотно выводить приложения в продакшн.

    2.png

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

    1. Вводная лекция: ранжирование, матчинг, архитектурные особенности
    • Обсудим постановку задачи ранжирования с точки зрения машинного обучения.
    • Разберёмся в тонкостях матчинга и верхнеуровнево познакомимся с архитектурой решения.
    2. Метрики в задаче ранжирования. Особенности матчинга как подзадачи ранжирования
    • Рассмотрим различные метрики ранжирования: от самых базовых до актуальных и часто используемых.
    • Обсудим их применение в разных ситуациях, углубимся в задачу матчинга и поговорим про особенности оценки результатов.
    3. Функции потерь и базовые подходы к обучению моделей ранжирования
    • Продолжим углубляться в тему ранжирования и рассмотрим методы обучения моделей.
    • Узнаем, какие существуют функции потерь и в каких случаях они используются.
    4. Особенности работы с деревянными моделями. YetiRank
    • Перейдём к следующему этапу развития ранжирующих систем и познакомимся с популярными алгоритмами и их внутренним устройством.
    5. Передовые подходы к ранжированию: обзор ушедшего десятилетия
    • Разберёмся, какие за последнее время были придуманы способы и приемы, повышающие качество и стабильность моделей.
    • Проследим развитие идей и концепций.
    6. Приближённый поиск ближайших соседей
    • С увеличением объёма данных возрастает сложность ранжирования и поиска объектов.
    • Рассмотрим алгоритмы, позволяющие быстро и эффективно искать схожие объекты в огромной базе.
    7. Модели для работы с текстом, введение в эмбеддинги. FastText, DSSM
    • Познакомимся с языковыми моделями для извлечения информации из текстов в векторном виде для её последующей утилизации моделями.
    • Разберём принципы работы и обучения моделей FastText, узнаем, чем они отличаются от Word2Vec, и перейдём к структурированным синтаксическим моделям — DSSM.
    8. Сложные языковые модели для высокоточной работы: BERT и трансформеры
    • Продолжим знакомство с текстовыми моделями.
    • Разберём передовые архитектуры и посмотрим, в какой задаче матчинга трансформер может «выстрелить».
    9. Парсинг данных из Интернета, сбор датасетов
    • Научимся выживать в ситуациях, когда данных нет, но они очень нужны.
    • Разберём основы парсинга web-страниц и сбора сырых данных.
    10. Толока как инструмент для оценки моделей и обновления датасетов
    • Познакомимся с инструментом ручной разметки данных от компании Яндекс и узнаем, какую пользу он может принести в работе.
    Финальный проект модуля
    • Используем полученные знания для разработки сервиса на основе моделей ранжирования.
    • В качестве бонуса обсудим задачи, которые можно решить с минимальными изменениями текущего пайплайна.
    Модуль 2 - Динамическое ценообразование
    Научимся делать динамическое ценообразование на основе машинного обучения, что позволит вам максимизировать прибыль компании, в которой вы работаете, и поможет найти баланс между трафиком, выручкой и маржой.

    1. Постановка задачи ценообразования
    • Начнём с основ экономической теории: узнаем, из чего складывается цена, каковы её основные компоненты и от каких факторов она зависит.
    • Также познакомимся с понятием волатильности.
    2. Построение модели предсказания цены в зависимости от факторов
    • Закрепим теорию практикой: научимся грамотно просматривать и анализировать данные рынка и с их помощью выявим реальные факторы, влияющие на цену продукта.
    • Порешаем задачи предсказания цен на уже существующих данных.
    3. Постановка задачи динамического ценообразования
    • Более детально рассмотрим, чем постановка задачи динамического ценообразования отличается от предыдущей задачи и какие факторы в данном случае могут влиять на цену.
    • Обсудим зависимость динамического ценообразования от групп покупателей, времени, рыночных условий, спроса и задач проникновения.
    4. Первое знакомство с динамическим ценообразованием
    • Проанализируем практическую применимость концепции «‎цена как функция, зависящая от факторов», и построим первые простейшие модели динамического ценообразования.
    5. Предсказание диапазонов цен
    • Поговорим о том, как работают алгоритмы предсказания диапазонов цен.
    • Познакомимся с понятием квантильной регрессии и затронем проблему выбора лучшей цены.
    6. Скрещивание динамического и классического ценообразования
    • Поговорим о кластеризации временных рядов и прогнозировании диапазонов цен.
    • Посмотрим, какие бывают инструменты для прогнозирования временных рядов и применим их на практике.
    • Обсудим некоторые специфические функции потерь, такие как quantile loss и RMSLE, и рассмотрим метрики для прогнозирования диапазонов цен.
    7. Метрики и тесты для определения лучшей цены
    • Поговорим о том, на какие метрики следует смотреть для определения лучшей цены.
    • Узнаем, как применить A/B-тестирование для решения этой задачи.
    8. Многорукие бандиты и обучение с подкреплением
    • Узнаем, как использовать обратный сигнал для корректировки и задания диапазонов цен.
    • Познакомимся с многорукими бандитами и теорией, которая лежит в их основе.
    • Рассмотрим, как они позволяют ускорить A/B-тесты в проде.
    9. Практическое применение многоруких бандитов
    • Рассмотрим реализацию многоруких бандитов и получение обратной связи для корректировки цены в коде.
    Финальный проект модуля
    • На основе пройденного материала создадим собственный сервис по предсказанию цен для 1000 товаров.
    • Построим для него несколько моделей и постараемся решить задачу максимальных продаж без провисания маржи.
    Модуль 3 - Uplift-Modelling
    Научимся делать uplift-моделирование. Рассмотрим всё от постановки задачи до её реализации. Данный тип моделирования позволит учесть изменения в поведении клиентов, которые, например, могли быть вызваны рекламной акцией. На основании данной модели вы сможете понять, кому из клиентов стоит сделать предложение и оценить эффект от этого воздействия.

    1. Введение в uplift-моделирование
    • Обоснуем необходимость использования uplift и научимся правильно ставить задачу для эффективного моделирования.
    • Рассмотрим популярные решения и метрики качества uplift-моделей.
    2. Разбор методов построения uplift-моделей
    • Поговорим о том, как проводить разведочный анализ данных (EDA) при uplift-моделировании.
    • Разберём такие подходы к построению uplift-деревьев, как meta-learners и uplift trees.
    3. Uplift сложных метрик. Expected value framework
    • Узнаем, что такое декомпозиция бизнес-эффекта (expected value decomposition) и как с её помощью продумывать изменение интересующей метрики и схемы прогноза.
    • Рассмотрим сложный кейс из офлайн-ритейла.
    4. Как спроектировать свою библиотеку факторов
    • Для построения любой модели необходимы данные: например, важно понимать, откуда к нам пришёл тот или иной клиент и какие у него предпочтения.
    • Узнаем, как проводить эксперименты с разными наборами предикторов и как понять, какой набор является оптимальным для решения задачи.
    • Убедимся, что оформление кода для расчёта предикторов в библиотеку — это самый быстрый путь вывода модели в продакшн.
    5. Workshop: пишем приложение с применением модели
    • Собственными руками построим приложение с применением uplift.
    • Сначала продумаем последовательность действий (pipeline) для подготовки данных и применения модели и организуем репозитории с исходным кодом, а затем настроим логирование и уведомления.
    • Также обсудим механику сохранения промежуточных результатов и подъёма приложения при его падении.
    Финальный проект модуля
    • Напишем свой веб-сервис для запуска uplift-модели и организуем маркетинговую кампанию на основе транзакционных данных клиентов.
    Модуль 4 - Продвинутое A/B тестирование
    Научимся использовать A/B-тестирование для решения практических задач. В результате тесты станут намного более чувствительными, что позволит быстрее внедрять позитивные изменения и отказываться от негативных. Научимся использовать ML-алгоритмы для ускорения A/B-тестов. В результате тесты станут намного более чувствительными, а плохо показывающие себя тесты можно будет быстро выявить и отключить.

    1. Введение: основы статистики
    • Вспомним основы теории вероятностей и математической статистики, которые понадобятся в курсе.
    • Научимся строить точечные оценки и доверительные интервалы.
    2. Основы статистики и статистические критерии
    • Поговорим о том, что такое A/B-тестирование и чем оно отличается от других способов принятия решений.
    • Узнаем, какие статистические критерии применяются в A/B-тестировании и как построить доверительный интервал с помощью метода Bootstrap.
    3. Метрики в А/B-тестировании
    • Рассмотрим различные метрики А/B-тестирования и их классификацию.
    • Выделим среди них те, которые используются чаще всего. Разберём наиболее удачные комбинации метрик.
    4. MDE, sample size
    • Научимся рассчитывать минимальный детектируемый эффект и подбирать необходимый размер групп для проведения эксперимента.
    • Познакомимся с идеями повышения чувствительности тестов.
    5. Стратификация
    • Обсудим, в чём опасность проведения экспериментов на малом количестве данных.
    • Узнаем, как дополнительные знания о наблюдаемых объектах помогают снижать дисперсию данных.
    • Научимся сокращать дисперсию с помощью стратификации.
    6. CUPED. Гильбертово пространство случайных величин
    • Проанализируем общие черты гильбертова пространства и CUPED.
    • Научимся снижать дисперсию данных и повышать чувствительность теста за счёт использования исторических данных.
    7. Линеаризация. Многопараметрический дельта-метод
    • Познакомимся с особенностями тестирования ratio-метрик.
    • Рассмотрим общие черты многопараметрического дельта-метода и линеаризации.
    • Поговорим о том, как они связаны между собой.
    8. Множественное тестирование, 2 + 2= -2
    • Рассмотрим ситуацию, когда два улучшения могут привести к ухудшению ситуации, и научимся справляться с этой проблемой: узнаем, как организовать параллельное проведение большого количества экспериментов и как проводить эксперименты с несколькими вариантами изменений.
    9. Peeking problem, последовательное тестирование
    • Поговорим о том, что происходит с корректностью теста, если оценивать эксперименты до их окончания.
    • Научимся динамически определять момент завершения пилота.
    10. Auto-ML, полный пайплайн
    • Узнаем, как выглядит полный пайплайн A/B-тестирования, и рассмотрим применение ML-алгоритмов для повышения чувствительности тестов.
    Модуль 5 - Сценарии деплоя ML-сервисов
    Как и обычный бэкенд, ML-бэкенд должен обладать отказоустойчивостью и минимальным временем простоя. Кроме того, жёсткие требования часто выдвигаются и к производительности самого приложения. В этом модуле научимся грамотно выпускать приложения в продакшн, учитывая все эти требования.

    1. Инфраструктура и процессы в современных бэкендах
    • Начнём со знакомства с инфраструктурой и микросервисной архитектурой.
    • Поговорим о процессах в современных бэкендах.
    2. Application Service & Service Discovery
    • Поговорим о проектировании приложения для сёрвинга и познакомимся с паттерном Service Discovery.
    3. Процессы. Демонизация. Веб-серверы
    • Рассмотрим, как работают процессы в системе, и разберёмся, в каком виде будут деплоиться наши приложения.
    • Поговорим о функциях веб-серверов.
    4. Docker Runtime + Docker Compose
    • Познакомимся поближе с Docker и Docker Compose и поговорим о некоторых паттернах их применения.
    5. Docker Swarm + Container Lifecycle
    • Организуем оркестрацию нашего приложения в Swarm-кластере, проследим жизненный цикл контейнера и сформируем представление о том, из чего складывается оркестрация.
    6. GitLab CI/CD
    • Используем GitLab CI/CD для выстраивания полноценного процесса сборки и доставки.
    7. Сценарии развёртывания. Часть 1
    • Рассмотрим сценарии развёртывания приложения без использования докера и окрестраторов, в которых балансировка есть из коробки.
    • Обсудим разные варианты доставки, хранения и деплоя кода, демонизируем наши приложения через systemd и настроим nginx балансировать трафик по нашим приложениям.
    8. Сценарии развёртывания. Часть 2
    • Продолжим обсуждение «бездокеровских» сценариев.
    • Рассмотрим полезные функции bash для написания своих сценариев деплоя.
    • Познакомимся с системами автоматической конфигурации ansible и salt, выполнив по одному типу развёртки с помощью каждой.
    9. MLflow и MLflow Model Registry
    • Поднимем MLflow и MLflow Model Registry, интегрируем их в наш сёрвинг и рассмотрим удобные способы регистрации моделей, выходящие за рамки стандартных «коробок».
     
  2. Последние события

    1. madydog
      madydog не участвует.
      3 мар 2024
    2. skladchik.com
      В складчине участвует 30 человек(а).
      2 мар 2024
    3. gohas
      gohas не участвует.
      15 янв 2024
    4. Amigos
      Amigos не участвует.
      4 янв 2024
  3. Обсуждение
  4. 19 июл 2022
    #2
    useruser
    useruser ЧКЧлен клуба
    Добрый день! Сориентируйте, будем ждать какого-то порога или даты? Или мы ищем организатора?
     
  5. 20 июл 2022
    #3
    Aesma
    Aesma ЧКЧлен клуба
    за 6к точно никто не будет брать. Поэтому да, пока что снижаем цену. Но если найдётся орг то вообще замечательно
     
  6. 7 окт 2022
    #4
    frankyfrankyfranky
    frankyfrankyfranky СкладчикСкладчик
    Добрый день, может быть, организуем? Я нашел человека
     
  7. 12 окт 2022
    #5
    useruser
    useruser ЧКЧлен клуба
    А когда у человека будет доступен материал, сразу или через 5+ месяцев?
     

Поделиться этой страницей