TGStat
TGStat
Qidiruv uchun matnni kiriting
Ilg‘or kanal qidiruvi
  • flag Uzbek
    Sayt tili
    flag Russian flag English flag Uzbek
  • Saytga kirish
  • Katalog
    Kanal va guruhlar katalogi Hududiy to‘plamlar Tematik to‘plamlar Платные каналы Kanallar qidiruvi
    Kanal/guruh qo‘shish
  • Reytinglar
    Kanallar reytingi Guruhlar reytingi Postlar reytingi
    Brendlar va shaxslar reytingi
  • Analitika
  • Postlarda qidiruv
  • Telegram'ni kuzatish
  • Targ‘ibot
    Yandex Business orqali reklama TGStat Agency orqali kanallarda reklama TGStat.ru saytida reklama
Ebout Data Science | Дима Савелко

13 Mar 2024, 13:43

Telegram'da ochish Ulashish Shikoyat qilish

⭐️ Глобальное уничтожение ML System Design на собеседованиях ⭐️

На собеседованиях очень часто спрашивают ML System Design, и я решил сделать гайдик по уничтожению 🔔

Введение 👀
Когда вас спрашивают про ML System Design, ваша цель - это построить пайплайн, в котором вы должны рассказать про следующие пункты: проблема, метрики, данные, сущности, pipeline, модель, deploy, a/b тесты.
Вы должны построить систему на костылях, которую вы будуте улучшать каждую итерацию, то есть построили гавно из всех пунктов, превратили это гавно в павозку с костылями, пройдя по всем пунктам заново, закрывая все дыры и так далее... 🔝

Пункты: 🔥

1️⃣ Сформулировать проблему
Очень важно изначально понять и сформулировать задачу для себя, чтобы понимать куда и зачем идти

- Поставить бизнес задачу - тут самое главное - это понять, что от вас требуют. Задавайте вопрос: "правильно ли я понял, что..."
- Обговорить ограничения - в кейсе, который вас просят задизайнить могут быть ограничения на память, на ресурсы и тд

2️⃣ Метрики
Нужно дизайнить с метрик, так как вы должны понимать к чему вы идёте, и вы должны уметь как-то сравнивать модели в последующих апдейтах

- Бизнес метрики - одно из самых важных, на что будет ориентироваться бизнес
- Online метрики - это те метрики, которые будут измеряться во время A/B теста, чтобы понять хуже/лучше модель
- Offline метрики - метрики, которая проверяются на train/test во время обучения модели

3️⃣ Данные
Знаем метрики, теперь нужно разобрать какие данные у нас есть для последующего обучения моделей

- Сущности - Нужно определить какие у нас сущности: пользователь, карточка товара....
- Характеристики сущностей - У каждой сущности есть свои характеристики. Для пользователя это - фио, пол, возраст и тд, для карточки товара - это цена, описание, бренд...
- Сбор Данных - Как мы будем собирать данные: cпарсим, копирайтеры, возьмём из БД

4️⃣ Pipeline
- Как работает сервис
- Необходимо описать как сервис будет работать в целом: какие есть блоки, как они взаимодействуют между собой, что и как друг другу передаёт.

5️⃣ Модель
Нужно лучше начать с бейзлайна - с самой просто задачи.
Если у вас задача рекомендации, то для начала стоит просто сказать: "пусть бейзлайном будет выдача самих лучших товаров по рейтингу, чуть позже улучшим модель, опираясь на online и offline метрики". Помни, твоя задача всего интервью- построить полностью готовый пайплайн решения.

После того как вы закрыли данные пункты, то улучшайте бейзлайн, рассказывая про это:
- Задача - классификация, ранжирование, регрессия
- Loss - для каждой задачи свой лосс
- X/y - необходимо написать на каких данных вы обучаетесь
- Train/Test Split - Как вы разбиваете данные для обучениия: на чём тренируетесь, на чём валидируетесь
- Фичи и их сбор - Как вы собираете данные, и как вы преобразовывайте данные

6️⃣ Deploy
Как вы будете деплоить, лично я обычно говорю про данные пункты, упоминая технологии.

- Пайплайн хранения данных и транспорт даты - Amazon S3, MySQL, FEAST, HDFS, Kafka
- Пайплайн создания фичей - Apache Spark
- Пайплайн дообучения модели - Airflow
- Пайплайн мониторинга - ML Flow
- Архитектуры: микросервис - Docker, K8s

7️⃣ A/B Test
A/B тест - это та вещь, на которую вы будете смотреть, чтобы понять, как изменяется модель в "реальном мире", а не в ноутбуке.

- На какую метрику смотрим в тесте - обычно это онлайн метрика: CVR, CTR, Retention
- Контрольная тестовая группа - как будем делить A выборку и B выборку, обычно я говорю "A (старая модель) - 70% выборки, B (новая модель)- 30% выборки. Главное, чтобы и в А, и в В выборке количество данных было таковым, чтобы была статистическая значимость A/B теста."
- Сколько наблюдений - "Главное, чтобы и в А, и в В выборке количество данных было таковым, чтобы была статистическая значимость A/B теста."

Материалы (Очень рекомендую к просмотру)
💥
ML System Design: Выпуск 1, Выпуск 2, Выпуск 3

‼️
Если вы хотите заботать мл систем дизайн или получить оффер в вашу любимую компанию, то обращайтесь ко мне, я стал ментром. Обратившись ко мне, вы можете сэкономить кучуууу своего времени ‼️

2.1k 27 71 4 27
Katalog
Kanal va guruhlar katalogi Kanallar to‘plamlari Kanallar qidiruvi Kanal/guruh qo‘shish
Reytinglar
Telegram-kanallar reytingi Telegram-guruhlar reytingi Postlar reytingi Brendlar va shaxslar reytingi
API
Statistika API'si Postlar qidiruvi API'si API Callback
Kanallarimiz
@TGStat @TGStat_Chat @telepulse @TGStatAPI
O‘qish
Академия TGStat Telegram tadqiqoti 2019 Telegram tadqiqoti 2021 Telegram tadqiqoti 2023
Kontaktlar
Справочный центр Qo‘llab-quvvatlash Email Vakansiyalar
Har xil narsalar
Foydalanuvchi shartnomasi Maxfiylik siyosati Ommaviy oferta
Botlarimiz
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot