"매 your project is not special — base rates always win.". 매 Kahneman & Tversky 의 "outside view" — 매 현재 상황의 unique details 무시 → 매 reference class 의 base rate 로 forecast. 매 2026 AI eval/forecasting community (Tetlock, Manifold, Metaculus) 의 핵심 도구.
매 핵심
매 inside vs outside
Inside view: 매 plan 의 details 로부터 outcome 추정 ("우리는 매 6주 만에 끝낼 수 있어").
Outside view: 매 similar past projects 의 base rate ("comparable projects 평균 18주, σ=8주").
Result: 매 outside view 가 거의 항상 더 정확 — 매 planning fallacy 회피.
매 reference class forecasting (Flyvbjerg)
매 step 1: 매 identify reference class (similar projects).
매 step 2: 매 collect distribution of outcomes (cost, time, success rate).
매 step 3: 매 your project = sample from that distribution.
매 step 4: 매 adjust only with strong evidence.
매 응용
Software estimation: 매 "this PR will take 1 day" → 매 historical median = 4 days.
Startup success: 매 "we'll be the exception" → 매 base rate ~10% survive 5y.
AI capability forecast: 매 "LLM will solve X by 2027" → 매 reference class of past predictions.
💻 패턴
Pattern 1: Reference class forecaster
importnumpyasnpdefoutside_forecast(reference_class_outcomes:list[float],inside_estimate:float,trust_in_inside:float=0.2):"""매 Bayesian blend — 매 prior is base rate."""base_rate_mean=np.mean(reference_class_outcomes)base_rate_std=np.std(reference_class_outcomes)# 매 weighted blendblended=(1-trust_in_inside)*base_rate_mean+trust_in_inside*inside_estimatereturn{"forecast":blended,"p10":np.percentile(reference_class_outcomes,10),"p90":np.percentile(reference_class_outcomes,90)}
Pattern 2: Estimation poker with history
defestimate(task,similar_tasks_db):similar=find_similar(task,similar_tasks_db,k=10)durations=[t.actual_durationfortinsimilar]return{"p50":np.median(durations),"p90":np.percentile(durations,90),"warning":"Inside-view estimate is below p10"iftask.guess<np.percentile(durations,10)elseNone,}
Pattern 3: Pre-mortem — outside view of failure modes
defpre_mortem(project,similar_failed_projects):"""매 imagine project failed; 매 list reasons from history."""failure_modes=[]forfpinsimilar_failed_projects:failure_modes.extend(fp.post_mortem_causes)returnCounter(failure_modes).most_common(10)
Pattern 4: Prediction market calibration
# 매 force outside view via market — 매 your private estimate vs market pricedefconfidence_check(my_p,market_p):ifabs(my_p-market_p)>0.20:return"RED FLAG: large divergence from outside view"return"OK"
Pattern 5: Survivorship bias correction
defcorrect_for_survivorship(success_stories,full_population):survivor_rate=len(success_stories)/len(full_population)return{"naive_lesson":"Do what successes did","corrected":f"Only {survivor_rate:.0%} survive — failures often did same things",}
Pattern 6: LLM as outside view oracle
PROMPT="""For the following plan, list:
1. The reference class (similar past projects)
2. Base rate of success
3. Typical failure modes
4. Why this project might/might-not be representative
"""
매 결정 기준
상황
Approach
매 estimating new project
Outside view first, inside view as adjustment
매 confident in unique advantage
Outside view with small inside-view weight
매 forecasting AI capabilities
Reference class of past predictions
매 startup go/no-go
Compare to founder cohort base rates
매 research timeline
Reference class of similar papers/benchmarks
기본값: 매 outside view first, inside view as 매 small adjustment (≤20% weight).
언제: 매 estimation, 매 forecasting, 매 strategic planning, 매 evaluating "we're different" claims.
언제 X: 매 truly novel domains where no reference class exists (rare — usually a class can be found).
❌ 안티패턴
"Our project is unique": 매 99% of the time, not unique enough to escape base rates.
Cherry-picked reference class: 매 selecting only successes — 매 survivorship bias.
Ignoring distribution: 매 only using mean — 매 use p10/p90.
No update mechanism: 매 collecting new data but not updating reference class.