統計的仮説検定とは?サンプルサイズの決め方も解説
こんにちは。データサイエンスチーム tmtkです。
この記事では、統計的仮説検定をするときのサンプルサイズの決め方の入門的解説を行います。
この記事は、永田靖『サンプルサイズの決め方』を参考に書かれています。
統計的仮説検定の枠組み
最初に、統計的仮説検定について復習します。
まずは身近な例で説明します。いま、表と裏が等確率で出るとされているコインがあるとします。このコインを10回投げて、10回とも全部表が出たとしたら、コインの表が出る確率が裏が出る確率より高いと疑うのではないでしょうか。実際、表と裏が等確率で出るコインを10回投げて、10回連続で表が出る確率は
[latex]{}_{10} \mathrm{C}_{10} (\frac{1}{2})^{10} (\frac{1}{2})^0 \approx 0.001 [/latex]
です。つまり、表裏が等確率で出るコインを投げて表が10回連続で出たとすると、0.1%程度の確率しかないことが起こっているということになります。この場合、非常に低確率なことが起こっているので、「このコインはおかしい」と判断することができそうです。統計的仮説検定はこのような判断を統計的に正しく行う枠組みです。
統計的仮説検定をより正確に説明します。ここでは、母分散が既知の正規分布について、母平均を両側検定する場合について説明します。現実には母分散が既知であることは考えづらいのですが、話が簡単になるため学習用によく持ち出される設定です。
いま、データ[latex]x_1, x_2, \ldots, x_n[/latex]が独立に正規分布[latex]N(\mu, \sigma_0^2)[/latex]にしたがっているとします。ここで、母分散[latex]\sigma_0^2[/latex]は既知であるとします。統計的仮説検定では、帰無仮説[latex]H_0 \colon \mu = \mu_0[/latex](多くの場合、[latex]\mu_0[/latex]として、母平均として信じられてきたが母平均であることを否定したい値を設定する)が成り立っていると仮定し、有意水準[latex]\alpha[/latex]を(通常は[latex]\alpha=0.05[/latex]と)設定し、検定統計量
[latex]u_0 = \frac{\overline{x} – \mu_0}{\sqrt{\sigma_0^2/n}}[/latex]
が上側[latex]\alpha/2[/latex]点[latex]z_{\alpha/2}[/latex]に対して
[latex]|u_0| \geq z_{\alpha/2}[/latex]
を満たしていれば、帰無仮説[latex]H_0[/latex]を棄却し、[latex]\mu \neq \mu_0[/latex]を結論づけます。これが統計的仮説検定の(母分散が既知の正規分布の母平均を両側検定する場合の)枠組みです。
([latex]z_{\alpha/2}[/latex]のイメージ)
以下、統計的仮説検定を単に仮説検定と呼びます。
また、サンプルの大きさをサンプルサイズと呼びます。上のコイン投げの例でいう[latex]10[/latex]、正規分布の母平均の仮説検定の例でいう[latex]n[/latex]がサンプルサイズです。
【事例集】AIや機械学習によるビッグデータ活用をしたい方にオススメ!

「AIによるキャスト評価システムの構築」「データ分析基盤の運用費用9割削減」など、AWSを利用したAI、機械学習の成功事例をご紹介します。
なぜサンプルサイズを決める必要があるか
サンプルサイズが大きくなればなるほど、推定量の精度は高くなることが多いです。たとえば、正規分布[latex]N(\mu, \sigma^2)[/latex]に独立にしたがうデータ[latex]x_1, x_2, \ldots, x_n[/latex]に対して、もとの正規分布の母平均[latex]\mu[/latex]の推定量として標本平均[latex]\overline{x} = \frac{1}{n}\sum_{i=1}^n x_i[/latex]を考えます。このとき、推定量[latex]\overline{x}[/latex]は正規分布[latex]N(\mu, \frac{\sigma^2}{n})[/latex]に従うことが知られています。サンプルサイズ[latex]n[/latex]が大きくなれば大きくなるほど、平均[latex]\mu[/latex]の推定量[latex]\overline{x}[/latex]の母分散が小さくなっていき、推定量[latex]\overline{x}[/latex]は真の値[latex]\mu[/latex]に近い値をとる確率が高くなっていきます。このような推定量を、一致推定量といいます。
サンプルサイズが大きくなれば、推定の精度はどんどん上がっていきます。精度は高ければ高いほどいいので、統計的仮説検定を行うサンプルサイズは大きければ大きいほどよいようにも思えます。
しかし、現実には仮説検定でつかうサンプルサイズは大きすぎないほうがよいといわれています。なぜでしょうか。
その答えは、仮説検定は帰無仮説[latex]H_0 \colon \mu = \mu_0[/latex]が成り立つかどうかを判定するだけであり、母平均[latex]\mu[/latex]が帰無仮説での値[latex]\mu_0[/latex]からどれだけ離れているかを判定することはしないからです。標語的になってしまいますが、別のいいかたをすれば、サンプルサイズをいくらでも大きくできれば、どんな仮説検定でも棄却できるということもできます。以下で詳しく説明します。
帰無仮説の母平均と真の母平均が[latex]\frac{1}{2}\sigma_0[/latex]離れている場合
例として、母分散が既知の正規分布の母平均の両側検定について考えます。有意水準[latex]\alpha[/latex]は[latex]\alpha =0.05[/latex]とします。簡単にするため、既知である母分散が[latex]\sigma_0^2 = 1^2[/latex]であり、帰無仮説の母平均が[latex]\mu_0 = 0[/latex]に従うとしましょう。つまり、考えている分布は帰無仮説のもとでは標準正規分布[latex]N(0, 1^2)[/latex]です。
ここで、真の母平均[latex]\mu[/latex]が[latex]\mu = \frac{1}{2}\sigma_0 = 0.5[/latex]となっていたとします。つまり、真の分布は[latex]N(0.5, 1^2)[/latex]であったとします。この状態でサンプルサイズを[latex]n=100[/latex]として仮説検定をおこなったとき、帰無仮説が棄却される確率[latex]1-\beta[/latex](これを検出力といいます)はいくつでしょうか。
この設定のもとでは、検定統計量
[latex]\displaystyle\begin{aligned} u_0 &= \frac{\overline{x} – \mu_0}{\sqrt{\sigma_0^2/n}} \\ &= \frac{\overline{x} – \mu}{\sqrt{\sigma_0^2/n}} + \frac{\mu – \mu_0}{\sqrt{\sigma_0^2/n}} \\ &= \frac{\overline{x} – \mu}{\sqrt{\sigma_0^2/n}} + 5 \end{aligned}[/latex]
は正規分布[latex]N(5, 1^2)[/latex]にしたがいます。帰無仮説が棄却されるのは[latex]|u_0| > z_{\alpha/2} = 1.96[/latex]のときですから、この条件のもとで帰無仮説が棄却される確率は、標準正規分布に従う確率変数の値が[latex]-3.04[/latex]より大きいか、[latex]-6.96[/latex]より小さい場合の確率に等しいです。後者の場合の確率は無視できるほど小さく、前者の場合の確率は、正規分布の数値表から約[latex]99.88\%[/latex]だとわかります。
したがって、まとめると、真の母平均と帰無仮説の母平均が[latex]\frac{1}{2}\sigma_0[/latex]ぶんだけ離れていて、サンプルサイズが[latex]n=100[/latex]のとき、検出力[latex]1-\beta=99.88\%[/latex]の確率で帰無仮説を棄却できることがわかりました。
この場合は[latex]99.88\%[/latex]という高確率で帰無仮説を棄却でき、仮説検定が威力を発揮することができます。
帰無仮説の母平均と真の母平均が[latex]\frac{1}{10000}\sigma_0[/latex]離れている場合
次に、前の例と同様にして、今度は真の分布が[latex]N(0.0001, 1^2)[/latex]であった場合について考察しましょう。
前の例と同様の計算で、サンプルサイズが[latex]n=100[/latex]の場合には、統計検定量[latex]u_0[/latex]は正規分布[latex]N(0.001, 1^2)[/latex]に従います。したがって、帰無仮説が棄却される確率は、標準正規分布に従う確率変数の値が[latex]1.959[/latex]より大きいか、[latex]-1.961[/latex]より小さい場合の確率に等しいです。これは約[latex]5\%[/latex]です。つまり、この場合には帰無仮説の母平均と真の母平均がほとんど等しいので、検出力[latex]1-\beta \approx 0.05[/latex]が有意水準[latex]\alpha = 0.05[/latex]とほとんど同じになっています。帰無仮説[latex]\mu_0 = 0[/latex]から母平均[latex]\mu[/latex]がたったの[latex]0.0001\sigma_0[/latex]だけ間違っていたからといって、帰無仮説[latex]\mu_0 = 0[/latex]が間違いだと判断したいことは少ないでしょうから、この場合に検出力がほとんどないことは望ましいことです。
しかし、サンプルサイズを莫大にして、[latex]n = 25\times 10^8 = 2500000000[/latex]とした場合にはどうなるでしょうか。
この場合には、統計検定量[latex]u_0[/latex]は正規分布[latex]N(5, 1^2)[/latex]にしたがいます。二つ前の計算と同様にして、この場合の検出力は[latex]99.88\%[/latex]となります。
母平均がたったの[latex]0.0001\sigma_0[/latex]ずれているだけなのに、帰無仮説[latex]H_0\colon \mu = \mu_0[/latex]が高確率で否定されてしまうことになりました。サンプルサイズを大きくしすぎたために、仮説検定が微小すぎる差まで検出して帰無仮説を棄却してしまうという望ましくない状態になっています。
これまで見てきたように、サンプルサイズを大きくすれば大きくするほど、検出力は上がります。サンプルサイズをいくらでも大きくすれば検出力をいくらでも大きくすることができるため、帰無仮説で設定した母数が非常に小さい誤差[latex]0.00\cdots 001[/latex]だけでもずれていれば、サンプルサイズを大きくすることによって帰無仮説を棄却することができます。世の中で出てくる値にはたいてい小さくとも誤差があるため、標語的にいえば、どんな仮説検定でもサンプルサイズを大きくすれば帰無仮説を棄却できるということができます。
これの現象を防ぐためには、サンプルサイズを調節して、帰無仮説と真の値で意味のある差があれば帰無仮説を棄却できる程度にサンプルサイズを大きく、意味のない微小な差なら帰無仮説が棄却されない程度にサンプルサイズを小さく設定する必要があります。これがサンプルサイズを決めることが必要な理由です。
AWSのビッグデータ活用・機械学習導入支援サービス
サンプルサイズの決め方(母分散が既知の正規分布の母平均を仮説検定する場合)
それでは、母分散が既知の正規分布の母平均を仮説検定する場合について、サンプルサイズの決め方を説明します。とはいっても、上でやった計算とほとんど同じです。上の計算ではサンプルサイズから検出力を計算しましたが、サンプルサイズを設計するときには逆に検出力からサンプルサイズを計算します。
これまでと同様に、母分散が既知の正規分布の母平均を仮説検定する場合について考えます。
これまでと同じように、既知の母分散は[latex]\sigma_0^2[/latex]で、帰無仮説[latex]H_0[/latex]は母平均[latex]\mu = \mu_0[/latex]とします。いま、検出力の設定として、真の母平均が[latex]\mu[/latex]だったときに検出力[latex]1-\beta[/latex]で帰無仮説を棄却したいとします。このとき必要なサンプルサイズを計算します。求めるサンプルサイズを[latex]n[/latex]とおきます。
帰無仮説が棄却されるのは統計検定量
[latex]\displaystyle u_0 = \frac{\overline{x} – \mu_0}{\sqrt{\sigma_0^2/n}}[/latex]
が
[latex]|u_0| \geq z_{\alpha/2}[/latex]
を満たすときでした。ここで、[latex]\alpha[/latex]は有意水準です。
この条件[latex]|u_0| \geq z_{\alpha/2}[/latex]を満たす確率が検出力[latex]1-\beta[/latex]となるようにサンプルサイズ[latex]n[/latex]を設定すればいいわけです。統計検定量[latex]u_0[/latex]を変形すると、
[latex]\displaystyle\begin{aligned} u_0 &= \frac{\overline{x} – \mu_0}{\sqrt{\sigma_0^2/n}} & \\ &= \frac{\overline{x} – \mu}{\sqrt{\sigma_0^2/n}} &+ \frac{\mu – \mu_0}{\sqrt{\sigma_0^2/n}} \\ &= u &+ \frac{\mu – \mu_0}{\sqrt{\sigma_0^2/n}}\end{aligned}[/latex]
となります。ただし、
[latex]\displaystyle u = \frac{\overline{x} – \mu}{\sqrt{\sigma_0^2/n}}[/latex]
とおきました。すると[latex]u[/latex]は標準正規分布[latex]N(0, 1^2)[/latex]にしたがい、統計検定量[latex]u_0[/latex]は正規分布[latex]N(\frac{\mu – \mu_0}{\sqrt{\sigma_0^2/n}}, 1^2)[/latex]にしたがいます。
したがって、帰無仮説が棄却される確率は
[latex]\displaystyle\begin{aligned} P(|u_0| \geq z_{\alpha/2}) &= P(|u + \frac{\mu – \mu_0}{\sqrt{\sigma_0^2/n}}| \geq z_{\alpha/2}) \\ &= P(u \leq -z_{\alpha/2} – \sqrt{n}\frac{\mu-\mu_0}{\sigma_0}) + P(u \geq z_{\alpha/2} – \sqrt{n}\frac{\mu-\mu_0}{\sigma_0}) \end{aligned}[/latex]
となります。これが検出力[latex]1-\beta[/latex]と等しくなる[latex]n[/latex]が求めるサンプルサイズ[latex]n[/latex]です。サンプルサイズは以上のようにして計算します。
具体例
具体的な数値を使って、計算方法を実際に確認してみましょう。有意水準を[latex]\alpha=0.05[/latex]、母分散を[latex]\sigma_0^2=1^2[/latex]、帰無仮説を[latex]H_0\colon \mu = \mu_0 = 0[/latex]とします。母平均が[latex]\mu = 0.5[/latex]のとき、検出力[latex]1-\beta = 0.8[/latex]で検出できるような仮説検定をしたいとします。このとき必要なサンプルサイズ[latex]n[/latex]を計算しましょう。
ここで成り立つべき式は
[latex]\displaystyle\begin{aligned} 1-\beta &= P(u \leq -z_{\alpha/2} – \sqrt{n}\frac{\mu-\mu_0}{\sigma_0}) + P(u \geq z_{\alpha/2} – \sqrt{n}\frac{\mu-\mu_0}{\sigma_0}) \end{aligned}[/latex]
ですから、今回の値では
[latex]\displaystyle\begin{aligned} 0.8 &= P(u \leq -1.96 – 0.5\sqrt{n}) + P(u \geq 1.96 – 0.5\sqrt{n}) \end{aligned}[/latex]
が成り立つようにサンプルサイズ[latex]n[/latex]を定めます。
[latex]P(u \leq -1.96 – 0.5\sqrt{n}) + P(u \geq 1.96 – 0.5\sqrt{n}) \approx P(u \geq 1.96 – 0.5\sqrt{n})[/latex]
が成り立つと仮定して計算を進めると、これが検出力[latex]1-\beta = 0.8[/latex]と等しくなるためには
[latex]1.96 – 0.5\sqrt{n} = z_{0.8} = -0.842[/latex]
が成り立てばよいことがわかります。これを計算すると
[latex]n \approx 31.4[/latex]
となるので、サンプルサイズ[latex]n[/latex]は
[latex]n=31[/latex]
とすればよいことがわかります。また、上でおいた仮定の近似が成り立っていることも確認できます。
上のほうでサンプルサイズを[latex]n=100[/latex]とすると検出力が[latex]1-\beta = 99.88%[/latex]となることを見ましたが、検出力が[latex]1-\beta = 0.8[/latex]でいいならば、サンプルサイズは[latex]n=31[/latex]だけでよいことがわかりました。
以上がサンプルサイズの計算の仕方です。
まとめ
この記事では、サンプルサイズを決める必要性についての説明と、母分散が既知の正規分布の母平均を仮説検定する場合のサンプルサイズの決め方について解説しました。
母分散が既知の正規分布の母平均を仮説検定する状況は現実にはあまりありませんが、別の状況でもここで説明した考え方を応用することができます。たとえば、A/Bテストのサンプルサイズの決定に応用することが考えられます。ただし、ユーザの多いウェブサービス上でのA/Bテストの場合は、非常に大きいサンプルサイズを取得することができることが多いため、統計的仮説検定やサンプルサイズの決定などの手続きを踏む必要性が低い場合があります。
AWSのビッグデータ活用・機械学習導入支援サービス
参考
- 倉田博史、星野崇宏『入門統計解析』
統計学の入門書です。仮説検定の枠組みなど基本的なことがわからない場合は参照してください。 - 永田靖『サンプルサイズの決め方』
サンプルサイズの決め方について書かれた本です。この記事はこの本を参考に書かれました。
これからビッグデータ活用を始める方にオススメ!

AIブームなどにより、先端ビジネスの主要テーマのひとつとなっている「ビッグデータ」。事例を交えながら、ビッグデータの解析や活用方法について解説します。
テックブログ新着情報のほか、AWSやGoogle Cloudに関するお役立ち情報を配信中!
Follow @twitterデータ分析と機械学習とソフトウェア開発をしています。 アルゴリズムとデータ構造が好きです。
Recommends
こちらもおすすめ
-
フォトグラファーのシェアリングサービスとAzure、AIの良い関係
2017.4.24
-
Airflowのクラス設計のTips
2023.2.3
-
オーディオプレイヤーをIoTで再デザインする
2018.12.19
-
JupyterLabベータ版の機能、使い方、インストール方法を紹介
2018.2.22
-
Slack、Brobotなどで快適GAレポーティング!
2015.12.20
-
スペクトラルクラスタリング入門
2017.11.2
Special Topics
注目記事はこちら

データ分析入門
これから始めるBigQuery基礎知識
2024.02.28

AWSの料金が 10 %割引になる!
『AWSの請求代行リセールサービス』
2024.07.16