Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 統計的有意性とP値 | A/Bテストの統計的基礎
PythonによるA/Bテスト

統計的有意性とP値

メニューを表示するにはスワイプしてください

統計的有意性はA/Bテストの基礎的な概念であり、観測されたグループ間の差が偶然によるものか、実際の効果を反映しているかを判断するのに役立ちます。A/Bテストを実施する際には、2つ以上のグループ間で指標(例えばコンバージョン率)を比較します。しかし、単に差が観測されたからといって、それが意味のあるものとは限りません。真の効果がなくても、ランダムな変動によって見かけ上の差が生じることがあります。

ここでp値の概念が登場します。p値は、グループ間に実際の差がない(「帰無仮説」が正しい)と仮定した場合に、観測されたような極端な結果が得られる確率を示します。p値が低い場合、そのような極端な結果が本当に効果がない場合には非常に起こりにくいことを示し、帰無仮説に反する証拠となります。

正しい解釈:

  • p値が0.03の場合、真の差がないと仮定すると、観測された差と同じかそれ以上の差が現れる確率は3%です。

誤った解釈:

  • p値が0.03だからといって、結果が本物である確率が97%であるという意味ではありません;
  • p値は帰無仮説が正しいか誤りかの確率を示すものではありません。

例えば、2つのウェブサイトバージョンのクリック率(CTR)を比較するA/Bテストを実施したとします。p値が0.01であれば、そのような差が偶然だけで生じることはまれであり、新しいバージョンが異なるパフォーマンスを示していると結論付けることができます。しかし、p値が0.50の場合、観測された差はランダムな変動によるものである可能性が高く、実際の効果があるとは言えません。

よくある誤解として、小さいp値が実用的な重要性を保証する、または有意でない結果が効果がないことを証明する、というものがあります。実際には、統計的有意性は観測された結果が偶然によるものである可能性だけを示し、効果の大きさや有用性、重要性については示しません。

12345678910111213141516171819202122232425262728293031323334
import numpy as np from scipy import stats # Example: A/B test comparing conversion rates # Group A: 1000 users, 120 converted # Group B: 1000 users, 150 converted # Conversion rates conv_a = 120 / 1000 conv_b = 150 / 1000 # Number of successes and trials success_a, n_a = 120, 1000 success_b, n_b = 150, 1000 # Calculating pooled probability p_pool = (success_a + success_b) / (n_a + n_b) # Standard error se = np.sqrt(p_pool * (1 - p_pool) * (1/n_a + 1/n_b)) # Z-score z = (conv_b - conv_a) / se # Two-tailed p-value p_value = 2 * (1 - stats.norm.cdf(abs(z))) print(f"Conversion rate A: {conv_a:.3f}") print(f"Conversion rate B: {conv_b:.3f}") print(f"Z-score: {z:.2f}") print(f"P-value: {p_value:.4f}") # Interpretation: # If p-value < 0.05, result is considered statistically significant.
Note
定義

zスコアは、観測値やデータポイントが分布の平均からどれだけ標準偏差離れているかを測定する指標です。仮説検定では、zスコアを用いて観測された差が帰無仮説のもとで期待される値と比べてどれほど極端かを判断します。絶対値が大きいzスコアは、より有意な差を示し、その結果が偶然によるものか、実際の効果を示しているかを評価するのに役立ちます。

統計的有意性の最も一般的な閾値は0.05です。p値がこの閾値を下回る場合、通常「統計的に有意」とされます。 これは、帰無仮説に対する証拠が十分に強く、帰無仮説を棄却できることを意味します。ただし、閾値の選択は任意であり、テストの文脈で検討する必要があります。

p値の限界を理解しておくことが重要です:

  • p値は、効果が存在しない場合にデータがどれほど意外であるかを示すだけであり、効果の大きさや重要性を測定するものではありません;
  • 統計的有意性は、実務的な重要性やビジネスへの影響を保証するものではありません;
  • サンプルサイズが小さすぎたり大きすぎたり、調整なしに複数のテストを実施した場合、p値は誤解を招くことがあります。

常にp値は効果量や信頼区間など他の指標と併せて解釈し、統計的有意性だけで強い結論を導くことには注意が必要です。

question mark

A/Bテストにおいて、p値が0.04である場合の正しい解釈はどれですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 3.  1

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 3.  1
some-alt