【解説】ABテストの検定(カイ2乗検定)と仮説検証の必要性
2021年3月2日

1.ABテストの歴史と仮説検証の必要性

ABテストはオバマ元大統領の選挙キャンペーン(2007年からの選挙活動の際)におけるサイト改善の施策で用いられ成功を収めて、特に有名になりました。
ABテスト自体は1900年代前半に始まり、最初はダイレクトメール(以下 DM)で利用された歴史があるテスト手法です。
当時は複数パターンのDMを試し、反応率のよいDMを送るといった手法に使われました。ここでのパターンとは「こういうDMなら反応してくれるであろう」という施策案のことです。

施策案は、説明が合理的で仮に立てた説をベースとした「仮説」のことです。
そしてABテストにおいては、いくつかの仮説(複数パターン)の中からどの仮説の反応がよいか、しっかりと調べて事実を確認することになります。その作業が「検証」ですね。

つまりABテストとは、仮説を検証しながら最適な施策を導き出すことなのです。その検証作業で仮説検定を行います。
仮説検定とは、単なるCV数やCVR等の数値の単純比較による多い、少ない、高い、低いではなく、データ数を統計を用いて、どちらに勝敗があるのかの判断をすることです。


2.ABテストの検定

当社のABテストツールVWOでは、結果の判定にベイズ検定(ベイズ理論)を用いてABテストの検定を行います。
トーマズベイズによるベイズの定理が発表された1700年中頃から、その理論は存在しています。

その後、ベイズ統計の基礎となる考え方などが発表されました。
しかし最近まで、普及するような実用化には至りませんでした。
その一番の理由はマシンパワーがないと実用化が難しいという現実でした。

ABテストの検定にベイズ検定が本格的に使われはじめたのも、ここ数年で最近のことです。それ以前は頻度統計による検定が使われてきました。

頻度統計におけるABテストの検定にはカイ2乗検定フィッシャーの正確確率検定ニ項検定t検定などの方法があります。

ここではそれぞれの検定の説明は省略しますが、その中で汎用的に普及しているのはカイ2乗検定です。
なぜなら、ABテストの有意差を判定するために、カイ2乗検定は独立性の検定として利用でき、単純に差の有無を判定するだけでエクセル上で簡単に計算可能だからです。
そのためABテストの検定として広く普及してきました。
今でもABテストでの有意差を判定するため、カイ2乗検定は身近な検定として用いられています。

次回はベイズ検定にも触れたいのですが、比較する意味でまず今回は、ABテストの検定としてメジャーであるカイ2乗検定についての説明となります。

またカイ2乗検定について、どのようにしてその正否を統計的に判断(判定)していくのかを過去当社で実施したVWOのABテスト事例の数値を利用して解説していきます。

※ここでは、施策結果の良し悪しを議論するための説明を行うものではありません。


3.ABテストでの有意性の計算

まず、以下のABテストの施策を行った事例(図1)を使い、ABテストの有意差を判定するカイ2乗検定の結果を調べていきます。

図1.ABテストの施策を行った事例(要素クリック:ハンバーガーメニュー)

最初のステップとして、期待値を計算します。
期待値の計算方法は以下のエクセルのとおりです。それぞれの期待値の計算結果を図2に示します。

図2.ABテストの施策を行った事例に対する各期待値

エクセルによる各期待値の計算方法

そして各カイ2乗値を計算(実測値から期待値を引いた値を2乗して期待値で割ったもの)した後、それらを足し合わせた結果が最終的なカイ2乗値となります。

図3.ABテストの施策を行ったページの各カイ2乗値

エクセルによる各カイ2乗値の計算方法

各カイ2乗値=(テスト結果の値 - 期待値)2 / 期待値

ABテストの施策を行ったページ(要素クリック:ハンバーガーメニュー)の各カイ2乗値を足して、最終的なカイ2乗値は6.25となりました。

カイ2乗値 = 0.04 + 0.04 + 3.11 + 3.06 = 6.25

次に、最終的なカイ2乗値での判定結果を求めていきます。
その前に必要となる指標、自由度があります。計算方法は以下のとおりです。

自由度 = (横の項目数 -1)×(縦の項目数 -1)

ABテストの施策を行った事例(分割表)の自由度の計算式は
(横の項目数:2 -1)×(縦の項目数:2 -1)で、結果は1です。

※自由度とは縦・横で自由に決めることができる値の数です。
 この場合2行×2列となるため2では自由な値を取ないため、それぞれの行・列数から1を引いた値が自由度となります。
 またn行×m列分割表での自由度の計算方法は、それぞれの行・列数を1引いた上で掛け合わせた数値となります。

この自由度とカイ2乗値分布により、有意差の検定(判定)を行っていきます。

カイ2乗値分布とは正規分布における変数に対し、変数の2乗和から導き出す分布のことで、理論値からの差異において確率的に表した分布です。

図4.カイ2乗値分布(自由度:1)

施策を行ったページに対するABテスト(要素クリックKPI:ハンバーガーメニュー)のカイ2乗検定値は6.25です。
カイ2乗値分布(自由度:1)と照合すると、ABに差がある確率はどれくらいなのでしょうか。

図4のカイ2乗値分布(自由度:1)を見ると5%が3.84で、1%が6.63となっています。
結果の6.25は、6.63までは届かないが3.84は超えているので5%有意と言えます。
(同じ結果ということは5%の確率でしか起こらない)

つまり95%の確率で差が有ることになります。(100回行った場合に95回は差が出る)

その結果、このABテストでは95%の確率でテストバターン > オリジナルの差が有るという結果になりました。

ところでABテストの有意差の%ですが、通常は5%有意を用います。
それより厳しい判断の1%有意や、緩い判断の10%有意を用いるケースもあります。
またABテストの有意差、つまり有意性の観点から、1%刻みで起こりうる事象の確率を示す場合もあります。


4.まとめ

最後にABテストの有意差を判定する、カイ2乗検定は頻度統計(頻度データの評価)のひとつです。
エクセルで検定の計算をすることが出来ますので、作業面では便利に使えます。皆様も試してみてください。

ただし、頻度統計では設定する母集団を定数として、観測したデータを確率変数として扱います。
そのため、サンプル数が少ないと判定が出にくい面があると言われています。

VWOはベイズ検定(ベイズ統計)を利用しています。
今回使用したABテストの事例におけるVWOのベイズ検定結果は99%でした。

次回はカイ2乗検定との比較もしつつ、「ベイズ検定」のことについて触れていきたいと思います。


【おすすめ情報】

 [必見]GoogleオプティマイズのABテストでの検定方法とその課題

   第二弾ではどんなことが語られるのか、乞うご期待!!

【ご質問やお問合せに関して】

お客様のCROのどんなお悩みでも我々アッション(現・SHIFT)はいつでもお力添えさせていただきますので、
小さなお悩みだったとしても、お気軽にご相談ください。

また、googleアナリティクスに関するデータ分析や、多変量解析含む各種マーテケィングデータ分析などのサービスも行っております。
各種データ分析に関しても、お力添えさせていただきます。問合せ・ご相談のほど、よろしくお願いいたします。

 

 

 

一覧へ戻る