![見出し画像](https://assets.st-note.com/production/uploads/images/31676566/rectangle_large_type_2_8498607d3491c80a15854b4417ca1547.png?width=1200)
【脳波解析】グレンジャー予測(Granger Prediction)
本ページでは「Analyzing Neural Time Series Data Theory and Practice」(Mike X. Cohen and Jordan Grafman)のChapter28をベースに、グレンジャー予測(Granger Prediction)について、説明をしていきます。
前回のnoteはこちら↓
グレンジャー予測(Granger Prediction)とは
Granger Predictionとは、「グレンジャー因果」を求めることです。グレンジャー予測では、あるシグナルの分散から別のシグナルの分散が予測できるかをテストするため、位相ベースのコネクティビティ(ISPC)やパワーベースコネクティビティと異なり方向性がわかります。数学的には、他のコネクティビティ解析と異なり多変数回帰分析に近いです。
自己回帰
自己回帰は単変量と多変量に分けることができます。そもそも、自己回帰とはなんでしょうか。X(t) = 0.8X(t-1) (ここで"t-1"は一つ前のタイムポイントを示します)のようなもので、この性質を確かめ係数を求めていくのが⾃⼰回帰分析です。単変量の自己回帰では、文字通り、⾃⼰の値を変数に変化させます。この際、定常性があった⽅が良いです。
二変量の自己回帰について、2変数でやる回帰で、2変数の関係性が弱い場合、係数が⼩さくなります。全く関係性がない場合は0になります。グレンジャーでは、1変数(単変数)で⾃⼰回帰する場合と他の変数も使った⼆変数で⾃⼰回帰するのと、誤差の分散を⽐較することでどっちが成績良いかを⽐較します。単変数及び2変数において、それぞれ以下の式を用います。
ここで、e_tが小さいほど嬉しく、XとYに関係がない場合b_nは0に近づきます。さらに、上記の式より、グレンジャー予測(Granger Prediction)は
となります。Logスケールでの⽐較は(誤差含めて)χ^2 分布に従うので統計的にも楽です。さらに、この時分散が同じ(YがXに寄与しない)場合、log1 = 0となります。ただし、グレンジャーはあくまでも因果関係を求めるものであり、相関ではないことに気をつけましょう。
ここまで単変量と二変量の話をしてきましたが、多変数のGranger Predictionについては、AからB だけでなく、A,BからC、などの関係性も⾒れるようになります。
時間方向のグレンジャー予測
タスクに関するコネクティビティの変化が⾒たい時、時間方向のグレンジャー予測を用いることができます。ある程度の定常性(持続性)を保証していますが、あくまで時間窓平均であるため、実際のコネクティビティより⻑い時間窓をとってしまうと検出できないというデメリットもあります。また、短い時間窓の場合は上記の利点と⽋点が逆になります(定常性が保証でいないがコネクティビティの検出はできる)。
それでは、どれくらいの時間窓が良いのでしょうか。結論から言うと、tの長さは経験やタスクによりますが、どちらかと言うと長い方が定常性は保たれるので良いでしょう。あまりにも短い場合、⼤きな時間ラグに対応できません。そのため、ベイズ情報量基準(BIC, Bayes information criterion)やAkaike information criterionを⽤いて最尤推定をしてあげると良いでしょう。BICは以下の式で求めることができます。
しかし、最尤値はめっちゃ変動する上に、窓によって結果が変わってしまうため、結局は決め打ちで全被験者全データ共通する長さを決める必要があります(がばいですね)。
グレンジャー予測をかけるタイミング
ある特定の周波数帯域での直接的なコネクティビティを仮説している時、バンドパスをしてからグレンジャー予測(Granger Prediction)をかければ良いと考えるかもしれませんが、これは不適切です。解析の際、前のデータを元に計算を行っていく(上書きしていく)ため、サンプリングレート諸々が変わってしまうためです。周波数成分で⾒たい場合は、グレンジャー係数と複素サインの畳み込みをしてから分散の⽐較を⾒てあげましょう。ただし、orderの値と周波数とのバランスの問題で特に低周波は乗りづらく、精度が下がる可能性があります。
さらに、グレンジャーは定常性のあるデータでないといけないため、ERPがあると困るそうです。というより、baseline補正においてz正規化(平均引いて標準偏差で割る)を行うとERPはほぼ潰れて消えます。なので、z正規化を用いたり、出来るだけ短い時間窓を使ったり、データの⼀階微分値でグレンジャーを見るのが良いでしょう。特に、時間変化を⾒たい時にはbaseline補正をかけると、バックグラウンドでコネクティビティがある場合に有効です。
グレンジャー予測の統計的利用
グレンジャー予測は先述のようにχ^2分布なので検定にも使えます(F検定)。また、条件間や時間間で値を⽐較する⽅法(検定)としてもつかえ、この場合、Grangerの値はχ^2分布なので、その差は正規分布に従います。
最後に、このノートにスキを押してくれると、とても嬉しい&更新のモチベが爆上がりします!ここまで読んでくださり、ありがとうございました。
<謝辞>
このnoteを書く上で、弊ラボの後藤優仁さんにご協力いただきました。ありがとうございます。
この記事が気に入ったらサポートをしてみませんか?