> 주요 IT·대기업 데이터 분석 채용공고 모음

debun-job / book
[← 목차]

> A/B 테스트 가이드 - 기초

챕터 0 - 통계 기초와 가설검정

다 읽고 나면: 앞으로 자주 쓰일 핵심 통계 개념과 계산을 스스로 해내실 수 있게 됩니다.

  • 확률(Probability), 이항분포(Binomial Distribution), 기댓값(Expected Value), 분산과 표준편차(Variance & Standard Deviation)
  • 표본분포(Sampling Distribution), 표준오차(Standard Error), 큰 수의 법칙(Law of Large Numbers)
  • 중심극한정리(CLT)와 정규분포(Normal Distribution), 그리고 가설검정(Hypothesis Test)의 논리

다음 레슨부터는 이 내용들을 이미 알고 계신다는 전제하에 진행합니다. 그만큼 중요한 기초 개념들이니, 알차게 모아두었습니다.

이미 기초 통계를 배운 적이 있다면? SE를 직접 계산할 수 있고, CLT의 개념을 설명할 수 있으며, 단일비율 z-검정을 수행할 수 있다면 이 챕터는 건너뛰어도 좋습니다. 여기 나오는 내용은 A/B 테스트 전용 스킬이 아니라, 그 바탕을 이루는 핵심 원리에 가깝습니다. 이 챕터에서 그 엔진을 다져두고, 이후 레슨에서는 이를 바탕으로 실제 분석을 진행합니다. 낯선 용어가 있다면 여기부터 천천히 시작하세요.

왜 필요할까

이 과정은 A/B 테스트의 기초(Foundations) 레벨을 다룹니다. 단순히 플랫폼이 출력해 주는 p-value를 읽는 수준을 넘어, 실험 결과의 미묘한 차이와 복잡성을 정확히 이해하려면 그 밑에서 작동하는 통계적 원리를 반드시 알아야 합니다.

앞으로 진행될 레슨들에서는 p-value, 신뢰구간(CI), 검정력(Power), 통계적 유의성 같은 개념이 계속 등장하며, 여러분이 "어떤 숫자를 신뢰해야 하는지" 이미 이해하고 있다는 전제로 설명이 진행됩니다.

그 밑바탕에는 하나의 명확한 연결고리가 있습니다:

  • 표본은 무작위다
    → 따라서 표본에서 계산한 모든 지표 역시 무작위성을 띤다
    → 그 무작위성에는 측정 가능한 크기가 존재한다
    → 그 크기를 측정할 수 있게 되면, 비로소 '진짜 효과''단순한 우연'을 구분할 수 있다

본 챕터에서는 이 연결고리를 실제 수식을 통해 직접 확인해 봅니다. A/B 테스트의 실전 적용 방식은 일부러 제외했습니다. p-value 해석법, CI 도출, Power 기반의 Sample Size 산정 등은 챕터 3과 챕터 5에서 집중 다룹니다. 여기서는 그 재료들이 어떤 원리로 만들어졌는지 그 메커니즘을 배웁니다.

동전 던지기와 전환율을 주요 예시로 계속 다루는 이유는, 실무에서 접하게 될 거의 모든 지표("전환했는가?", "클릭했는가?")가 Yes/No 구조로 나뉘기 때문입니다. 이는 통계학에서 가장 기본이 되는 데이터 단위(grain)이며, 이후의 모든 공식 역시 이 전제를 바탕으로 합니다.

Part 1 - 확률과 무작위성

확률은 동일한 상황을 수없이 반복했을 때 나타나는 상대적 비율입니다. 어떤 사건의 확률이 0.20.2라는 것은, 그 상황을 무한히 반복했을 때 평균적으로 5번 중 1번 꼴로 일어난다는 의미입니다. 확률은 언제나 00(절대 발생하지 않음)과 11(반드시 발생함) 사이에 존재하며, 사건이 일어나지 않을 확률은 1p1 - p가 됩니다.

두 사건이 독립(Independent)이라는 것은, 한 사건의 발생 여부가 다른 사건의 발생 확률에 아무런 영향을 주지 않는다는 뜻입니다. 예를 들어 한 사용자의 전환 여부가 다음 사용자의 전환 확률을 변화시키지 않는 관계입니다. 사건 A와 B가 서로 독립이라면, 두 사건이 동시에 발생할 확률은 각 확률의 곱과 같습니다:

  P(A and B)=P(A)×P(B)P(A \text{ and } B) = P(A) \times P(B)

이후 등장하는 모든 통계적 확장의 최소 단위는 Bernoulli trial(베르누이 시행)입니다. 이는 성공 확률 pp, 실패 확률이 1p1 - p인 단일 예/아니오(Yes/No) 사건입니다. 동전을 한 번 던지는 것(p=0.5p = 0.5)이나, 특정 방문자 한 명이 p=0.2p = 0.2의 확률로 전환하는 단일 이벤트가 이에 해당합니다.

핵심 규칙: 확률은 한 번의 사건에서 느껴지는 직감이라기보다, 같은 일을 수없이 반복했을 때 수렴하는 비율에 가깝습니다. 독립적인 Yes/No 사건의 동시 발생 확률은 각 확률을 곱해 구하며, 통계학 전체를 구축하는 최소 단위는 단 한 번의 베르누이 시행, 즉 특정 가중치가 부여된 동전 던지기입니다.

Part 2 - Random Variable과 Binomial Distribution

확률변수(Random Variable)는 무작위 표본추출 결과에 따라 값이 결정되는 변수입니다. 예를 들어 "방문자 10명 중 몇 명이 전환할 것인가?"에서 전환자 수는 확률변수입니다. 실제 실험을 실행해 보기 전까지는 그 값이 1이 될지, 4가 될지, 7이 될지 알 수 없습니다.

분포(Distribution)는 확률변수가 가질 수 있는 모든 값과, 각 값이 나타날 확률을 한눈에 나열한 목록입니다. 즉, 무작위성의 양상을 한눈에 파악할 수 있는 지도 역할을 합니다.

실무에서 가장 흔히 접하게 되는 분포는 Binomial Distribution(이항분포)입니다. 이는 성공 확률이 pp인 독립적인 Bernoulli trial을 nn번 반복했을 때 발생하는 총 성공 횟수의 분포를 의미하며, 기호로는 XBinomial(n,p)X \sim \text{Binomial}(n, p)와 같이 표기합니다.

  • 공정한 동전을 10번 던질 때 나오는 앞면의 개수 Binomial(10,0.5)\rightarrow \text{Binomial}(10, 0.5)
  • 1,000명의 방문자에게 결제 화면을 노출했을 때의 총 전환 수 Binomial(1000,0.2)\rightarrow \text{Binomial}(1000, 0.2)

실제 정확한 확률값 계산은 라이브러리나 계산기가 수행하므로, 이항분포를 '모든 전환 카운트의 바탕이 되는 기본 모델'로 이해해 두시면 충분합니다. (수학적 세부 공식은 아래 참고 섹션에서 확인할 수 있습니다.)

Binomial Distribution 공식

nn번의 시행에서 정확히 kk번 성공할 확률은 다음과 같이 정의됩니다.

P(X=k)=(nk)pk(1p)nkP(X = k) = \binom{n}{k} p^k (1 - p)^{n - k}

  • pkp^k: 특정 kk번의 성공이 일어날 확률
  • (1p)nk(1 - p)^{n - k}: 나머지 (nk)(n - k)번의 실패가 일어날 확률
  • (nk)\binom{n}{k}: nn번 중 kk번의 성공이 배치되는 가능한 조합의 수

이 과정 전반에서는 이 공식을 직접 계산할 필요는 없으니 참고용으로만 확인하셔도 충분합니다.

공정한 동전(n=10,p=0.5n = 10, p = 0.5)을 던질 때의 확률 분포 예시는 다음과 같습니다.

앞면 개수확률
정확히 5개~24.6%
4개, 5개, 또는 6개~65.6%
7개 이상 또는 3개 이하~34.4%
8개 이상~5.5%

완벽하게 공정한 동전이라도 정확히 기대치인 5개가 나올 확률은 24.6%에 불과합니다. 또한 8개 이상으로 한쪽에 치우친 결과가 나올 확률도 5.5%나 됩니다. (이는 추후 다룰 유의수준 p<0.05p < 0.05, 즉 '20번에 1번' 기준의 확률적 직관과 매우 유사합니다.)

이처럼 결과가 매번 달라지는 것은 동전에 문제가 있어서가 아닙니다. 이러한 무작위적 변동성 그 자체를 나타낸 것이 바로 분포(Distribution)입니다.

> 10번 던지기의 확률 분포

버튼을 클릭하여 본문에서 설명한 확률 영역을 그래프에서 시각적으로 확인해보세요.

Expected Value - 분포의 중심

Expected Value(기댓값, E[X]E[X])은 확률변수의 장기적인 평균값으로, 각 실현 가능한 값에 해당 확률을 곱해 모두 더한 수치입니다. 이는 분포의 무게중심을 의미하며, 단일 시행에서 보장되는 결과가 아닙니다. (예: 공정한 주사위의 E[X]=3.5E[X] = 3.5이지만, 주사위를 한 번 던져서 3.53.5가 나올 수는 없습니다.)

Binomial distribution에서 기댓값은 매우 명확하고 깔끔한 공식을 가집니다.

  E[X]=npE[X] = n \cdot p

  • 공정한 동전을 10번 던질 때: E[X]=10×0.5=5E[X] = 10 \times 0.5 = 5\text{개}
  • 전환율 20% 환경에서 1,000명의 방문자를 볼 때: E[X]=1000×0.2=200E[X] = 1000 \times 0.2 = 200\text{명}

핵심 규칙: 확률변수의 모든 무작위적 특성은 그 분포를 통해 완벽히 설명됩니다. Binomial distribution의 기댓값 E[X]=npE[X] = np는 해당 분포의 중심점이자 장기적 평균일 뿐, 단 한 번의 실험 결과를 약속하는 값이 아닙니다.

Part 3 - Variance와 Standard Deviation (SD): 흩어짐의 크기

Expected Value(기댓값)가 분포의 중심을 알려준다면, Variance(분산)와 Standard Deviation(SD, 표준편차)는 그 분포가 얼마나 넓게 퍼져 있는지를 알려줍니다. A/B 테스트에서는 이 '폭'을 이해하는 것이 핵심입니다. 이 폭이 바로 단일 실험 결과가 우연에 의해 중심에서 얼마나 멀리 벗어날 수 있는지를 나타내기 때문입니다.

Variance(분산, Var(X)\text{Var}(X))는 편차를 제곱한 값들의 평균입니다.

  Var(X)=E[(XE[X])2]\text{Var}(X) = E[(X - E[X])^2]

거리를 제곱하는 이유는 음수 부호를 제거하고, 독립적인 확률변수끼리 분산이 깔끔하게 더해지도록 만드는 수학적 편의성 때문입니다. 덕분에 np(1p)n \cdot p \cdot (1 - p)라는 명확한 공식이 도출됩니다. 하지만 그 대가로 분산은 원천 데이터 단위의 제곱 형태를 띠게 됩니다.

이 분산을 원천 데이터와 동일한 단위로 맞추기 위해 제곱근을 취한 값을 Standard Deviation(표준편차), 줄여서 SD라고 부릅니다.

  SD(X)=Var(X)\text{SD}(X) = \sqrt{\text{Var}(X)}

즉, SD는 측정 대상과 동일한 단위로 표현되는 흩어짐의 크기이며, 단일 결과가 중심(평균)으로부터 벗어나는 전형적인 거리를 의미합니다. (이후 설명에서는 SD라는 약어를 주로 사용합니다.)

Binomial distribution에서의 Variance와 SD는 다음과 같이 매우 명확한 공식으로 정리됩니다.

  Var(X)=np(1p)\text{Var}(X) = n \cdot p \cdot (1 - p)

  SD(X)=np(1p)\text{SD}(X) = \sqrt{n \cdot p \cdot (1 - p)}

공정한 동전을 10번 던질 때 (n=10,p=0.5n = 10, p = 0.5):

  Var(X)=10×0.5×0.5=2.5\text{Var}(X) = 10 \times 0.5 \times 0.5 = 2.5

  SD(X)=2.51.58\text{SD}(X) = \sqrt{2.5} \approx 1.58\text{개}

분포의 중심인 기댓값은 55개이고, 우연에 의한 전형적인 표준편차의 크기는 약 ±1.6\pm 1.6개입니다. 바로 이 때문에 464 \sim 6개가 나오는 것은 자연스럽고, 88개 이상이 나오는 것은 보기 드문 현상이 되는 것입니다.

핵심 규칙: Variance와 SD는 개별 결과가 중심에서 얼마나 멀리 떨어지는지를 측정합니다. 실무 추론에서 주로 활용하는 것은 SD입니다. 원천 데이터와 동일한 단위(전환 수, pp 등)로 표현되어 "일반적인 결과가 평균에서 얼마나 벗어나는가?"라는 질문에 직접적인 답을 주기 때문입니다.

Part 4 - 카운트에서 비율로: Sample Proportion

실무에서는 단순한 전환 '개수'보다 전환 '비율'인 Sample Proportion(표본비율) p^\hat{p}("피-햇"이라 읽음)에 주로 관심을 둡니다.

  p^=Xn\hat{p} = \frac{X}{n} (전환된 사용자 수 / 전체 사용자 수)

p^\hat{p}는 Binomial distribution의 전환 카운트(XX)를 상수인 전체 사용자 수 nn으로 나눈 값이므로, 그 중심(Expected Value)과 표준편차(Standard Deviation) 역시 직관적으로 도출됩니다.

  • Expected Value: E[p^]=pE[\hat{p}] = p
    (장기적으로 표본비율의 평균은 실제 비율 pp에 수렴합니다)

  • Standard Deviation: SD(p^)=p(1p)n\text{SD}(\hat{p}) = \sqrt{\frac{p(1 - p)}{n}}
    (표본비율 자체가 가지는 통계적 흩어짐, 즉 표준편차입니다)

수학적 증명

표본비율 p^\hat{p}는 전환 카운트 변수 XBinomial(n,p)X \sim \text{Binomial}(n, p)를 상수 nn으로 나눈 값(p^=Xn\hat{p} = \frac{X}{n})입니다. 선형성의 기본 성질을 적용하면 직관적인 공식이 도출됩니다.

1. 기댓값 E[p^]E[\hat{p}] 증명 (상수는 기댓값 밖으로 그대로 나감: E[aX]=aE[X]E[aX] = aE[X])

  E[p^]=E[Xn]=1nE[X]E[\hat{p}] = E\left[\frac{X}{n}\right] = \frac{1}{n} E[X]

여기서 XBinomial(n,p)X \sim \text{Binomial}(n, p)의 기댓값 E[X]=npE[X] = np를 대입합니다:

  E[p^]=1n(np)=pE[\hat{p}] = \frac{1}{n} (np) = p

(결론: 표본비율의 장기적인 평균값은 모집단의 평균 pp와 완벽하게 일치합니다)

2. 분산 Var(p^)\text{Var}(\hat{p}) 및 표준편차 SD(p^)\text{SD}(\hat{p}) 증명 (상수는 분산 밖으로 나갈 때 제곱됨: Var(aX)=a2Var(X)\text{Var}(aX) = a^2 \text{Var}(X))

  Var(p^)=Var[Xn]=(1n)2Var(X)=1n2Var(X)\text{Var}(\hat{p}) = \text{Var}\left[\frac{X}{n}\right] = \left(\frac{1}{n}\right)^2 \text{Var}(X) = \frac{1}{n^2} \text{Var}(X)

여기서 이항분포의 분산 공식 Var(X)=np(1p)\text{Var}(X) = np(1 - p)를 대입합니다:

  Var(p^)=1n2np(1p)=p(1p)n\text{Var}(\hat{p}) = \frac{1}{n^2} \cdot np(1 - p) = \frac{p(1 - p)}{n}

분산에 제곱근을 취해 표준편차(SD)로 변환합니다:

  SD(p^)=Var(p^)=p(1p)n\text{SD}(\hat{p}) = \sqrt{\text{Var}(\hat{p})} = \sqrt{\frac{p(1 - p)}{n}}

왜 SD인데 SE라고도 부를까?

방금 구한 SD(p^)\text{SD}(\hat{p})는 확률변수의 흩어짐이라는 정의를 그대로 따른 값입니다. 다만 p^\hat{p}는 원본 데이터가 아니라 표본에서 계산해 낸 추정치이기 때문에, 통계학에서는 이 경우의 SD를 특별히 구분해서 표준오차(Standard Error, SE)라고 부릅니다.

  • SD: 확률변수 자체의 흩어짐을 가리킬 때 쓰는 일반적인 이름
  • SE: 그 확률변수가 표본에서 계산한 '추정치(통계량)'일 때, SD에 붙는 이름

즉 수식적으로는 SE(p^)=SD(p^)\text{SE}(\hat{p}) = \text{SD}(\hat{p})이며, 앞으로 추정치를 다룰 때는 SE라는 표현을 주로 쓰게 됩니다.

두 번째 공식인 이 SE\text{SE}는 유심히 살펴볼 가치가 있습니다. 측정된 비율의 오차는 표본 크기 nn이 커질수록 줄어들며(분모에 nn이 위치하므로), 측정하고자 하는 진짜 비율 pp 자체의 크기에도 영향을 받습니다.

핵심 규칙: 측정된 비율 p^\hat{p} 역시 우연에 의해 변하는 확률변수입니다. 평균적으로는 참값 pp를 가리키지만, 측정 시마다 p(1p)n\sqrt{\frac{p(1-p)}{n}} 만큼 오차를 가지며 흔들립니다. 이 추정치의 표준편차를 표준오차(SE) 라고 부르며, 표본 수 nn이 작을수록 SE(불확실성)는 커집니다.

Part 5 - Sampling Distribution과 큰 수의 법칙 (LLN)

본 코스 전체를 관통하는 추상적인 개념이자, 초심자가 가장 쉽게 놓치는 부분입니다.

실험을 단 한 번 수행하여 p^=0.16\hat{p} = 0.16이라는 수치를 얻었다고 가정해 봅시다. 만약 동일한 크기의 새로운 무작위 표본으로 실험을 여러 번 반복한다면 어떻게 될까요? 매번 0.155,0.168,0.1490.155, 0.168, 0.149 \dots와 같이 서로 '다른' p^\hat{p}가 도출될 것입니다. 이처럼 무작위 표본 추출을 반복했을 때 나타나는 모든 가능한 추정치들의 확률분포를 p^\hat{p}Sampling Distribution(표본분포)이라고 합니다. 이는 개별 개체의 분포가 아닌 '통계량 자체'의 분포입니다.

앞서 Part 4에서 이 분포의 흩어짐 정도를 SE라고 부르며 공식을 유도했습니다. 단어의 정의를 넘어 수치로 직접 비교해 봅시다.

동전을 단 한 번 던질 때(n=1n = 1)의 표준편차는 SD=0.5×0.5=0.5\text{SD} = \sqrt{0.5 \times 0.5} = 0.5로 불확실성이 극에 달합니다.

하지만 n=10n = 10번 던졌을 때 측정되는 비율의 표준오차는 다음과 같이 급격히 줄어듭니다.

  SE(p^)=0.5×0.510=0.0250.16\text{SE}(\hat{p}) = \sqrt{\frac{0.5 \times 0.5}{10}} = \sqrt{0.025} \approx 0.16

노이즈가 큰 개별 데이터 포인트 10개(각각 SD 0.5)를 평균 내면, 변동성이 훨씬 적은 안정적인 추정치(SE 0.16)가 도출됩니다. 원천 데이터 자체는 여전히 들쭉날쭉하지만, 거기서 도출한 '추정치'는 훨씬 안정적인 이유입니다. 이것이 바로 대규모 표본을 수집하는 이유이며, 분모의 n\sqrt{n}이 그 역할을 수행합니다.

SE는 "이 측정값을 얼마나 신뢰할 수 있는가?"를 정량화하는 단 하나의 수치입니다. SE가 작다는 것은 실험을 재실행해도 거의 동일한 결과가 나온다는 뜻이고, SE가 크다는 것은 단 한 번의 측정값이 우연에 의해 쉽게 크게 달라질 수 있음을 의미합니다.

(참고: 공식 상의 진짜 비율 pp는 실무에서 알 수 없으므로, 표본에서 얻은 p^\hat{p}를 대신 대입하여 계산합니다. 이는 챕터 3에서 다룰 신뢰구간(CI)의 핵심 원리가 됩니다.)

표본 크기 nn이 분모의 제곱근 안에 위치하므로, 표본이 커질수록 SE는 급격히 감소합니다. 이것이 바로 Law of Large Numbers(큰 수의 법칙, LLN)입니다. 즉, 데이터를 쌓을수록 추정치 p^\hat{p}는 참값 pp에 가까워지며 SE0\text{SE} \rightarrow 0으로 수렴합니다.

단, 변동성이 n\sqrt{n} 비율로 줄어든다는 점에 주목해야 합니다. SE를 '절반'으로 줄이려면 데이터(표본 수)는 '4배'가 필요합니다. 정밀도를 높이는 데 드는 비용이 기하급수적으로 증가하는 이유입니다.

공정한 동전(p=0.5p = 0.5)의 표본 크기별 95%95\% 추정 범위(±1.96SE2SE\pm 1.96 \cdot \text{SE} \approx 2\cdot \text{SE} 범위)를 비교해 보면 다음과 같습니다.

표본 크기 (nn)SE=0.25n\text{SE} = \sqrt{\frac{0.25}{n}}측정 비율의 95% 추정 범위
1015.8pp약 19% ~ 81% (±31pp\pm 31\text{pp})
1005.0pp약 40% ~ 60% (±10pp\pm 10\text{pp})
1,0001.6pp약 47% ~ 53% (±3pp\pm 3\text{pp})
100,0000.16pp약 49.7% ~ 50.3% (±0.3pp\pm 0.3\text{pp})

동일한 동전임에도 nn이 커짐에 따라 오차 범위가 ±31pp\pm 31\text{pp}에서 사실상 00에 가까운 수준으로 줄어듭니다. 챕터 5에서 다룰 "적정 샘플 사이즈 산정"이 실험의 성패를 좌우하는 이유가 바로 여기에 있습니다.

> 표본 크기(n)와 표준오차(SE)

아래 슬라이더를 움직여 표본 크기(n)를 수정해보세요.
n이 커질수록 표준오차(SE)가 줄어들고 정규곡선이 좁아집니다.

SE = 3.5%
n=10n=200

핵심 규칙: 표본에서 계산한 모든 통계량은 고유한 표본분포('Sampling Distribution')를 가집니다. 이 표본분포의 표준편차가 바로 표준오차(SE)이며, 비율의 경우 p(1p)n\sqrt{\frac{p(1-p)}{n}}입니다. SE는 추정치의 신뢰도를 측정하는 척도입니다. 큰 수의 법칙에 따라 n\sqrt{n} 비율로 감소하며, 추정 오차를 절반으로 줄이기 위해서는 4배 만큼의 샘플이 요구됩니다.

Part 6 - Central Limit Theorem(CLT)과 정규분포

지금까지 Sampling Distribution은 그저 "어떤 분포"에 불과했습니다. Central Limit Theorem(중심극한정리, CLT)은 바로 그 분포의 '모양'이 어떻게 생겼는지 알려줍니다.

표본 크기 nn이 충분히 크면, 개별 데이터의 원래 분포 형태와 무관하게 평균이나 비율의 Sampling Distribution은 대략 Normal Distribution(정규분포), 즉 종 모양 곡선에 가까워집니다. 전환 여부는 울퉁불퉁한 0/1 사건이지만, 그 '평균(비율)'의 분포는 매끄러운 종 모양으로 수렴합니다.

이것이 실험 분석에서 정규분포가 어디에나 등장하는 이유입니다. 사용자들의 행동 데이터 자체가 정규분포를 따른다고 가정하는 것이 아니라(실제로 그렇지 않습니다), nn이 충분히 크다면 CLT 덕분에 통계량의 Sampling Distribution이 원천 데이터 분포와 무관하게 정규분포에 수렴하기 때문입니다.

정규분포에는 특히 유용한 68-95-99.7 법칙이라는 성질이 있습니다.

  • 68%의 관측치는 중심으로부터 ±1SD\pm 1\text{SD} 범위 내에 위치합니다.
  • 95%의 관측치는 중심으로부터 ±2SD\pm 2\text{SD} 범위 내에 위치합니다. (정확히는 ±1.96SE\pm 1.96\text{SE})
  • 99.7%의 관측치는 중심으로부터 ±3SD\pm 3\text{SD} 범위 내에 위치합니다.
> 68-95-99.7 법칙

아래 버튼을 클릭해 중심으로부터의 범위를 변경해보세요.
표준편차(SD) 범위가 늘어날수록 포함되는 데이터(확률)의 비중이 넓어집니다.

이를 표본비율에 적용해 봅시다. 측정된 p^\hat{p}는 약 95%의 확률로 진짜 참값 pp로부터 ±1.96SE\pm 1.96 \cdot \text{SE} 범위 내에 위치하게 됩니다. 이것이 앞선 표에서 다룬 "95% 추정 범위"의 바탕이며, 챕터 3에서 배울 신뢰구간(CI)의 근원이 됩니다. (이 개념을 뒤집으면, 우리가 구한 p^\hat{p} 주변 구간이 반복된 표본추출 속에서 95%의 확률로 진짜 참값 pp를 포함한다는 의미가 되며, 이는 챕터 3에서 자세히 다룹니다.)

z-점수로 표준화하기

어떤 측정값을 정규분포 위에서 비교하려면 표준화(Standardization) 과정을 거칩니다. 즉, 표준편차 몇 개 만큼 중심에서 떨어져 있는지를 계산합니다.

 z=측정값중심표준편차z = \frac{\text{측정값} - \text{중심}}{\text{표준편차}}

  • z=0z = 0: 정중앙 (기댓값)
  • z=±1.96z = \pm 1.96: 가운데 95%의 경계선
  • z>1.96|z| > 1.96: 양쪽 꼬리에 위치하는 희귀한 5% 영역

zz-score는 "이 결과가 중심에서 얼마나 멀리 떨어져 있는가?"를 하나의 비교 가능한 공통 수치로 바꿔주는 역할을 하며, Part 7에서 다룰 가설검정을 움직이는 핵심 엔진이 됩니다.

분모에는 SD와 SE 중 무엇을 넣어야 할까?
  • 개별 관측치(단일 데이터)를 표준화할 때는 SD를 분모에 넣습니다. (연습문제 4)
  • 표본비율과 같은 추정치(통계량)를 표준화할 때는 SE를 분모에 넣습니다. (Part 7)

이유: SE 자체가 바로 그 추정치가 가지는 SD이기 때문입니다. 연산 구조는 동일하며, 측정하고자 하는 대상의 성격에 맞는 흩어짐의 척도(SD vs SE)를 선택하면 됩니다.

핵심 규칙: CLT에 의해 nn이 충분히 크면 개별 데이터의 모양과 무관하게 비율의 Sampling Distribution은 정규분포로 수렴합니다. 정규분포에서는 약 95%의 결과가 중심으로부터 ±1.96SE\pm 1.96\text{SE} 안에 떨어집니다. zz-score는 결과가 중심에서 표준편차 몇 개만큼 떨어져 있는지를 나타내며, 개별 관측치에는 SD를, 추정치에는 SE를 사용해 표준화합니다.

Part 7 - Hypothesis Test(가설검정)의 논리

앞서 배운 모든 개념은 결국 "이 차이가 진짜인가, 아니면 단순한 우연인가?"라는 질문에 답하기 위한 하나의 절차로 수렴합니다. 가설검정의 논리는 간접적이어서 처음 접할 때 헷갈리기 쉬우므로 단계를 꼼꼼히 짚어봅시다.

  1. 두 가설을 세운다.
    • Null Hypothesis(귀무가설, H0H_0): 변화나 효과가 없다는 기본 상태의 주장입니다. (예: "진짜 효과는 0이다", "동전은 공정하다", "UI 변경은 아무 효과가 없다")
    • Alternative Hypothesis(대립가설, H1H_1): 우리가 입증하고자 하는 변화나 효과가 '실제로 존재한다'는 주장입니다.
  2. 귀무가설(H0H_0)이 참이라고 '임시로' 가정한다.
  3. 그 가정 아래에서 관측된 데이터가 얼마나 발생하기 드문(극단적인) 값인지 측정한다.
    • Test Statistic(검정통계량), 여기서는 zz-score를 계산하여 관측 결과가 귀무가설의 예측값으로부터 몇 SE\text{SE}만큼 떨어져 있는지 측정합니다.
  4. 기각 여부를 결정한다.
    • 관측된 결과가 귀무가설 하에서는 거의 일어날 수 없을 만큼 극단적이라면 귀무가설을 기각(H0H_0 Reject)합니다. 즉, 이 데이터를 단순한 우연으로 설명하기 어렵다는 뜻입니다.
    • 그렇지 않다면 귀무가설을 기각하지 못합니다. 이는 데이터가 "아무 일도 없었다"는 상황과 모순되지 않음을 의미합니다. (주의: 아무 효과가 없음을 '증명'한 것은 아닙니다.)

"충분히 극단적인가?"를 판단하는 기준을 Significance Level(유의수준, α\alpha)이라고 하며, 관례적으로 0.05를 사용합니다. 즉, 귀무가설이 참이라는 가정하에 이러한 결과가 나올 확률이 5% 미만이라면 귀무가설을 기각합니다 (z>1.96|z| > 1.96).

불확실성 속에서 의사결정을 내리기 때문에 항상 두 가지 오류의 가능성이 존재합니다.

귀무가설(H0H_0)이 실제로 참인 경우귀무가설(H0H_0)이 실제로 거짓인 경우
H0H_0 기각
(효과 있음 판단)
제1종 오류 (Type I Error)
위양성(False Positive), 비율 α\alpha
올바른 결정 \checkmark
H0H_0 기각 실패
(효과 없음 판단)
올바른 결정 \checkmark제2종 오류 (Type II Error)
위음성(False Negative), 비율 β\beta
  • 제1종 오류 (위양성, False Positive): 실제로는 우연일 뿐인데 "효과가 있다!"고 잘못 판단하는 오류입니다. 이는 실험 설계자가 직접 통제할 수 있으며, 그 한계선이 바로 α\alpha입니다.
  • 제2종 오류 (위음성, False Negative): 진짜 존재하는 효과를 찾아내지 못하고 놓치는 오류입니다. 그 비율을 β\beta라 하며, Power(검정력) =1β= 1 - \beta는 진짜 효과가 존재할 때 이를 정확히 감지해 낼 확률을 뜻합니다.

검정력(Power)을 높이려면 결국 표본 크기(nn)를 늘려야 하며, 이 사이의 트레이드오프가 챕터 5에서 다룰 핵심 주제입니다.

핵심 규칙: Hypothesis Test는 귀무가설(H0H_0, 효과 없음)을 전제로 시작하여, 관측된 데이터가 그 가정하에서 얼마나 극단적인지를 zz-score로 측정합니다. 그 극단성이 유의수준 α\alpha(보통 5%)를 넘어설 때만 귀무가설을 기각합니다. 의사결정 구조에는 False Positive(비율 α\alpha)와 False Negative(비율 β\beta, Power=1β\text{Power} = 1 - \beta)라는 두 가지 오류 위험이 항상 수반됩니다.

직접 풀어보는 검정 예제

이해를 돕기 위해 직관적인 동전 던지기 예시로 검정을 직접 수행해 봅시다. (챕터 3에서는 동일한 5단계 절차를 실제 A/B 테스트 결과에 적용하며, 그 결과로 도출되는 수치를 p-value라고 부릅니다.)

질문. 동전을 100번 던졌을 때 앞면이 62번 나왔습니다. 이 동전은 공정한 동전일까요?

1. 가설 수립

H0H_0 (귀무가설): 동전은 공정하다 (p=0.5p = 0.5)
H1H_1 (대립가설): 동전은 공정하지 않다 (p0.5p \neq 0.5, 양측검정)

2. 추정치 산출

  p^=62100=0.62\hat{p} = \frac{62}{100} = 0.62

3. 귀무가설 하에서의 SE 계산

귀무가설의 전제인 p=0.5p = 0.5를 대입하여 표준오차를 계산합니다.

  SE=0.5×0.5100=0.0025=0.05(5pp)\text{SE} = \sqrt{\frac{0.5 \times 0.5}{100}} = \sqrt{0.0025} = 0.05 \quad (5\text{pp})

4. 검정통계량(zz-score) 산출

  z=0.620.500.05=2.4z = \frac{0.62 - 0.50}{0.05} = 2.4

관측된 결과는 공정한 동전이 예측하는 중심값보다 2.4SE2.4\text{SE} 위쪽에 위치합니다.

5. 의사결정

z=2.4>1.96|z| = 2.4 > 1.96이므로 가운데 95% 신뢰 범위를 벗어납니다. 따라서 유의수준 α=0.05\alpha = 0.05에서 귀무가설(H0H_0)을 기각합니다. 확률로 환산하면, 공정한 동전에서 이 정도로 극단적인 결과(62개 이상 또는 38개 이하)가 나올 확률은 약 1.6%에 불과합니다. 즉, "동전이 공정하다"는 가설을 의심하기에 충분히 희귀한 사건입니다.

정확한 이항확률과 연속성 보정

zz-검정은 CLT에 기반한 정규근사를 사용합니다. 100번 중 62개 이상 또는 38개 이하의 앞면이 나올 정확한 이항 양측확률은 약 2.1%로, 정규근사치(1.6%)보다 약간 높습니다.

이때 연속성 보정(Continuity Correction)을 적용하여 6262 대신 61.561.5를 대입하면 z=2.3z = 2.3, p2.1%p \approx 2.1\%가 되어 정확한 확률과 일치하게 됩니다. 결론은 동일합니다. 표본 수 nn이 커질수록 정규근사치와 실제 정확한 확률은 완벽히 수렴하게 됩니다.

이것이 가설검정을 작동시키는 전체 메커니즘입니다.

추정치(p^\hat{p}) 도출 \rightarrow SE 계산 \rightarrow zz-score 산출 \rightarrow 정규분포와 비교 \rightarrow 기각 여부 결정

이 5단계의 구조를 잘 익혀두세요. 본 코스에서 다루는 모든 통계적 유의성 검정은 이 기본 메커니즘의 변주입니다.

이 개념들, 앞으로 어떻게 쓰일까

챕터 0에서 엔진을 만들었으니, 각 부분이 어디서 쓰이는지 정리해 봅니다. (어떻게 읽는지, 무엇을 출시할지 같은 실무 결정은 여기가 아니라 각 챕터에서 다룹니다.)

챕터 0에서 만든 것어디서 쓰이는가
Sampling Distribution + SE챕터 3 - SE와 정규분포(Normal Distribution)를 CI(신뢰구간)와 pp-value로 바꿉니다.
zz-test 논리 (Part 7)챕터 3 - 같은 다섯 단계를 실제 Readout에서 읽어냅니다. (SRM 및 그룹 크기에 대한 zz-test 포함)
textPower=1beta\\text{Power} = 1 - \\beta, nn에 따라 줄어드는 SE챕터 5 - 표본 크기 정하기: 최소 탐지 가능 효과(MDE)를 정하고, 8080\\% Power를 확보하는 필요 nn을 구합니다.
Law of Large Numbers (큰 수의 법칙)전체 - "데이터가 많을수록 더 믿을 수 있다"는 본 코스 전체를 관통하는 기본 원리입니다.
Type I Error (alpha\\alpha)챕터 3 & 챕터 7 - 미리 훔쳐보기(Peeking)와 다중 지표 검정이 왜 False Positive를 부풀리는지 다룹니다.

연습하기

답을 열기 전에 먼저 스스로 풀어보세요. 단순 계산은 계산기를 활용하되, 올바른 공식을 세우는 감각을 익히는 것이 핵심입니다.

1 - 독립 사건 [warmup]

서로 무관한 두 방문자가 각각 독립적으로 0.20.2의 확률로 전환합니다.
둘 다 전환할 확률은 얼마일까요? 둘 다 전환하지 않을 확률은 얼마일까요?

정답 보기

독립 사건의 동시 발생 확률은 각 확률을 곱합니다.

  • 둘 다 전환: 0.2×0.2=0.04(4%)0.2 \times 0.2 = 0.04 \quad (4\%)
  • 둘 다 전환 안 함: 0.8×0.8=0.64(64%)0.8 \times 0.8 = 0.64 \quad (64\%) (참고: 나머지 32%32\%는 "정확히 한 명만 전환하는 확률"이며, 세 값을 모두 더하면 100%100\%가 됩니다.)

2 - Binomial Distribution의 Expected Value, Variance, SD [core]

200200명의 방문자가 각각 독립적으로 p=0.1p = 0.1의 확률로 전환합니다.
전환 수(XX)에 대한 E[X]E[X], Var(X)\text{Var}(X), SD(X)\text{SD}(X)를 구하세요.

정답 보기
  • E[X]=np=200×0.1=20E[X] = np = 200 \times 0.1 = 20\text{건}
  • Var(X)=np(1p)=200×0.1×0.9=18\text{Var}(X) = np(1 - p) = 200 \times 0.1 \times 0.9 = 18
  • SD(X)=184.24\text{SD}(X) = \sqrt{18} \approx 4.24\text{건}

즉, 중심값은 2020건이며, 전형적인 표준편차의 크기는 약 ±4.2\pm 4.2건입니다.

3 - SE와 n\sqrt{n} 효과 [core]

실제 구매 전환율이 p=0.2p = 0.2입니다.
n=400n = 400일 때와 n=1,600n = 1,600일 때 측정 비율 p^\hat{p}SE\text{SE}를 각각 구하세요.
어떤 변화가 일어났으며 그 이유는 무엇일까요?

정답 보기

SE=p(1p)n=0.16n\text{SE} = \sqrt{\frac{p(1 - p)}{n}} = \sqrt{\frac{0.16}{n}}

  • n=400n = 400일 때: 0.16400=0.02(2pp)\sqrt{\frac{0.16}{400}} = 0.02 \quad (2\text{pp})
  • n=1,600n = 1,600일 때: 0.161600=0.01(1pp)\sqrt{\frac{0.16}{1600}} = 0.01 \quad (1\text{pp})

표본 수(nn)를 4배로 늘렸더니 SE\text{SE}절반으로 줄어듭니다. 이것이 바로 n\sqrt{n} 법칙입니다. 정밀도는 표본 수의 '제곱근'에 비례하여 향상되므로, 오차를 줄일수록 필요한 데이터 비용은 기하급수적으로 증가합니다. (4배 규칙)

4 - z-점수로 표준화하기 [warmup]

평균 500500, SD=15\text{SD} = 15인 분포에서 530530이라는 관측값이 나왔습니다.
이 값은 평균으로부터 SD\text{SD} 몇 개만큼 위에 위치하나요?
흔한 결과인가요, 아니면 희귀한 결과인가요?

정답 보기

z=53050015=2.0z = \frac{530 - 500}{15} = 2.0

(단일 개별 관측값이므로 분모에 SD를 대입하여 표준화합니다.)

중심으로부터 +2SD+2\text{SD} 위치에 존재합니다. 68-95-99.7 법칙에 따르면 전체의 약 95%95\%±2SD\pm 2\text{SD} 이내에 포함되며, 양쪽 꼬리 영역에 나머지 5%5\%가 나뉘어 위치합니다. 따라서 +2SD+2\text{SD} 이상으로 치우친 결과가 나타날 확률은 약 2.5%에 불과합니다. (정확한 통계 수치로는 약 2.3%입니다)

5 - CLT로 95% 추정 범위 만들기 [core]

n=2,500n = 2,500명에서 50%50\%의 비율이 측정되었습니다.
정규근사를 활용하여 실제 비율이 존재할 법한 95% 범위를 구하세요.

정답 보기

SE=0.5×0.52500=0.01(1pp)\text{SE} = \sqrt{\frac{0.5 \times 0.5}{2500}} = 0.01 \quad (1\text{pp})

95% 범위p^±1.96SE50%±2pp대략 48%52%\text{95\% 범위} \approx \hat{p} \pm 1.96 \cdot \text{SE} \approx 50\% \pm 2\text{pp} \rightarrow \text{대략 } 48\% \sim 52\%

(챕터 3에서는 우리가 측정한 추정치를 중심점으로 삼아 구축하는 이 구조를 신뢰구간(CI)이라 부릅니다.)

6 - 검정 마무리하기 (설정 완료 상태) [core]

역사적 기준선 40%40\%와 현재 비율이 다른지 검정하려고 합니다.
주요 파라미터는 다음과 같습니다.

  • p^=0.45\hat{p} = 0.45, n=600n = 600
  • 귀무가설 하의 SE=0.4×0.66000.02\text{SE} = \sqrt{\frac{0.4 \times 0.6}{600}} \approx 0.02

zz-score 산출유의수준 α=0.05\alpha = 0.05 (양측)에서의 의사결정을 수행하세요.

정답 보기
  • zz-score: z=0.450.400.02=2.5z = \frac{0.45 - 0.40}{0.02} = 2.5
  • 의사결정: z=2.5>1.96|z| = 2.5 > 1.96이므로 귀무가설(H0H_0)을 기각합니다. 이 정도로 극단적인 결과는 귀무가설이 참일 때 약 1.2%의 확률로만 발생합니다.

7 - 전체 Hypothesis Test 풀어보기 [stretch]

어떤 시스템이 역사적으로 30%의 전환율로 운영되어 왔습니다.
1,000건의 새로운 표본을 추출하여 집계한 결과 33%의 전환율이 측정되었습니다.
이 3%p의 상승은 단순한 우연일까요? 유의수준 α=0.05\alpha = 0.05 (양측)에서 검정하세요.

정답 보기
  1. 가설 수립: H0:p=0.30H_0: p = 0.30, H1:p0.30H_1: p \neq 0.30
  2. 추정치: p^=0.33\hat{p} = 0.33
  3. 귀무가설 하의 SE: SE=0.30×0.7010000.0145(1.45pp)\text{SE} = \sqrt{\frac{0.30 \times 0.70}{1000}} \approx 0.0145 \quad (1.45\text{pp})
  4. zz-score: z=0.330.300.01452.07z = \frac{0.33 - 0.30}{0.0145} \approx 2.07
  5. 의사결정: z=2.07>1.96|z| = 2.07 > 1.96이므로 귀무가설(H0H_0)을 기각합니다.

이만큼 극단적인 결과는 귀무가설 하에서 약 3.8%의 확률로만 발생하므로(5% 미만), 이 상승세를 단순한 우연으로 보기 어렵습니다. (챕터 3에서는 정확히 이 절차를 대조군 대 실험군 비교에 적용하며, 그 3.8%라는 확률을 pp-value라고 부릅니다)

정리

  • 확률은 동일 상황을 반복했을 때 수렴하는 비율이며, 독립적인 Yes/No 사건의 동시 발생 확률은 각 확률을 곱해 계산함을 이해합니다.
  • 전환 카운트의 바탕이 되는 Binomial Distribution(이항분포)을 이해하고, 기댓값 E[X]=npE[X] = np를 계산할 수 있습니다.
  • Variance(분산)와 SD(표준편차)를 계산하고, SD가 실제 데이터 단위로 표현된 '중심으로부터의 전형적인 거리'임을 설명할 수 있습니다.
  • Sample Proportion(표본비율) p^\hat{p}과 그 표준편차 p(1p)n\sqrt{\frac{p(1-p)}{n}}를 도출할 수 있습니다.
  • Sampling Distribution(표본분포)과 SE(표준오차)의 개념을 설명하고, Law of Large Numbers(큰 수의 법칙)에 의해 SE가 n\sqrt{n} 비율로 감소함을 이해합니다.
  • CLT(중심극한정리)를 설명하고, 68-95-99.7 법칙을 활용해 측정값을 zz-score로 표준화할 수 있습니다.
  • Hypothesis Test(가설검정)의 논리 - 귀무가설 설정, 귀무가설 하에서의 극단성 측정, α\alpha 기준 기각 - 를 정리하고 Type I/II ErrorPower(검정력)를 설명할 수 있습니다.
  • Single-Proportion zz-test를 직접 수행해 가설 설정부터 기각 판단까지 수행할 수 있습니다.

Cheat Sheet

용어의미공식 (비율 기준)
확률 (Probability)사건이 반복될 때 나타나는 장기적 비율 (0p10 \le p \le 1). 독립 사건은 곱합니다.P(A and B)=P(A)P(B)P(A \text{ and } B) = P(A) \cdot P(B)
Bernoulli Trial성공 확률 pp를 갖는 단 한 번의 Yes/No 사건-
Binomial Distribution성공 확률 pp인 독립 시행을 nn번 반복했을 때의 총 성공 횟수 분포XBinomial(n,p)X \sim \text{Binomial}(n, p)
Expected Value (E[X]E[X])분포의 중심점이자 장기적인 평균값E[X]=npE[X] = np
Variance / SD결과가 중심에서 퍼진 정도; SD는 원천 데이터와 동일한 단위Var=np(1p)\text{Var} = np(1-p), SD=Var\text{SD} = \sqrt{\text{Var}}
Sample Proportion (p^\hat{p})측정된 비율 = 성공 건수 ÷\div 전체 표본 수p^=Xn\hat{p} = \frac{X}{n}
Standard Error (SE)'추정치(통계량)'의 표준편차 - 실험 재실행 시 변동되는 오차 크기SE(p^)=p(1p)n\text{SE}(\hat{p}) = \sqrt{\frac{p(1-p)}{n}}
Law of Large Numbers표본 수(nn)가 늘어날수록 SE0\text{SE} \rightarrow 0이 되어 추정치가 참값에 수렴SE1n\text{SE} \propto \frac{1}{\sqrt{n}}
CLT (중심극한정리)nn이 충분히 크면 개별 관측치의 분포와 무관하게 p^\hat{p}의 표본분포는 정규분포로 수렴-
68-95-99.7 법칙정규분포에서 중심으로부터 ±1SD\pm 1\text{SD}, ±2SD\pm 2\text{SD}, ±3SD\pm 3\text{SD} 이내에 포함되는 비율95%±1.96SE95\% \approx \pm 1.96\text{SE}
zz-score (표준화)관측값이 중심에서 표준편차 몇 개만큼 떨어져 있는지 나타내는 수치
(개별 관측치에는 SD, 추정치에는 SE 사용)
z=중심표준편차z = \frac{\text{값} - \text{중심}}{\text{표준편차}}
H0H_0 / H1H_1 (가설)H0H_0(귀무가설) = 효과 없음 / H1H_1(대립가설) = 효과 있음
(검정은 H0H_0를 전제로 이상성을 측정함)
-
α\alpha / Type I Error위양성(False Positive) 비율; 참인 H0H_0를 잘못 기각할 확률 (관례상 0.050.05)z>1.96\|z\| > 1.96 이면 기각
β\beta / Powerβ\beta = 위음성(False Negative) 비율
Power=1β\text{Power} = 1 - \beta (진짜 효과를 찾아낼 확률)
-

> 최신 데이터 분석 채용공고는 데분잡에서 확인하세요.