표준 정규 분포 하에서의 2차 모멘트의 표본 분포가 카이 제곱 분포가 되는 것을 수치 실험으로 확인한다

8765 단어 C++통계학

배경



마지막 기사 에서 언급했듯이, 표본 분산의 분산을 기술하기 위해서는 4차 모멘트가 필요해 조금 까다롭게 됩니다.

표준 정규 분포의 경우 평균 주위의 2차 모멘트의 표본 분포는 카이 제곱 분포입니다. 이번에는 이것을 수치 실험으로 확인합니다.

확인하고 싶은 것



표준 정규 분포에서 표본 크기를 $n$, 표본 분산을 $s^2$로 설정하면 $ns^2$는 자유도 $n-1$의 카이 제곱 분포를 따릅니다. 자유도 $n-1$의 카이 제곱 분포라고 하는 괄호 이름입니다만, 이것은 $n-1$개의 표준 정규 난수를 준비해, 그 제곱합의 따르는 분포이며, 그다지 복잡한 것은 아닙니다.

여기서 확인하고 싶은 것은 표준 정규 난수의 제곱합이 카이 제곱 분포를 따르고, $ns^2$가 자유도 $n-1$의 카이 제곱 분포를 따르는 것입니다.

수치 실험 1 : 표준 정규 난수의 제곱 합이 카이 제곱 분포를 따르는지 확인



$5$개의 표준 정규 난수의 제곱합을 샘플링하여 히스토그램을 만들어 봅니다.
#include <iostream>
#include <random>
#include <vector>

int main(int argc, char **argv)
{
        std::mt19937 mt(0);
        std::normal_distribution<double> r(0, 1);//標準正規乱数

        int N = atoi(argv[1]);//標準正規乱数の個数
        int Iter = 100000;//試行回数

        for (int iter = 0; iter < Iter; iter++)
        {
                double sum = 0;
                for (int n = 0; n < N; n++)
                {
                        double X = r(mt);
                        sum += X * X;
                }
                std::cout << sum << std::endl;
        }

        return 0;
}

히스토그램과 자유도 $5$의 카이 제곱 분포를 겹쳐 봅니다. 대체로 일치하는 것을 확인할 수 있었습니다.


수치 실험 2 : 평균 주위의 2 차 모멘트가 자유도 n-1의 카이 제곱 분포를 따르는지 확인



표본 크기를 $6$로 표본 분산을 샘플링합니다.
#include <iostream>
#include <random>
#include <vector>

int main(int argc, char **argv)
{
        std::mt19937 mt(0);
        std::normal_distribution<double> r(0, 1);//標準正規乱数

        int N = atoi(argv[1]);//標本サイズ
        int Iter = 100000;//試行回数

        for (int iter = 0; iter < Iter; iter++)
        {
                double sum2 = 0, sum1 = 0;
                for (int n = 0; n < N; n++)
                {
                        double X = r(mt);
                        sum1 += X;
                        sum2 += X * X;
                }
                std::cout << sum2-sum1*sum1/(double)N << std::endl;
        }

        return 0;
}

히스토그램과 자유도 $5$의 카이 제곱 분포를 겹쳐 봅니다. 대략 일치하는 것을 확인할 수 있었습니다.

코드를 보면, 그럼 카이 제곱 분포가 될 것 같다고 생각합니다 (sum1은 평균 제로로 sum2의 기여가 주라고 생각되기 때문에).

요약



표준 정규 난수의 제곱합이 카이 제곱 분포를 따르고, $ns^2$가 자유도 $n-1$의 카이 제곱 분포를 따르는 것을 수치 실험에서 확인했습니다.

일반적으로 $ns^2/\sigma^2$는 자유도 $n-1$의 카이 제곱 분포를 따릅니다. 표본 분산을 알고 있는 것으로서, $\sigma^2$의 값으로서 좋아하는 것을 취하면, $ns^2/\sigma^2$의 값이 카이 제곱 분포의 어디로부터 샘플링되는지가 정해집니다 . 즉 그 $\sigma^2$의 값일 확률을 알 수 있습니다. $\sigma^2$의 값을 망라적으로 흔들어 주는(적분이군요) 것으로 어느 범위의 $\sigma^2$의 값이 있을 수 있을까를 알 수 있습니다. 이렇게 함으로써 모분산의 값을 구간 추정할 수 있습니다.

좋은 웹페이지 즐겨찾기