2026年1月6日火曜日

因果探索

 因果推論にはDAGが必要です。それをデータから探索するのが因果探索。

 因果探索には「制約ベース」「スコアベース」「関数ベース」「連続最適化・勾配ベース」「時系列拡張」「ML・深層生成モデル」などがあります。代表的な仮定は以下の3つ。

  • 因果的マルコフ条件(Causal Markov); DAG G 内の任意のノードX、その親ノードの集合(Pa(X))が与えられたとき、自身の子孫でない変数すべてと条件付き独立であるという性質。「直接の原因が分かれば、それ以上さかのぼる必要はない」
  • 信念性(Faithfulness); 確率分布 P で観測される条件付き独立性は、DAG G のD分離から予測されるもの以外には存在しない。「この変数とこの変数は無関係に見える、という現象は、すべて因果グラフの構造によって説明できる」
  • 因果十分性(Causal Sufficiency/潜在共通原因なし); 観測された変数に、交絡因子となるような「隠れた変数(見えない要因)」は一つも存在しないという性質。「大事な変数は、全部見えている」

代表的な手法です。 

手法

タイプ

アルゴリズム

仮定、特徴

注意点

PC

制約ベース

完全無向グラフ条件付き独立(CI)検定でエッジ削除→v-structureなどのルールで向き付け

マルコフ性・信念性・因果十分性、連続/離散可

高次元・サンプル数不足に弱い、潜在共通原因があると誤る(因果十分性が必要)

FCI/RFCI

制約ベース(拡張)

PCを拡張し、潜在変数を許す CI 検定+向き付け規則で PAG; Partial Ancestral Graph(部分祖先グラフ)を構成

マルコフ性・信念性、潜在共通原因・選択バイアス許容

出力グラフが複雑、解釈困難になりやすい

GES/GIES

スコア+貪欲探索

BIC などのスコアを最大にするよう、エッジ追加削除を繰り返し DAG 探索

マルコフ性・信念性・因果十分性・スコア同値性・分解可能性、連続/離散可、GIES は介入データを利用可能な拡張版

局所最適解に陥る可能性、スコア依存性

LiNGAM

ICA+回帰

非ガウス性・独立誤差を仮定しICA; Independent Component Analysis(独立成分分析)的に因果順序を推定順に回帰で辺推定。

線形・非ガウス誤差、誤差独立、潜在変数なし版が基本形、主に連続変数向け

仮定が強く,ノイズがガウス寄りだと破綻

NOTEARS

連続最適化

h(W) =tr(exp(WW))-d =0などの滑らかなacyclicity 制約付き損失を勾配法で最小化し、隣接行列を直接学習

線形SEM(ガウス誤差)想定、高次元対応

非線形拡張版は計算量大、局所解の可能性

GOLEM

連続最適化

尤度(例:線形ガウスSEM)+スパース正則化+DAGペナルテティ(対数尤度+λ・DAG違反項)を最適化しDAG近似

線形SEM・大規模データ対応

ペナルティ法ゆえ制約は厳密でなく,λ調整が必要

DECI

深層生成モデル+ベイズ推論

①VAE系の生成モデルで非線形SEMDAGを生成的に定式化変分推論(またはMCMC)でposteriorを近似、基本はDAGの事後分布とSEMを学習し,介入データがあれば推定が強化される

非線形・複雑分布、観測+介入データ対応、事前分布や制約を組み込みやすい

計算コスト大。モデル設計・ハイパーパラメータに敏感


専門知識の組み込み例

  •  PC/FCI系:初期完全グラフのMaskで禁止エッジを除外。tier(層)情報や時間順を向き付け規則に追加。
  •  GES/NOTEARS/GOLEM:Mask行列で必須エッジ・禁止エッジを固定。ペナルティ項の重みを変えてprior的に導入。
  • LiNGAM:既知の部分順序(時間順など)で可変順序を固定。
  • DECI:DAGやエッジの事前分布(スパース先行分布など)を自然に定義。

Pytorch などの慣れたツールを使えば、手軽に結果を得られるできるでしょう。が、妥当性の判断が難しい。数をこなして慣れるしかないのかな。

0 件のコメント:

コメントを投稿