【A/Bテストってどれくらい必要?】ウェブマーケのABテストに必要な期間

【A/Bテストってどれくらい必要?】ウェブマーケのABテストに必要な期間

皆さんこんにちは、台湾でウェブマーケティングの会社 applemintの COO を務める台湾人エリックです。(翻訳 by applemint 代表佐藤)

前回、『【ウェブマーケに統計学を応用する】広告運用時のサンプルサイズと誤差について』という投稿で、A/Bテストをするためにどれくらいの予算が必要かというお話をしました。

今日は、A/Bテストに関連するもう一つの概念である「有意性」 (significance) と「検定力」 (power)について紹介していきたいと思います。

難しい漢字や英単語が出て、頭がクラクラするかもしれませんがコンセプトは決して難しくありません。

前回の投稿を読んで、「予算がないからA/Bテストはできない」と思った方もいるかもしれません。 しかし、A/Bテストの目的は、異なるバージョンの広告の中から「最良」のバージョンを見つける事です。即ち PDCA を回す事です。

従って、何百万円の予算がなくても、1回のテストで5万円以上の予算があれば、A/Bテストを行ってPDCAを回すことは可能です。その理由については、後ほど説明します。

ただし、A/Bテストを行う前に、必ず知っておかなければならない概念が2つあります:

  1. 許容できる誤差はどの程度か、誤差が小さいほど標本数 (サンプル) が必要になる。
  2. 被験者の効果の差はどの程度予想されるか、差が小さいほど標本数が必要となる。

この投稿では、「統計的有意性」と「統計的検定力」の概念と、検定力の算出に役立つ2つのツールを使って、統計学の知識がないデジタルマーケターでも、A/Bの組み合わせに有意な差があるかどうかを簡単に理解できるようにします。

なぜ統計的有意差を理解することが大切なのか

【ウェブマーケに統計学を応用する】広告運用時のサンプルサイズと誤差について」という投稿で、同じ10%のコンバージョン率でも、100人中10人のコンバージョンと、1000人中100人のコンバージョンでは意味が違うことを紹介しました。

前回のブログを見ていなかった方のために補足します。上の例だと、1000人中100人のコンバージョンの方がより信頼度が高いコンバージョンと言えるのですが、その理由は、サンプルの数が多いからです。

では、別のシナリオをご紹介します。例えばクリック率が1%の場合と2%の場合、どちらの方が良いでしょうか?答えは、「この数字だけではわからない」です。100回露出された広告が 1回クリックされたクリック率 1% と、200回広告が露出され 4回クリックされたクリック率 2%では、意味が異なるからです。

統計学的な検定力

統計学では、結果を推し量る方法として、有意差検定(significance test)と検定力分析 (power analysis)の2つがあります。 これは、統計学の「仮説」 (hypothesis)と関連しています。この3つの概念を、広告を例にして説明します。

仮説

推論統計学では、帰無仮説(null hypothesis) と対立仮説(alternative hypothesis) の2種類の仮定があります😥
この2つの仮説の詳細な定義については、統計学の講義内容やインターネット上の関連論文を参照して見てください😅😋

一般的に、帰無仮説とは「現状」や「何もしない結果」を指し、対立仮説とは証明したい結果を指します。ちょっとわかりづらいですよね….

要するにAとBをテストする時、そこには二つの仮説があるという事です。例えば 2年前のうまい棒とさっきコンビニで買ったうまい棒のABテストをします。この時必ず2つの仮説があります。

  1. 2年前も今も味は同じだ
  2. 2年前と今では味は異なる

これをデジタル広告のA/Bテストの文脈で表すと、次のようになります。

  1. 帰無仮説:バージョンAとバージョンBのクリック率/コンバージョン率は同じ。
  2. 対立仮説:バージョンAとバージョンBのクリック率・コンバージョン率は異なる。

色んな説明をかなり割愛していますが、ここまで理解できていると信じて話を進めます😅

有意差検定

ABテストをした時、大抵はAとBで差が生まれます。この時、この差は誤差の範囲内か、或いは誤差じゃ済まされないのか判断する必要があります。この誤差じゃ済まされない差の事を有意差と言います。

Abテストをする時に重要なのがこの有意差です。例えば上の例では「CTR or CVRは同じだが(帰無仮説)、我々は違うと言っている(対立仮説)」という確率を表しています。

ウェブマーケティングをした事がある人なら一度は経験するのが、ABテストの結果は誤差なのに顧客が有意差と考えてしまう事です。統計学風に言うと、「無実(帰無仮説)なのに有罪(対立仮説)になってしまった」という事です。つまり証拠はないけど、AよりBの方が良さそうだからBに変えろ!と顧客に言われる事です。

では有意差を調べるにはどうすればいいのか?有意差検定の結果は、通常、p値またはα値で表されます。一般的な基準は0.05未満で、帰無仮説を誤って棄却する確率が5%未満であることを意味します。

つまり、AとBの差は5%の確率で誤差ではないと調べなければいけません。それは逆を言えばAとBの差は95%の確率で誤差ではない差と立証する事になります。ではどうやって調べるのか?

次に統計学における調べる(「検証」) 時の3つのポイントをお話しし、統計学の考え方を広告のA/Bテストに導入する方法を説明します。

統計的に有意なA/Bテストをアセスメントする

AB テストの企画

A/Bテストを行った後、まず2つの質問に答える必要があります。

  1. この実験の結果から見ると、バージョンAとバージョンBの間には有意な差がありますか?
  2. 今回テストはしたけど、必要な標本数は正しかったか?

それぞれ解説します。

バージョンAとバージョンBの有意差検定

有意差を検証する方法は AB Testguideが提供するツールを使うと便利です。広告の2つのグループや観客の2つのグループの間の差が有意であるかどうかをテストすることができます。ものすごく簡単です(笑)

では前述の例を用いて、『A:CVR 1%』、『B:CVR2%』の間に有意差があるか調べましょう。表面的には差がありますが、サンプルサイズをそれぞれ100と200 とデータを入れると次のような結果になります

有意差ない

両者に有意差はありません😅 しかしそれぞれ 2500回の広告露出があった場合、次のような結果になります:

有意差あり

有意差が出るのです!なので、ABテストをする際大事なのは差があるか否かということと標本数 (サンプル数) が足りているか否かが大事なのです。

検定力と有意性の観点から、A/Bテストに必要な標本を決定する

では「A/Bテストに必要な標本数 (サンプル数)」ってどうやって調べればいいでしょうか? ここでは、ClinCalcが提供する計算ツールを利用します。

ウェブ広告の A/Bテストでは、比較のために2つの別々のグループを選択する必要があります。クリック数とコンバージョン数の結果は2つしかないので(クリックする/しない、買う/買わない)、計算には二分法 (Dichotomous)を選びます。(下記参照)

研究方法を選ぶ

ただし、このツールを使う時に前提として必ず、「どれくらいの差が欲しいか」把握する必要があります。

例えば現在のバナーの調子が悪いとします。コンバージョン率は1%です。あなたはBバナーを投入してABテストを考えています。Bバナーはとてもいいバナーなので 2%のコンバージョン率を予測しています。この時、AとBの間に1%の差が生まれますが、このツールではその差を出すにはどれくらいのサンプル数が必要か教えてくれます。

今回のデモでは、コンバージョン率が1%から2%に向上すると仮定した場合にその差を出すにはどれくらいのサンプルが必要か調べています。

想定の差を決める

計算してみると、私たちのテストでは最低でも2318回の流入がそれぞれ必要になります。

有意差と検定力でサンプルサイズを決める

仮にこれが Facebook 広告だったとします。平均クリック率を1%と仮定すると、露出は231,800回必要になります。CPM (1000回の広告露出金額) を1000円とすると、このテストを実施するには 231,800 円の予算が必要となります。

結論:標本数が足りない差は意味がない

今回の投稿では CTR or CVR はその数字を見るだけでは何も判断できないという話をしました。

実際、FacebookのA/Bテスト機能も、Google Optimizeも、コンバージョン率の差を算出する際に、有意性や検定力を通じて、2つのバージョンに「意味のある差」があるかどうかを判断しています。

したがって、A/Bテストを行う場合は、誤差を考慮してテスト結果を正しく解釈するために、「許容できる誤差」を知っておくことが重要です。

ちなみに applemint では最新の台湾ウェブマーケティング事情や台湾のニッチな情報を随時HPで更新しています。いちいちHPを見るのが面倒という方は是非 applemint のニュースレターをご検討ください!

それではまた!

付録:いくつかの値の実際の計算

ここでは、計算過程をさらに理解するために必要な数値計算を、ご興味のある方のためにご紹介します。前述のツールを使って予備的な見積もりをするために、付録の内容をすべて理解する必要はありません。そのため、「数学や統計学とか興味ねえし!」と思っている方は、このセクションを飛ばしてください。

クリック率の平均値

次のようなシナリオを想像してみましょう:A、B、Cのクリック率はそれぞれ1.2%、0.9%、1.05%ですが、平均クリック率は何%でしょうか?

答えは(1.2+0.9+1.05)/3であってはダメです。

これは、クリック率が比率であり、分母によって変化するため、平均クリック率は、(A+B+C素材のクリック数)/(A+B+C素材の露出数)とする必要があるからです。

広告のバックエンドでは、最終的な集計値を平均値とみなします。即ち、広告バックエンドの「過去7日間の総クリック率」を「過去7日間のクリック率の平均値」として扱うのです。

クリック率の標準誤差 (Standard Error)

標準偏差と標準誤差を計算するためには、観測値と平均値の間の偏差の二乗和、つまり、個々のクリック率と平均クリック率の差を計算する必要があります。ただし、広告のバックエンドに表示されているのは、全体の効果の合計値なので、直接計算することはできません。

クリックスルー率は二分法(クリックするかしないか)なので、平均クリックスルー率を用いることで、クリックスルー率の標準誤差を算出することができます。

算出方法は:

クリック率の標準誤差

有意差検定

クリック数と非クリック数が10以上あるので(統計的にはnpとn(1-p)がともに10以上であることを意味する)、2つの分布の差を計算する際に、2組の平均値の差の標準誤差を次のようにして計算します:

A B バージョン混ぜ込まれる標準誤差

サンプルサイズが30より大きいので、中心極限理論に基づいて、バージョンAとBの両方が正規分布に一致すると推定し、Zスコアをチェックに使用します:

クリック率の Z スコア

Zチェックでは、Zスコアが1.96より大きいか、-1.96より小さい場合、統計的に有意です。

検定力から必要な標本を推測する

ClinCalcの計算によると、サンプルサイズを推定するための計算は以下の通りです:

2つのZスコアは、表を調べて得られます。1-𝛼/2は両側チェックのZスコアを表し、p値0.05の場合は1.96となります。1-βはチェックフォースのZスコアを表し、p値0.8の場合は0.84となります。1-βはチェック力に対応するZスコアで、0.8では0.84となります。Δは変化の大きさを表し、例えば、クリック率が1%と1.05%場合は、Δは0.05%となります。

参考

applemintへのご相談やご連絡はこちらから!

Eric Chuang

関連ブログ

にお問い合わせ