이번 글은 코드잇 강의를 수강하면서 배운 내용을 주로 하여 정리되어 있습니다. (코드잇 스프린트 데이터 애널리스트 트랙 1기 훈련생)
통계적 가설 검정의 개요
추론 통계에서는 모집단에 대해서 단정할 수는 없지만, 확률적으로 높은 쪽으로 선택해야 합니다.
추론 통계에서는 확률을 도입해서 ‘모든’ 대신 ‘거의 모든’을 생각하도록 해야 합니다.
(통계적 가설 검정을 활용하면 예외가 존재할 확률을 인정하면서도 보다 가능성이 높은 쪽으로 선택을 내릴 수 있게 됩니다.)
이러한 통계적 가설 검정은 가설을 세우고 표본 데이터를 관찰한 다음, p값을 계산해 유의 수준 α와 비교하고 귀무가설의 기각 여부를 결정하는 과정입니다.
통계적 가설 검정의 절차
가설 검정 (hypothesis testing)
용어) 가설, 귀무가설, 대립가설, 검정통계량, p값, 유의수준, 기각
- 가설 : 우리가 입증하고자 하는 바 (표본이 아니라 모집단을 대상으로 세우게 됨)
- 귀무 가설(null hypothesis, H0) : 대립 가설의 부정 명제 “차이가 없다”
- 대립 가설(alternative hypothesis, H1, Ha) : 우리가 밝히고자 하는 가설
- 예시 : 1번 메시지와 2번 메시지 사이에 구매 전환율에 차이가 없을다고 가정할 때, 우리가 관찰할 데이터가 나타날 확률이 어느 정도인가
- 귀무가설(H0) : 1번 메시지와 2번 메시지 사이에 구매 전환율에 차이가 없을 것이다.
- 대립가설(H1) : 1번 메시지와 2번 메시지 사이에 구매 전환율에 차이가 존재할 것이다.
- 검정 통계량 (test statistics) : 귀무 가설이 참이라고 가정했을 때, 표본을 수집해서 데이터를 관찰하여 얻은 통계량
- p값 (p-value) : 귀무가설이 옳다는 가정 하에 우리가 관찰한 결과 혹은 그 이상으로 귀무가설에 반하는 데이터가 나올 확률
(일정 수준 = 유의 수준)
p값 < 일정 수준이면 귀무가설을 기각한다(reject).
p값 > 일정 수준이면 귀무가설을 기각할만한 충분한 근거가 없다.
가설 검정의 절차
- 가설을 세운다. (귀무가설&대립가설)
- 일정 수준을 결정한다.
- 검정 통계량을 계산한다.
- p값을 계산한다.
- 판단 & 결론
- p값 < 일정 수준이면 귀무가설을 기각한다(reject).
- p값 > 일정 수준이면 귀무가설을 기각할만한 충분한 근거가 없다.
제 1종 오류와 제 2종 오류
가설 검정을 할 때 가능한 진실은 '귀무가설이 옳거나, 대립가설이 옳거나' 입니다.
판단(귀무사설을 기각하고 대립가설을 채택) | 판단(귀무가설을 기각하지 않음) | |
진실(귀무가설이 참) | 제 1종 오류 (⍺) | 올바른 판단 |
진실(대립가설이 참) | 검정력(1-β) | 제 2종 오류 (β) |
- 제 1종 오류(⍺) : 귀무가설이 참인데 귀무가설을 기각하는 경우 (위양성(false positive)’라고 부르기도 합니다.)
→ 제 1종 오류(⍺) = 유의수준(significance level) (분석가가 ⍺를 결정할 수 있음)
→ 실제로는 아무 차이가 없는데 차이가 있다고 잘못 판단하는 실수 - 제 2종 오류(β) : 대립가설이 참인데 귀무가설을 기각하지 않는 경우 (위음성(false negative)’라고 부르기도 합니다.)
→ 실제로 차이가 있는데 차이가 없다고 잘못 판단하는 실수 - 검정력 (1 - β) : 차이가 있을 때 차이가 있다고 올바르게 판단할 확률
1종 오류와 2종 오류의 관계
제 1종오류와 제 2종오류는 상충관계에 있다.
차이가 없는데 있다고 판단하는 실수(제 1종 오류)를 저지르지 않기 위해 정말 명백하게 차이가 있다고 할 수 있는 경우만 짚어내려 한다면, 반대로 ‘차이가 있는데 없다고 판단하는 실수(제 2종 오류)’가 커질 수밖에 없습니다.
이런 관계에서 데이터 분석가는 둘 사이에서 타협점을 찾아야 하는데, 대부분의 경우 제1종 오류가 제2종 오류보다 치명적입니다.
- 1종 오류가 더 치명적인 예시 : 제약회사에서 신약의 효과를 테스트하는 경우
- 제 1종 오류 : 신약의 효과가 없는데 신약의 효과가 있다고 잘못 판단해버리는 실수
- 제 2종 오류 : 신약의 효과가 있는데 신약의 효과가 없다고 잘못 판단해버리는 실수
이러한 이유로 가설 검정에서는 보통 허용 가능한 유의수준 α의 값을 미리 정해둔 후 p값을 α와 비교해 판단하는 과정을 거치게 됩니다.
(분석가가 ⍺를 결정하고 분석할 수 있음)
일반적으로 설정하는 유의수준(⍺) = 0.05 (5%)
- 의미 : 귀무가설이 참인 상황에서 100번중 5번 정도는 착오로 인해 대립가설을 선택하게 된다.
업계에 따라서 ⍺를 다르게 설정하고 의학계의 경우 ⍺를 0.01 (1%)로 설정한다.
Q. 제 1종 오류(⍺)를 줄이는 데 신경을 쓰면, 제 2종 오류(β)가 증가하기 때문에 검정력(1-β)이 감소하는 것은 아닐까?
→ 맞는 말이기도 하지만, 표본의 크기로 통제 가능하다.
표본의 크기를 늘리면, 모집단에 대한 추정량의 분산이 작아져 오류의 발생 가능성이 작아진다.
통계적 유의미성
‘통계적 유의미성’은 가설 검정의 결과를 쉽게 설명해 주는 표현입니다.
통계적으로 유의미하다라는 것은 ‘통계적으로 유의미한 차이가 있다.’와 ‘p값이 유의수준 아래이므로 귀무가설을 기각했다.’ 라는 말과 같은 의미입니다.
하지만, 통계적으로 유의미하다는 말은 실제로 의미가 있다는 말이라고 하기에는 어렵습니다.
통계적 가설 검정은 확률을 생각해 결론을 내리는 것이기 때문에 언제나 우리의 결론이 틀릴 가능성이 존재한다는 점을 상기해야 합니다.
그리고 판단의 기준이 되는 p값의 경우 표본 크기가 커지면 값이 작아지는 경향이 있기 때문에,
‘p값 < 유의 수준’이라고 해서 무조건 가설 검정의 결과가 도움이 되는 건 아닐 수 있습니다.
p값을 계산하는 방법
p값을 계산하는 법은 어떤 가설 검정 방법을 선택하느냐에 따라 달라지고, 어떤 가설 검정 방법을 선택할지는 상황에 따라 달라집니다.
이러한 상황은 데이터의 유형과 양적 변수의 성질에 따라 달라집니다.
데이터의 유형
- 양적 변수 (quantitative variable) : 키, 몸무게 등 양적 수치로 표현되는 변수
- 범주형 변수(categorical variable) : 성별, 자동차 브랜드 등 몇 가지 그룹으로 구분되어 측정되는 변수
- 범주가 1개 그룹인 경우 : 하나의 표본을 가지고 모집단 분포에 대한 가설을 검정하는 구조가 된다.
예) 모집단의 평균 키는 172cm인가? - 범주가 2개 그룹의 경우 : 두 집단 간 비교를 진행한다.
예) A그룹과 B그룹 사이에 차이가 있는가? - 3개 이상의 그룹의 경우 : 2개와 같이 집단 간 비교가 이루어지지만, 두 집단의 비교에 비해 과정이 복잡해진다.
예) A,B,C 그룹 사이에 차이가 있는가?
- 범주가 1개 그룹인 경우 : 하나의 표본을 가지고 모집단 분포에 대한 가설을 검정하는 구조가 된다.
양적 변수의 성질
양적 변수의 경우, 변수가 특정 통계적 가정을 만족시킨다는 전제를 갖는 가설 검정 방법론들이 많이 존재하기 때문에 변수의 성질도 고려가 필요합니다.
흔히 사용되는 통계적 가정
- 정규성 가정 : 모집단이 정규분포를 따른다
흔히 사용하게 되는 가설 검정 방법론들은 대부분 이 정규성 가정을 전제하고 있습니다.
하지만 표본 크기가 큰 경우 대부분의 경우 정규성 검정은 큰 도움이 되지 않는다는 주의사항이 있습니다.- 정규성 가정을 만족시키는 경우 사용된 가설 검정 방법론은 모수 검정 (parametric test)입니다.
- 정규성이 없다고 판단되는 경우에 사용되는 가설 검정 방법론은 비모수 검정 (nonparametric test)입니다.
- 모집단이 정규분포를 따르는지 정규성을 판단하는 방법
- 샤피로 - 윌크 검정
- 콜모고로프 - 스미르토노프 검정
- Q-Q 플롯
- 등분산성 가정 : 집단 간 분산이 동일하다
집단 간 비교가 진행되는 경우, 집단 간 분산이 동일한지 여부에 따라 다른 방법론이 사용됩니다.- 두 집단의 분산이 같은 경우(등분산성이 있는 경우)에는 스튜던트의 t검정(Student’s t-test)을 시행합니다.
- 두 집단의 분산이 다른 경우(등분산성이 없는 경우)에는 ‘웰치의 t검정(Welch’s t-test)’을 시행합니다.
- 각 모집단이 등분산을 따르는지 조사하는 방법
밑의 2가지 방법 모두 ‘2개 모집단의 분산은 같다’라는 귀무가설과 ‘2개 모집단의 분산은 같지 않다’라는 대립가설을 설정하고 조사가 이루어집니다.- 레빈 검정 (Levene’s test)
- 바틀렛 검정 (Bartlett’s test)
최강력 검정
최강력 검정(Most Powerful Test) : 특정한 대립 가설에 대해 설정된 유의 수준 하에서 가장 큰 검정력을 가지는 검정 방법론
어떤 분석방법이 어떤 상황에서 최강력 검정이 되는지 논하려면 위에서 설명한 여러 요소들을 두루 고려해야 합니다.
모평균에 대한 어떤 가설 검정을 사용할 지 선택하기 위한 분류
모평균에 대한 검정:
- 모집단이 정규분포를 따르는 경우
- 모분산을 아는 경우 : z검정
- 모분산을 모르는 경우 : t검정
- 모집단이 정규분포를 따르지 않는 경우
- 대표본(n ≥ 30) : z검정
- 소표본(n < 30): 비모수 검정
두 집단 간의 차이를 밝히는 Z검정
Z검정(Z-test)은 ‘정규분포’를 활용하는 검정 방법으로, 평균 차이와 비율 차이에 모두 적용이 가능한 방법입니다.
Z검정을 적용하기 위해 지켜져야 하는 2가지 가정
- Z검정은 정규분포를 활용하는 검정 방법이므로 Z검정을 시행하려면 모집단이 정규분포를 따라야 한다는 기본 가정을 따라야 합니다. (표본 크기가 충분히 크다면(30개 이상) 사실 이 가정을 무시할 수 있습니다.)
- 두 모집단은 서로 독립적이어야 한다는 가정에 따라야 하며, 이는 두 집단이 서로 구분된 집단임을 의미합니다.
(‘서로 관계가 없는 두 그룹을 비교하는 경우라면 이 조건을 충족한다’)
평균 차이에 대한 Z검정
추천모델에 새로운 기능을 도입하면 매출이 올라갈지 고민하고 있는 상황이라고 가정하며, 이를 위해 우리는 기능에 노출될 그룹 A와 노출되지 않은 그룹 B를 나누어 테스트를 진행했다고 예시를 들고 평균 차이에 대한 Z검정에서 p값을 계산하는 절차를 살펴보겠습니다.
- 가설을 세운다
- 귀무가설 : 기능에 노출된 그룹A와 노출되지않은 그룹B의 평균 구매 금액에서 차이가 없을 것이다.
- 대립가설 : 기능에 노출된 그룹A와 노출되지않은 그룹B의 평균 구매 금액에서 차이를 보일 것이다.
양측 검정 : ‘차이가 있을 것이다’라는 가설 하에 진행하는 검정을 말한다.
단측 검정 : ‘한 측이 우세할 것이다’라는 가설 하에 진행하는 검정을 말한다. - 유의수준 설정
유의수준 = 0.05 (5%) : 귀무가설이 참인데 귀무가설을 기각할 확률
- 검정 통계량 : 귀무가설이 참이라는 가정 하에 표본을 바탕으로 계산된 값
- 두 그룹의 평균과 표준편차, 표본 크기를 활용해 Z점수(Z-score)를 계산합니다.
- Z점수가 Z분포(=표준정규분포 : 평균이 0이고 표준편차가 1인 정규분포)상에서 어느 정도 위치에 있는지 확인해 보고, 해당 점수 혹은 그 이상의 결과가 나올 확률을 계산합니다. (= 이것이 p값이 됩니다.)
즉 , Z점수가 평균=0, 표준편차=1인 z분포 위에 위치하게 됩니다.
4. p값 계산
Z점수는 약 2.9가 나왔다고 했을 때 점수가 3에 가깝기 때문에 ±3 이상으로 평균에서 멀어질 확률은 0.3% 정도가 됩니다.
p값 = 0.3%(0.15+0.15%) = 0.003
p값 (0.003) < 유의수준 (0.05) 이므로 귀무가설을 기각하고 대립가설을 채택합니다.
→ 결론 ) 기능에 노출된 그룹 A와 노출되지않은 그룹B의 평균 구매금액에 차이를 보일 만한 충분한 근거가 있습니다.
비율 차이에 대한 Z검정
이번에는 추천모델에 새로운 기능을 도입하면 구매 전환율이 올라갈지 고민하고 있는 상황이라고 가정하며, 이를 위해 우리는 기능에 노출될 그룹 A와 노출되지 않은 그룹 B를 나누어 테스트를 진행했다고 예시를 들고 비율 차이에 대한 Z검정에서 p값을 계산하는 절차를 살펴보겠습니다.
비율 차이에 대한 Z검정을 위해서는 두 그룹의 구매 전환율과 표본 크기를 알아야 합니다.
- 가설을 세운다
- 귀무가설 : 기능에 노출된 그룹 A와 기능이 노출되지 않은 그룹 B의 구매 전환율에 차이가 없을 것이다.
- 대립가설 : 기능에 노출된 그룹 A와 기능이 노출되지 않은 그룹 B의 구매 전환율에 차이가 있을 것이다.
- 유의수준 설정
유의수준 = 0.05 (5%) : 귀무가설이 참인데 귀무가설을 기각할 확률 - Z점수(검정 통계량) 계산
밑의 식을 통해 표본의 비율 차이를 비율 차이에 대한 표준 오차로 나누어 Z점수를 계산합니다. - p값 계산
이번 예시에서 Z점수가 약 1.1가 나왔다고 했을 때 Z분포를 활용해 확률을 계산해 보면 p값은 약 25.9% 정도가 됩니다.
p값 = 25.9% = 0.259
p값 (0.259) > 유의수준 (0.05) 이므로 귀무가설을 기각하지 않는다 (차이가 없다)
→ 결론 ) A와 B 그룹 간의 상품 구매 유저 비율에 차이가 있는지 알 수 없다.
t 검정
t검정(t-test)은 정규분포 대신 t분포라는 확률분포를 사용하는 검정 방식입니다.
(데이터의 수가 부족해서 Z검정이 불가능한 경우에 사용이 가능한 방법론)
t검정을 사용하는 이유
- 소를 위한 분석 방법은 대를 위한 분석방법을 포용
→ 적은 수의 데이터에 z 검정을 사용하는 것은 적절하지 않지만, 많은 양의 데이터에 t검정을 사용하는 것은 괜찮기 때문이다.
(t분포는 표본 크기가 클수록 Z분포에 수렴하는 특징을 가지고 있기 때문에, 표본의 크기가 커지면 t검정과 Z검정의 결과가 유사해진다.) - t검정의 경우 Z검정과 달리 모분산을 몰라도 적용할 수 있어 쉽게 적용이 가능하다.
t검정의 종류
두 집단의 평균값을 비교하는 상황에서 사용할 수 있는 t검정에는 세 가지 종류가 있습니다.
- 독립 표본 t검정(독립 비교 t검정): 두 집단이 독립적인 경우(서로 관계가 없는 구분된 두 집단을 비교)
예)유저를 반으로 나누어 A그룹과 B그룹- 두 집단의 모분산이 같다고 가정하는 경우 (등분산성 가정) : 스튜던트 t검정을 적용
- 두 집단의 모분산이 다르다고 가정하는 경우 : 웰치의 t 검정을 적용
- 대응 표본 t검정 (대응 비교 t검정) : 두 집단이 밀접한 관련성을 갖는 경우, 전/후 비교
예) 신약 처치를 받기 전과 후의 비교
평균 차이에 대한 t검정
추천모델에 새로운 기능을 도입하면 매출이 올라갈지 고민하고 있는 상황이라고 가정하며, 이를 위해 기능에 노출될 그룹 A와 노출되지 않은 그룹 B를 나누어 테스트를 진행했다고 예시를 들며 평균 차이에 대한 t검정의 절차를 살펴 보겠습니다.
- 가설을 세운다
- 귀무가설 : 그룹 A와 B의 평균 구매 금액 간에는 차이가 없을 것이다.
- 대립가설 : 그룹 A와 B의 평균 구매 금액 간에는 차이가 있을 것이다.
- 유의수준 설정
유의수준 = 0.05 (5%) : 귀무가설이 참인데 귀무가설을 기각할 확률 - t통계량(t-statistics) 계산
- 두 그룹의 평균과 표준편차, 표본 크기를 활용해 t통계량을 계산한다.
- t통계량이 t분포 상에서 어느 정도 위치에 있는지 확인해 보고, 해당 수치 혹은 그 이상의 결과가 나올 확률을 계산한다.
(→p값이 된다.)
- p값 계산
이번 예시에서 t통계량은 약 2.9가 나왔을 때 t분포를 활용해 확률을 계산해 보면 p값은 약 0.34% 정도가 됩니다.
p값 = 0.34% = 0.0034
p값 (0.0034) < 유의수준 (0.05) 이므로 귀무가설을 기각하고 대립가설을 채택한다.
→ 결론 ) A그룹과 B그룹의 평균 구매 금액에는 유의미한 차이가 있다.
Z검정과 t검정 중 무엇을 사용해야 할까?
- 두 그룹의 평균 차이 검정에는 t검정을 적용합니다.
- 두 그룹의 비율 차이 검정에는 Z검정을 적용합니다. (비율 차이에 대한 검정에 t검정은 적용할 수 없습니다.)
세 그룹 이상의 평균 차이를 확인하는 분산 분석
분산 분석 (ANOVA ; Analysis of Variance)
‘눈앞의 차이가 우연한 결과일 가능성이 얼마나 되는지’를 나타내는 p값을 계산하고, 이를 통해 가설을 기각하거나 채택하는 방식을 말합니다.
- 평균 차이를 확인하는데 분산을 분석하는 이유 : 평균을 확인하는 데 있어서 분산이 중요하기 때문입니다.
분산 분석에 의해 검정할 수 있는 가설
- 귀무가설 : 그룹 간 평균 차이가 없다(모든 그룹의 평균이 동일하다)
- 대립가설 : 그룹 간 평균 차이가 있다(모든 그룹의 평균이 동일하지 않다)
세 그룹 이상의 평균 차이를 결정할 때에는 분산 분석을 사용하지만, p값 < 유의수준이라서 귀무가설을 기각한다고 하더라도,
(즉, 세 그룹 중 하나라도 평균에 차이가 있다) 구체적으로 어떤 그룹에서 차이가 발생했는지 모르기 때문에 분산 분석 이후에 사후 검정이 요구됩니다.
보시다시피 가설의 기각여부와 상관없이 특정 그룹에 대한 분석이 되지 않아 ‘어느 그룹을 선택해야 하는지”에 대한 구체적인 답변을 주지 못하기에 비즈니스 상황에서는 많이 활용되지 않습니다.
- 적용할 수 있는 사후 검정 : 튜키 검정, 본페로니 검정
세 그룹 이상의 비율 차이를 검정하는 카이제곱검정
카이제곱검정 (Chi-squared test)
세 그룹 이상의 비율 차이는 카이제곱 분포에 따라 검정이 가능합니다.
카이제곱검정에 의해 검정할 수 있는 가설
귀무가설 : 세 그룹의 비율 간에 차이가 없다.
대립가설 : 세 그룹의 비율 간에 차이가 있다.(모든 그룹의 비율이 전부 같다고 할 수는 없다)
카이제곱 검정 또한 특정 그룹에 대해서는 분석이 되지 않아 최적의 선택이 무엇인지를 알기가 어렵습니다.
세 그룹 이상을 비교하는 현실적인 방법
세 그룹 이상을 비교할 때 두 그룹씩 묶어 각각 검정했을 때의 단점
- 그룹의 수가 많아질수록 검정의 양이 많아지기 때문에 번거롭고 비효율적입니다. (nC2)
- 검정을 여러 번 수행한 후 이 결과를 조합해 해석하는 경우 잘못된 판단으로 이어질 가능성이 증가합니다.
- 검정을 3회하는 경우, p값이 3개가 되며 제 1종 오류를 피할 확률이 95% * 95% * 95% = 약 86%로 떨어지게 됩니다.
다중 비교 분석 방법론
위와 같은 문제들을 피하기 위해 세 그룹 이상의 비교하려면 다중 비교 분석 방법론을 적용합니다.
- 튜키 검정
- 피셔 검정
- 본페로니 방법 : 그룹을 2개씩 짝지어 비교하되 각각의 p값을 판단하는 유의수준을 검정 횟수로 나누어 사용하는 방법이다.
예) 5회의 검정을 하게 된다면 각각의 p값은 0.05 대신 0.01 미만인지 아닌지를 기준으로 판단하게 하는 것이다.
p값을 0.05와 비교하는 대신 0.05 / 5 = 0.01과 비교
하지만 다중비교 방법론은 제1종 오류의 확률이 높아지는 걸 억제해 주는 반면 너무 제1종 오류에 신경 쓴 나머지 검정력은 하락한다는 단점이 있을 수 있고, 제1종 오류와 제2종 오류를 함께 적절히 통제해 줄 적합한 방법론을 찾아서 사용한다 해도 그룹을 2개씩 짝지어 비교해야 한다는 점에서 오는 번거로움이 큽니다.
이번 글에서는 통계적 가설 검정 / 제 1종 오류와 제 2종 오류 / 통계적 유의미성 / p값 계산법 / Z검정 / t검정 / 분산분석 / 카이제곱검정 / 다중 비교 분석 방법론이 포함된 내용을 정리했으며, 데이터 분석과 데이터를 다루는 경우에 모두 필수적인 개념들로 꼭 잊지 말고 알아가야 하는 내용인 것 같습니다.
글 읽어주셔서 감사합니다.
출처 및 참고자료 : 코드잇 사이트 강의 '통계적 가설 검정' https://www.codeit.kr/topics/da-sprint-hypothesis
'통계' 카테고리의 다른 글
[통계 개념 정리 4] 추론 통계 개념 정리 3️⃣ (회귀 분석) (0) | 2024.07.07 |
---|---|
[통계 개념 정리 2] 추론 통계 개념 정리 1️⃣ (추론 통계 개요, 통계 리터러시) (0) | 2024.07.06 |
[통계 개념 정리 1]기초 통계 개념 정리 (0) | 2024.07.05 |
데이터 분석을 공부하고 카페를 열심히 돌아다니는 이야기
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!