筆者の著書が7月に出版されます。
一般向け・初学者向けの紹介は、理工図書様による こちら のページがあります。
ざっくばらんですが、多少、因果推論を学んだことのある方に向けた説明を、このページにまとめました。
環境と品質のためのデータサイエンス の中にある、 因果推論 のページでは、統計的に限らずに、因果推論をまとめています。 理論や考え方の説明が中心なので、実務には直結しないです。 また、いろいろな事を詰め込んでいるので、入門向けではなくなっています。 入門向けのページとしては、 原因と結果の関係の検証(因果推論) 入門 がありますが、こちらは最小限の内容しかないです。
本書は、スタートが 原因と結果の関係の検証(因果推論) 入門 と似ています。 そこからさらに広げて、実務で使う時のガイドになり、より高度な因果推論の本を読むこなすためのガイドにもなることを目指して執筆しました。
本書には、既刊の因果推論本にはなかったことを、いろいろと詰め込んでいます。
本書の特徴は、本書の中に書いていますが、 それよりも客観的な見方で、本には書いていない話を、以下に書き出してみました。
2010年頃からの因果推論の文献では、 「同じ対象に対して、処置ありと、処置なしの両方を同時に観測できない」ということを、「因果推論の根本問題」と呼んで、その対策の話が盛んです。 例えば、「Aさんが、薬を飲んだ人だとしたら、Aさんが薬を飲まなかった場合の結果は不明なので、Aさんについての薬の効果はわからない」という問題です。
そうした文献では、この根本問題が、あたかもあらゆる現象について成り立っているようにして、説明されます。
確かに、「薬を飲む・飲まない」のような現象の場合は、その通りです。 しかし、この根本問題が当てはまらない現象もあります。 一番わかりやすい反例は、対象が、物の場合です。
同じ人は、世の中にいませんが、同じ物(より正確には、「『同じ』とみなしても問題のない物」)は、世の中にあります。 物を研究する分野では、「同じ対象に対して、処置ありと、処置なしの両方を同時に観測」ということは、古くから行われています。
因果推論の根本問題を重視している文献では、「同じ対象に対して、処置ありと、処置なしの両方を同時に観測」という話は出て来ません。 観測できないことを前提として、代替案を示します。
また、統計的仮説検定では、「対応のある母平均の差の検定」など、「対応のあるデータ」のための理論がありますが、 因果推論の根本問題を重視している文献では、対応のあるデータは観測できないと思っているようで、この理論の話が出て来ません。
こうした事が起きているので、統計的仮説検定と、最近の因果推論は、相容れない別の分野のようになっています。
本書の体系を作るに当たっては、両者が矛盾なくひとつにまとまる形を模索しました。
その答えとして、同じ人でも、処置ありと、処置なしのデータが取れる例を入れることにしました。 この例が両者のつなぎになります。
「相関関係は、因果関係ではない」という事は、古くから言われています。 この話をしている時のデータは、原因の変数も、結果の変数も、"基本的に"連続データです。
2010年頃からの因果推論の文献の特徴のひとつとして、因果効果を計算する方法の解説書になっている点があります。 "基本的に"、原因の変数は「処置あり・なし」の二値データです。 結果の変数は、二値データの時も、連続データの時もあります。
両者は、"基本的に"の部分が違うので、別の話のようにも見えます。 おそらくそれが原因で、 「相関関係があったとしても、因果関係の検証にはならない。 しかし、因果効果を計算すれば、因果関係の検証になる」 と誤解しているように見受けられる文献を、時々見かけます。 相関関係が因果関係を表すとは限らないのと同じ理由で、因果効果が計算できることが、因果関係を表すとは限らないです。
ある現象に見られる相関関係が因果関係の結果であることを検証するには、まず、「相関関係があるはずだ」と考える、因果関係のメカニズムについての仮説が必要です。 その上で、他の因果関係が混ざっていないデータ、または、混ざっていたとしても、その影響を消去できるデータを用意する必要があります。 そこまで準備されたデータで相関関係が見られるのなら、その相関関係は因果関係を表しています。
因果効果についても、それくらい準備されたデータで計算した因果効果なら、それは、その因果関係の大きさを表しています。 逆に、そういった準備はしていないデータで計算した因果効果の場合、どのようなアルゴリズムを使ったとしても、因果関係を表しているかどうかはわからない数字です。
この検証には、その現象そのものや、現象とデータの関係についての知識が必要なため、統計学に詳しいだけでは、難しいです。
統計学では、仮説の検証の方法として、統計的仮説検定が開発されて来ています。
一方、2010年頃からの因果推論は、因果効果の計算方法の話題になっています。 統計的仮説検定についても言及していることは稀で、言及していても、簡単に触れている程度です。
統計的仮説検定を知っている立場から考えると、因果効果が計算できるだけでは、データのばらつきが考慮されないので、因果関係の検証は足らないのですが、 そうした事が2010年頃からの因果推論では重視されていません。
そこで、本書では、統計的仮説検定を簡単ではなく、しっかりと入れることにしました。
入れるに当たっては、最近十数年で、「P値だけで判断してはいけない」という考え方が定着しつつあることを踏まえました。 統計的仮説検定を含めている因果推論本はありますが、「P値だけで判断してはいけない」という考え方も踏まえている本は、本書がおそらく最初になります。
本書では、因果効果、効果量、P値で役割分担する手順にしました。
2010年頃からの因果推論の文献では、ロジスティック回帰分析を、傾向スコアを計算する方法として紹介することが多いです。
一方、疫学関係では、ロジスティック回帰分析は、原因系が連続データ、結果系が二値データの場合の分析方法として使われています。
本書では、両方の使い方を説明することにしました。
重回帰分析ほどの手軽さはないのですが、ロジスティック回帰分析の係数の計算は、Excelでもできます。 デフォルトの設定ではできないのですが、設定を変更して「ソルバー」を加えれば、既存の関数を使って、できるようになります。 アドインソフトを、どこかから持って来る必要はないです。
因果推論の文献で、結果系がカウントデータの場合を紹介しているものは、筆者の知る限りではないです。 Excelでは、ロジスティック回帰分析と同様の手順で、ポアソン回帰分析もできるので、本書では、カウントデータの場合も入れました。
グラフ統計 は、データ分析の実務では、とても重要ですが、因果推論の文献では、それほど重視されていないです。
難しい理論を使わなくても、散布図や折れ線グラフを工夫すると、因果関係が、一目瞭然になることがあります。
本書では、グラフによる分析も力を入れました。
海外も含めて、Excelをツールにする因果推論の本は、今のところ、本書だけです。
Pythonの場合、例えば、「家のパソコンではできることが、会社のパソコンではできない」といった問題が起きることがあります。 こうした問題は、誰もが解決できる問題ではないです。
筆者自身は、RやPythonを使うこともありますが、「日常的に」、「誰でも」といったことなら、Excelが一番良いと思います。 日々の仕事をExcelで進めている職場では、普段使っているExcelがそのまま因果推論のツールになるので、最短で始められます。
Excelの場合、生のデータとグラフが連動しているので、データの理解を深めながら分析ができます。 なお、この特徴は、大規模データの場合に、長所ではなく短所になるので、どんな場合でもExcelがベストな訳でもないです。
ちゃんと数えてはいないのですが、「因果とは」、「因果を検証するには」といったことを、きちんと説明しようとしている本では、 ヒュームが示した因果性をスタートにする場合と、ルービンのSUTVAをスタートにする場合に大きく分かれるようです。
ヒュームの方は、「私たち人間が『因果関係』と認識するものが、一体どういうものなのかを、言葉でまとめたもの」、と理解すると良いようです。 ベイズ統計 、 強化学習 、 応用行動分析学 などでは当たり前のようにして使われている考え方を、きちんと説明しようとすると、ヒュームの因果論になります。
ルービンの方は、「因果効果を精確に測るには、どうなっていなければいけないか?」というところが重視されているようです。
本書は、日常の中での因果関係の認識から話を始めていますが、ヒュームの因果論とつながっています。
因果推論の「推論」というのは、「関係を明らかにする」というような、論理学関係での意味が、元々のようです。
一方、最近の本の場合は、因果推論の「推論(inference)」を、機械学習による推論と同一視する場合が増えているようです。 機械学習による推論は、「予測」とも呼ばれますが、データからモデルを作って、未知の場合の結果を計算することを言います。
そういった本では、因果関係を明らかにすることではなく、因果効果の見積もり方や、計算の精度が、議論の中心になっています。
本書は、因果効果の計算にも触れていますが、因果関係の検証を主な目的にしています。
最近の因果推論本では、「差分の差分法」、「回帰不連続デザイン」、「マッチング法」、「コウザルインパクト」、「操作変数法」などが定番の手法のようになっています。 これらのそれぞれについて、ひとつの章を当てることもあります。
本書でも、これらの手法を紹介していますが、「定番の手法」のような位置付けにはしませんでした。
本書では、変数の種類によって、章を分けています。 それぞれの章を6個の節に分けていて、6個目の節が「応用編」です。 「差分の差分法」と「回帰不連続デザイン」は3章、「マッチング法」と「コウザルインパクト」は4章、「操作変数法」は5章です。 それぞれの章の応用編に、これらの手法が入っています。
この位置付けにすると、「差分の差分法」、「回帰不連続デザイン」、「マッチング法」、「コウザルインパクト」、「操作変数法」などが、どのようなデータに対して、 どのようなアイディアでアプローチしているのかがわかりやすいと思います。 また、こうした学び方をすると、読者が、自分自身のデータに対して、今までにないアイディアを考えてアプローチすることに、応用しやすいと思います。
「統計的因果推論があるのなら、統計的ではない因果推論もあるのでは? 統計的ではない因果推論は、どんなものだろう?」と思ったことがあるのは、筆者だけではないと思います。
本書を執筆するにあたり、その疑問については、明確にして置いた方が良いと思い、可能な限りたくさんの本を確認しました。 「因果推論」や「Causal inference」という言葉が使われている本について、書名や章名だけでなく、文中で使われている本も含めて探したところ、136冊ありました。
意外なことに、136冊のうち、128冊では、「因果推論 = 統計的因果推論」でした。
統計的ではない因果推論は、主に社会学関係や、裁判関係で出て来ます。 テレビに出て来るような探偵は、事実のつながりから因果関係を突き止めて行きますが、そのアプローチと似ています。 データらしいデータがなくても、突き止めなければいけないことがあります。
現実に起こっていることについて因果関係を突き止める時は、統計的なアプローチだけでは足りません。 本書は、統計的ではない因果推論も、必要に応じて、紹介しています。
本書の構想を練る時に、「統計的ではない因果推論の本がどのくらいあり、何が書かれているのか?」、「比較的古い因果推論本では、何が説明されているのか?」といった事を確認しておいた方が良いと思いました。そこで、関係していそうな本を、可能な限り調べました。 以下は、その時に作ったリストです。
本で紹介できる程の精度がないため、本には含めませんでしたが、隠すものでもないので、ここに掲載することにしました。
ざっくりとした現状把握が目的のリストなので、その目的に対しては、十分な内容と考えていますが、精度が粗いです。 例えば、日本語の本は、ななめ読み程度の本があります。英語の本については、ネット上の目次しか読んでいないものがあります。 そういったこともあり、多少は、漏れや分類ミスがあるはずです。
下の画像の元になっているExcelファイルは、こちらのリンクからダウンロードできます。