7. 숫자에 속지 마라 1: 통계의 허와 실 (Fallacies in Statistics)

[도입부] 학습 목표 (Learning Objectives)

  • 통계와 데이터의 무서운 진실, 바로 “상관관계는 절대 인과관계가 아니다(Correlation does not imply Causation)” 라는 데이터 과학 제1원칙을 각인합니다.
  • 전혀 엉뚱한 두 데이터가 우연히 같이 상승할 때, 중간에서 범행을 조종하고 있는 소름 돋는 ‘제3의 숨은 변수(Lurking Variable)’를 찾아내는 방어술을 배웁니다.
  • 가짜 뉴스들이 파이썬 데이터 그래프를 교묘하게 편집해 대중을 선동하는 메커니즘을 꿰뚫어 봅니다.

1. 충격 보도: “아이스크림이 상어를 불러온다!”

어느 날 신문에 이런 충격적인 통계 기사가 대서특필됩니다. “해변가에서 아이스크림 판매량이 폭등하는 날, 바다에서 상어에게 물려 죽는 사람의 숫자가 완벽하게 비례하여 상승했다. 따라서 아이스크림의 단맛이 상어를 유인하는 인과관계가 증명되었다!”

신문에는 친절하게 두 집단의 완벽한 양(+)의 상관관계 그래프와 피어슨 상관계수 $r=0.9$ 라는 과학적 근거까지 붙어있습니다. 사람들은 겁에 질려 아이스크림 불매운동을 벌입니다. 이것이 바로 통계학이 저지르는 가장 악랄한 사기극, ‘상관관계와 인과관계의 혼동’입니다.


2. 진범은 파티장 뒤에 숨어있는 ‘여름(폭염)’ 이다

상어는 아이스크림의 단맛을 좋아하지 않습니다. 그렇다면 이 두 변수는 왜 똑같이 우상향 리듬을 탔을까요? 이 두 집단의 뒤에서 몰래 조종하고 있었던 제3의 변수(Lurking Variable), 바로 ‘여름 피서철 폭염’ 이라는 진짜 원인이 숨어있었기 때문입니다!

  • 폭염(원인) $\rightarrow$ 사람들이 더워서 해변가에서 휴식하며 아이스크림을 미친 듯이 사 먹음(결과 A)
  • 폭염(원인) $\rightarrow$ 사람들이 더워서 바다에 수영하러 미친 듯이 뛰어듦 $\rightarrow$ 상어와 조우할 확률 폭증(결과 B)

결과 A와 결과 B가 단지 기온이라는 공통 원인에 의해 똑같이 증가했을 뿐인데, 마치 둘 사이에 원인과 결과(인과관계)가 있는 것처럼 속는 현상입니다. 기자는 단지 두 데이터가 같이 오르는 상관성($r$)만 우연히 발견해 내놓고, 억지로 가짜 스토리를 끼워 맞춘 것입니다.

통계의 허와 실 SVG


3. 💻 파이썬(Python)의 맹점: 컴퓨터는 거짓말을 하지 않는다

놀랍게도 파이썬에 아이스크림 매출 데이터와 상어 사망자 데이터를 넣고 산점도나 상관계수를 돌리면 컴퓨터는 $r=0.9$라는 “엄청나게 친한 베프 사이”라는 논리를 당당하게 뿜어냅니다. 컴퓨터는 숫자만 계산할 뿐, 거기에 인과관계 의미를 부여하는 건 멍청한 인간의 몫입니다.

🐍 파이썬 예제: 우연의 일치(Spurious Correlation) 스캐너

import numpy as np

print("--- 🎭 가짜 뉴스 데이터 논리 판독기 ---")

# (가상 데이터) 여름 5달간의 관측
# 아이스크림 일일 판매량 리스트
icecream_sales = [100, 200, 500, 800, 1000]
# 상어 습격 횟수 리스트
shark_attacks  = [1,   2,   5,   8,   10]

# 두 배열 간의 상관계수(r) 계산 발동!
r_fake_news = np.corrcoef(icecream_sales, shark_attacks)[0, 1]

print(f"충격! 아이스크림 판매량과 상어 습격의 상관계수 r = {r_fake_news:.3f}")
if r_fake_news > 0.9:
    print(" 🚨 [AI 경고] 컴퓨터 계산 상으로는 완벽한 정비례(양의 상관관계)로 나옵니다.")
    print(" ☞ [인간의 논리 개입] 그러나 이것은 인과관계(A때문에 B가 일어남)가 아닙니다!")
    print("'여름날 폭염' 이라는 [제3의 변수]가 이 두 데이터를 배후 조종하고 있습니다.")

# 결과창:
# --- 🎭 가짜 뉴스 데이터 논리 판독기 ---
# 충격! 아이스크림 판매량과 상어 습격의 상관계수 r = 1.000
#  🚨 [AI 경고] 컴퓨터 계산 상으로는 완벽한 정비례(양의 상관관계)로 나옵니다.
#  ☞ [인간의 논리 개입] 그러나 이것은 인과관계(A때문에 B가 일어남)가 아닙니다!
#  ☞ '여름날 폭염' 이라는 [제3의 변수]가 이 두 데이터를 배후 조종하고 있습니다.

데이터 사이언티스트의 연봉이 수억 원에 달하는 이유는 파이썬 라이브러리를 잘 써서가 아닙니다. 컴퓨터가 토해낸 완벽한 $1.0$ 이라는 숫자 속에서 “아이스크림 원인론”이라는 가짜 뉴스를 걷어내고, 배후에 숨은 ‘온도(여름)’라는 진짜 원인을 통찰하는 생물학적 직관력(Domain Knowledge) 때문입니다.


[결론] 학습 정리 (Summary)

  1. 상관과 인과의 대착각: 두 차트에 그려진 꺾은선 상승 그래프가 쌍둥이처럼 똑같이 움직인다고 해서, 하나가 다른 하나를 일으킨 ‘원인(Cause)’이라고 맹신하는 것은 통계학 최악의 범죄행위입니다.
  2. 배후 조종자 (제3의 변수): 엉뚱한 A와 B 데이터가 같이 뛰놀고 있다면, A와 B가 서로 사랑하는 것이 아니라 둘 모두에게 밥을 주는 진짜 원인(엄마) C가 뒤에 숨어있을 확률이 99%입니다.
  3. 통계의 한계: 파이썬 코드가 짜준 $X, Y$ 그래프의 점들은 우연히 일치된 숫자의 기계적 그림일 뿐, 그것이 진리인지 미신인지를 가려내는 팩트 체크는 오직 인간 지능의 몫입니다.
서브목차