Sobes.tech
Back to questions
Middle — Senior
13

Когда deep learning побеждает GBDT на табличных данных?

Companies where asked
ЦифровыеПривычки
F.A.C.C.T.
АТОМ

Answer from AI

sobes.tech AI

Что хотят услышать интервьюеры:

Deep learning на табличных данных обычно выигрывает не по умолчанию, а когда есть очень много данных, сложные нелинейные взаимодействия и качественно закодированные категориальные признаки. В классических бизнес-задачах с умеренным числом строк GBDT чаще остается сильнее и стабильнее. Важно показать, что выбор зависит от объема данных, структуры признаков и стоимости ошибки.

Определение:

GBDT обычно сильнее на табличных данных, потому что хорошо работает с разнородными признаками, пропусками и небольшими/средними датасетами без сложной подготовки. Deep learning может обойти его, когда данных достаточно много, признаки имеют богатую структуру, есть высококардинальные категории, embeddings, или когда задача требует совместно учить представления признаков и нелинейные взаимодействия. На практике DL чаще начинает выигрывать не на “обычных” таблицах, а в больших и сложных промышленных пайплайнах.

Пример использования:

Например, в скоринге клиентов с 50 тысячами строк и набором стандартных финансовых фич чаще лучше сработает CatBoost/LightGBM. А в рекламной системе с миллионами событий, большим числом категориальных признаков и логами пользовательского поведения нейросеть с embeddings может дать выигрыш за счет лучшего обучения представлений.

# Упрощенно:
# GBDT — хороший базовый выбор для большинства табличных задач
# DL — имеет смысл, если:
# 1) данных очень много
# 2) много категорий высокой кардинальности
# 3) есть сложные взаимодействия признаков
# 4) есть готовый пайплайн для обучения и тюнинга нейросети

if dataset_size < "large" and features_are_ordinary:
    model = "GBDT"
else:
    model = "Deep Learning candidate"

Пояснение кода:

Код здесь не требуется, потому что вопрос концептуальный. Логика примера такая: сначала оценивается масштаб данных и сложность признаков, затем выбирается базовая модель. Если данные небольшие или средние и признаки обычные, обычно разумнее начать с GBDT. Если данных много, есть категориальные эмбеддинги и сложные зависимости, тогда можно пробовать DL и сравнивать по качеству на валидации.

Ключевые моменты:

  • На табличных данных GBDT чаще является сильным baseline и часто побеждает.
  • Deep learning начинает выигрывать при большом объеме данных и сложной структуре признаков.
  • Особенно полезен DL для высококардинальных категорий, embeddings и совместного обучения представлений.
  • На малых и средних датасетах нейросети часто проигрывают из-за переобучения и высокой чувствительности к настройке.
  • Выбор модели нужно делать по валидации, а не по “модности” подхода.
  • Если есть ограничение по времени и ресурсу, первым кандидатом обычно должен быть GBDT.