모평균의 추정

중심극한 정리에 따르면 모집단의 데이터의 분포에 무관하게, 표본의 크기가 충분히 크다면 표본 평균의 분포는 그 평균의 모평균과 같고, 분산이 모분산을 표본수로 나눈 값인 정규분포에 가까워진다. 이 말은 어떤 집단에서 표본을 추출하여 얻는 표본 평균이 모평균의 근처에 있을 가능성이 높다는 의미이다. 그리고 표본 평균의 분산은 모분산을 표본수로 나눈 값이므로 표본의 수가 충분히 크다면 더더욱 표본 평균은 모평균과 가까워질 것이다. 따라서 표본 조사를 통해 얻은 표본 평균을 통해 모평균을 추정하는 것은 너무 터무니 없는 것은 아닌 것이다. 그렇다면 표본 조사를 통한 모평균의 추정은 어떻게 할 수 있을까?

점 추정과 구간 추정

어떤 값 하나를 콕 찍어서 어떤 집단의 대표값으로 추정하는 것을 점 추정이라고 한다. 예를 들어 대학생들의 한 달 용돈을 조사하기 위해 표본을 뽑아 조사하였더니 평균 35만원이 나왔다고 하자. 그러면 한국 대학생들의 한달 용돈이 얼마라고 추정할 수 있을까? 점 추정에서는 대학생의 한달 용돈이 35만원이라고 추정한다. 점추정은 간결하다. 하지만 왠지 석연치 않은 부분이 있다. 점추정은 간결한 대신에 엄밀하지 못하기 때문이다.

표본 평균은 모집단의 평균에 근접할 것이지만, 꼭 같을 수는 없다. 즉 표본 통계량과 모수는 불가피하게 편차가 있을 수 밖에 없는데 점추정은 이러한 편차를 무시해야 하며 고려할 수 있는 방법을 제공하지 않는다.

점 추정으로 얻은 결론은 모수에 근접할 수는 있지만, 편차를 고려하지 못하기 때문에 얼마나 근접했는지는 알 수 없다. 따라서 어떤 값 하나로 추정하기 보다는 표본 분포를 고려하여 모집단의 모수가 포함될 수 있는 범위를 설정하는 것이 보다 합리적일 것이다. 이처럼 특정한 구간 내에 모수가 있을 것으로 추정하는 방법이 구간 추정이다. 통계적 추정에서는 주로 구간 추정을 사용한다.

중심극한정리에 의해 표본평균은 모평균을 중심으로 정규분포를 이루고, 우리는 표본 조사를 통해 이 분포의 평균과 분산을 알 수 있다. 따라서 표본 평균이 모평균 사이의 편차의 양에 따른 확률을 알게 되는 것이다. 이는 거꾸로 말하면 표본 평균을 알게 되었을 때, 모평균이 그 주위 어디쯤에 있을 확률을 알게 된다는 것이다. 따라서 편차의 최대/최소값을 정하면 그 구간 내에 모평균이 있을 확률을 구할 수 있는 것이다.

그렇다면 모수가 포함될 수 있는 구간을 어떻게 잡아야할까? 구간의 폭을 넓게 잡을수록 모수가 선택된 구간에 포함될 확률이 높아진다. 모평균이 음의 무한대에서 양의 무한대 사이에 있다고 추정하면 이 추정은 100% 확실하다. 하지만 구간이 너무 넓다면 추정의 의미가 없어진다. 구간을 좁게 잡으면 훨씬 더 구체적인 수치를 제안할 수 있다. 하지만 모수가 그 구간에 포함될 확률이 그만큼 적어진다는 단점은 있다.

따라서 구간 추정에서는 구간의 범위를 결정하는 것이 매우 중요하다. 일반적으로 오차는 α라하는데, 100(1 – α)%를 신뢰수준이라고 한다. 일반적으로 통계학에서는 90%, 95%, 99% 의 신뢰수준을 많이 사용한다. 90%의 신뢰수준이란 모수가 90%의 확률로 포함될 수 있는 범위를 말한다.

모 분산을 알고 있는 경우

모집단의 분산을 알고 있다면, 모평균은 표분 정규 변수를 통해서 추정할 수 있다. 일반적으로 \bar{X} \sim N \left( \mu, \frac{\sigma^2}{n} \right) 이므로 표본평균을 표준화하면 Z = \frac{\bar{X} - \mu}{\sigma / \sqrt{n}} \sim N \left(0, 1\right) 이 된다. 따라서 표준정규분포의 성질에서 다음의 공식을 얻을 수 있다.

\large Z = \frac{\bar{X} - \mu}{\sigma / \sqrt{n}}

신뢰구간은 정해진 신뢰수준 만큼의 확신을 가지고 모평균이 속해있을 구간을 이야기한다. 이 때 모평균이 속할 수 있는 범위과 그렇지 않은 범위를 나누는 경계를 임계값이라고 한다. 임계값은 오차의 절반인 \pm Z_{\frac{\alpha}{2}}로 정의한다. 이것은 정규 분포에서 좌우 꼬리의 확률이 각각 Z_{\frac{\alpha}{2}} 가 되는 표준정규변수 값이다. (표준정규변수는 정규분포의 적분의 역함수값이다.) 두 임계치 사이에 모평균이 있을 확률은 1 – α 가 되고 식으로 나타내면 다음과 같다.

\large P\left( -z_{\alpha/2} \le Z \le z_{\alpha/2} \right) = 1 - \alpha

여기서 확률변수의 공식으로부터 μ의 범위가 되도록 수식을 정리하면 신뢰수준의 구간은 아래와 같다. 즉 모분산을 알고 있고, 표본 조사를 통해 표본의 수와 표본 평균을 알고 있다면 Z_{\alpha/2}의 값만 정할 수 있다면 오차범위 α 에 대한 모평균은 다음 범위 내에 있다고 추정할 수 있게 된다.

\large \left[ \bar{X} - z_{\alpha/2}\frac{\sigma}{\sqrt{n}}, \bar{X} + z_{\alpha/2}\frac{\sigma}{\sqrt{n}} \right]

예를 들어 오차범위가 5%라고 하면 Z_{\alpha/2}의 값은 1.96이 된다. 이는 표준 정규 분포에서 편차 ±1.96만큼의 범위내에 전체의 95%가 포함된다는 의미이다. 이때 범위에 포함되지 않은 양쪽 끝은 각각 전체의 2.5%씩이 될 것이다.

오차 범위별로 이 Z_{\alpha/2}를 구하면 다음과 같다.1이 값은 scipy 통계페지이에서 scipy.stats.norm.ppf()로 얻을 수 있다.

  • 90% : 1.64
  • 95% : 1.96
  • 99% : 2.58

모분산을 모르는 경우

위에서 알아본 평균의 추정 방법은 모분산을 알고 있다는 가정에서 계산한 것이다. 하지만 현실적으로 모분산을 알고 있는 경우가 얼마나 될까? 모평균도 알지 못하여 추정하고 있는데, 모분산을 알고 있을 경우는 극히 드물 것이다. 따라서 보통의 경우에는 모분산을 모르는 상황에서 추정하여야 한다. 그렇다면 이 경우에는 어떻게 해야할까? 다시 중심 극한 정리로 돌아가면, 표본평균의 분포에서 표본평균의 분산은 모분산을 표본수로 나눈 것이라고 했다. 따라서 표본수가 크면 클수록 표본평균은 분산이 작아저 모평균의 가까운 값을 가질 확률이 커진다. 표본 조사를 통해 알 수 있는 값 중에는 표본분산이 있다. 표본분산과 모분산이 가깝다는 보장은 없지만, 표본 평균의 분포에서 표본의 수로 나눠지기 때문에 표본이 충분히 크면 표본분산과 모분산의 오차의 효과가 무시할 수 있을 정도로 줄어든다. 이 ‘충분히’ 큰 표본의 수는 놀랍게도 그리 크지 않는데, 30개 이상의 표본이면 대표본이라고 하며, 이 경우에는 모분산 대신 표본분산을 사용해도 된다. 그리고 나머지 공식은 모분산을 사용한 것과 동일하다.

표본의 수가 30개 미만인 경우에는 표본평균이 정규분포에 근사하지 않기 때문에 정규분포를 사용할 수 없다. 대신 스튜던트 t 분포를 사용한다. 스튜던트 t 분포도 정규 분포와 비슷하게 종모양을 이루며 좌우 대칭인 분포이다. t 분포는 동일한 함수가 아니라 자유도에 따라 모양이 달라지는데, 자유도가 커질수록 정규 분포에 가까워진다. 이때, 자유도는 표본의 수 n – 1 이 된다. scipy나 엑셀 모두 t 분포에 대한 분석 함수들을 제공하고 있으므로 이 값들을 이용하면 되겠다.

정리

  1. 모평균의 범위를 추정하는 계산식은 모든 케이스에서 거의 비슷하다. (\bar{X} - Z_{\frac{\alpha}{2}}frac{\sigma}{\sqrt{n}}
  2. 모분산을 모른다면 모표준편차를 이 공식에 대입할 수 있다. 단 표본의 수가 30이상이어야 한다.
  3. 모분산을 모르는데 소표본이라면 t 스튜어트 분포를 사용한다.
  4. 표준정규분포나 t스튜어트 분포는 Z_{frac{\alpha}{2}}값을 구하는데 사용한다. 신뢰수준을 %로 잡기 때문에 누적분포함수의 역함수(사분위 함수 또는 퍼센트포인트 함수)가 여기에서 사용된다.

Read more

워드프레스에서 고스트로 이전

워드프레스에서 고스트로 이전

이 글을 쓰면서도 믿기 힘든 사실인데, 블로그라는 걸 처음 시작한지가 20년이 되었습니다. 이글루스에서 처음 시작했다가, SK컴즈가 인수한다고 발표함과 동시에 워드프레스로 플랫폼을 옮겼죠. 워드프레스오 옮긴 이후에는 호스팅 환경을 이리 저리 옮기긴 했지만 거의 18년 가까이 워드프레스를 사용해온 것 같습니다. 그 동안 워드프레스는 블로깅 툴에서 명실상부한 범용CMS로 발전했습니다. 사실 웬만한 홈페이지들은 이제

By sooop
띄어쓰기에 대한 생각

띄어쓰기에 대한 생각

업무 메일을 쓸 때 가장 많이 쓰는 말 중에 하나가 메일 말미에 ‘업무에 참고 부탁 드립니다.‘인데요, 어느 날부터 아웃룩에서 이 ‘부탁 드립니다’가 틀렸다고 맞춤법 지적을 하기 시작했습니다. 맞는 말은 ‘부탁드립니다’라고 붙여 쓰는 거라고. 사실 아래아한글 시절부터 이전의 MS워드까지, 워드프로세서들의 한국어 맞춤법 검사 실력은 거의 있으나 마나 한

By sooop

구글 포토에서 아이클라우드로 탈출한 후기

한 때 구글 포토가 백업 용량을 무제한으로 제공해 주겠다고해서, 구글 포토를 사용해서 사진을 백업해왔습니다. 물론 이 이야기의 결말은 저나 이 글을 읽고 있는 여러분이나 모두 알고 있습니다. 사실 AI에게 학습 시킬 이미지 데이터를 모으기 위한 것일 뿐이라거나 하는 이야기는 그 당시에도 있었습니다만, 에이 그래도 구글인데 용량은 넉넉하게 주겠지…하는 순진한

By sooop

Julia의 함수 사용팁

연산자의 함수적 표기 Julia의 연산자는 기본적으로 함수이며, 함수 호출 표기와 같은 방식으로 호출하는 것이 가능합니다. 또한 그 자체로 함수이기 때문에 filter(), map() 과 같이 함수를 인자로 받는 함수에도 연산자를 그대로 적용하는 것이 가능합니다. 특히 + 연산자는 sum() 함수와 같이 여러 인자를 받아 인자들의 합을 구할 수 있습니다. 2 + 3 # = 5 +(2,

By sooop