SYSTEM: ONLINE | SBU: WhyLab
[AI 포트폴리오] [PORTFOLIO HUB] [GitHub]
"상관관계가 아니라, 진짜 원인이 뭔데?"
WhyLab
AI 인과추론 의사결정 엔진 · "왜?"에 답하는 분석 플랫폼
🟡 Live · whylab.neogenesis.app
Python FastAPI DoWhy EconML DoubleML SHAP SQLite GPU

// 기획 배경 · 왜 만들었는가

🔍 문제 발견

데이터 분석에서 가장 위험한 함정은 "상관관계를 인과관계로 착각하는 것"입니다. "A/B 테스트에서 전환율이 올랐다" → 정말 그 변경 때문인가? 시점 효과, 계절성, 셀프 셀렉션 바이어스는? 기획자가 쓸 수 있는 인과추론 도구가 없었습니다.

💡 기획 가설

"CSV 하나만 업로드하면 AI가 인과 그래프를 자동 추론하고, 처치 효과를 추정하고, What-if 시뮬레이션까지 · 통계 전공 없이도 '왜?'에 답할 수 있는 플랫폼을 만들자."

📐 핵심 기획 원칙

// 설계 결정 · 왜 이 구조를?

결정선택기획적 근거
인과추론 DoWhy MS Research의 인과추론 프레임워크. 4단계(모형→식별→추정→반박)로 인과 가정의 명시적 검증
효과 추정 EconML + DoubleML 기계학습 기반 이질적 처치 효과(HTE) 추정. "평균 효과"가 아닌 "누구에게 더 효과적인지"까지 분석
해석 SHAP 모델 해석 표준. 각 변수가 결과에 얼마나 기여했는지 시각화. 기획자가 "왜?"를 설명 가능
파이프라인 Cell 기반 모듈화 인과 그래프, 효과 추정, 반사실 분석 각각 독립 셀. EthicaAI 6-Cell과 동일 패턴
실행 추적 Tracing (13KB) 분석 파이프라인의 각 단계를 추적+디버깅. "이 결과가 어떤 경로로 나왔는지" 재현 가능

// 아키텍처 · 인과추론 파이프라인

graph LR
  CSV["CSV 업로드"] --> VAR["변수 식별"]
  VAR --> CG["인과 그래프 추론
DoWhy"] CG --> TE["처치 효과 추정
DoubleML · EconML"] TE --> SH["SHAP 해석"] SH --> WI["What-if
반사실 질의"] WI --> RPT["리포트 생성"]

🏗️ 엔진 핵심 모듈 (8개)

모듈규모역할
main.py6.9KBFastAPI 엔트리포인트
pipeline.py6.3KB인과추론 파이프라인 (CSV→분석→결과)
orchestrator.py5KB다중 분석 세션 오케스트레이터
tracing.py13KB실행 추적 + 디버깅 (분석 경로 재현)
cli.py7.1KBCLI 인터페이스
config.py12.3KB전체 설정 (분석 파라미터, 모델 선택)
gpu_factory.py2.9KBGPU 가속 팩토리
audit.py7KB분석 결과 감사

📁 서브 모듈 (15개 디렉토리)

영역모듈역할
분석cells/, agents/인과 그래프·효과 추정·반사실 분석 셀 + AI 에이전트 자동화
데이터connectors/, data/데이터 소스 커넥터 + 샘플 데이터셋
인프라server/, deploy/, monitoring/API 서버, 배포, 실행 모니터링
학술paper/, rag/, sandbox/연구 LaTeX, 문서 RAG, 실험 샌드박스
공통scenarios/, telemetry/, tests/, utils/, workflow/사전 정의 시나리오, 텔레메트리, 테스트, 유틸리티

// 핵심 기능 · 3가지 분석 모드

🔬 1. 인과추론 파이프라인
CSV 업로드 → 변수 자동 식별 → DoWhy 인과 그래프 추론 → DoubleML/EconML 처치 효과 추정 → SHAP 해석 → 반사실 질의 → 리포트 생성. 통계 전공 없이도 데이터에서 인과관계를 추출합니다.
📊 2. CRO 인과분석
A/B 테스트 데이터에서 단순 전환율 비교가 아닌 인과적 전환 효과를 측정합니다. 시점 효과, 계절성, 셀프 셀렉션 바이어스를 제거하고 순수한 처치 효과만 추출. 관련 프로젝트 Agentic CRO Analysis(Temporal.io)로 확장 운영 중.
🔮 3. What-if 시뮬레이션
"이 변수를 10% 올리면 결과는?" · 처치 변수를 가상으로 변경했을 때의 결과를 예측합니다. 의사결정 전에 "만약~한다면?"을 데이터 기반으로 시뮬레이션.

// 기획 인사이트 · 만들면서 배운 것

💡 "상관관계와 인과관계의 차이를 기획에 내재화"
이 프로젝트를 만들면서 모든 기획 판단에 "이게 정말 원인인가?"를 묻는 습관이 생겼습니다. "DAU가 올라서 매출이 올랐다" vs "시즌 효과로 둘 다 동시에 올랐다" · 이 구분이 기획자의 의사결정 품질을 근본적으로 바꿉니다.
💡 "Cell 패턴이 연구 재현성의 핵심"
EthicaAI에서 검증한 Cell 기반 파이프라인을 WhyLab에도 동일하게 적용했습니다. 각 분석 단계가 독립 셀이라 입력/출력이 명확하고, 중간 결과를 저장하여 어떤 분석도 100% 재현 가능합니다.
💡 "기획자용 인과추론이 시장에 없다"
DoWhy, EconML은 강력하지만 Python 코딩이 필수입니다. CSV 업로드만으로 인과분석을 할 수 있는 도구는 시장에 거의 없습니다. 이 Gap이 WhyLab의 존재 이유이고, 기획자의 데이터 리터러시를 한 단계 올립니다.

// 정량 지표

1,194
Decision Engine 파일
28
디렉토리
8
엔진 핵심 모듈
15
서브 모듈
13KB
Tracing (추적)
12.3KB
Config (설정)
3
분석 모드
GPU
가속 지원

// 성과 및 현황

🚀 현재 상태
whylab.neogenesis.app 라이브 운영 중.
PAPER/WhyLab에서 독립 연구 진행 중. Agentic CRO Analysis(Temporal.io)로 CRO 분석 확장 운영.
📊 기획자로서 배운 핵심
인과추론 사고가 기획 의사결정 품질을 근본적으로 향상
• Cell 기반 파이프라인으로 모든 분석의 100% 재현성 보장
• CSV→인사이트 제로코딩 경험으로 비기술 사용자의 데이터 접근성 확대
← EthicaAI AI 포트폴리오 6 / 6