Вступить в клуб →
средняявопросPython и SQL для подготовки данных

После merge с таблицей сделок строк стало в четыре раза больше

Вы добавляете к клиентской витрине информацию о сделках.

print(clients.shape)  # (1000, 6)  — одна строка на клиента, есть колонка target
print(deals.shape)    # (4200, 4)  — несколько сделок на клиента

df = clients.merge(deals, on="client_id", how="left")
print(df.shape)       # (4200, 9)

Дальше вы делаете случайный train/test split по строкам df и обучаете бустинг. Что происходит с обучением?

  • Ничего страшного: how='left' сохраняет исходную гранулярность, лишние строки бустинг игнорирует
  • Активные клиенты получают больший вес, а один и тот же клиент попадает и в train, и в test
  • Таргет размножился, поэтому классы стали сбалансированнее и метрика будет честнее
  • Проблема только в объёме памяти, на качество модели размножение строк не влияет

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела