수식이 나오지 않는다면 새로고침(F5)을 해주세요
모바일은 수식이 나오지 않습니다.
📌 순열 검정법(Permutation test)
비모수 통계 기법
입니다.
정규성 가정을 충족하지 못하였을 경우 쓰이죠. 요즘은 실제 데이터가 정규성 가정을 충족한다고.. 보기 어려운 경우가 많기 때문에 이런 비모수 통계 기법을 많이 쓰는 거 같아요. 비모수 통계 중에서도 고전적인 순열 검정법에 대해 알아봅시다.
우리에게는 Wilcoxon으로 많이 알려져 있습니다.
한번 가정
해봅시다.
우리가 X와 Y의 두 평균을 비교하고자 합니다. 이 때 X, Y의 분포는 알려지지 않은 공통 분포 $F$로 표현할 수 있다고 해봅시다. 이 때 각각의 분포를 아래와 같이 표현할 수 있습니다.
$$
F_X(u) = F(u-\mu_X), F_Y(u) = F(u-\mu_X)$
$$
여기서 만약에 $F$가 normal distributin이라면? 그냥 우리는 t-test하면 됩니다. 그런데 아닐경우가 있겠죠. 아닐 경우에는 대표적으로 아래 두 가지 방법을 사용합니다.
- Wilcoxon rank sum test : X값들의 순위 합을 계산합니다. ($W=R_1+...+R_{n1}$)
- Mann-Whitney statistic : x값이 y값보다 큰 경우의 쌍을 계산하는 것입니다. 아래 식에서 $I$는 indicator function으로 x가 y보다 크면 1, 그렇지 않으면 0을 반환하는 함수 입니다.
$$
U = \sum_{i=1}^{n1} \sum_{j=1}^{n2} I(x_i > y_i)
$$
달라보이지만 실상 보면 비슷합니다.
이렇게 Wilcoxon-Mann-Whitney ranks sum test의 p-value는 무작위화 방법을 통해 계산할 수 있습니다.
◾ 예시로 확인하기
예시로. 우리에게 $X=(10,40), Y=(20,50,60)$ 이 있다고 합니다. 우리는 이 $X, Y$가 서로 차이가 있는지 보고 싶습니다. 우선 순위를 표로 봅시다
문제는 순위만 봐서 과연 $X,Y$가 차이가 있는가를 알 수 없습니다. 그래서 우리는 무작위 조합을 이용하여 분포를 확인 합니다.
그럼 $X,Y$를 통해 만들 수 있는 순열은 $\binom{N}{n_1}$개 일겁니다. 위 데이터를 예로 들면 $\binom{5}{2}=10$개 겠네요. 이걸 테이블로 표현한다면 아래와 같습니다. 이때 순위의 합이란? X를 기준으로, 각 순열 조합 안에서 $x_1, x_2$의 순위 합을 말합니다.
$X,Y$의 조합으로 만들 수 있는 순열들입니다. 우리가 가지고 있는 $X=(10,40), Y=(20,50,60)$의 경우 순위합이 4인 경우겠군요. 이렇게 우리는 순위합과 빈도를 얻을 수 있습니다. 이를 토대로 분포를 그려보면
대충 이런 분포를 그릴 수 있겠네요. 여기서 우리가 가진 데이터의 순위 핪은 4기 때문에 분포의 끝부분에 있겠군요.
위 예시처럼 $n_X =2, n_Y =3$인 경우는 많지 않을 거에요. 각 n의 개수에 따른 p-value 표는 아래와 같습니다.
R을 통해 우리의 데이터를 검정해봅시다.
# Wilcoxon 순위 합 검정
x <- c(10, 40)
y <- c(20, 50, 60)
wilcox.test(x, y, alternative = "two.sided")
>> Wilcoxon rank sum exact test
data: x and y
W = 1, p-value = 0.4
alternative hypothesis: true location shift is not equal to 0
p-value = 0.4로 나오네요. 위 표에는 나오지 않았지만 유의미한 차이는 없다고 볼 가능성이 높아 보입니다.
'🌞 Statistics for AI > Resampling' 카테고리의 다른 글
교차 검증(Cross validation) (0) | 2024.02.16 |
---|---|
부트스트랩(Bootstrap) 리샘플링(resampling) (0) | 2024.02.16 |
잭나이프(Jackknife) 리샘플링(resampling) (0) | 2024.02.16 |