p値をわかりやすく解説|検出力を使った具体例
1. p値の定義と計算方法
1.1 p値の定義
p値 は、統計検定において次のように定義される数値です。
p値 (p-value)
帰無仮説 ${H_0}$ を前提としたとき、観測された検定統計量と同じかそれ以上に極端な値が得られる確率
ここでいう「極端な値」とは、検定手法や両側検定・片側検定によって定義が変わります。
たとえば平均値に関する両側検定の場合、観測された平均値が帰無仮説で想定される値からどの程度離れているか、つまり絶対値で判断します。
1.2 具体例:Z検定による導出
母集団の分散 ${\sigma^2}$が既知で、サンプルサイズ ${n}$ が比較的大きいとき、しばしばZ検定が用いられます。
わかんない時はt分布を使いがちですね。
単純化のため、帰無仮説 ${H_0}$を「母平均${\mu = \mu_0}$」とします。標本平均を ${\bar{X}}$とすると、Z統計量は以下のように計算されます。
$${Z = \frac{\bar{X} – \mu_0}{\sigma / \sqrt{n}}}$$
両側検定の場合、観測された ${Z}$ 値の絶対値がある程度大きい(具体的には「有意水準 ${\alpha}$に基づいて決まる臨界値」より大きい)かどうかを確認します。
Z検定での p値は、以下のように求められます(両側検定の場合)
$${\text{p値} = 2 \times P(Z \ge |z_{\text{obs}}|)}$$
${z_{\text{obs}}}$ は観測された${Z}$値です。計算した結果の p値 が小さいほど「もし帰無仮説が正しいなら、これ以上に極端な値は起きにくい」ということを意味します。
しかし、だからといって「帰無仮説が絶対に間違っている」とか「大きな効果が存在する」などと、結論づけることはできません。
あくまで帰無仮説と両立しにくいデータだという程度の示唆に留まる点が重要です。
2. 第一種の過誤と有意水準について
2.1 第一種の過誤
統計的仮説検定には、主に次の二種類の誤りがあると整理されます。
- 第一種の過誤 (Type I error):
帰無仮説 ${H_0}$が本当は正しいのに、誤って棄却してしまう誤り。- これをp値と誤解した使い方をしているパターンがあったりします。
- 第二種の過誤 (Type II error):
帰無仮説 ${H_0}$が本当は誤りなのに、誤って採択(または棄却しない)してしまう誤り。
よくある仮説検定の指標として、第一種の過誤を起こす確率を抑制するために、あらかじめ「有意水準${\alpha}$」を設定します。典型的には${\alpha = 0.05}$や ${\alpha = 0.01}$などが用いられますが、これに深い必然性があるわけではなく、慣習的に選択されることが多いです。
72名の研究者が連名して提言した「Redefine statistical significance」も読むと面白いかもしれません。
こちらは、0.05という慣習的なp値の閾値を0.005にしようという話です。
2.2 統計的有意
さて、p値を計算し、それが有意水準 ${\alpha}$ よりも小さい(たとえば p値 < 0.05)とき、「棄却域に入った」として統計的有意が得られたと判断します。これを別の言葉で言えば「p値 < α である」というだけの事実です。
よくある誤解として「p値が小さい→効果が大きい」「p値が大きい→政策評価に値しない」といった結論づけが挙げられますが、これはあやまりです。
あくまでも「もし帰無仮説が真である場合にこの程度の極端さが生じる確率が低い」ことを示唆しているということですね。
3. p値の使いどころ
3.1 p値は効果の大きさや結果の重要性を示すわけではない
p値は「帰無仮説を前提としたときのデータの極端さ」を確率的に表すものです。
したがって、下記のような勘違いをしてしまうと誤解を生みます。
- 小さいp値 = 大きい効果量
実際には、効果量を別に測定しないと、真の効果の大きさに関しては何も分かりません。 - p値が高い = 無視できる効果
これは「証拠不十分=効果なし」と誤って結論づけるのと同様のまちがいです。サンプルサイズが小さいなどの理由で検出力が不足し、p値が大きくなっている可能性もあります。
4 A/Bテストを例に
特にデジマの領域では、A/Bテストが頻繁に行われます。たとえば、あるECサイトで新しい商品説明ページ(パターンA)と従来のページ(パターンB)のどちらがより高い購入率(コンバージョン率)をもたらすかを比較検証するケースを考えましょう。
- パターンA: テキストや画像、レイアウトを刷新したページ
- パターンB: 従来のページ
このとき、単純には「パターンAのCVR(コンバージョンレート)はパターンBよりも高いか」という仮説を検証することになります。帰無仮説 ${H_0}$ は「両者のコンバージョン率に差はない」となり、対立仮説 ${H_1}$ は「パターンAのCVRはBより高い(あるいは違う)」という形が多いでしょう。
4.1 A/Bテストに潜む検出力の問題
A/Bテストで p値 や有意水準を設定し「どちらが優れているか」を判断しようとするとき、往々にして以下のような問題が浮上します。
- サンプルサイズが不足している
観測対象となるユーザ数が少ないと、p値の安定度が下がり、有意差が出にくくなる(=検出力が低い)。実際には少しだけ有意な差があったとしても、サンプル数が少なければ「p値 < 0.05」に到達せず「差はない」と結論付けられてしまうかもしれない。- これは第二種の過誤のリスクが高まるという意味でもある。
- 効果量が小さい
例えば、商品のレイアウトを少し変える程度ではコンバージョン率が0.5%程度しか変わらないかもしれない。しかし仮にビジネス上はこの0.5%が大きなインパクトを持つとわかっていても、サンプル数が十分でなければ統計的有意にはなりにくい。- ビジネス上の重要性”と“統計的有意”の乖離が起こりがちな話です。
- 検定の頻回利用による問題(p値ハッキング)
早い段階で結論を出したいばかりに、A/Bテストを短期間で繰り返し行い、小さな有意差を見つけて「勝ち」を宣言してしまうことがある。しかしそれは検出力不足のまま有意差を求め続け、運よく偶然の偏りを拾ってしまった可能性もある。- 要は、再現性に乏しい結論を導くリスクが高い。
上のように、p値が「統計的に有意かどうか」だけを判断するのではなく、「このテスト設計で本当に検出すべき差を正しく捉える」=検出力を十分に考慮する、というのが大事です。
4.2 検出力を踏まえたA/Bテスト設計の具体例
さっきから話題に出している、検出力についてまとめます。
検出力(Power)は以下のように定義されます。
$${\text{Power} = 1 – \beta}$$
ここで ${\beta}$は第二種の過誤(帰無仮説が誤りなのに採択してしまう誤り)の確率ですね。ビジネスにおいては、見逃してはいけない差を見逃すことは機会損失に直結するため、この ${\beta}$を低く抑える必要があるのですが..
しかし、${\alpha}$(第一種の過誤率)は意識しても、${\beta}$はあまり意識されないままテストが進められるケースが少なくないですね。
例えば、A/Bテスト前に「最小でも1%のコンバージョン率向上があればビジネス的に大きな意味がある」とわかっているならば、その効果量(いわゆる差分)を踏まえて「1%の差を検出できるだけのサンプルサイズ」を設定すべきである。
↓
これは、簡単に言えば「帰無仮説が本当は誤り(1%の改善効果が事実)だとしたら、それを高い確率(たとえば80%や90%)で検出できるサンプル数を集める」という発想です。
4.3 サンプルサイズの見積もり
具体的には、二項検定をベースとしたA/Bテストでコンバージョン率の差を検証する場合、次のような式に基づいて必要なサンプルサイズを概算することができます。
片側検定で標本比率がほぼ同じ場合、母集団のCVRを ${p}$、発見したい差を ${\delta}$、有意水準 ${\alpha}$ と検出力を ${1 – \beta}$ とすると、必要なサンプルサイズ ${n}$ の目安は以下のように求められます
$${n \approx 2 \times \left( \frac{z_{1-\alpha} \sqrt{2p(1-p)} + z_{1-\beta} \sqrt{p(1-p) + (p+\delta)(1 – (p+\delta))}}{\delta} \right)^2}$$
- ${z_{1-\alpha}}$ は標準正規分布において上側確率が ${\alpha}$ となる点(片側検定の場合)
- ${z_{1-\beta}}$は上側確率が ${\beta}$となる点
- たとえば ${\alpha=0.05}$,${\beta=0.2}$(= 検出力${80}$%)などと設定する
所定の効果量を検知するだけのサンプル数を確保してからテストを行うことで、p値の有意・非有意に一喜一憂するのではなく、「望むレベルの効果を見逃さない」テスト設計ができます。
4.4 ビジネス現場での事例:メールマーケティング
メールマーケティングで、メルマガの件名を変えて開封率やクリック率を向上させたい、というシチュエーションを考える。たとえば
- 「新春セール!」という件名(パターンA)
- 「期間限定の特別価格」という件名(パターンB)
でテストを行う場合、開封率の差を指標とすることが多いです。
例に出したのはいいですが、今iosってメールの開封率取れてましたっけ..?笑
- 期待する開封率:10%程度
- 有意水準 ${\alpha=0.05}$、検出力 ${1 – \beta=80}$
- 期待したい差は1%(10% → 11%)程度
この条件で先の式を使って必要サンプル数を概算すると、ざっと数千~1万通規模は必要、などの数字が出てくるとしましょう。
ところがマーケティング担当者が「今回送れるのは2,000通だけなので、A/Bテストは1,000通ずつに分けよう」と決めてしまった場合、実は検出力が思ってたより低く、1%の差があっても検出できない可能性が高いかもしれないというわけです。
4.4,1 p値が高く出た場合
で、この状況でA/Bテストを実施し、p値が0.07(= 7%)となったとします。
「p値 < 0.05ではないので有意差なし、つまりパターンAとBに差はない」という結論に飛びつくのは危ないです。サンプルサイズ不足により「本当は差があるのに検出できなかった」という第二種の過誤が起きているかもしれないということですね。
4.4.2 一度のテストやp値だけに依存しない
ビジネスの現場では、A/Bテストの結果を総合的に判断する必要がある。効果量の推定値(例えば開封率やクリック率の差分)はもちろん、その差分の信頼区間やサンプルサイズを踏まえた再現性、施策に要するコストや見込まれる売上影響など、さまざまな要素を吟味すべきである。
5. まとめ!
ここまで色々書いてきましたが、現場だと結構適当な感じでA/Bテストの評価がなされていたりとか、検証前の段階ではデータサイエンティストやアナリストは呼ばれず、検証後のデータをもらうところから案件にアサインされたりする、など現場の求める意思決定のスピードや社員の多忙感に対して、統計的に正しい検証プロセスを丁寧に組み入れるのは、結構ハードルが高かったりします。
さて、まとめです!
- 検出力を重視した事前設計が大事!
- テストの目的と期待する差(効果量)を明確化し、その差を一定の確率(例えば80%や90%)で検出できるだけのサンプルを確保する。
- p値はあくまで確率的指標にすぎない
- p値が小さいからといって大きな効果があるとは限らないし、p値が5%以上だからといって差がないわけでもない。
- p値自体は効果の大きさや結果の重要性を示すものでもない。
- p値がどんなに小さくても、帰無仮説の絶対否定にはつながらない
- 統計的に「このデータが生まれる確率が低い」というだけであり、「0%」ではない。再現性を確認するアプローチが大切。
- A/Bテスト結果を政策や施策に直結する際は慎重さが必要
- 「p値 < 0.05」といった単純な有意性判定だけでビジネスの方向性を全て決めるのはけっこう危うい。
- まあ実態としては、仕方ないところもある。