ABテストはいつになったら「結果が出た」と判断してよいですか?
ABテストを開始する際、「いつになったら結果がでますか?」いう声が上がります。
早く改善したいのは当然です。良い結果がでればそちらを早く適用したいですし、悪い結果がでればすぐテストを止める必要があり、次のテストの準備をしなくてはいけません。PDCAサイクルを早く回すことは、改善を目的としているのであれば、重要な事柄です。
答え:事前に結果が出るまでに必要な期間を知ることは難しい
テストを開始する前の段階で必要な期間を断言することは非常に難しく、1週間で十分な場合もあれば、2か月以上かかるケースもあります。
テスト結果の判断は慎重にならなくてはいけません。一度「良い」と判断した結果が誤っていた場合、誤った判断のまま放置され、機会損失につながるからです。
もし勘や経験だけに頼った判断をしてしまうと精度の低い検証結果となってしまいます。そのため、勘や経験に頼った判断ではなく、実際に取得したデータを用いて、統計学に基づいた精度の高い判断を行うべきです。
勘や経験だけだと精度が低い検証結果になってしまう理由は何でしょうか?
検証結果の判断を間違えさせるのは「誤差」
サンプル数が十分でない場合:「誤差」による影響大
サンプル数が少ない場合、「誤差」の影響が大きくなって正しい判断ができません。
たとえば、ABテストの検証開始の時期は、サンプル数が不足しているために一人当たりの影響が大きくなってしまい、最終的な結果とは逆のパターンが「良」と判断されるケースもあります。
サイコロで例えると、出た目の平均は無数に振っていけば中央値の3.5に収束していきますが、振った回数(サンプル数)が少なければ出た目の平均は1にも6にもなります。
「誤差」とは
「誤差」とは、測定や理論的推定などで得られた近似値(測定値)と真の値(と考えられるもの)との差です。
10,000人のアクセスのうち、1人がCVしたら0.01%ですが、100人のアクセスのうち、1人がCVしたら1%にもなります。サンプル数が少ないと、1人のCVの影響がテスト結果を大きく左右する事になります。
例えば、LP(ランディングページ)のABテストの結果が下記の場合、
ケース1
| アクセス数 | CV数 | CVR |
パターンA | 100 | 50 | 50% |
パターンB | 100 | 60 | 60% |
統計学に基づいて判断したら、「誤差」の影響が大きい状態であり、現段階で結果が出たと判断するのは、時期尚早となります。
では、「誤差」の影響はどのように判断すればよいのでしょうか?
「誤差」の影響は「有意差」で見極める
次にケース2を考えます。
パターンABともに、「アクセス数」、「CV数」ともに、ケース1の100倍に増加しています。
ケース2
| アクセス数 | CV数 | CVR |
パターンA | 10,000 | 5,000 | 50% |
パターンB | 10,000 | 6,000 | 60% |
ケース1の場合、1人のCVは1%の影響ですが、ケース2の場合は、1人のCVは0.01%の影響となっており、ケース2の方がはるかに解像度が高いため「CVR」が10%の差は、信頼すべきテスト結果と判断して差し支えないです。
ケース2のような「確率的に偶然や誤差とは考えにくく、意味があると考えられる」状態を、統計学では「有意差」があると言います。
ABテストを判断するための「有意差」とは?
必然の結果と証明するために、「有意差」はどのような考えをもとに判断するのでしょうか?
「必然の結果」(有意な結果)と証明する道筋
有意差の考え方ですが、高校の数学でも教わる背理法という証明の手法によく似ています。
背理法とは
背理法はとてもシンプルで、下記の流れで証明を行う手法です。
1.命題が正しくないとまず仮定する
2.その結果,矛盾してしまう
3.よって,命題は正しい
例えば、「√2が無理数である事を証明せよ」という場合は、上記の流れに沿うと、
1.√2が有理数であると仮定する
2.その結果,計算式を解くうえで矛盾が発生
3.よって,√2は無理数である
となり、命題が正しいと証明できます。
では、ABテストの結果に「有意差がある」という証明に置き換えてみましょう。
実際にLPのABテストを行い、下記の結果が計測されたとします。
AパターンのCVR:50%
BパターンのCVR:65%
AとBのパターンを比較するときに考えられる仮説は、下記の2つになります。
1)2つのパターンに差はない
2)2つのパターンに差がある
背理法と同様に、一方の仮説を否定(≒偶然の結果)することができれば、もう一方の仮説が正しい(≒必然の結果)と言えます。この「一方の仮説を否定する」という考え方が、重要になります。
「帰無仮説」を否定し、「対立仮説」が正しいことを証明する
では、さきほどの仮説1)2)のうち、否定しやすい仮説はどちらになるでしょうか?
答えは、下記です。
1)2つのパターンに差はない
「2つのパターンに差はない」という事は、今回のABテストであれば、「AパターンのCVR = BパターンのCVR」 という結果が出た時のみ正しいということなり、それ以外の結果の場合は、1)の仮説は簡単に否定できます。
2)は、「2つのパターンに差がある」という仮説なので、Aパターン、Bパターンが取りうるCVRの組み合わせは無限にあり、簡単に仮説を否定する事はできません。
統計学では、上記2つの仮説が下記の通り定義されております。
1)帰無仮説:否定される目的のための仮説
2)対立仮説:帰無仮説に対立する仮説
「帰無仮説を否定して、対立仮説が正しい事を証明する」のが、ABテスト結果を適用するかどうかを判断する基準(偶然ではなく必然)になります。
有意な結果と証明する方法:「p値(現在の差が偶然起きる確率)」が5%以下であることを示す
帰無仮説のもとで実際にデータから計算された統計量よりも極端な(仮説に反する)統計量が観測される確率を「p値」といいます。
引用元:https://ja.wikipedia.org/wiki/%E6%9C%89%E6%84%8F
今回のABテスト結果で言うと、
「2つのパターンに差はないと仮定した場合、今回のABテストの結果である15%以上のCVRの差が起こる確率は、1%未満(p<0.01)ですよ。こんなに低い確率なら、今回の結果は偶然ではなく必然ととらえて、すぐにABテストを止めて、BパターンをLPに反映したほうが良いですよ。」
と結論するときの、「1%未満」の部分が「p値」になります。
このように、「p値」とは、今回のABテストの結果が偶然起こる確率を示します。
「p値」を利用すれば、誰でも偶然と必然を見極める事が可能
「p値」は具体的な確率として、数値で表されます。
よって、「p値」を判断材料にすれば、勘や経験、観測者のスキルに左右されずに、定量的にABテスト結果の見極めを行うことが可能になります。
「p値」の算出方法
具体的に「p値」を算出するために、まずは様々な検定を知る必要があります。
検定とは、正式には「統計的仮説検定」といい、確率をもとに結論を導く方法です。
検定の種類
検定には、以下のように様々な種類の検定があります。
検定方法 | 説明 |
t検定 | 統計的仮説検定のうち、t分布を用いる検定の総称 |
比率の検定 | 比率が等しいかどうかを検定する方法 |
ノンパラメトリック検定 | 母集団分布に正規分布のような特定の分布を仮定せず、分布の形に拠らずに行える検定手法 |
分割表の検定 | 分割表における行・列の要素が独立かどうかを検定する方法 |
F検定 | 2つの群が存在するときに、各群の母分散が等しいかどうかについて検討する場合に用いられる検定手法 |
検定にはそれぞれ特性がありますが、ABテストで利用しやすい分割表の検定に属する「カイ二乗検定」を説明します。
カイ二乗検定の手順
カイ二乗検定の手順は以下の通りです。
手順1.クロス集計表にデータをまとめる
手順2.期待度数を求める
手順3.データと期待度数との乖離を求める
手順4.カイ二乗値を求める
手順5.カイ二乗値をp値に変換する
手順6.p値で判断する
では、LPページのABテスト結果の判断を、実際に行っていきましょう。
手順1.クロス集計表にデータをまとめる
最初に、ABテストの結果データをクロス集計表にまとめます。
ABテスト結果
| 訪問者数 | 離脱した人数 | CVした人数 |
パターンA | 370 | 270 | 100 |
パターンB | 490 | 330 | 160 |
合計 | 860 | 600 | 260 |
手順2.期待度数を求める
次に期待度を求めます。
有意差の説明にて、「帰無仮説を否定する事で、対立仮説が正しい事を証明する」と伝えました。「期待度」とは、帰無仮説が正しい場合に起こりうるであろう確率の事です。
よって、「期待度」と、結果のデータの乖離が大きければ、「帰無仮説は正しくない → 今回のABテストは有意差がありそうだ」と考える事ができます。
実際に、求めていきましょう。
帰無仮説=CVに対して「2つのパターンに差はない」として、進めていきます。
まず、全体合計を確認すると、860人の訪問に対して、離脱600人、CV260人となっております。
よって、「帰無仮説が正しい」と考えた場合、パターンに関係なく、訪問者の69.77%が離脱し、30.23%がCVします。
よって、パターンA、Bのそれぞれの期待度は、
パターンAの離脱した人数の期待度
= 訪問者370人×69.77%=258.14人
パターンBの離脱した人数の期待度
= 訪問者490人×69.77%=341.86人
パターンAのCVした人数の期待度
= 訪問者370人×30.23%=111.86人
パターンBのCVした人数の期待度
= 訪問者490人×30.23%=148.14人
となりますので、表にまとめると以下の通りです。
期待度表
| 訪問者数 | 離脱した人数 | CVした人数 |
パターンA | 370 | 258.14 | 111.86 |
パターンB | 490 | 341.86 | 148.14 |
合計 | 860 | 600 | 300 |
手順3.データと期待度数との乖離を求める
では次に、実際のABテスト結果(元データ)と、期待度との乖離を求めます。
計算式は、以下の通りです。
(元データ – 期待度数)^2 ÷ 期待度数
例えば、パターンAのCVした人数の場合は、
元データ:100人
期待度数:111.86人
なので、計算式にあてはめると、
(100 – 111.86)^2 ÷ 111.86 = 1.26
となります。
全て計算した結果は下記です。
期待度との乖離表
| 離脱した人数 | CVした人数 |
パターンA | 0.54 | 1.26 |
パターンB | 0.41 | 0.95 |
手順4.カイ二乗値を求める
ここまでくれば後は簡単です。カイ二乗値は、乖離表の全ての値の合算値になります。
0.54 + 1.26 + 0.41 + 0.95 = 3.16
今回のABテスト結果は、カイ二乗値 = 3.16 となりました。このように、カイ二乗値は個々の乖離の合計値になります。ここまでの前提は、「帰無仮説=CVに対して、2つのパターンに差はない」として進めてきました。
カイ二乗値が大きければ大きいほど、
→ 帰無仮説との乖離が大きい
→ 帰無仮説はまちがっている
→ CVに対して、2つのパターンで明確な差がある
と背理法に沿った上記の証明につながります。
手順5.カイ二乗値をp値に変換する
では、カイ二乗値がどれくらいの値であれば、「2つのパターンの明確な差がある(有意差がある)」状態とすれば良いのでしょうか?
本記事の前段で『「p値」を利用すれば、誰でも偶然と必然を見極める事が可能』と伝えさせていただいた通り、カイ二乗値を「p値」に変換すれば、問題は解決します。
実は、カイ二乗値を「p値」に変換するのは、Excelの計算式を使えば、簡単に行えます。
関数は下記になります。
=CHISQ.DIST.RT(値,自由度)
値:カイ二乗値を代入します。
自由度:分布の自由度を指定します。
今回の場合だと、
値:3.16
自由度:1(※1)
となり、実際の計算式は下記です。
=CHISQ.DIST.RT(3.16,1)
上記をエクセルのセルにコピー&ペーストすると、下記の「p値」となりました。
p = 0.075
p値で判断する
ここまでの手順で、念願の「p値」が算出できました。
一般的に、p< 0.05 の場合、「有意差がある」とみなしてよいです。この0.05 は有意水準と呼ばれます。この場合は、「帰無仮説が正しいとした場合、今回のABテスト結果になる確率は5%未満である」と同義となります。
もっと厳密に検定したいのであれば、p< 0.01 (1%未満)などとしても構いません。当然有意水準が小さくなるほど、「めったに起こる事ではない=帰無仮説が間違っている」という根拠は強くなります。
今回のABテストの結果では、p= 0.075 となりました。残念ながら、一般的な p< 0.05 よりも大きくなってしまったので、パターンAとパターンBに明確な差があるとしてとらえるには、もう少しデータの母数が増えるまで、テストを継続した方が良いと判断できます。
まとめ
ABテストで「結果が出た」と判断するためには「p値」から判断するのが統計的に正しいとされます。
感覚や経験で判断するのではなく、論理的根拠に基づいて定量的に判断しABテストの精度を高めていくことが大切となります。
関連記事: