周期成分分析を使用して、EEG チャネルの周期成分を検出したいと考えています。アルゴリズムはあまり知られていないので、手順を簡単に説明します。
周期性誤差関数:を最小化します。error(τ)= E[s(t+τ) -s(t)] / E[s(t)^2]
ここτ
で、 はタイムラグです。行列A(τ)
, , を定義するとC
、error(τ)=(w'*A(τ)*w)/(w'*C*w) = Rayleigh(A(τ), C, w)
. したがって、最小値は、特定のタイム ラグ τ に対する( Α(τ)
, ) の最小の一般化された固有値です。C
私はタイムラグの範囲で実行piCA
し、通常、最小化された誤差関数の極小値で周期成分の周期を検出します (最小の一般化された固有値を使用)。
[E,W]=piCA( Xeeg, [minlag maxlag], 'pre', [1 1 1]);
これは、変換行列W
と、E
すべてのペア ( A[τ]
, C
) の一般化された固有値の行列を与えます。
最小の固有値で計算された関数ではなく、2 番目に小さい固有値で計算された関数の極小値で、正しい周期成分を検出することは可能ですか??
以下の画像を参照してください。
緑色の線は明らかにすべてのタイム ラグの最小誤差関数ですが、局所的な最小値はありません!!! したがって、結果は、2 番目に小さい固有値を使用して計算される青い線関数からのみ発生します。:/