본문 바로가기
n-1은 왜 자유도라고 불리는가요? 자유도의 정체와 직관적인 이해

지난 이야기에 이어, 자유롭고 싶다 자유도!.를 이해하고 싶은 욕망 편.

표본평균의 분포를 다룰 때, 모집단의 분산Variance을 불편추정Unbiased Estimation하는 하는 과정에서 Degrees of Freedom자유도라는 것이 등장하게 되는데, 표본의 평균의 분포가 더 뾰족하니까, 모집단과 비슷하게 덜 뾰족하게 하려면 n-1 자유도로 계산해야 한다는 논리를 처음 보았을 때, 더 뾰족하니까 라는 말은 이해했지만, 뜬금없이 자유도로 나눠 계산해야 한다는 말이 이번에도 이해하기 만만치 않겠군. 하는 생각이 들게 했습니다. 자유도를 제대로 써본 적이 없는 사람에게 자유도를 완벽하게 설명하는 것은 불가능한 그런 것 아닐까. 하는 느낌.

일반적으로 다음과 같은 설명이 자유도를 설명할 때 주를 이룹니다. 

자료 분석을 할 때 일반적으로 사용하는 분산에서는 제곱 편차의 합을 'n-1' 로 나눈 값을 사용합니다. 이것을 'Unbiased Variance Estimator불편분산추정량' 이라고도 합니다. 그러면 왜 'n-1' 로 나눈 값을 사용하는지 궁금하죠? 그것은 바로 'degrees of freedom자유도' 때문입니다. 

응? 아니 애초에 자유도가 도대체 뭐길래 자유도인 n-1로 나눈다는 것인가.하는 말이 나도 모르게 나오게 됩니다. 다시 한번 애를 쓰고 읽어봐도 어쨌든 잘 모르는 상태의 수모를 겪게 되고, 애초에 왜 자유도로 나누는지 알고 싶다는 욕구를 해결할 수 없습니다. 아니 처음으로 돌아오는 뫼비우스의 띠인가요? 

그러면서 이어지는 설명. 자, 보세요. 자유도가 이렇게 쉬운 겁니다. 피자가 5조각 있어요. 5명이 친구가 피자를 하나씩 골라서 먹는다고 해봐요. 4명의 친구가 하나씩 고르고 나면 마지막 친구는 선택의 여지가 없죠? 그러니까 이런 경우에는 자유도가 5-1, 즉 4입니다. 식은 죽 먹기죠?라는 설명이 이어지는데, 자유롭게 선택할 수 있는 경우가 4개인 것은 알겠습니다만, 네? 그게 무슨 상관이죠? 뭔가 알듯하기도 하고 전혀 모르는 것 같기도 하고 그런 상태가 되어버립니다. 피자가 싫어지는 경우가 많지 않은데, 이럴 때가 아닐까 생각합니다. 

통계에서 중요한 사실은 표본으로 평균을 낼 때는 - 중요한 점은 분산도 평균입니다 - 아직까지 사용되지 않은 유효한(자유로운) 데이터의 개수로 평균을 내야 한다는 사실입니다. 

통계에서 더 있어 보이는 자유도에 대한 설명은 주어진 조건에서 자유롭게 변화할 수 있는 -이런 걸 통계에서는 Independent라고 합니다- 데이터의 수라고 정의하고,  $x_1,x_2,\cdots,x_n$의 observation이 있을 때는 반드시 평균을 먼저 계산하게 되고 평균을 알고 나면, 원래 observation 중의 한 값을 잃어도 정보는 전혀 손실되지 않고, - 다시 말해 평균을 알고 나면 자료 중에 어느 한 값은 항상 자유롭지 않은 의미 없는 정보가 되고 - 따라서 자유도는 'observation-1' -즉 n-1- 이 된다고 설명합니다. 따라서 평균을 계산할 때에는 자유도가 'observation수' = n 이고, 분산을 계산할 때는 자유도가 'observation-1' = n-1 입니다. 사실 가장 그럴 싸한 얘기이긴 한데, 왜 가지고 있는 정보가 의미 없게 되는 것일까 하는 의문이 여전히 남습니다. 

거꾸로 말하면, observation수에서 observation를 이용해서 추정한 모수의 수를 뺀 독립(independent) observation수라는 의미인데, 이쯤 오면 Independent observation만 의미 있는 정보란 말인가라는 질문에 이르릅니다. 

잠시만, 독립이라는 단어가 튀어나온 이 순간, 원칙적으로 선형대수학을 배워야 하고, 선형대수학을 이용해서 통계자료를 벡터와 행렬을 이용해 다루고, 통계적 추정량을 행렬과 벡터의 형태로 풀어낸 후 그 형태에서 자유도를 알아내는 것이라는 어딘가 음흉한 이야기를 듣게 됩니다. 

아니 어디까지 알아야 자유도를 이해할 수 있는 것인가. 하고 물어봐야 그거야 알 수 없지 하는 꼴이 돼 버립니다. 

사실 자유도를 "직관적"으로 이해 - 아니 이해라고 하기엔 뭣하지만 -하는 것이 목적이라면, 이런 식으로 생각하면 조금 더 편합니다. 일단 통계는 무엇이든 평균을 내는 것이 기본인데요, 우리가 흔히 구하는 평균도 평균, 분산도 평균입니다. "이 평균을 구할 때 의미를 가지고 있는 데이터의 개수로 나눈다." 이것이 통계의 기본입니다. 

이때, 의미 있는 데이터의 개수가 자유도인데요,  말 그대로 자유롭게 변할 수 있는 값을 가질 수 있는 변수의 수를 말합니다. 이 자유롭게 변할 수 있는 값들이 막 자유롭게 결정되는 와중에 이 변수들이 어떤 특정 값으로 자유롭게 정해 지는 경우, 그 정해진 값 떄문에 어쩔 수 없이 자유롭게 값을 가지지 못하고 어떤 값으로 고정되어야 하는 변수들이 생기는데, 이 고정되어야 하는 값을 제외한 나머지 자유롭게 변할 수 있는 변수의 개수를 자유도라고 생각하면 편리합니다. 이렇게 말하니 좀 어렵긴 한데 조금 후에 예를 들어 설명할테니 잠시 참아주세요. 어쨌든 이런 변수의 개수(자유도)가 통계에서 의미 있는 데이터의 수라고 할 수 있습니다. 통계에서의 의미있는 데이터인 자유도만큼의 데이터만 사용해서 통계 값을 구해야 Unbiased Estimation이 될 수 있다고 보면 된다는 것입니다. - 다시 말해 자유도를 고려하지 않고 n개의 데이터 그대로를 통계값을 구하는 데 사용하게 되면 Biased Estimation이 된다입니다. -

그럼, 먼저 했던 얘기를 정리해서 적용해 보면. 표본 평균을 구할 때는 n개가 모두 있어야 표본 평균을 구할 수 있겠습니다. 그러니까 그때의 자유도는 n이고, 평균을 구할 때는 n으로 나눕니다. 그리고, 표본분산을 구할 떄는 n개의 데이터와 $\hat{\mu}$이 필요한데, 어? $\hat{\mu}$는 이미 구했고, 어? $\hat{\mu}$가 정해지니까, 즉, $\hat{\mu}$가 fix된 값이 되고, n-1개의 데이터만 있으면 나머지 1개의 데이터는 자연스럽게 알 수 있는 값이군! 1개는 자유롭지 못하구만! 그러니까 그때의 자유도는 n-1 이 된다고 생각하면 엄청 편리합니다. 앗. 그렇군요.

이걸 또 더 일반적이고 공식 같은 방법으로도 생각할 수 있는데, 어떤 식이냐면, n개의 observation에서 parameter(모수)를 구할 때마다 한 개의 observation이 통계적인 의미를 잃어버립니다. 

자, 그러면 위의 얘기를 다시 풀면, n개의 Observation이 있는데, 이때는 자유도가 n입니다. 이때, $\hat{\mu}$를 구할 때, 자유도 n을 이용해서 구합니다. 어. $\hat{\mu}$를 구한 순간 1개의 observation이 의미를 잃어버립니다. 그러니까, $s^2$를 구할 때는 (n-1)의 자유도로 나눕니다. 헛. 그렇군요.

또 다른 예로, 좀 이른 얘기이긴 한데, Linear Regression (단순 회귀)에서 표본분산의 자유도를 따져본다면, y=ax+b를 Regression한다고 했을 때, 최종 자유도는 모수인 기울기와 y절편 즉, a, b 두 개의 값을 Obervation으로 구한 다음에야 $e_i$를 계산할 수 있으니까, $e_i$를 구할 때의 최종 자유도는 (n-2)가 됩니다. 
구체적으로는 $$  s^{2}=\frac{\sum \limits_{i=1}^{n} e_{i}^{2}}{n-2}=\frac{S S E}{n-2}$$ 가 됩니다. 

억지로 만들어낸 또 다른 예를 들자면, $$\sum\limits_{i=1}^n \cfrac{(X_i - \bar{X} - \tilde{X})^2}{df}$$ 라는 통계량이 있다고 합시다.($\tilde{X}$는 표본의 메디안, $df$는 자유도) 이때는 자유도를 어떻게 정할 수 있을까요? 이때는 n-2인데, 왜냐하면 같은 논리로 $\bar{X}$를 구하는 데, 1개의 observation 소진, 표본의 메디안($\tilde{X}$)을 구하는데, 또 1개 소진했으니까, 현재 남은 자유도는 (n-2)가 되겠습니다. 

Unbiased (불편-편향되지 않다)는 것은 무엇을 의미하냐면, $E(\hat{\theta})=\theta$ 이고, 추정치의 기댓값은 모수와 같다는 의미인데, 자유도를 이용해서 구한 값들을 수학적으로 장난쳐보면 모수와 같다는 증명이 바로 전에 보았듯이 매우 흔하게 통용되고, 이를 이용해서 표본분산을 구할 때, (n-1)로 나눠야 됨을 증명하면서 그러니까 (n-1)로 나눠야 한다는 설명도 매우 흔합니다. 이런 증명을 보고 있으면 잘은 모르겠지만, 그냥 외워서 (n-1)로 나누면 되는 건가? 하는 찝찝함이 남습니다. 

여러 가지 자유도를 구하는 연습을 해볼까 합니다. 

A~G의 7개 데이터에서 평균을 구했습니다. 이제 자유도는요? 6
6개가 정해지면, 나머지 1개 값은 자연스럽게 알게 됩니다. 
그러니까, 7 - 1 = 6

ㄱ~ㅂ 6개의 데이터에서 평균을 구했습니다. 이제 자유도는요? 5
5개가 정해지면 나머지 1개 값은 자연스럽게 알게 됩니다. 
그러니까 6-1 = 5

A~G 7개의 데이터에서 평균을 구하고, 나서 분산을 구했습니다. 이제 자유도는요? 5
5개가 정해지면 나머지 2개 값은 자연스럽게 알게 됩니다.
그러니까 7-2 = 5

음. 이렇게 보니, 좀 할만할 것 같습니다만? 그럼, 다른 케이스를 한 번 볼까요?

데이터에서 전체 합을 구했습니다. 그러면 여기에서 a를 알면 어떻게 되나요? 나머지를 다 구할 수 있군요? 같은 방식으로 b, c, d를 생각해보면 모두 그렇군요. 그러면 여기에서 자유도는 1입니다. 즉, a 1개를 정하면, 나머지 값들은 자연스럽게 알게 됩니다. 그러니까 4-3 = 1

그러면 이것은 어떤가요? 전체 합을 구했으니까, a, b를 정하면 나머지 모든 값을 알아낼 수 있죠? 그러니까, 자유도는 2입니다. 즉 6-4=2 

이렇게 계산하면 대체로 맞습니다만, 다른 이야기를 여기서 꺼내면 처음부터 너무 많은 이야기를 하는 것 같아서, 적당하게 이 선에서 이해하는 것이 가장 정신 건강상 좋을 거라 생각합니다. 하지만, 이 정도만 알아도 우리가 데이터를 볼 때는 전혀 문제없으니 너무 걱정 마세요.

친절한 데이터 사이언스 강좌 글 전체 목차 (링크) -



댓글





친절한 데이터 사이언스 강좌 글 전체 목차 (링크) -