학습 목표
- AutoGluon TabularPredictor를 사용하여 분류/회귀 작업을 수행할 수 있습니다.
- 품질 프리셋(preset)과 시간 제약을 설정할 수 있습니다.
- 스택 앙상블 전략의 원리를 이해합니다.
AutoGluon 실습
from autogluon.tabular import TabularPredictor
import pandas as pd
# 데이터 로드 (pandas DataFrame 필요)
train_data = pd.read_csv("data/train.csv")
test_data = pd.read_csv("data/test.csv")
# AutoGluon 학습 (타겟 열 이름만 지정)
predictor = TabularPredictor(
label="target", # 타겟 열 이름
eval_metric="accuracy", # 평가 지표
path="autogluon_models/" # 모델 저장 경로
)
predictor.fit(
train_data,
time_limit=300, # 5분 제한
presets="best_quality" # 최고 품질 (시간 소요 큼)
)
# 예측 및 평가
predictions = predictor.predict(test_data)
performance = predictor.evaluate(test_data)
print(f"테스트 성능: {performance}")
# 리더보드 확인
leaderboard = predictor.leaderboard(test_data)
print(leaderboard)
# 빠른 탐색
predictor_fast = TabularPredictor(label="target")
predictor_fast.fit(train_data, presets="medium_quality", time_limit=60)
# 최고 품질 (시간 더 소요)
predictor_best = TabularPredictor(label="target")
predictor_best.fit(train_data, presets="best_quality", time_limit=600)
medium_qualitygood_qualityhigh_qualitybest_qualityQ: AutoGluon의 스택 앙상블이란 무엇인가요?
Q: AutoGluon의 스택 앙상블이란 무엇인가요?
여러 모델(LightGBM, CatBoost, 신경망 등)의 예측을 입력으로 받아 메타 모델이 최종 예측을 수행하는 구조입니다. 다층 스태킹은 이 과정을 여러 번 반복하여 더 높은 성능을 달성합니다.
Q: AutoGluon은 GPU가 필요한가요?
Q: AutoGluon은 GPU가 필요한가요?
정형 데이터의 경우 CPU만으로 충분합니다. 내장 신경망 모델에 GPU를 사용하면 약간 더 빠르지만, LightGBM/CatBoost 등 트리 기반 모델이 성능의 대부분을 차지합니다.
체크리스트
- TabularPredictor로 분류/회귀 작업을 수행할 수 있다
- 프리셋과 시간 제약을 설정할 수 있다
- 리더보드를 해석하고 최적 모델을 식별할 수 있다
다음 문서
FLAML
경량 AutoML 도구를 학습합니다.
Optuna
유연한 하이퍼파라미터 최적화를 학습합니다.
언제 쓰나
현재 문제의 목표 지표와 데이터 특성을 먼저 확인한 뒤 적용합니다. 작은 실험셋으로 빠르게 기준 성능을 확인한 뒤, 필요하면 더 복잡한 모델로 확장합니다.실무 적용 체크리스트
- 데이터 누수 가능성을 먼저 점검했습니다.
- 학습/검증/테스트 분할 기준을 고정했습니다.
- 핵심 지표(예: F1, RMSE, AUC)를 명시했습니다.
- 베이스라인 대비 개선폭과 비용 변화를 함께 기록했습니다.
자주 나는 실수
- 데이터 분할 전에 전처리를 수행해 데이터 누수가 발생합니다.
- 단일 지표만 보고 모델을 선택해 운영 성능이 불안정해집니다.
- 하이퍼파라미터를 과도하게 조정해 검증셋 과적합이 생깁니다.

