Skip to content
PART 4 · 26장

캡스톤 IV: 고객 이탈 예측 대시보드

완전 ML 분류 파이프라인

고객을 잃기 전에 알 수 있다면?

통신사 고객 1명을 유지하는 비용은 신규 고객을 유치하는 비용의 1/5입니다. 매달 수천 명이 해지하지만, 그 중 상당수는 사전에 예측 가능합니다. 이탈할 고객을 미리 찾아 맞춤 혜택을 제공하면 이탈률을 크게 줄일 수 있습니다.

이 캡스톤에서는 Part 4에서 배운 모든 분류 모델을 총동원하여 실전 고객 이탈 예측 파이프라인을 구축합니다. EDA, 전처리, 모델 훈련, 비교, 튜닝, 그리고 최종 예측까지 -- 전 과정을 체험합니다.

쉽게 말하면 -- 왜 이탈 예측이 돈이 되는가:
마케팅의 오래된 법칙이 있습니다: 새 고객을 확보하는 비용은 기존 고객을 유지하는 비용의 5~7배입니다. 광고, 프로모션, 영업 인력 등 새 고객 1명을 데려오는 데 10만원이 든다면, 기존 고객에게 할인 쿠폰 2만원을 보내서 이탈을 막는 것이 훨씬 경제적입니다. 하지만 1000명 전원에게 쿠폰을 뿌릴 수는 없습니다 -- 비용이 너무 큽니다. ML 모델로 "이탈 가능성이 높은 상위 100명"을 선별하면, 최소 비용으로 최대 효과를 거둘 수 있습니다. 이것이 고객 이탈 예측의 핵심 비즈니스 가치입니다.
비즈니스 맥락: 한국 통신사 고객 1,000명의 데이터입니다. 12개 변수(성별, 요금제, 월 요금, 통화량, 고객 서비스 문의 횟수 등)가 포함되어 있으며, 목표 변수는 "이탈 여부(churn)"입니다. 이탈률은 약 27%입니다.
ML 파이프라인 -- 전체 흐름을 미리 파악합시다:
이 캡스톤에서는 실전 ML 프로젝트의 전체 과정을 체험합니다. 각 단계의 목적은 다음과 같습니다:
1단계 - EDA: 데이터를 눈으로 확인합니다. "어떤 변수가 이탈과 관련 있어 보이는가?"
2단계 - 전처리: 모델이 이해할 수 있는 형태로 데이터를 가공합니다.
3단계 - 모델 훈련: 여러 알고리즘을 동시에 적용하고 성능을 비교합니다.
4단계 - 튜닝: 가장 유망한 모델의 세부 설정을 미세 조정합니다.
5단계 - 예측: 최종 모델로 개별 고객의 이탈 확률을 산출하고, 비즈니스 조치를 제안합니다.

단계 1: 탐색적 데이터 분석 (EDA)

모델을 만들기 전에 데이터를 철저히 이해해야 합니다. 변수별 분포, 이탈 고객과 유지 고객의 차이, 변수 간 상관관계를 살펴봅니다.

해보기: (1) "데이터 생성"으로 가상 통신사 데이터를 로드합니다. (2) 변수를 선택해 이탈 여부에 따른 분포 차이를 확인합니다. (3) 어떤 변수가 이탈과 가장 관련이 깊어 보이나요?

단계 2: 특성 공학

모델에 데이터를 넣기 전에 전처리가 필요합니다. 범주형 변수를 숫자로 바꾸고, 결측값을 처리하고, 스케일링을 적용합니다.

쉽게 말하면 -- 특성 공학은 "원재료를 요리 재료로 가공하기"입니다:
시장에서 산 재료(원시 데이터)를 바로 냄비에 넣지는 않습니다. 감자는 껍질을 벗기고(결측값 처리), 고기는 적당한 크기로 자르고(범주형 인코딩), 양념은 정량을 맞춰야 합니다(스케일링). 이 "손질" 과정이 특성 공학입니다. 같은 재료라도 어떻게 손질하느냐에 따라 요리(모델)의 맛(성능)이 완전히 달라집니다. 실무에서 데이터 과학자의 시간 중 60~80%가 이 단계에 소비됩니다.
해보기: (1) 더미 변수 생성: 범주형 변수를 0/1 변수로 변환합니다. (2) 스케일링 토글: 수치형 변수를 0~1로 정규화합니다. (3) 전처리 전후 데이터 통계를 비교하세요.
흔한 실수: 스케일링은 훈련 데이터 기준으로 수행해야 합니다. 테스트 데이터는 훈련 데이터의 통계량(평균, 표준편차)을 사용하여 변환합니다. 이를 어기면 "데이터 누수(data leakage)"가 발생합니다.

단계 3: 모델 훈련 아레나

네 가지 분류 모델을 동시에 훈련하고 성능을 비교합니다. 어떤 모델이 이 데이터에 가장 적합한지 직접 확인하세요.

해보기: "전체 모델 훈련"을 눌러 네 모델을 동시에 실행하세요. Accuracy, Precision, Recall, F1, AUC를 비교하고 최적 모델을 선택합니다.
Accuracy만 보면 안 됩니다! 이탈률이 27%이므로 "모두 유지"라고 예측해도 73% 정확도. 이탈 고객을 잡아내는 것이 목적이므로 Recall(재현율)과 F1이 더 중요합니다.
모델 해석의 중요성 -- 예측뿐 아니라 "왜"를 이해해야 합니다:
모델이 "이 고객은 80% 확률로 이탈할 것"이라고 예측했다고 합시다. 여기서 멈추면 절반만 한 것입니다. 핵심 질문은 "왜 이탈하는가?"입니다. 월 요금이 너무 비싸서? 고객센터에 불만을 여러 번 접수했기 때문에? 계약 기간이 끝나가서? 원인을 알아야 적절한 대응이 가능합니다: 요금 문제라면 할인 제안, 서비스 불만이라면 프리미엄 지원, 계약 만료라면 재계약 인센티브. 랜덤 포레스트의 특성 중요도나 의사결정트리의 규칙이 이 "왜"에 대한 답을 제공합니다.

단계 4: 최적 모델 튜닝

가장 성능이 좋은 모델의 하이퍼파라미터를 미세 조정합니다. 슬라이더를 움직여 성능 변화를 실시간으로 관찰하세요.

해보기: 모델별 하이퍼파라미터를 조절하며 F1 점수를 최대화해보세요. 과적합 경고가 뜨면 파라미터를 줄여보세요.
30 5

단계 5: 고객 이탈 예측기

최종 모델로 새로운 고객의 이탈 확률을 예측합니다. 고객 프로필을 입력하고 "예측" 버튼을 누르세요.

해보기: 다양한 고객 프로필을 입력해보세요. (1) 장기 고객 + 저렴한 요금제 (2) 신규 고객 + 비싼 요금제 + 잦은 문의 어떤 조합이 이탈 위험이 높은지 확인하세요.
캡스톤 IV 핵심 정리
  • EDA로 데이터를 이해하고 이탈 관련 변수를 식별했다.
  • 전처리(더미 변수, 스케일링, 결측 처리)는 모델 성능의 기초이다.
  • 여러 모델을 비교할 때 Accuracy 외에 Precision, Recall, F1을 반드시 확인한다.
  • 하이퍼파라미터 튜닝으로 모델 성능을 향상시킬 수 있다.
  • 최종 모델로 개별 고객의 이탈 확률을 예측하고 비즈니스 조치를 취할 수 있다.

다음 장 예고: Part 5 -- 비지도 학습의 세계로 진입합니다. 레이블 없이 데이터에서 패턴을 찾는 K-평균 클러스터링을 배웁니다.