🚀

LiNGAMとは?超ざっくり

2024/08/20に公開

LiNGAMとは?の超ざっくり理解

いろんな記事を読みながら自分の言葉で書き出してみました。
何かの参考になれば幸いです。

そもそも統計的因果探索とは
・複数の仮定を元にデータから因果グラフを生成する手法のこと
・データを入力して、因果グラフや構造方程式をアウトプット

LinGAMの概要
・因果探索するためのツールで、統計的因果探索で最も使用されているもの
・因果探索とは、図形的に物事の因果を表現するもの
・pythonベースで動作する

すごいところ
・因果ダイアグラムの作成は手作業だと結構めんどくさいが、それが自動化できる

数学的な意味
・元々は シミズショウヘイさんが提唱した手法に基づいている
・線型非ガウス非巡回モデルの提案
・この頭文字をとるとLiNGAMになるよ
・三つの仮説に基づく
・データ生成プロセスが線型
・未観測の交絡因子が存在しない
・ノイズ変数が非ガウス分布に従う
・独立成分分析ICAという統計手法を利用する
論文はこちら
https://www.jmlr.org/papers/volume7/shimizu06a/shimizu06a.pdf
数学的な意味があまりわからないですが、ここらの記事はわかりやすかったです
https://gochikika.ntt.com/Modeling/causal_LiNGAM.html
https://qiita.com/icchi-ioo/items/53cad687fcc348b378a0

弱み
・上記の仮説にもしっかりと記載してますが、交絡因子が存在する場合は因果推定がうまくいきません。つまり、設定した条件以外の影響要素があるとうまくいかない。当たり前と言えばあたり前ですね。

LinGAMの派生系

・単純な線形構造であればLiNGAMでサクッと因果関係を出せる。
・ただし上記の前提である、線形であったり、関連する全ての変数を含めている必要があるといった仮定を保つため、実際に現実問題に活用するとうまくいかないことがあるので、派生系があります

Bottom ParceLiNG
・問題:未観測共通原因(考慮に入れらてなかった因子が発見された!ということだと思っています)
・解決策:未観測共通原因を考慮して因果グラフを推定できる

参考
https://qiita.com/kirikei/items/3a47aecc317d6a580fbf

CAM-UV
・問題:上記までは線形の関係性を持つデータのみを扱ってきましたが、現実のデータは線形であるものだけではなく、非線形の関係性を持っている変数も存在します
・解決:CAM-UVは非線形の因果関係を持つデータに対して因果グラフを推定する手法。加えて、未観測な変数があったとしてもそれに対応できる。

参考:
https://qiita.com/kirikei/items/3a47aecc317d6a580fbf

この辺り実データで触ってみないとわからないところだらけなので、
実際にデータを触りながらやってみないとだなと感じます。

Discussion