Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Cathesth/SANAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

S.A.N.A.I Logo

S.A.N.A.I — Beyond Churn: E-commerce Customer Retention & Marketing Analytics

Python Flask NumPy Pandas scikit-learn Plotly Seaborn Kaggle HTML5 CSS3 JavaScript GitHub

“Beyond Churn — 고객 이탈을 넘어, 지속 가능한 성장으로.”

이 프로젝트는 고객 이탈을 사전에 방어하고 데이터 기반으로 고객 생애가치를 극대화하는 통합 분석 시스템입니다.
Kaggle 이커머스 데이터를 기반으로 고객·상품·시간·거래·해외의 5차원 분석을 수행하고,
Flask 웹 대시보드로 시각화하여 효율적인 마케팅 전략을 제시했습니다.


🚀 프로젝트 개요

  • 슬로건: Beyond Churn — 고객 이탈을 넘어, 성장을 향하다
  • 목표: 고객 이탈 예측 및 고객군별 맞춤형 마케팅 전략 수립
  • 기간: 2025.09 ~ 2025.10
  • 핵심 성과:
    • 고객, 상품, 시간, 거래, 해외 5차원 분석
    • RFM · LTV · Cohort · Pareto 분석
    • RandomForest 이탈 예측 모델 (F1-score 0.84, TPR 0.98)
    • Flask 대시보드 통합 시각화

📊 데이터 및 전처리

  • 데이터 출처: Kaggle Online Retail II (UCI Repository)
  • 규모: 약 106만 건 거래 데이터, 6천 명 고객
  • 주요 컬럼: inv, stk, desc, qty, idate, prc, cid, ctry
  • 전처리 내용:
    • 결측 및 이상치 처리 → 비회원 제외 및 음수 가격 제거
    • 불필요 데이터 제거 → 취소 및 중복 데이터 정리
    • 수치형 변환 → 송장번호·날짜를 분석 가능 형태로 변환
    • 파생 피처 생성 → 매출액(amt), 요일(weekday), RFM 지표 등 14개

🧠 분석 및 모델링

  • EDA 결과:
    • 거래 대부분이 소액 구간 (0~25) 에 집중
    • 수량(qty)과 매출(amt) 간 강한 양의 상관관계
    • 소수의 고가 고객이 전체 매출의 대부분 차지 (파레토 80/20 구조)
  • RFM 분석: 이탈위험(23.1%), 휴면(28.3%), VIP(8.6%), 잠재충성(20.4%), 신규/저가(19.5%)
  • LTV 분석: 상위 20% 고객이 평생가치의 80% 차지
  • Cohort 분석: 첫 3개월 이내 유지율 20% → 집중 리텐션 필요
  • 모델 선택: RandomForest (Recall 0.98 · F1-score 0.84 · AUC 0.94)
  • 주요 Feature: r_delay, avg_order, F, is_repeat, churn_threshold

📈 대시보드 구현

  • Backend: Flask · Python
  • Frontend: HTML · CSS · JavaScript · Chart.js · Plotly
  • 구성 페이지:
    • 고객 분석 (RFM, 세그먼트, LTV, Cohort)
    • 상품 분석 (Pareto, K-Means 군집화)
    • 시간 분석 (요일·시간대 별 매출)
    • 거래 분석 (금액·크기 · 단가 분포 및 히트맵)
    • 해외 분석 (국가 별 매출 및 군집화)
    • 이탈 예측 결과 대시보드 (AUC 시각화 · Top 30 위험고객 표시)

🧩 결과 및 성과

  • VIP + 충성고객 → 전체 매출의 80% 이상 기여
  • 신규 및 저가 고객 → 초기 3개월 리텐션 35%로 개선
  • 이탈 예측 모델 → F1 0.84 · TPR 0.98 · AUC 0.94
  • Flask 대시보드 → KPI · LTV · 세그먼트 · 국가별 매출 실시간 시각화

📸 Dashboard Preview

Main Dashboard
메인 대시보드 – 전체 KPI, 세그먼트, 매출 요약

Customer Analysis Dashboard
고객 분석 페이지 – RFM, 세그먼트, LTV, Cohort 시각화

Churn Prediction Dashboard
이탈 예측 대시보드 – 모델 성능, 위험 고객 TOP30 표시


🛠 트러블슈팅 및 협업

  • CSV 대용량 문제: .gitignore.csv 추가 후 압축 업로드 로 해결
  • 모델 과적합: 교차검증 및 규제 파라미터 조정으로 일반화 성능 개선
  • Git 충돌 관리: 팀원 별 브랜치 분리로 효율적 협업 유지

🎯 향후 마케팅 전략

  • 핵심고객 이탈 사전 방어:
    VIP 전용 상품 · 조기 접근 이벤트 → 이탈률 23% 감소, LTV 1015% 상승
  • 이탈·휴면 고객 복귀 캠페인:
    번들 상품 + 복귀쿠폰 → 복귀율 +58%, 순증매출 +710%, 마케팅비 20% 절감
  • 신규 고객 3개월 리텐션 프로그램:
    웰컴 번들 · 7·30·60일 자동 추천 → 잔존율 20% → 35%, LTV +25%

👥 팀 S.A.N.A.I — Samsung AI Newbie And Innovators

이름 역할 담당
조명래 고객분석 · 모델개발 RFM, LTV, Cohort, 이탈 예측 모델
안재현 거래 · 해외 분석 · 엔지니어링 GitHub 관리 및 대용량 데이터 처리
이승민 상품 · 시간 분석 Pareto, K-Means, 시간대 패턴 분석

📚 출처

  • Data: Kaggle Online Retail II, UCI Machine Learning Repository
  • Reference: Fader & Hardie (2009), Reinartz & Kumar (2002), Barak Libai (2023) 등
  • Image: Flaticon · Freepik · Unsplash
  • Libraries: Scikit-Learn · Pandas · Seaborn · Flask · Chart.js