2020年こそ理解したい「因果推論」の勉強はじめました
あけましておめでとうございます。2020年もよろしくお願いします。
2019年は「データサイエンティストなのにデータ万能主義を否定している」的スタンスでのメディア露出が増えました。
発言に矛盾はないと思います。データ触っている人ほど、データに慎重ですよね? 加熱するデータへの過度な期待を、少しでも冷ませられたら幸いです。しかしデータ自体への火は消していない。火を絶やすでないぞぉ。
ただ、データ分析の全てを否定したわけではありません。
実は取材を受ける度に「これからは因果関係を発見する因果推論が重要」と主張してきました。2020年代はますます重要性が増すと考えています。
新年1発目のnoteは、その論拠をまとめてみました。
2020年代は因果推論がアツいと思う理由
私がデータ分析を始める際、いきなり数字は触りません。まずは「目的」と「アプローチ」を定義するところから始めます。
目的(WHATとWHY)は、案件によって内容は違うでしょうが、抽象化すると3つのフェーズに分類できるでしょう。
■課題発見フェーズ
何が起きているかを把握する。何が課題かが分かれば良い。
■課題解決フェーズ
解決策を考える。何をすれば課題が解消するか分かれば良い。
■効果検証フェーズ
施策の効き目を調べる。どれくらい効果があったか分かれば良い。
分析のアプローチ(HOW)は、こちらも同じように抽象化すると「対象の特徴を発見する探索的データ分析」と「仮説を検証する確証的データ分析」の2種類に分類できるでしょう。
目的とアプローチを組み合わせると、以下のような六象限のフレームワークが完成します。分析を始める時は、このフレームワークと睨めっこです。
なぜなら、分析の目的に応じて、取るべきアプローチが異なるからです。
課題発見フェーズなら、検証すべき仮説・課題を探すため、ひたすら様々なデータをほじくり返します。あまり確証的データ分析はやりません。私は六象限を以下のように分類して考えています。
ところが「データ分析に対する過度な期待」の結果、六象限が完全に崩壊しているのが現状です。3×2の糸が絡まり合ってほつれている。
課題発見と課題解決がない混ぜの依頼が発生する。まずは探索的データ分析に挑むべきなのにいきなり確証的データ分析を期待する。そうした「間違った問題の解き方」が発生していると考えています。
しかし、今のところほとんど無傷なのが効果検証フェーズと、そこで取るべき確証的データ分析アプローチです。ちなみに、アプローチの中で主力の1つが「因果推論」です。
なぜ無傷なのか。他2つのフェーズに比べて、需要が少ないから説が有力です。某広告代理店勤めの方が「日本人は祭りの後の検証が苦手。もし悪かったとなると、誰かが責任を取れって騒ぎ出すから」と言っていました。
が、もうそういう時代でも無いでしょう。令和っぽくない。今は昭和95年じゃない。やってみて、ダメなら微調整して再挑戦する。「責任の取り方」って、最後までやり続ける事であって、止める事では無いと思うのです。
インターネット広告は効果検証文化がすでに根付いていますが、もっと広がって「ちゃんと効果を見ましょうよ」という時代が2020年代に訪れるのではないでしょうか。だから、因果推論の需要が高まると思うのです。
それだけではありません。個人的な願望も含まれますが、2010年代に絡まり合った3×2の糸も、2020年代にはさすがに解けると思うのです。
そうなると、これまでの間違った依頼と期待の分だけ、課題解決のための確証的データ分析アプローチとして「因果推論」の重要性は高まるはずです。
施策Aを実施すればX万円の効果が見込める、という確度の高い仮説を生み出すのに、もっとも適した手段の1つが「因果推論」だからです。
だからこそ因果推論は2020年代ますます注目されるだろうし、僕自身も勉強しておかなきゃいけない学問だと考えていました。
相関関係と因果関係は違う
とは言え、因果推論は難しい。決まったルールに則って「因果関係があると言えそうだ」と評価しないと認めてくれません。
データが揃ったから「あとは頑張れ」で済まない。むしろ、データの収集方法から考えないといけない。
しかし言い換えると、解き方やルールを無視して「因果関係がある」と宣伝するのは全くのデタラメです。そこが良いと言う人もいるでしょう。
その代表例が、相関関係と因果関係の捉え違いです。
以下の、日毎の広告出稿量と売上の散布図を見て下さい。広告出稿量が増えると、売上も増えています。点が右肩上がりに描かれていますね。
この図から、広告出稿量を増やしたから売上が増えたと言えるでしょうか?
答えは「NO」です。散布図から言えるのは「広告出稿量が多い日は、売上が多い」だけです。"増やしたから"という因果は認められません。
そもそも因果関係とは、2つ以上のモノの間に原因と結果の関係があると言い切れる関係を意味しています。
気温が上がったから、エアコンが売れる。気温が下がったから、おでんが売れる。暑いから、喉が渇く。空気が乾燥しているから、肌が荒れる。どれもA、だからBと言える原因と結果の関係です。
ちなみに、この原因と結果の関係は絶対に一方通行です。
「エアコンが売れる」という原因で「気温が上がる」という結果はありえません。地球温暖化の遠因の1つに、エアコンを含めたCO2の排出があるかもしれませんが、それは因果関係ではなくバタフライ効果ですね。
ちなみに相関関係とは、一方の値が変化すれば他方の値も変化する、2つの値の関連性を意味しています。
つまり因果関係と相関関係は似て非なるものです。因果関係は理由が明確な1本のストーリー(AだからB)、相関は2本のストーリー(AとB)の関係性を表しています。
では先ほどの広告出稿量と売上の散布図は、1本のストーリーでしょうか、それとも2本のストーリーの関係性でしょうか?
もし広告出稿量を増やしたおかげで売上も増えたという1本のストーリーを主張するなら、様々な証明が必要になります。
「偶然では無い」と証明する必要があります。広告出稿量が多い日は、土日か、給料日直後か、たまたま売れやすかっただけかもしれません。
「実は他の施策が効いていた可能性」を排除する必要があります。SNSで紹介されてバズっただけかもしれません。
「因果の方向性(時間軸)」も確認しておく必要があります。「今日は売れそう」と感じた店主が、昼から広告出稿量を増やしただけかもしれません。
このように並べると、私たちは相関関係だけで「広告のおかげで売上が増えた」と判断しがちだと分かります。
ベーシックな因果関係の見つけ方
明確な1本のストーリー(AだからB)なら、Aじゃなかったら当然Bにはなりません。もしAじゃないのにBになるなら、AとBは因果関係があるとは言えないからです。
豚まんでお馴染みの551のように、あるとき・無いときで考えましょう。
551の豚まんがあるとき、みんなの笑顔を観測できます。551の豚まんがないとき、みんなの寂しい顔を観測できます。みんなに笑顔をもたらした原因が551の豚まんです。
関西限定過ぎて何言っているか分からん人は、CMを見て下さいませ。
Aがあるとき・Aがないときを観測して、その結果の差分を見れば「因果関係の効果」を可視化できます。Aに何らかの原因があるなら、良しにせよ悪しにせよ効果が出るはずです。
ただし、この発想は「卓上の空論」であり、実際には実現不可能です。
なぜなら、ある人に対して「豚まんがあるとき」と「豚まんがないとき」を同時に観測できないからです。
1日目に「551の豚まんがあるとき」を観測して、2日目に「551の豚まんがないとき」を観測しても、1日目と2日目の差分は本当に「豚まんのある・なし」だけと言えるでしょうか。偶然や他の施策の影響を排除できないので、実験としては良手とは言えません。
RCT(ランダム化比較実験)
1人なら同時に観測できなくても、集団なら同時に観測できるのではないかと考えて生み出されたのが、ランダム化比較実験(Randomized Controlled Trial)と呼ばれる実験です。
「ABテスト」が馴染み深いかもしれません。ただし、厳密な意味でABテストはRCTでは無いと言う人もいます。理由は後述します。
話は逸れますが、2019年のノーベル経済学賞は「世界の貧困を改善するための実験的アプローチに関する功績」として、RCTを採用し、効果的な貧困政策を検証するアビジット・バナジー教授らが受賞しました。
少し前、以下の本がすごく売れましたよね。
ただ、こちらはあまりにも教科書過ぎて面白く無いです。私はこちらの本の方が実務的で面白いと思いました。
RCTを「集団なら同時に観測できる」と説明しました。2つの同質な集団に「551の豚まんがあるとき」「551の豚まんがないとき」を体験して貰い、その結果を観察するのです。
比較グループは「原因」が無い状態、つまり「551の豚まんがないとき」です。介入グループはわざと「原因」がある状態を作っていて、つまり「551の豚まんがあるとき」です。
比較グループ・介入グループにN人いて、同時に「551の豚まんがあるとき」「551の豚まんがないとき」を体験して貰い、その結果現れた差分の平均値を「平均介入効果」と表現します。
「平均介入効果」こそ、原因がもたらした結果だと言えるでしょう。
ABテストでは、複数のランディングページ(介入グループ)を用意して、どれがCVRが高いかなんて比較しますよね。平均介入効果のもっとも高いページを探しているのと同義なんです。
ただ、RCTには厳格なルールが設けられます。比較グループ・介入グループ共に同質の集団である必要があります。「1人なら無理でも複数なら」という前提に立つので、言い換えると「複数は1人のように同質」である必要があるのです。
比較グループは551の豚まんが好きで、介入グループは551の豚まんが嫌いなら、どちらも笑顔にはなりません。とはいえ「551の豚まんがあっても笑顔にならない」とは言えません。グループが同質では無いからです。
AにしろA'にしろ「介入のある・無し」以外に違いは考えられない、という前提に立つのがRCT(ランダム化比較実験)です。
このあたりが、因果関係の証明にどれほどビッグデータがあっても意味が無いと言われる理由ですね。まさに「実験」です。実験じゃないデータは使えないんですよね…。
ABテストが厳密な意味で「ランダム化比較実験なのか?」と疑問を呈されるのは、AとA'が本当に同質なのかが確認しようが無い点です。
以前、某健康食品系のABテストで「最初は機能ベネフィットを謳うBのCVRが相対的に高かったのに、やがて健康な自分の格好良さを強調したCが上回ったのは何故だろう?」という案件を手伝った機会があります。
いろいろデータを触った結果、BのCVRが高い頃と、CのCVRが高い頃のユーザー層は同質とは言えないのではないか?という仮説に至りました。残念ながら証明はできませんが。
最初は機能ベネフィットに興味・関心を持つ層が広告をクリックし、それぞれ異なるランディングページに飛ばされていたのだろうけど、やがて少しずつ「健康になった後の自分」に興味・関心を持つ層が増えたのなら、現象の説明はできます。
ABテストをするにしても、期間を決めたり、上限人数を決めたり、出稿する媒体を気にしたり、いろいろ考えないといけないなーと感じた次第です。
RDデザイン(回帰不連続デザイン)
いつだって、どこにいたってRCTが実現すれば良いのですが、読んで頂いた通り時間も手間もかかります。常に実験できるとは限りません。
そこで、実験をしたわけじゃないけれど、後から振り返れば何らかの介入があって実験したかのように見える状況を利用する手段が開発されました。「自然実験」とも称されます。
いろんな手段がありますが、そのうちの1つがRDデザイン(regression discontinuity design)です。
discontinuity=不連続の通り、何らかの介入が発生して連続性が途切れている境界線に着目する手法です。
Wikipedia:回帰不連続デザインのページより画像引用
上図でカットオフ点と表されている地点を前後して、回帰直線が変化しています。RDデザインは「境界線で何らかの介入があってもYは以前の傾向から変化しない」という仮定に立ち、その仮定を崩して因果関係を証明しようとします。
しかし、あくまで自然実験であり、その前後で「明らかな介入があった以外に変化は認められない」としても完全な立証とは言えず、丁寧な議論の積み重ねが必要です。
以前、日経ビジネスで訪日韓国人の客数減少の影響をRDデザインで検証した機会がありました。
2019年7月、安全保障上の理由による日本の輸出管理の厳格化を発端に、日韓関係が悪化しています。7月以降、訪日韓国人が減少する一方でしたが、具体的にどれくらい減っているの?を検証しました。
日本政府観光局から2009年1月以降のデータを収集し(青線)、季節変動を無くした結果(黒線)をまずは可視化します。
実は2017年7月頃から、ほぼ横ばいだと判明しました。なので、2017年7月〜2019年6月までの24か月分で回帰モデルを作成し、7月以降の予測(赤線)をします。
7月を境界線に「何らかの介入があってもYは以前の傾向から変化しない」という仮定に立つと、このデータは「仮定が崩れる」と言えます。
日経ビジネスでの連載はこれを持って「日本の輸出管理の厳格化」を訪日韓国人客数の減少理由に求めました。
実際は6月と7月で「日本の輸出管理の厳格化」以外の可能性を1つ1つ潰していかなければなりません。それは相関と因果の下りで説明したような「他の施策の可能性」と同じですね。
最後に(参考文献)
因果推論は勉強し甲斐のある学問だと思っていて、2020年はいろいろ勉強しようと思います。因果推論界隈は既に猛者がたくさんおられますので、まずは爪の垢を煎じて飲みます。
今回、参考にした書籍は以下4冊です。