Uplift-моделирование скидок — X5 Tech

Senior Python e-commerce

Условие задания

**Компания:** X5 Tech (Пятёрочка / Перекрёсток)
**Позиция:** Senior Data Scientist (Marketing Analytics)

**Контекст:** маркетинг отправляет скидку 10% случайным юзерам. Бизнес спрашивает: «Кому стоит отправлять чтобы максимизировать incremental revenue?»

Просто отправить всем — теряем маржу на тех кто и так бы купил. Не отправлять никому — теряем продажи. Нужно identifying **persuadables** (те кто купит ТОЛЬКО благодаря скидке).

**Задание:**
1. Объясни классы юзеров: persuadable, sure thing, lost cause, do-not-disturb.
2. Реализуй **two-model approach** на pandas/sklearn: одна модель для treatment-группы, одна для control. Uplift = P(buy | treatment) − P(buy | control).
3. Дан DataFrame `df` с колонками: `user_id, treatment (0/1), features (10 колонок), bought (0/1)`. Напиши код который:
- Тренирует две модели (LogisticRegression на treatment=1 и treatment=0)
- Предсказывает uplift для каждого юзера
- Возвращает топ-20% юзеров по uplift
4. Какой риск у two-model approach если treatment-группа маленькая?

Темы

uplift sklearn two-model approach incrementality

Подсказки

Все тестовые задания →

Частые вопросы

Какой уровень знаний нужен для задачи "Uplift-моделирование скидок — X5 Tech"?

Это задание для уровня Senior. Senior-уровень — глубокое понимание темы, опыт решения нестандартных задач, обсуждение trade-off на собеседовании.

На каких собеседованиях встречается такая задача?

Подобные задания в категории «Python» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: uplift, sklearn, two-model approach, incrementality.

Сколько времени даётся на решение?

На реальном собеседовании на подобную задачу отводится 30-60 минут с обсуждением подходов, оптимизаций и trade-off. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.

Где ещё потренироваться по теме «Python»?

На zasqlpython.ru есть 482 Python задачи с проверкой через Pyodide, конспекты Python и pandas, AI мок-собеседование с разбором ваших ответов.

← Все задания