In Silico

神経科学・BCI・生物

脳データのノイズとは?瞬きやドリフトが検出を狂わせる仕組み

2026/6/19 (更新: 2026/11/3)

  • 脳データ
  • 神経データ
  • EEG
  • アーティファクト
  • ノイズ
  • 交絡
  • 瞬き
  • ドリフト
  • ICA
  • マッチドフィルタ
  • 構造化ノイズ
  • 白色ノイズ
  • しきい値
  • デコーダ
  • SVM
  • EEG-BIDS
  • NWB
  • MNE-Python
  • ICLabel
  • OpenNeuro
  • 2光子イメージング
  • 電極アレイ
  • スパイクソート
  • 頑健統計
  • 中央値
目次
背景・問い・要点
背景

脳波(EEG、electroencephalography)は、頭皮に置いた電極で脳の電気活動を拾い、電圧の時系列として残した記録である。神経データの解析では、こうした記録をデコーダにかける。デコーダは記録の一区間を受け取り、その区間が課題のどの条件で取られたかを推定して返すプログラムである。条件の名前を課題ラベルと呼び、デコーダはラベルの分かっている記録から、ラベルを当てる規則を学ぶ。

記録には、目的の神経活動のほかに、瞬き、筋肉の電気活動(筋電)、心拍に伴う拍動、記録の基線がゆっくりずれていく電極のドリフトが乗る。脳の活動以外から来て記録に乗るこうした成分を、アーティファクトと呼ぶ。アーティファクトはランダムな揺らぎではなく、決まった形を持つ別の信号である。

被験者が条件によって瞬きの頻度を変えると、瞬きの有無が課題ラベルと揃う。するとデコーダは、瞬きを手がかりにラベルを当てる規則も学ぶ。調べたい要因とは別の要因が条件と揃って動き、結果を見かけ上かさ上げすることを、交絡と呼ぶ。

問い

脳データに乗る瞬きやドリフトのノイズは、デコーダや検出器をどう狂わせるのか。

要点

瞬きやドリフトは決まった形を持つ別の信号で、課題の条件と揃うとデコーダはそれも学び、精度をかさ上げしうる。合成デモの固定した検出器では、検出率がまだ 97% あるうちに偽の検出が出始めた。

瞬きが条件と揃うことによるかさ上げは、デコーダを複雑にしても消えず、消えるのは、解析で瞬きを補正して除くか、実験の設計で対照条件を置き、瞬きが条件と揃わないようにしたときである。本稿の合成デモで記録に瞬きとドリフトを少し足しただけで、検出率はまだ 97% あるのに、偽の検出が 1 試行あたり 0.7 件出ている。15 データセットの研究は、補正は復号精度をほとんど動かさないが、交絡を除くために補正を勧めている1。

モデル・例示

瞬きで条件を当てるデコーダと、瞬きを意図と取り違える検出器

※ この節の例は、説明のために作った架空のものです。

例は二つある。一つ目では、瞬きだけを手がかりにデコーダが条件を当てる。二つ目では、瞬きとドリフトが、決まった形の波を探す検出器を狂わせる。

一つ目の例は 8 回の試行である。被験者が条件 A(暗算をする)と条件 B(画面を眺める)を 4 回ずつ行い、各試行で額に近い電極の記録を 1 秒ずつ取るとする。この例では、脳の活動は A と B で同じに作ってあり、二つの条件で違うのは瞬きだけである。A では 4 回のうち 3 回、B では 4 回のうち 1 回、被験者が瞬きをしたとする。この例の瞬きは記録に大きな山を作り、瞬きのあった試行の最大振幅は 100 μV 前後、瞬きの無い試行は 20 μV 前後になる。

デコーダはこの 8 試行とそのラベルから、「最大振幅が 60 μV を超えたら A、超えなければ B」という規則を学んだ。各試行にこの規則を当てた答えが、表の右端の列である。

試行条件瞬き最大振幅(μV)デコーダの答え
1Aあり105A
2Aあり98A
3Aあり110A
4Aなし22B
5Bなし19B
6Bなし24B
7Bなし21B
8Bあり102A

8 回のうち 6 回が正しく、精度は 75% である。でたらめに答えたときの 50% を 25 ポイント上回る。だが例では脳の活動に A と B の差が無いので、この 25 ポイントはすべて瞬きから来ている。瞬きの内訳(A で 3 回、B で 1 回)と振幅の範囲が同じ別の 8 試行に当てても、同じ規則で同じ 75% が出る。

記録から瞬きの成分を除く補正をしてから学ばせると、精度は偶然と同じ 50% 前後に戻る。瞬きの山が消えて 8 試行の最大振幅はどれも 20 μV 前後に揃い、どんな規則を学ばせても振幅から A と B を分けられないからである。この例では A と B の差を瞬きだけにしてあるので、補正で精度が下がる。補正が取り除いたのは、脳の活動ではなく瞬きを根拠にした 25 ポイントである。

補正の前と後の 8 試行を見比べると、瞬きと精度について次の二点が分かる。

  1. 瞬きの有無が条件と揃っていると、脳の活動に差が無くても、デコーダの精度は偶然より上がる。精度の数字だけからは、上がった分が脳から来たのか瞬きから来たのかを区別できない。
  2. 上がった分は、デコーダを複雑にしても消えない。記録の中で A と B を分けるものが瞬きしか無いからである。消えるのは、記録から瞬きを除いたとき、または瞬きが条件と揃わないように実験を組んだときである。

二つ目の例では、瞬きは学習をしない固定の検出器を狂わせる。下の波形は、合成した模擬生体信号である。記録のところどころに決まった形の小さな山を「本物のイベント=意図」として埋めてあり、その位置を薄い縦帯で示す。

検出器はマッチドフィルタである。マッチドフィルタは探したい山の形を受け取り、記録の各位置でその形とどれだけ似ているかを値にして返す。この出力は、記録と探したい形を位置ごとに掛けて足した和なので、形の重なりだけでなく振幅が大きいほど大きくなる。出力がしきい値(ここを超えたら検出とする基準)を超えた位置が、色のついた縦線である。実装はしきい値を自動で決める。記録全体で出力のばらつきを測り、その約 4.5 倍に置く。

波形の下の数字は答え合わせの結果で、検出率(本物をどれだけ拾えたか)と誤検出(ノイズを意図と取り違えた数)を示す。スライダーは二つある。一つは白色ノイズで、各時点で独立にランダムに揺れる成分の強さを変える。もう一つの artifact は、瞬きを模した大きなスパイクとゆっくりしたドリフトを同時に足す。

本稿では、白色ノイズと対比して、アーティファクトのように決まった形を持つノイズを構造化ノイズと呼ぶ。瞬きのスパイクは本物の山の 3〜6 倍の振幅を持つので、形が違っても大きな値を作り、本物の無い位置でしきい値を超える。ドリフトは記録全体をゆっくり上下させるので、ばらつきの推定ごとしきい値を押し上げ、本物の山がしきい値に届かなくなる。

白色ノイズを上げると検出率は落ちていくが、誤検出はほぼゼロのままである。しきい値はばらつきの約 4.5 倍に置かれるので、白色ノイズが増えればしきい値も同じだけ上がる。このため白色ノイズを上げても、本物の山がしきい値に届かなくなって検出率が下がるだけで、本物の無い位置での検出はまれにしか出ない(実装そのままで白色ノイズを 1.2〜1.8 にして測ると、誤検出は各 3000 試行に 1 件)。

アーティファクトを少し入れると、検出率が下がるのと同時に、本物の無い位置での検出が 1 試行あたり 1〜2 件出る。このデモでは、artifact を 0.1 まで上げると、検出率が 97% と高い状態でも誤検出が 0.7 件/試行ある。構造化ノイズが起こすのは本物の見落としだけでなく、瞬きという別の信号を意図と取り違える誤りである。

検出率(本物を拾えた割合)—
誤検出(1試行あたり)—
状態—
仕組みを数式で書くとどうなるか(クリックで展開)

合成も検出も、上のデモの実装そのままである。やっていることは四段だ。

  1. 信号をつくる。 おおよそ150サンプル間隔(±30 のゆらぎ付き)に置いた「本物のイベント」は、幅 w=9w=9 のガウス型の山 TT で表す。そこへ三種のノイズを足す。白色ノイズ(強さ nn の正規乱数)、ゆっくりしたドリフト(振幅が artifact に比例する正弦波)、瞬きを模した大きなスパイク(本物の 3〜6 倍の振幅、本数が artifact に比例)の三つである。スライダー nn が動かすのは一つめ、artifact が動かすのは後者二つである。
T(i)=exp⁡ ⁣(−i22w2),w=9T(i) = \exp\!\left(-\frac{i^2}{2w^2}\right), \quad w = 9s(x)=∑kT(x−ck)+n ξ(x)+drift(x)+∑blinksスパイクs(x) = \sum_k T(x - c_k) + n\,\xi(x) + \text{drift}(x) + \sum_{\text{blinks}} \text{スパイク}
  1. マッチドフィルタで探す。 信号 ss に、探したい形 TT そのものを相関(畳み込み)させる。形が一致した場所で出力 mf\text{mf} が大きく跳ねる。マッチドフィルタは、既知の波形を白色ノイズの中から拾う検出の最適解である。
mf(x)=∑j=−offoffs(x+j)⋅T(j),off=2w=18\text{mf}(x) = \sum_{j=-\text{off}}^{\text{off}} s(x + j) \cdot T(j), \quad \text{off} = 2w = 18
  1. 頑健なしきい値で山を拾う。 標準偏差ではなく ∣mf∣\lvert\text{mf}\rvert の中央値でばらつきを測り、しきい値 =k⋅median(∣mf∣)⋅1.4826= k \cdot \mathrm{median}(\lvert\text{mf}\rvert) \cdot 1.4826(k=4.5k=4.5)とする。平均・分散は瞬きのような巨大な外れ値に引きずられるが、中央値ベースの推定は引きずられにくい(1.4826 は正規分布の σ\sigma に換算する係数)。このしきい値を超える極大点を「検出」とする。
thr=k⋅median(∣mf∣)⋅1.4826,k=4.5\text{thr} = k \cdot \mathrm{median}(\lvert\text{mf}\rvert) \cdot 1.4826, \quad k = 4.5
  1. 答え合わせ。 検出した山が本物のイベントの ±off(18 サンプル)以内なら成功(hit)、本物に対応しない山は誤検出(false alarm)。検出率 = hits / 本物の数、誤検出 = 余った山の数。波形の下の数字はこれを直近12試行で平均している。

検出率と誤検出を決めるのは、三段目のしきい値である。しきい値はばらつきの推定値に比例するので、ノイズが増えれば上がる。瞬きとドリフトでは、しきい値の動かし方が違う。瞬きスパイクは mf に本物より高い偽ピークを作り、そのまま誤検出になる。ただし本数が少ないので、中央値ベースのばらつき推定はほとんど動かない(デモのスライダーはドリフトと瞬きを同時に動かす。実装からドリフトだけを外して測ると、瞬きは artifact=0.7 でも検出率を9割台に保つ)。しきい値を押し上げるのはゆっくりしたドリフトのほうである。ドリフトは外れ値ではなく波形全体を上下させる成分なので、中央値ごと押し上げる。

実測すると(noise=0.3、300 シードの平均)、しきい値は artifact=0 の 8.3 から artifact=0.3 で 22.2、artifact=1.0 では 69.2 まで跳ね上がる。一方、本物のイベントにおける mf の山は、アーティファクトが無ければ、テンプレートの自己相関 ∑jT(j)2≈16\sum_j T(j)^2 \approx 16 と同じ 16 前後から動かない。ドリフトは山の平均を動かさない。位相に応じて上下に散らすだけで、300 シードの平均は artifact=1.0 でも 16 前後のままである。平均で見て動くのはしきい値だけであり、そのしきい値が山の分布に食い込むにつれて検出は崩れていく(ドリフトだけで測ると、artifact=0.2 では平均しきい値が 14.9 と 16 に届いていないのに、検出率はもう 65% まで落ちている)。しきい値を artifact=0 の 8.3 に固定して同じドリフトを入れると、artifact=0.3 でも検出率は 100% に戻る。

中央値のように外れ値に引きずられにくい統計(頑健統計)は、まれに出る巨大な外れ値には引きずられないが、ドリフトのように常に乗っている構造には引きずられる。デモが示すのは、構造化ノイズが固定した検出器の誤検出と検出率をどう動かすかまでである。

瞬きの交絡は、単純なデコーダの精度もかさ上げしうる

被験者が課題中に瞬きの頻度を変えれば、瞬きアーティファクトは課題ラベルと相関する。モデルはその相関も学習し、検証精度は見かけ上かさ上げされる1。このとき解析者は「脳の意図」をデコードしたつもりで、実際には瞬きの癖を分類している。この誤りはモデルの表現力では防げない。サポートベクターマシン(SVM、support vector machine)のような比較的単純なデコーダでも、瞬きの交絡は精度をかさ上げしうる1。

脳データを扱う難しさの大半は、構造を持つ別の信号を目的の信号と取り違えることにある。

記録が何を表すかは、解析より前に計測の設計で決まる

記録の値が何を表すかの大半は、解析より前、計測の設計の段階で決まっている。参照電極の取り方、サンプリング、被験者間の解剖学的差異、そして「この発火率は何を表すのか」という根本的な解釈の選択である。スパイクが増えたとき、それが情報の符号化なのか、覚醒度の変化なのか、単に記録由来のアーティファクト(電極ドリフトや別ユニットの混入、イメージングなら血流由来の信号)なのかは、モデルが教えてくれることではない。

だから本稿は、この分野で結果を左右するのは新しいモデルより測定そのものを確かめる作業だと考える。独立成分分析(ICA、independent component analysis)で生理的アーティファクトを分けて除く2、対照条件を設計してラベルとの交絡を断つ、被験者をまたいで汎化するか確かめる3。つまり「測っているものを知る」労力である。

ただし、この作業で精度が上がるとは限らない。ICA 補正とトライアル除去を 15 データセットで測った研究は、除去のしきい値を厳しくしすぎない限り、復号精度に little or no impact だったと報告している1。典型的なしきい値では、補正と除去を併せると 2 データセットで精度がわずかだが有意に上がった1。逆に誤反応と正反応を見分ける復号では精度がわずかだが有意に下がり、著者らはこれを瞬きによるかさ上げが除かれた可能性と読んでいる1。同じ研究はそれでも補正を推奨する。理由は精度ではなく交絡の除去にあり、the elimination of confounds is a clear upside と書いている1。

補正は、アーティファクトを記録から引き算すれば済む作業でもない。眼球活動と脳波(EEG)は双方向に混ざるので、回帰で眼のアーティファクトを引けば脳信号も一緒に引かれる。ICA が使われるのは、この引きすぎを避けるためでもある。

測定から解析までの工程には、次の標準・道具・公開データがある。ただし、どの道具を使うかより前に、計測の設計で「何を測っているか」が決まる。

機械学習のモデルは、測定に含まれる交絡もそのまま学ぶ。交絡のある測定からは、精度は高いが誤った結論を出しうる。デコーダの精度の報告を読むときは、次の二つを確かめられる。アーティファクトの有無が条件と揃っていなかったか、そして補正の前と後で精度がどう変わったかである。

出典8件
  1. Zhang ほか「Assessing the impact of artifact correction and artifact rejection on the performance of SVM- and LDA-based decoding of EEG signals」NeuroImage, 2025. https://doi.org/10.1016/j.neuroimage.2025.121304 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7

  2. Jung ほか「Removing electroencephalographic artifacts by blind source separation」Psychophysiology, 2000. https://doi.org/10.1111/1469-8986.3720163 — ICA でアーティファクトを分離して除く。眼と脳の信号は双方向に混ざり、回帰で引くと脳信号も引かれる。 ↩

  3. Saha & Baumert「Intra- and Inter-subject Variability in EEG-Based Sensorimotor Brain–Computer Interface: A Review」Front. Comput. Neurosci., 2020. https://doi.org/10.3389/fncom.2019.00087 — 被験者間の変動が転移を妨げる。 ↩

  4. C. R. Pernet ほか「EEG-BIDS, an extension to the brain imaging data structure for electroencephalography」Scientific Data 6:103, 2019. https://doi.org/10.1038/s41597-019-0104-8 — 脳イメージングの共同体標準 BIDS を EEG へ拡張する。 ↩

  5. Rübel ほか「The Neurodata Without Borders ecosystem for neurophysiological data science」eLife, 2022. https://doi.org/10.7554/eLife.78362 — 電気生理・光学計測の記録を種と手法をまたいで記述し、スパイクソートや CaImAn などと連携する。 ↩ ↩2

  6. A. Gramfort ほか「MEG and EEG data analysis with MNE-Python」Frontiers in Neuroscience 7:267, 2013. https://doi.org/10.3389/fnins.2013.00267 — 前処理・信号源推定・統計・機能的結合の解析を Python で提供する。 ↩

  7. Pion-Tonachini ほか「ICLabel: An automated electroencephalographic independent component classifier, dataset, and website」NeuroImage, 2019. https://doi.org/10.1016/j.neuroimage.2019.05.026 — 成分 20 万超、うちラベル付き 6,000 超。 ↩

  8. C. J. Markiewicz ほか「The OpenNeuro resource for sharing of neuroscience data」eLife 10:e71774, 2021. https://doi.org/10.7554/eLife.71774 — BIDS 形式のデータを共有する保管庫で、2021 年の掲載時点で 600 超のデータセットを載せる。 ↩

この記事はAIを使用して執筆されました。内容には誤りが含まれる可能性があります。事実や数字の出典は脚注から確かめられます。