効果検証における注意すべき点 ~実践編~

https://isid-ai.jp/assets/images/column/column41/column41_thumbnail.png

この記事を読むとわかること

メールマーケティングの売上向上の効果検証などビジネス上では様々なところで効果検証を行うことがありますが、効果検証を正しく行うことは非常に難しいです。 間違った効果検証を少しでも減らすために、この記事では効果検証をする際にどんなことに注意すればよいのか解説します。 今回の記事は実践編ということで、実際に具体例を使いながら効果検証の行いかたを解説します。 概念的な部分を中心に取り上げた前回の記事を参考にしつつ、この記事を見ていただければより理解が深まると思います。

isid-ai.jp

対象読者

  • 効果検証したい/する必要がある、または興味がある
  • 具体的にどのように効果検証すればいいのかわからない
  • 効果検証をする際にどんなことに注意していいかわからない

疑似データ

今回は以下の疑似データを用いて解説していきます。

メール配信有無 メール配信された場合の購買量 メール配信されていない場合の購買量 実際の購買量 年代
配信あり 600 300 600 60代
配信あり 1200 600 1200 20代
配信あり 1200 600 1200 20代
配信なし 600 300 300 60代
配信なし 600 300 300 60代
配信なし 1200 600 600 20代

この疑似データはメール配信の効果があったかどうか検証するための6人の購買量データです。 (現実世界ではなかなかないですが)顧客が6人いるECサイトがあり、そのうち3人に商品の購買を促すメール配信を行いました。 メール配信された顧客については「実際の購買量」=「メール配信された場合の購買量」となり、メール配信されていない顧客については「実際の購買量」=「メール配信されていない場合の購買量」となります。 ではメール配信された顧客の「メール配信されていない場合の購買量」やメール配信されていない顧客の「メール配信された場合の購買量」は何なんだという話になります。 これは本来はありえませんが仮想的にメール配信された顧客がもしメール配信されていなかった場合観測される購買量は「メール配信されていない場合の購買量」となります。 メール配信されていない顧客の「メール配信された場合の購買量」も同様の考え方です。 メール配信された場合の購買量とメール配信されていない場合の購買量は本来同時に観測することはできませんが、わかりやすくするため同時に観測できているとしています。

交換可能性の重要性について議論するため、年代が20代の人のほうが購買量が多いという傾向があるという仮定をデータに反映させています。 この6人におけるメール配信の真の効果はメール配信された場合の購買量の平均-メール配信されていない場合の購買量の平均なので、900-450=450となります。 これはメールを配信すると平均450購買量が向上することを意味します。 この真の効果は本来知り得ませんが、観測できるデータのみから真の効果を頑張って推定しようとするのが効果検証です。

3つの条件の確認

効果検証をする場合に重要な交換可能性、一貫性、正値性の3つの条件を満たしているか確認していきます。 まず、一貫性は満たしています。 というよりそういう仮定をしているので必ず満たしています。

次に交換可能性ですが、こちらは満たしていません。 配信ありのグループ(表の上3人)と配信なしのグループ(表の下3人)を入れかえてみるとすぐにわかります(以下表)。

メール配信有無 メール配信された場合の購買量 メール配信されていない場合の購買量 実際の購買量 年代
配信なし 600 300 300 60代
配信なし 1200 600 600 20代
配信なし 1200 600 600 20代
配信あり 600 300 600 60代
配信あり 600 300 600 60代
配信あり 1200 600 1200 20代

ここで入れかえるというのは、配信ありのグループは配信なしにして配信なしのグループは配信ありにしてみるということです。 入れかえる前のメール配信の効果はメール配信した人の購買量平均-メール配信していない人の購買量平均なので1000-400=600ですが、入れかえると800-500=300です。 つまり、入れかえる前の効果と入れかえた後の効果が一致しないので、交換可能性を満たしません。 交換可能性が成り立つためには、入れかえる前と後の効果が一致する必要があります。 また、600及び300は一つ前の節で述べたメール配信の真の効果450とも一致していないことから、単に平均の差をとるだけではメール配信の真の効果を推定できていないことがわかります。

交換可能性が成り立たないので、何かしらのメール配信以外の要因によって購買量が変動しています。 ずばり、疑似データの説明の時に触れた「年代」です。 年代によってメール配信の効果が歪んでしまっています。 したがって、年代の影響を消してやる必要があります。 具体的には年代ごとにメール配信の効果を見ます。 20代のメール配信の効果はメール配信した20代の人の購買量平均-メール配信していない20代の人の購買量平均=1200-600=600です。 一方で60代のメール配信の効果はメール配信した60代の人の購買量平均-メール配信していない60代の人の購買量平均=600-300=300です。 そしてこれらの加重平均をとると6人全体の効果が推定できます。 すなわち、(600×3+300×3)/6 = 450です。 年代の影響を消すことでメール配信の真の効果450と一致しました。

今回のようなシンプルなケースでは正値性を満たしていたので、特に触れていませんでしたが、購買量に影響を与える共変量が年代以外に増加した場合も考えてみましょう。

共変量が増加した場合の疑似データ

以下のような住んでいるところという共変量を加えた疑似データを準備しました。

メール配信有無 メール配信された場合の購買量 メール配信されていない場合の購買量 実際の購買量 年代 住んでいるところ
配信あり 600 300 600 60代 郊外
配信あり 1200 600 1200 20代 郊外
配信あり 1500 900 1500 20代 都会
配信なし 900 600 600 60代 都会
配信なし 600 300 300 60代 郊外
配信なし 1500 900 900 20代 都会

年代が20代の人ほど購買量が多いという傾向に加えて、都会の人のほうが郊外の人に加えて購買量が多いと仮定しています。

このデータにおいても交換可能性を満たさないため、年代と住んでいるところの影響を消す必要があります。 しかし、都会に住む20代は配信ありのグループにも配信なしのグループにも存在しますが、郊外に住む20代は配信ありのグループにしか存在しません。 つまり、正値性を満たさない状態となってしまいました。 都会に住む60代についても同様に正値性を満たしません。 したがって、交換可能性を満たそうとすると正値性を満たさなくなり、正値性を満たそうとすると交換可能性をみたさなくなります。

この例のように効果の検証をしたい変数(例だと購買量)に対して影響を与える共変量が多い場合、上記のような状況に陥ります。 こうなってしまっては効果検証ができません。

…ということはなく実際には線形性の仮定などを入れて、値の補完をすることで効果検証をすることができます。 仮定を追加することになるので、仮定が間違っていた場合真の値と離れてしまう危険はありますが効果検証できないよりはましです。 例えば、郊外に住む20代で配信なしの購買量の値は観測されていませんが、都会に住む20代のメール配信あり/なしの購買量の差は600なので、その値が郊外でも一定であろうと仮定して郊外に住む20代で配信なしの購買量の値を補完することが考えられます。 線形回帰などを使用して効果検証を行う場合、線形性の仮定が入った効果検証結果が得られます。

最後に

本記事では効果検証における注意すべき点を疑似データを用いて具体的に解説しました。 次は共変量を選択する際に有用な因果グラフについて解説します。 ここで解説した以外の観点でも気を付ける点はありますが、より詳細が知りたい方は効果検証についての本や記事などをご参照ください。 少しでも効果検証をする際の手助けになれば幸いです。

次回

効果検証における注意すべき点 ~因果グラフ編~

isid-ai.jp

AITC
AIコンサルティンググループ
小川裕也