因果推論にはDAGが必要です。それをデータから探索するのが因果探索。
因果探索には「制約ベース」「スコアベース」「関数ベース」「連続最適化・勾配ベース」「時系列拡張」「ML・深層生成モデル」などがあります。代表的な仮定は以下の3つ。
- 因果的マルコフ条件(Causal Markov); DAG G 内の任意のノード X、その親ノードの集合 (Pa(X)) が与えられたとき、自身の子孫でない変数すべてと条件付き独立であるという性質。「直接の原因が分かれば、それ以上さかのぼる必要はない」
- 忠実性(Faithfulness); 確率分布 P で観測される条件付き独立性は、DAG G の D分離から予測されるもの以外には存在しない。「この変数とこの変数は無関係に見える、という現象は、すべて因果グラフの構造によって説明できる」
- 因果十分性(Causal Sufficiency/潜在共通原因なし); 観測された変数に、交絡因子となるような「隠れた変数(見えない要因)」は一つも存在しないという性質。「大事な変数は、全部見えている」
代表的な手法です。
| 手法 | タイプ | アルゴリズム | 仮定、特徴 | 注意点 | 原典 |
|---|---|---|---|---|---|
| PC | 制約ベース | 完全無向グラフ → 条件付き独立(CI)検定でエッジ削除 → v-structure などのルールで向き付け | マルコフ性・忠実性・因果十分性、連続/離散可 | 高次元・サンプル数不足に弱い、潜在共通原因があると誤る(因果十分性が必要) | Spirtes & Glymour 1991 |
| FCI | 制約ベース(拡張) | PC を拡張し、潜在変数を許す CI 検定+向き付け規則で PAG; Partial Ancestral Graph(部分祖先グラフ)を構成 | マルコフ性・忠実性、潜在共通原因・選択バイアス許容 | 出力グラフが複雑、解釈困難になりやすい | Spirtes+ 2000 |
| RFCI | 制約ベース(高速版) | FCI とは別物として分けて書く。FCI の CI 検定の一部を省いて計算量を落とした近似版 | FCI と同じ仮定。変数数が多いときの実用解 | 省略のぶん FCI より情報が粗く、辺の向きが未確定のまま残りやすい | Colombo+ 2012 |
| GES / GIES | スコア+貪欲探索 | BIC などのスコアを最大にするよう、エッジ追加 → 削除を繰り返し DAG 探索 | マルコフ性・忠実性・因果十分性・スコア同値性・分解可能性、連続/離散可、GIES は介入データを利用可能な拡張版 | 局所最適解に陥る可能性、スコア依存性 | Chickering 2002 / Hauser & Bühlmann 2012 |
| LiNGAM | 関数ベース(LiNGAM系) | 非ガウス性・独立誤差を仮定し、因果順序を推定 → 順に回帰で辺推定。初期版は ICA; Independent Component Analysis(独立成分分析)を使うが、DirectLiNGAM は ICA を使わないので「ICA+回帰」は初期版の説明 | 線形・非ガウス誤差、誤差独立、潜在変数なし版が基本形、主に連続変数向け | 仮定が強く、ノイズがガウス寄りだと破綻 | Shimizu+ 2006 / Shimizu+ 2011 |
| NOTEARS | 連続最適化 | h(W)=tr(exp(W⊙W))−d=0 などの滑らかな acyclicity 制約付き損失を勾配法で最小化し、隣接行列を直接学習 | 線形 SEM(ガウス誤差)想定、高次元対応 | 非線形拡張版は計算量大、局所解の可能性 | Zheng+ 2018 |
| GOLEM | 連続最適化 | 尤度(例: 線形ガウス SEM)+スパース正則化+DAG ペナルティ(対数尤度+λ·DAG違反項)を最適化し DAG 近似。ハード制約でなくソフト制約で足りることを示したのが主張 | 線形 SEM・大規模データ対応 | ペナルティ法ゆえ制約は厳密でなく、λ 調整が必要 | Ng+ 2020 (NeurIPS) |
| DECI | 深層生成モデル+ベイズ推論 | ①フロー系の生成モデルで非線形加法ノイズ SEM + DAG を生成的に定式化 ②変分推論(または MCMC)で posterior を近似。探索と ATE/CATE 推定を一気通貫で行うのが特徴(欠測補完も内蔵) | 非線形・複雑分布、観測+介入データ対応、事前分布や制約を組み込みやすい | 計算コスト大。モデル設計・ハイパーパラメータに敏感 | Geffner+ 2022 (Microsoft) |
周辺の用語
| 用語 | 説明 |
|---|---|
| DAG(有向非巡回グラフ) | 変数を丸、因果の向きを矢印で表し、たどって元へ戻る経路がない図 |
| d分離 | グラフ上の経路が、ある変数集合で条件付けると遮断される、という図的な独立性の判定規則。忠実性はこれと確率的独立の一致を要求する |
| v-structure(v構造/コライダー) | X → Y ← Z の形。この形だけは観測データから向きを特定できるので、制約ベース手法の向き付けの起点になる |
| マルコフ同値類 | 同じ条件付き独立関係を導く DAG の集まり。観測データだけでは中の一つに絞れない |
| CPDAG | マルコフ同値類の代表表現。向きが決まる辺は有向、決まらない辺は無向で描く。PC / GES の出力形式 |
| PAG(部分祖先グラフ) | 潜在変数や選択バイアスを許したときに識別できる範囲を表すグラフ。FCI / RFCI の出力形式 |
| 潜在交絡(未測定共通原因) | 観測されないが2変数の双方に影響する要因。因果十分性を破り、LiNGAM や PC の前提を壊す |
| 条件付き独立性検定 | ある変数群を固定したときに2変数の関連が消えるかを調べる統計検定。制約ベース手法の心臓部で、ここの検出力不足がそのまま誤りになる |
| スコア同値性 | 同じマルコフ同値類に属する DAG は同じスコアを取るという、スコア関数の性質 |
| 分解可能性 | スコアが各ノードとその親の項の和に分解できる性質。局所的な探索を可能にする |
| 非巡回性制約(acyclicity constraint) | 隣接行列が DAG であることを、微分可能な等式 h(W)=0 で表したもの。勾配法を使えるようにした発明 |
| 隣接行列 W | 変数間の辺の有無と重みを並べた行列。連続最適化系はこれを直接学習する |
| 介入データ | 変数の値を外から固定して(do 演算子)集めたデータ。GIES や DECI は観測データと併せて使える |
| 構造方程式モデル(SEM) | 各変数を、他の変数と誤差項の式で表して因果関係を記述するモデル |
| 非ガウス性 | 分布が正規分布から外れる性質。線形モデルでも因果の向きの識別を可能にするのが LiNGAM の鍵 |
専門知識の組み込み例
- PC/FCI系:初期完全グラフのMaskで禁止エッジを除外。tier(層)情報や時間順を向き付け規則に追加。
- GES/NOTEARS/GOLEM:Mask行列で必須エッジ・禁止エッジを固定。ペナルティ項の重みを変えてprior的に導入。
- LiNGAM:既知の部分順序(時間順など)で可変順序を固定。
- DECI:DAGやエッジの事前分布(スパース先行分布など)を自然に定義。
Pytorch などの慣れたツールを使えば、手軽に結果を得られるできるでしょう。が、妥当性の判断が難しい。数をこなして慣れるしかないのかな。
**************************************
20260817 追記・修正
**************************************
20260817 追記・修正
0 件のコメント:
コメントを投稿