見出し画像

【脳波解析】フーリエ変換

 本ノートでは「Analyzing Neural Time Series Data Theory and Practice」(Mike X. Cohen and Jordan Grafman)のChapter11をベースに、フーリエ変換について、勉強していきます。フーリエ変換を脳波データに適合する際、畳み込み処理(コンボリューション)を理解している必要があります。前回のノートで説明していますので、分からない方はそちらを先にみてください!
前回のノートはこちら↓

フーリエ変換って?

 フーリエ変換とは、時間(t)の関数を角周波数(ω)の関数に変換することで、微積や解析を簡単にします。脳波は振幅、周波数、位相のsin波の和で表すことができますが、計測する際には、非定常的&周期性のないノイズが含まれます。これらのノイズを可能な限り除去し、それぞれの波を分解(フーリエ変換)することにより情報を三次元で表現が可能となります。このとき、位相を無視して二次元で表現されることが多いです。また、フーリエ変換を用いた解析では、データのポイント数(n/sec)が多いほど、周波数の解像度 (temporal resolution)が高くなります (詳細はchap. 13)。

フーリエ変換のデメリット

 フーリエ変換で波を分解できるの!すごい!ってなりますが、以下のようなデメリットもあります。
1) フーリエ変換は定常性のある波を前提としていますが、実際のEEGデータは非定常的です。
2) EEGデータ解析では、1)の問題を解決するため、対象とするデータを時間で区切ることで波の定常性を仮定しています。そのため、周波数情報における時間変化を見ることができません。
3) 対象データを時間で区切るため、エッジアーチファクトが発生します。

離散フーリエ変換

 離散フーリエ変換では、特定の周波数を持つsin波とデータの内積(≒似てる度)を計算します。この内積計算を、sin波の周波数を変えながら、繰り返し行います。

画像1

逆フーリエ変換

  フーリエ変換の逆なので、逆フーリエ変換です。フーリエ変換では、時間(t)の関数を角周波数(ω)の関数に変換していましたが、逆フーリエ変換では、角周波数(ω)の関数を時間(t)の関数に変換します。フーリエ級数と複素sin波を掛け合わせその総和を計算することで、結果を出すことができます。

高速フーリエ変換(FFT)

 高速フーリエ変換(FFT)はフーリエ変換における重複や、取り除ける過程を省き、高速で、効率的に処理できるようにしたものです。実際に、圧倒的に早い時間でほぼ同等の結果を出力します。それだけ聞くと、FFT最強じゃね!?となりますが、1) 転換できる波形データの幅に制限がある、2) スペクトル漏れの補正のために、波形に窓重み関数を適用する必要性がある、というデメリットもあるそうです。

フーリエ変換における畳み込み(コンボリューション)

 時間領域における畳み込みは、周波数領域の掛け合わせに等しいです。フーリエ変換におけるコンボリューションは、以下の2通りの手法で処理が可能となります。
1) 時間領域における畳み込みをした後に、フーリエ変換を行う
2) 信号とカーネルをそれぞれフーリエ変換後、畳み込みを行う


最後に、このノートにスキを押してくれると、とても嬉しいです!ここまで読んでくださり、ありがとうございました。
<謝辞>
このnoteを書く上で、弊ラボの原あゆみさんにご協力いただきました。ありがとうございます。

この記事が気に入ったらサポートをしてみませんか?