6 デコーディング ── 応答から刺激を読み出す
第4章では、刺激から応答への写像を書いた。s \to \mathbf{r} である。本章では、その矢印を逆に辿る。
\mathbf{r} \;\longrightarrow\; \hat{s}
なぜ逆向きに読むのか。動機は少なくとも三つある。第一に、脳自身がやっていることだから。V1 の活動は、そのまま行動になるわけではない。下流の領野がそれを「読み出して」判断や運動に変える。読み出せる情報の量と質が、行動の性能を規定する。
第二に、実験の道具として。「この領野の活動から刺激が読み出せた」という事実は、その領野が刺激の情報を持っていることの証拠になる。神経科学の標準的な解析手法である。
第三に、応用として。脳活動から意図や知覚内容を読み出せれば、脳信号で外部の機械を操作するブレイン・マシン・インターフェースになる。第15章第10節で、脳活動から画像を再構成する話まで進む。そこでは「デコーディング」という言葉自体が問い直されることになる。そして本章には、後の章への種が二つ蒔かれる。第5節のフィッシャー情報量(Fisher information)は第11章第5節で表現幾何と同じ式だったと明かされ、第8節の問い—読み出せることと使われていることの違い—は第12章第10節で回収される。
第2〜3節が古典的な手法、第4〜5節が確率的な定式化、第6〜7節が機械学習との合流である。
第5節が本章の要である。フィッシャー情報量とチューニング曲線の傾きの関係を、式で追ってほしい。ここで得る \mathcal{I} = J^\top\Sigma^{-1}J という形が、第11章でそのまま表現幾何の言葉に翻訳される。
第8節は短いが、本書全体でいちばん厄介な問いを提起する節である。答えは第12章まで持ち越される。
1. デコーディングという問題設定
順問題と逆問題
第4章で扱ったのは順問題だった。刺激が与えられたとき、応答がどうなるか。物理的な因果の向きに沿っている。
本章は逆問題である。応答から刺激を推定する。因果の向きに逆らっている。
逆問題は、一般に順問題より難しい。理由は二つある。第一に、一意でない。複数の刺激が同じ応答を生むなら、応答から刺激を決められない。第4章第5節の複雑細胞は、まさに位相の情報を捨てていた—捨てられた情報は、原理的に読み出せない。
第二に、ノイズがある。同じ刺激でも応答は毎回違う(第2章第6節)。だから推定には必ず誤差が伴う。
定式化
刺激を s、同時に観測する応答の数を N とする。各 r_i は細胞やボクセルといった一つの観測単位の応答で、それを縦に並べた列ベクトルが \mathbf{r} = (r_1, \dots, r_N)^\top \in \mathbb{R}^N である(\top は転置)。刺激が方位や速さのような一つの連続量なら s \in \mathbb{R}、刺激の種類を当てる問題なら s はカテゴリを表す。推定値 \hat{s} は s と同じ種類の値を取る。デコーダとは写像
\hat{s} = g(\mathbf{r})
である。良いデコーダとは何かを決めるには、評価基準が要る。連続量なら二乗誤差 \mathbb{E}[(\hat{s}-s)^2]、離散なら正答率が使われる。
二つの立場
デコーディングには、性格の違う二つの立場がある。混同されやすいので、最初に分けておきたい。
立場1:脳の読み出し機構のモデルとして。下流のニューロンが実際にどう読み出しているかを問う。この場合、デコーダは生物学的に実現可能でなければならない—重み付き和くらいの単純さが要求される。第2節の population vector がこれである。
立場2:実験者の解析道具として。「情報が存在するか」を調べたい。この場合、デコーダが生物学的である必要はない。可能な限り強力な手法を使ってよい。第6節の MVPA はこちらである。この区別が曖昧になると、混乱が生じる。「デコードできた」という結果が、「脳がその情報を使っている」ことを意味するのか—という問いが、第8節の主題になる。
用語の注意 ── 「エンコード/デコード」は二通りある
もう一つ、先に釘を刺しておきたい。この二つの言葉は、神経科学と機械学習で違う意味に使われる。
神経科学の用法
符号化が刺激 → 脳活動、復号が脳活動 → 刺激。基準は物理的な因果の向きである。本章がいま使っているのは、この意味である。
機械学習の用法
符号化器が観測 → 潜在表現、復号器が潜在表現 → 観測。ここで潜在表現とは、観測をモデル内部の変数で表したものである。基準は表現の抽象度であって、因果とは関係がない。第14章の VAE で、この意味で使うことになる。同じ言葉が、違う基準で使われている。さらに厄介なのは、両者が交差する場面があることだ。脳活動と深層ニューラルネットワーク(DNN)の内部表現を対応づける研究では、どちらの言葉遣いも成り立ちうる—そしてそのとき、どちらの意味で言っているのかが曖昧になる。この問題への一つの処方が、Kamitani、Tanaka ら (2025) の提案である。脳活動も DNN 特徴量も、同じ刺激から作られた潜在特徴であって、両者のあいだに因果の向きはない—だから符号化/復号ではなく、双方向の翻訳(translation)と呼ぶ。第15章第10節で詳しく扱う。
いまの段階では、次のことだけ頭の隅に置いておいてほしい。「デコーディング」という語を見たら、何から何への写像を指しているのかを、そのつど確かめる。それだけで避けられる誤解が、この分野にはかなりある。
2. population vector ── 単純だが強力な線形読み出し
発想
Georgopoulos らは1982年、サルの運動皮質で次のことを見出した。個々の細胞は、腕を動かす方向に対して広いチューニングを持つ。特定の方向でもっともよく発火し、そこから離れるにつれて緩やかに落ちる。
r_i(\theta) = r_0 + r_{\max}\cos(\theta - \theta_i)
ここで \theta は腕を動かす方向の角度、r_i(\theta) はその方向での細胞 i の平均発火率である。r_0 は方向によらない基準の発火率、r_{\max} は方向による変動の振幅で、どちらも発火率と同じ単位を持つ(この式で実現される最大の発火率は r_{\max} 単独ではなく r_0 + r_{\max} である)。\theta_i が細胞 i の好み方向である。チューニングが広いということは、一個の細胞では方向を特定できないということだ。ある発火率を出す方向は、好み方向の両側に二つある。
では集団ならどうか。Georgopoulos らの提案はこうである。各細胞の好み方向のベクトルを、発火率で重み付けて足す。
\hat{\mathbf{v}} = \sum_{i=1}^{N} \big(r_i - r_0\big)\, \mathbf{u}_i
平面内の運動を考えると、\mathbf{u}_i \in \mathbb{R}^2 は細胞 i の好み方向を向く長さ1の列ベクトルである。r_i - r_0 が各方向に付ける重みで、全 N 細胞について足したものが \hat{\mathbf{v}} \in \mathbb{R}^2 になる。この \hat{\mathbf{v}} を population vector と呼ぶ。角度そのものではなく二つの成分を持つベクトルなので、ゼロでなければ、その向きを推定した運動方向として読む。
なぜ機能するのか
計算してみよう。刺激方向を \theta、好み方向が一様に分布しているとする。\mathbf{u}_i = (\cos\theta_i, \sin\theta_i)^\top である。x 成分を計算する。
\begin{aligned} \hat{v}_x &= \sum_i r_{\max}\cos(\theta-\theta_i)\cos\theta_i \\ &= r_{\max}\sum_i \big(\cos\theta\cos\theta_i + \sin\theta\sin\theta_i\big)\cos\theta_i &&\textsf{(加法定理で展開)}\\ &= r_{\max}\Big( \cos\theta \sum_i \cos^2\theta_i + \sin\theta\sum_i \sin\theta_i\cos\theta_i \Big) \end{aligned}
好み方向が一様に分布していれば、\sum_i \cos^2\theta_i \approx N/2、\sum_i \sin\theta_i\cos\theta_i \approx 0 である(後者は \sin 2\theta_i の和がゼロになるため)。したがって
\hat{v}_x \approx \frac{N r_{\max}}{2}\cos\theta
同様に \hat{v}_y \approx (Nr_{\max}/2)\sin\theta。つまり \hat{\mathbf{v}} の向きが \theta を与える。大きさは定数倍だが、方向を知りたいだけなら問題ない。
要点は「好み方向が一様に分布していること」である。偏っていれば推定にバイアスが出る。
利点と限界
利点
単純な重み付き和なので、下流のニューロンが実行できる。生物学的な妥当性が高い。しかも一個の細胞のノイズは、多数を足し合わせることで打ち消される。
限界
最適ではない。ノイズの大きさが細胞ごとに違っても、細胞間に相関があっても、population vector はそれを考慮しない。次節以降で、より原理的な方法を見る。
3. 信号検出理論
二択の問題
方向のような連続量ではなく、二つの選択肢を区別する問題を考える。「刺激はあったか、なかったか」「動きは右か左か」。
ある細胞の発火率を観察して判断するとしよう。刺激ありのときの発火率分布 p(r \mid \text{有}) と、なしのときの分布 p(r\mid\text{無}) が、重なっている。
判断は閾値で決める。r > c なら「あり」、r \le c なら「なし」。すると四つの結果がある。
| 実際に有 | 実際に無 | |
|---|---|---|
| 「あり」と判断 | ヒット | 偽陽性(false alarm) |
| 「なし」と判断 | ミス | 正棄却 |
ROC 曲線
閾値 c を動かすと、ヒット率と偽陽性率が一緒に動く。c を下げれば両方増え、上げれば両方減る。
横軸に偽陽性率、縦軸にヒット率を取って、c を動かしたときの軌跡を描く。これが ROC 曲線(receiver operating characteristic)である。
- 二つの分布が完全に重なっていれば、ROC 曲線は対角線になる(判別不能)
- 完全に分離していれば、左上の角を通る(完全判別)
ROC 曲線の下の面積(AUC)が、判別能力の指標として使われる。0.5 がチャンスレベル、1.0 が完璧である。
AUC には美しい解釈がある。「刺激ありの試行と刺激なしの試行をランダムに一つずつ取ったとき、前者の発火率が後者より高い確率」に等しい(発火数のように同じ値が出うる場合は、引き分けを半分だけ数える)。閾値の選び方に依存しない指標になっているわけだ。
d'
両方の分布が等分散のガウス分布なら、判別能力は一つの数で書ける。
d' = \frac{\mu_{\text{有}} - \mu_{\text{無}}}{\sigma}
\mu_{\text{有}} と \mu_{\text{無}} は刺激があるとき・ないときの発火率の平均、\sigma は両者に共通の標準偏差である。つまり「平均の差を、ばらつきで割ったもの」である。効果量そのものだ。
神経応答と行動の比較
Britten らは1992年、この枠組みで印象的な実験をした。サルに運動方向の弁別課題をさせながら、MT 野の細胞を記録したのである。ただし刺激は毎回、記録している細胞の好みの大きさ・速さ・方向に合わせて調整されている—「その細胞にとって最良の条件」での比較であることは、結果を読むうえで外せない。
個々の細胞の応答から計算した弁別能力(neurometric function)と、サル自身の行動成績(psychometric function)を比べる。
結果は驚くべきものだった。一個の細胞の弁別能力が、サルの行動成績とほぼ同等だったのである。
この結果の解釈は、単純ではない。素朴には「一個の細胞で足りている」と読めるが、そうではあるまい。むしろ次のように考えられている—同じ刺激への応答の揺らぎが細胞間で連動する、ノイズ相関があるため、多数の細胞を足しても精度が期待ほど上がらない。だから「一個分」に見える。
ノイズ相関の問題は、次節以降で扱う。
4. 最尤デコーディングとベイズデコーディング
尤度
確率的に定式化しよう。刺激 s のもとでの応答の分布 p(\mathbf{r}\mid s) が分かっているとする—これは第4章のエンコーディングモデルに、ノイズのモデルを加えたものである。
観測 \mathbf{r} を固定して s の関数と見たものが尤度である。
L(s) = p(\mathbf{r}\mid s)
最尤デコーディングは、これを最大にする s を答えとする。
\hat{s}_{\text{ML}} = \arg\max_s\, p(\mathbf{r}\mid s)
ポアソンノイズの場合
具体的に計算しよう。ここでは応答として、観測時間内に各細胞が出したスパイクの数を使う。細胞 i のチューニング曲線 f_i(s) \ge 0 は、刺激 s に対する平均発火率(単位時間あたりの平均スパイク数)である。スパイク数 n_i \in \{0, 1, 2, \dots\} が平均 f_i(s)T のポアソン分布に従うとする(T は観測時間。以下 T=1 とするので、平均スパイク数の数値は f_i(s) と等しくなる)。全 N 細胞のスパイク数を並べた \mathbf{n} \in \mathbb{R}^N が、ここでは応答 \mathbf{r} の役割を担う。同じ刺激のもとで細胞間は独立とする。
p(\mathbf{n}\mid s) = \prod_{i=1}^{N} \frac{f_i(s)^{n_i}}{n_i!}\, e^{-f_i(s)}
対数を取る。
\log p(\mathbf{n}\mid s) = \sum_i \Big( n_i \log f_i(s) - f_i(s) - \log n_i! \Big)
第三項は s によらないので落とせる。また、チューニング曲線の総和 \sum_i f_i(s) が s によらない(好み方向が一様なら、そうなる)としよう。すると
\hat{s}_{\text{ML}} = \arg\max_s\; \sum_i n_i \log f_i(s)
この形が面白い。「スパイク数で重み付けた \log f_i(s) の和」を最大化している。各細胞が \log f_i(s) という「投票用紙」を持っていて、スパイク数の分だけ投票する—という読み方ができる。さらに、各細胞が好み刺激を中心に山形の応答を示す場合を考えよう。細胞 i の好み刺激を s_i、全細胞に共通の最大発火率を A > 0、チューニングの幅を \sigma > 0 とする(この \sigma は刺激と同じ単位を持つ幅で、第3節で応答分布の標準偏差に使った \sigma とは別物である)。f_i がガウス型のチューニング曲線 f_i(s) = A\exp(-(s-s_i)^2/2\sigma^2) なら、\log f_i(s) = \log A - (s-s_i)^2/2\sigma^2 である。代入して整理すると、
\hat{s}_{\text{ML}} = \frac{\sum_i n_i s_i}{\sum_i n_i}
この式は少なくとも一つのスパイクが観測された場合に使う。総発火率が一定なら、全細胞が無発火のときは刺激を一意に選べない。スパイク数で重み付けた好み刺激の平均—population vector と同じ形になった。つまり population vector と最尤推定は、同じ構造をしている—どちらも好み刺激を発火数で重み付けて平均する。第2節の素朴な手法に、原理的な裏づけが与えられたわけである。(厳密に一致させるには、第2節の定義にあったベースライン r_0 の扱いと、\sum_i f_i(s) が s によらないことが要る。)
ベイズデコーディング
事前分布 p(s) を持ち込むと、事後分布が計算できる。応答を見る前に、どの刺激がどれくらい起こりやすいと考えているか—それを表すのが事前分布である。これに尤度 p(\mathbf{r} \mid s) を掛ければ、観測した応答と整合する刺激に重みが寄る。総和が1になるように割り直したものが、応答を見たあとの刺激の分布、すなわち事後分布 p(s \mid \mathbf{r}) である。次式の分母 p(\mathbf{r}) は、その割り直しに使う数で、連続刺激なら p(\mathbf{r}) = \int p(\mathbf{r} \mid s) p(s)\, ds、離散刺激なら積分を和に置き換える。
p(s\mid \mathbf{r}) = \frac{p(\mathbf{r}\mid s)\, p(s)}{p(\mathbf{r})}
最大事後確率(MAP)推定は事後分布を最大にする s、事後平均は \mathbb{E}[s\mid\mathbf{r}] である。二乗誤差を最小にするのは後者である。刺激の候補が 0 と 10 の二つで、観測後の確率が 0.8 と 0.2 なら、MAP は 0、事後平均は 2 になる。二乗誤差の平均は前者が 20、後者が 16 だ。「いちばん確からしい候補を選ぶ」ことと「誤差を小さくする」ことは、別のことである。
事前分布の効果は、データが少ないときに大きい。観測が曖昧なら、事前分布のほうへ引っ張られる。
知覚のバイアスとの対応
この枠組みは、知覚のバイアスを説明する道具にもなる。たとえば、人間は運動速度を過小評価する傾向がある。ベイズ的な説明はこうだ—「物体は静止していることが多い」という事前分布があるなら、速度の推定は遅いほうへ引っ張られる。刺激のコントラストが低くて曖昧なときほど、この効果が強くなる。実際そうなることが確かめられている。
ただし注意も要る。「事前分布を適当に選べば、どんなバイアスも説明できる」という批判が可能である。事前分布を独立に測定できなければ、説明は後づけになる。第16章第7節で自由エネルギー原理に向けられる批判と、同じ構造の問題である。
5. フィッシャー情報量と Cramér–Rao 下界
ここで導入するフィッシャー情報量は、第11章で表現の計量として再び現れる。
推定の精度に限界はあるか
どんなに良いデコーダを作っても、超えられない精度の限界があるはずだ。その限界を与えるのが Cramér–Rao 下界である。
フィッシャー情報量の定義
近い二つの刺激を見分けられるかどうかは、刺激を少し変えたときに応答の分布がどれだけ変わるかで決まる。まず刺激 s が一つの実数の場合を考えよう。フィッシャー情報量は、次で定義される。対数尤度 \log p(\mathbf{r} \mid s) の傾きを二乗し、その刺激のもとで生じるさまざまな応答について平均した量である(\mathbb{E} は、s を固定して応答分布 p(\mathbf{r} \mid s) について取る期待値である)。
\mathcal{I}(s) = \mathbb{E}\left[ \left( \frac{\partial}{\partial s}\log p(\mathbf{r}\mid s) \right)^2 \right] = -\mathbb{E}\left[ \frac{\partial^2}{\partial s^2}\log p(\mathbf{r}\mid s) \right]
(二つの表式が一致することは、\int p\, d\mathbf{r} = 1 を s で微分すれば示せる。微分と積分を交換できること、応答の取りうる範囲が s によらないことを仮定している。)
読み方
\partial \log p/\partial s は「s を少し変えたとき、その観測の尤度がどれだけ変わるか」である。これが大きいということは、s の違いが観測に強く現れるということだ。だから精度よく推定できる。
第二の表式は「対数尤度の曲率」である。尤度の山が鋭いほど、推定が精密になる。
Cramér–Rao 下界
定理
同じ刺激 s を繰り返し与えても応答は揺らぐので、推定値 \hat{s} も揺らぐ。その平均が真の刺激に一致する(どの s でも \mathbb{E}[\hat{s} \mid s] = s が成り立つ)推定量を不偏という。このとき二乗誤差の平均は、推定値の分散に等しい。任意の不偏推定量 \hat{s} に対して、
\mathrm{Var}[\hat{s}] \ge \frac{1}{\mathcal{I}(s)}
不偏である限り、どんな方法を使ってもこれより精度は上がらない。 デコーダの設計とは無関係に、応答の統計的性質だけで決まる限界である。逆に言えば、偏りを許せばこの形の下界は直接には効かない—バイアスと分散を引き換えにする余地は残っている(第9章第1節)。
ポアソンノイズでの計算
チューニング曲線からフィッシャー情報量を計算しよう。前節と同じ設定(独立なポアソン)で、
\log p(\mathbf{n}\mid s) = \sum_i \big( n_i\log f_i(s) - f_i(s)\big) + \text{const}
s で二回微分して期待値を取る。まず一回目。
\frac{\partial}{\partial s}\log p = \sum_i \left( n_i \frac{f_i'(s)}{f_i(s)} - f_i'(s) \right)
もう一回微分する。n_i を含む項からは商の微分が、-f_i' からは -f_i'' が出る。後者は期待値を取ると前者の一部と打ち消し合う。
\frac{\partial^2}{\partial s^2}\log p = \sum_i \left( n_i \frac{f_i''f_i - (f_i')^2}{f_i^2} - f_i'' \right)
期待値を取る。\mathbb{E}[n_i] = f_i(s) だから、
\begin{aligned} \mathbb{E}\left[\frac{\partial^2 \log p}{\partial s^2}\right] &= \sum_i \left( f_i \cdot \frac{f_i'' f_i - (f_i')^2}{f_i^2} - f_i'' \right) &&\textsf{(} n_i \textsf{ に期待値を代入)}\\ &= \sum_i \left( f_i'' - \frac{(f_i')^2}{f_i} - f_i'' \right) &&\textsf{(第一項を展開)}\\ &= -\sum_i \frac{(f_i')^2}{f_i} &&\textsf{(} f_i'' \textsf{ が打ち消し合った)} \end{aligned}
符号を変えて、
\boxed{\;\mathcal{I}(s) = \sum_{i=1}^{N} \frac{f_i'(s)^2}{f_i(s)}\;}
この式を読む
分子が f_i'(s)^2 であることが決定的である。情報を担っているのは、チューニング曲線の傾きであって、高さではない。細胞がもっとも強く発火する刺激(f_i' = 0 となる好み刺激)では、その細胞はその刺激のごく近くを区別するための情報を提供していない。刺激が少し変わっても発火率が変わらないからだ。遠く離れた刺激との区別には寄与している—フィッシャー情報量が測っているのは、あくまで局所的な識別のしやすさである。
もっとも情報を提供するのは、チューニング曲線の側面である。これは直感に反するかもしれない。「好みの刺激によく応じる細胞が、その刺激について情報を持つ」と思いたくなる。だが推定という観点からは逆である。
チューニング幅と精度
では、チューニング曲線は鋭いほうがよいのか。鋭ければ、刺激を少し動かしたときの応答差は大きい。だが広ければ、一つの刺激に応じる細胞が増える。この二つの効果が競う。
Zhang と Sejnowski (1999) は、細胞数と最大発火率を固定し、好み刺激が一様かつ十分密に並ぶ集団で、この競合を調べた。刺激の次元が高いと、参加する細胞が増える効果が勝ち、幅の広いほうが有利になる場合がある。ただし幅を広げれば総発火量も増える設定である。総発火量まで固定すれば結論は変わりうる。次元ごとの計算は、発展編A.3で確かめられる。
実測はどうか。Majima ら (2017) は fMRI で受容野の大きさと位置のデコーディング精度を突き合わせ、受容野が大きい高次領野でも位置情報が残ることを示した。鋭さだけでは情報の量を決められないのである。
機械の側でも、階層が高いから情報が落ちているとは限らない。画像認識用の深い畳み込みニューラルネット VGG19 の高次層から画像を復元した Shirakawa ら (2025) の例を、第15章第10節で見る。脳の領野とネットワークの層は同じものではないが、階層の高さだけで情報の残り方を判断できるかという問いは共通する。
ノイズ相関
以上は細胞間が独立という仮定のもとだった。実際には相関がある。同じ刺激を繰り返したとき、どの細胞どうしが一緒に揺らぐかも考えよう。応答 \mathbf{r} \in \mathbb{R}^N が、平均 \mathbf{f}(s) = (f_1(s), \dots, f_N(s))^\top \in \mathbb{R}^N、共分散 \Sigma \in \mathbb{R}^{N \times N} の多変量ガウスに従うとする。\Sigma の行と列はどちらも細胞に対応し、対角成分が各細胞の応答の分散、非対角成分が細胞間の共分散である。この \Sigma が刺激に依存せず、正定値(どの方向にもノイズの分散があり、逆行列 \Sigma^{-1} が存在する)だとしよう。このとき、刺激がスカラーなら、平均応答の傾きを並べた \mathbf{f}'(s) \in \mathbb{R}^N をノイズの大きさと相関で重み付けすることになり、積の形が (1 \times N)(N \times N)(N \times 1) なので、フィッシャー情報量は次の数である(応答が多変量でも、刺激が一つなら情報は一つの数だ)。
\mathcal{I}(s) = \mathbf{f}'(s)^\top \Sigma^{-1} \mathbf{f}'(s)
情報が行列になるのは、刺激そのものが多次元のときである。たとえば方位と速さを同時に推定するなら、それぞれを動かしたときの平均応答の変化を並べる必要がある。D 次元の刺激なら \mathbf{f}' はヤコビ行列 J = \partial\mathbf{f}/\partial s \in \mathbb{R}^{N \times D}(応答の数 × D)に置き換わる。行が応答ユニット、列が刺激の成分に対応し、成分 J_{ia} = \partial f_i/\partial s_a は「刺激の第 a 成分を少し動かすと、ユニット i の平均応答がどれだけ変わるか」である。フィッシャー情報行列 \mathcal{I}(s) \in \mathbb{R}^{D \times D} の行と列はどちらも刺激の成分に対応し、対角成分が各成分の識別のしやすさ、非対角成分が異なる成分による応答変化の重なりを、ノイズで重み付けして表す(第11章第5節では、同じ行列を刺激の次元 p を使って \mathcal{I} = J^\top \Sigma^{-1} J と書く)。すると、
\mathcal{I}(s) = J^\top \Sigma^{-1} J
この形を覚えておいてほしい。
相関の効果は単純ではない。相関があると情報が減ると思われがちだが、増えることもある。鍵は「ノイズの相関構造が、信号の方向と揃っているかどうか」である。信号と同じ方向のノイズは有害だが、直交する方向のノイズは無害—というより、それを差し引くことで精度が上がりうる。二細胞で数を入れてみよう。どちらも応答の分散が 1、相関係数が 0.5 とする。平均応答の傾きが (1,1) なら情報量は 4/3、(1,-1) なら 4 である。独立ならどちらも 2 だから、同じ正の相関が、情報を減らす場合と増やす場合の両方を作っている。
ここがポイント
\mathcal{I}(s) = J^\top\Sigma^{-1}J 情報を担うのはチューニング曲線の傾き(J)であり、それをノイズ共分散の逆行列で重み付ける。
この式は第11章第5節でそのまま再登場する。そこでは同じ J が「表現空間への写像のヤコビアン」として現れ、J^\top J が表現の計量になる。デコーディングの精度と表現の幾何は、同じ式で書かれていたことが明かされる。
フィッシャー情報量を数値で確かめよう。コードは コード/06_fisher.py にある。N=32 個の細胞が好み方位を [0,180) に等間隔に持ち、フォン・ミーゼス型のチューニング f_i(\theta) = A\exp\!\big(\kappa(\cos(2(\theta-\theta_i))-1)\big)(最大 A=20 spikes/s)を持つとする。\theta が刺激方位、\theta_i が細胞 i の好み方位、\kappa \ge 0 が単位を持たない鋭さで、大きいほど幅が狭い。角度は度で表し、余弦の計算ではラジアンに直す。観測時間は1秒とする。
A, N = 20.0, 32 # 最大発火率 [spikes/s]、細胞数
prefs = np.linspace(0, 180, N, endpoint=False)
def f(theta, kappa): # チューニング曲線(度で受ける)
d = np.deg2rad(2*(theta[..., None] - prefs))
return A*np.exp(kappa*(np.cos(d) - 1))
def fisher(theta, kappa): # I(θ) = Σ f'^2 / f
d = np.deg2rad(2*(theta[..., None] - prefs))
fi = A*np.exp(kappa*(np.cos(d) - 1))
dfi = fi*(-kappa*np.sin(d))*np.deg2rad(2)
return (dfi**2/fi).sum(-1)
# 最尤デコーダ:ポアソン発火から θ を推定する
grid = np.linspace(0, 180, 1801)
F = f(grid, kappa)
n = rng.poisson(f(np.array(true), kappa)) # 1秒ぶん
ll = (n*np.log(F) - F).sum(-1) # 対数尤度
est = grid[ll.argmax()]まず \theta 依存性を見る。下の三行はいずれも \mathcal{I} についてである。
| \kappa | 0.5 | 1 | 2 | 4 | 8 | 16 |
|---|---|---|---|---|---|---|
| 平均 | 0.061 | 0.162 | 0.336 | 0.558 | 0.837 | 1.215 |
| 最大/最小 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| 1/\sqrt{\mathcal{I}} [度] | 4.05 | 2.48 | 1.73 | 1.34 | 1.09 | 0.91 |
情報量は方位によらずほぼ一定である。細胞が十分密に等間隔で並ぶと、個々の細胞の情報の凸凹が打ち消し合う。\kappa=2 では \mathcal I\approx0.336 で、標準偏差の Cramér–Rao 下界は約1.73度となる。
真の方位を37度として4000試行を作ると、最尤デコーダの推定の標準偏差は約1.71度だった。有限試行のばらつきや推定の偏りもあるため、この差だけで下界を破ったとは言えない。観測時間を延ばすほど下界との比が1に近づくかは、別に確かめる必要がある。下界の読み方は、発展編A.4で整理する。詳しい数値の比較は、この「手を動かす」のWeb版で進めよう。
問い—この表だけで「鋭いチューニングほどよい」と結論してよいだろうか。ここで変えたのは一次元の方位への鋭さである。先ほど見た、応答する細胞の数と刺激の次元にも目を向けてほしい。
標準偏差と偏りを別々に記録する
コード/06_fisher.pyで、上と同じ32細胞・最大発火率20 spikes/s・観測時間1秒、\kappa=2、真の方位37度、4000試行を使うと、次の値が得られる。
| 点検する量 | 値 |
|---|---|
| 推定の標準偏差 | 1.711度 |
| 標準偏差の下界 | 1.726度 |
| 推定の平均 | 36.965度 |
| 真値からのずれ | -0.035 度 |
| 二乗平均誤差 | 約2.93 度^2 |
| その平方根(RMSE) | 1.711度 |
標準偏差を測るばらつきは約0.02度ある。乱数系列を替えて結果を比べ、標準偏差と平均のずれを別々に記録しよう。次に一試行の観測時間を延ばし、標準偏差と下界の比を見る。観測時間を T 秒にするときは発火率を変えず、ポアソン平均と尤度に使う期待発火数をともに T 倍し、比較する情報量も T 倍する。試行数を増やすことと観測時間を延ばすことの違いは、発展編A.4で整理する。
6. 多変量パターン解析(MVPA)
実験者の道具として
第1節の「立場2」に移る。生物学的な妥当性を気にせず、情報があるかどうかを調べるための手法である。
fMRI で脳活動を測ると、数万個のボクセルの値が得られる。ここから刺激のカテゴリを予測できるか—これが多変量パターン解析(multivariate pattern analysis, MVPA)である。ボクセルを単位にすることを強調して multi-voxel pattern analysis とも呼ぶ。
なぜこの立場が要るのかを、第4章第1節のノイズ天井と並べて見ておきたい。エンコードモデルは応答そのものを予測しようとするが、応答は試行ごとに揺らぐので、天井が低い。いっぽうデコーディングは、応答が表している内容の側で成績を測る。方位が当たったか、カテゴリが当たったか、である。
第4章第1節で述べたとおり、同じデータでも内容の側で測るほうが手応えのある数字になりやすい。ここでは具体例で見ておこう。個々のボクセルの応答はほとんど予測できなくても、数百のボクセルを重み付きで足し合わせれば、方位は八割方当たる—そういうことが起こる。揺らぎは足し合わせで薄まるが、内容は薄まらないからである。これは統計的な便宜であると同時に、何を主張したいのかの選択でもある。応答を当てたいのか、内容が取り出せることを示したいのか。第8節でこの選択の代償に戻る。
手続きは機械学習そのものだ。
- 刺激とボクセルパターンの組を集める
- 訓練データで分類器(多くは、二群を余裕を持って隔てる境界を求める線形 SVM や、重み付き和を各カテゴリの確率に変えるロジスティック回帰)を学習
- テストデータで正答率を評価
第3ステップが決定的である。訓練データでの正答率は意味がない。独立なデータで評価しなければ、過学習を情報と取り違える。
なぜ「多変量」なのか
従来の fMRI 解析は、ボクセルごとに独立に検定していた(単変量解析)。「この条件でこのボクセルの活動が上がる」という形である。
MVPA が変えたのは、個々のボクセルでは差がなくても、パターン全体としては区別できる場合を捉えられる点である。Kamitani と Tong (2005) は、V1 の活動パターンから、被験者が見ている縞模様の方位が読み出せることを報告した。これは当時、驚きをもって受け止められた。方位コラムとは、好みの方位が似たニューロンが皮質の厚み方向にまとまった構造である。fMRI の解像度(数ミリメートル)はこの方位コラムの大きさ(数百マイクロメートル)よりずっと粗い。個々のボクセルの中で方位選択性が平均化されて消えてしまうはずだった。
提案された説明はこうである。ボクセルごとに、どのコラムをどれだけ拾うかにわずかな偏りがある。一つひとつは微弱でも、何百というボクセルを適切な重みで足し合わせれば、有意な信号になる。粗い計測から細かい構造を取り出す—この「解像度を超える読み出し」の仕組みは、いまも完全には決着していない(血管構造の寄与を指摘する議論もある)。
決着していないが、方法論としての含意は大きかった。限られた数のチャネルからでも詳細な情報が取り出せる—ブレイン・マシン・インターフェースへの道は、この一点から開いている。
さらにこの研究は、重なった二つの格子のどちらに注意を向けているかもデコードできることを示した。同じ刺激を見ていても、注意の向け先によって読み出される方位が変わるのである。物理的な刺激ではなく、被験者が何を意識しているかが読み出せる—デコーディングが心的状態の測定になりうることを示した点で、大きな影響を持った。同じ年に Haynes と Rees (2005) は、見えていない(マスクされた)刺激の方位が初期視覚野から読み出せることを示している。意識の内容と脳活動の関係をデコーディングで問う、という系譜がここから始まった。
クロスデコーディング
この設計には、方法論としてもう一段の広がりがある。デコーダを訓練するのは、刺激を提示するという客観的に確認できる条件である。そのデコーダを、注意やイメージ(想起)のような主観的な条件に当てて、どこまで通用するかを試す。訓練と検証で状況を変えるこのやり方を、いまはクロスデコーディング(cross-decoding)と呼ぶ。
汎化が成り立つなら、二つの状況が情報の表現をどこかで共有していることの証拠になる。そして共有を前提にすれば、逆向きの道が開く—本人にしか分からないはずの状態を、外から読み出せることになる。「ニューラルマインドリーディング」と呼ばれる方向である。その究極の応用が、睡眠中の脳活動から夢に見ていた内容を読み出す仕事だった(Horikawa ら 2013)。訓練は覚醒中に刺激を見せて行い、検証は睡眠中に行う—訓練と検証のあいだの距離が、これ以上ないほど遠い例である。
クロスデコーディングは今日では広く使われている。客観と主観のあいだだけでなく、神経活動が作る微弱な磁場を頭の外から測る脳磁図(MEG)で訓練と検証の時刻をずらして時間をまたぐ汎化を調べる、といった使い方もある。共通しているのは、汎化する先を選ぶことが、そのまま「どこまでが同じ表現か」を問うことになるという点である。第8節で述べる「読み出せることは使われていることを意味しない」という留保は、ここでも効いている。だが汎化の先を変えるこの設計は、少なくともどの状況のあいだで表現が共有されているかを測る道具にはなっている。
なぜ読み出しは線形でなければならないか
この研究には、もう一つ方法論上の主張がある。デコーダは線形でなければならない、という主張である。
理由は単純だ。強力な非線形デコーダを使うと、読み出せた情報が「脳にあった」のか「デコーダの計算が引き出したのか」が区別できなくなる。
言葉を正確にしておこう。デコーダが情報を作ることはできない。応答に含まれていない刺激の情報は、どんな処理をしても増えない(情報理論のデータ処理不等式である)。非線形デコーダができるのは、応答の中に暗黙のうちに含まれている情報—取り出すのに複雑な計算が要る情報—まで拾ってしまうことだ。だから区別がつかなくなるのは「あるか / ないか」ではなく、「どんな形であるか」である。同じ論文が、この点をシミュレーションで示している。縞模様の画像を用意し、方位を分類しようとする。
- ピクセル値をそのまま特徴に使う — 位相をランダム化すると、分類できなくなる
- 線形フィルタを通し、さらに非線形なユニットを通す — 位相をランダム化しても、方位に応じた活性のパターンが現れ、分類できる
同じ画像なのに、どんな処理を経たかで「線形に読み出せるか」が変わる。つまり線形デコードの成否は、情報がどの段階で線形に明示されたかを測っている。読み出しを線形に限るのは、デコーディング一般に必要な条件だからではなく、「この表現から線形に取り出せる形になっているか」という問いを定めるためである。
ここがポイント
「線形に読み出せる」ことを情報の基準に採る—この方法論は、その後まったく別の分野で広く使われるようになった。
深層ネットワークの各層に線形分類器を当てて「どの層に何が明示的にあるか」を調べる線形プローブ(linear probe)が、いまや解釈研究の標準的な道具である。大規模言語モデルの内部を調べる線形表現仮説(第18章第1節)も、同じ発想の上に立っている。
脳を対象に立てられた「どの階層に、どんな情報が、明示的に表現されているか」という問いの立て方が、そのまま人工のネットワークに移植されたわけである。ただし—線形に読み出せることが何を意味するのかという問いは、脳でも AI でも同じように未解決のまま残っている(第8節、第12章第10節)。
なぜ「ブレイン・デコーディング」と別の名で呼ばれるのか
ここで、この節と第2〜5節との違いを整理しておきたい。どちらも「デコーディング」だが、性格がかなり違う。
第2〜5節までは、チューニングを前提にしていた。population vector は細胞の好み方向を知っていることが前提だったし、最尤推定も最大事後確率推定も、p(\mathbf{r}\mid s) という応答モデルを先に立てていた。モデルを作り、それを逆に解く。これが古典的な神経デコーディングの筋道である。
本節のやり方は、そこを通らない。ボクセルのチューニングを調べもしないし、応答モデルも立てない。大量のパターンと正解ラベルを機械学習に渡し、線形の読み出しを見つけさせる—それだけである。そして人が目で見ても何も分からないパターンから、読み出せてしまう。これが従来の脳機能マッピングからの断絶だった。それまでの fMRI 研究は「条件 A で活動が上がる領域はどこか」を地図にする作業であり、扱っていたのは人が解釈できる活動の増減である。そこで、発火頻度の統計モデルを立てて逆に解く古典的なデコーディングと区別するために、この系統はブレイン・デコーディング(brain decoding)と呼ばれるようになった。
ここがポイント
ブレイン・デコーディングが変えたのは、技術だけではない。「その領域に情報があるか」を問う基準を変えた。
従来—活動の増減が見えるか。ブレイン・デコーディング—読み出せるか。つまり「解釈できる差がない」ことと「情報がない」ことが、別々のものになった。
これは強力だが、代償もある。読み出せることが何を意味するのかが、以前より曖昧になったのだ。第8節の問い—読み出せることは、脳がその情報を使っていることを意味するのか—は、この移行が生んだ問いである。
正則化の必要性
MVPA の設定は、機械学習の観点からは厳しい。特徴の数(ボクセル数、数千〜数万)が、サンプル数(試行数、数百)よりはるかに多い。超平面、つまり平面上の直線や空間の中の平面を高次元に広げた一次式の境界を考える。この状況では、訓練データを分離する超平面がいくつも存在しやすい(データの並び方によっては分離できないこともあるが、次元が高いほど分離できる可能性は上がる)。そして分離できてしまうと、訓練データに合わせただけの重みが選ばれ、未見のデータで落ちる危険が高い。だから正則化が要る。明示的な罰則を置くのが標準だが、分類境界と最も近い訓練点との隔たり(マージン)を最大にすることや、学習を早めに止めること、最適化の手順そのものが、暗黙の正則化として働くこともある(第9章)。
式にするために、ここでは i を細胞番号ではなく試行番号として使う。N 個のボクセルの応答を並べた \mathbf{x}_i \in \mathbb{R}^N が試行 i の入力、y_i がその試行の正解、\mathbf{w} \in \mathbb{R}^N が各ボクセルに掛ける重みで、\mathbf{w}^\top\mathbf{x}_i が読み出しの得点である。L は予測の誤りを測る損失(第4節の尤度 L(s) とは別物)、R(\mathbf{w}) が重みに課す罰則、\lambda \ge 0 がその強さである。
\min_{\mathbf{w}}\; \sum_{i} L\big(y_i, \mathbf{w}^\top\mathbf{x}_i\big) + \lambda\, R(\mathbf{w})
R(\mathbf{w}) = \|\mathbf{w}\|^2 なら Ridge、\|\mathbf{w}\|_1 なら Lasso である。前者は重みを全体的に小さくし、後者は多くの重みをゼロにする(スパースになる)。
\lambda の選び方は交差検証で決める。訓練データをさらに分割し、検証データでの性能が最良になる \lambda を選ぶ。この過学習と正則化の話は、第9章で本格的に扱う。そこでは「パラメータが多いほど過学習する」という古典的な描像が、深層学習では成り立たないことを見る。
7. 必要な数学:主成分分析と特異値分解
MVPA でも表現幾何でも、高次元データを扱うには次元削減が要る。道具を整えておこう。
主成分分析
データ \{\mathbf{x}_1, \dots, \mathbf{x}_M\}(各 \mathbf{x}_m\in\mathbb{R}^N)が与えられたとする。平均を引いておく。
主成分分析(PCA)には、二つの等価な定式化がある。
定式化1:分散最大化
M 試行で N 個のボクセルを測ったとして、\mathbf{x}_m \in \mathbb{R}^N を試行 m の応答(各ボクセルについて試行間の平均を引いてある)とする。長さ1の方向 \mathbf{u} \in \mathbb{R}^N を選んで、各データを内積 \mathbf{u}^\top\mathbf{x}_m という一つの数に写す—これがその方向への射影である。写した値のばらつき、すなわち単位ベクトル \mathbf{u} に射影したときの分散を最大にする \mathbf{u} を探す。次式の C \in \mathbb{R}^{N \times N} はデータの共分散行列である(第5節の \Sigma が同じ刺激でのノイズの共分散だったのに対し、こちらは全サンプルについて取った共分散である)。
\max_{\|\mathbf{u}\|=1}\; \frac{1}{M}\sum_m \big(\mathbf{u}^\top\mathbf{x}_m\big)^2 = \max_{\|\mathbf{u}\|=1} \mathbf{u}^\top C \mathbf{u}, \qquad C = \frac{1}{M}\sum_m \mathbf{x}_m\mathbf{x}_m^\top
ここで使うのがラグランジュ未定乗数法、つまり制約を未知の係数つきで目的関数に足してから微分し、極値の候補を求める方法である(ここでは \mathbf{u}^\top C\mathbf{u} - \lambda(\mathbf{u}^\top\mathbf{u} - 1) を微分する)。解くと C\mathbf{u} = \lambda\mathbf{u}—共分散行列の固有ベクトルである。分散は固有値 \lambda に等しい(固有値と固有ベクトルは第2章第4節で定義した)。
定式化2:再構成誤差最小化
k 次元の部分空間に射影して戻したとき、誤差が最小になる部分空間を探す。
答えは同じである。上位 k 個の固有ベクトルが張る部分空間になる。
二つの見方があることは、覚えておく価値がある。「情報を最大限保つ」と「捨てる情報を最小にする」が同じ操作だ、というのは PCA に限らず現れる構図である。
特異値分解
特異値分解は SVD と略される。データ行列 X \in \mathbb{R}^{M\times N}(行がサンプル)を直接分解する方法もある。
X = U S V^\top
X の行はサンプル、列はボクセルなどの特徴に対応する。U \in \mathbb{R}^{M\times M}、V\in\mathbb{R}^{N\times N} が直交行列(それぞれの列が互いに直交する長さ1のベクトル。U の列はサンプル側の方向、V の列は特徴側の方向を表す)、S \in \mathbb{R}^{M \times N} が対角に特異値 \sigma_1 \ge \sigma_2 \ge \cdots \ge 0 を並べ、それ以外を 0 にした行列である(M \ne N なら長方形になる。積の形は (M \times M)(M \times N)(N \times N) なので、元の X と同じ大きさに戻る)。特異値は、その方向の成分がデータにどれだけ含まれるかを表す。なお、第5節のノイズ共分散 \Sigma と紛れないよう、ここでは S と書く。
PCA との関係
C = X^\top X/M だから、V の列が主成分方向、\sigma_i^2/M が固有値になる。なお平均を引いたあとの X は階数が一つ落ちるので、非ゼロの固有値は高々 \min(M-1, N) 個である。ボクセル数が刺激数より多い MVPA では、C は必ず特異になる。特異値分解は共分散行列を作らずに PCA を実行する方法でもある(数値的に安定である)。
低ランク近似
上位 k 個の特異値だけ残した X_k = U_k S_k V_k^\top は、階数が k 以下の行列のうち、フロベニウスノルム(行列の全成分の二乗和の平方根。ベクトルの長さを行列に持ち上げたもの)で測って X にもっとも近い(Eckart–Young の定理)。ここで U_k \in \mathbb{R}^{M\times k} と V_k \in \mathbb{R}^{N\times k} は U、V の先頭 k 列、S_k \in \mathbb{R}^{k\times k} は対応する特異値を並べた対角行列で、X_k の行と列は X と同じ意味を持つ。
本書での出番
SVD は本書のあちこちで使う。
- 本章の MVPA での次元削減
- 第9章第6節 — 深層線形ネットワークの解析。特異値ごとに学習が進む
- 第11章第3節 — MDS(距離行列の固有値分解)
- 第11章第4節 — ヤコビアン J の特異値が、方向ごとの感度を与える
- 第11章第7節 — 共分散行列の固有値から表現次元を測る
「行列を対角化して、成分ごとに独立に扱う」という発想が、これだけ繰り返し現れる。
8. デコーディングは何を明らかにするのか
短い節だが、本書全体でいちばん厄介な問いを提起する。
「読み出せた」から何が言えるか
MVPA で V1 から方位が読み出せた。この結果から、何が結論できるだろうか。
言えること
V1 の活動パターンに、方位の情報が存在する。少なくとも、線形分類器が取り出せる形で。
言えないこと
これが二つある。第一に、脳がその情報を使っているとは限らない。実験者が数千個のボクセルに最適な重みを付けて取り出した情報を、下流のニューロンが同じように取り出しているとは限らない。「読み出せる」と「読み出されている」は違う。
第二に、読み出せなかったからといって情報がないとは限らない。線形デコーダを使ったなら、非線形にしか読み出せない情報は「ない」と判定される。デコーダの能力が、結論を左右する。
何が測られているのか
整理すると、デコーディング精度という数には、少なくとも三つの要素が混じっている。
- 神経集団が実際に持っている情報
- 測定装置(電極・ボクセル)がそれをどう写したか
- デコーダがその写像から何を取り出せるか
この三つを分離する手続きは、自明ではない。とくに 2 は軽視されがちである。fMRI のボクセルは何万個ものニューロンの平均であり、電極記録は集団のごく一部の抜き取りである。測定装置そのものが、構造を歪めているかもしれない。
保留
この問いに、本章では答えを出さない。必要な道具がまだ揃っていないからである。
必要なのは、「何を実数に写してよいのか」「どんな変換のもとで結論が変わらないのか」を問う枠組み—測定の理論である。それを第12章で導入する。そして第12章第10節で、この節の問いに正面から答える。そこでは次のことが示される。
- デコーディング精度は、変換のあとで読み出しを当て直し、座標に依存する正則化を掛けない限り、可逆線形変換のもとで不変な量である
- したがって「どのユニットが情報を担うか」という主張は、そのままでは意味を持たない
- 意味を持つのは、部分空間どうしの関係である
さらに第12章第9節では、上の要素 2—測定装置による歪み—が定量的に扱われる。fMRI ボクセルが表現の構造をどう変形し、それをどう補正できるかが分かる。
いまは「デコードできた」という結果を、少し慎重に読む習慣だけ持ってほしい。
次章へ
これで符号化・復号化・情報という道具立てが揃った。
次章から学習の数理に入る。そして第7章は本書のナラティブの起点である—ホップフィールドのエネルギー関数から始めて、ボルツマンマシン、ヘルムホルツマシン、変分推論を経て、第16章の自由エネルギー原理まで一本の道が続く。
第3章第6節で「アトラクターに落ちる」と比喩的に述べたことに、エネルギー関数という正確な数学が与えられるのが、その第一歩になる。
確認問題
[確認]デコーディングにおける「脳の読み出し機構のモデル」と「実験者の解析道具」という二つの立場の違いを述べよ。(第1節)
[導出]population vector が方向を正しく推定することを、好み方向が一様分布する場合について計算で示せ。(第2節)
[導出]独立ポアソンノイズのもとで最尤デコーダを導出し、\arg\max_s \sum_i n_i\log f_i(s) に帰着するのはどんな条件のときかを述べよ。(第4節)
[導出]\mathcal{I}(s) = \sum_i f_i'(s)^2/f_i(s) を導出せよ。導出のどこで f_i'' の項が打ち消し合うか。(第5節)
[考える]「チューニング曲線は鋭いほどよい」と言い切れないのはなぜか。応答の変わりやすさと、応答する細胞の数という二つの効果から説明し、公平に比較するために何を固定すべきか考えよ。(第5節)
[確認]多次元の刺激とノイズ相関のもとでのフィッシャー情報行列 \mathcal{I} = J^\top\Sigma^{-1}J について、この式が本書のどこで再登場するかを述べよ。(第5節・第11章第5節)
[導出]PCA の二つの定式化(分散最大化・再構成誤差最小化)を述べ、同じ答えを与えることを説明せよ。(第7節)
[考える]「V1 から方位がデコードできた」という結果から言えること・言えないことを、それぞれ述べよ。(第8節・第12章第10節)
参考文献
- Kamitani, Y., & Tong, F. (2005). Decoding the visual and subjective contents of the human brain. Nature Neuroscience, 8(5), 679–685. https://doi.org/10.1038/nn1444 — 本章第6節の原典
- Georgopoulos, Schwartz, & Kettner (1986). Neuronal population coding of movement direction. Science, 233(4771), 1416–1419. https://doi.org/10.1126/science.3749885 — population vector[2節]
- Zhang, K., & Sejnowski, T. J. (1999). Neuronal tuning: to sharpen or broaden? Neural Computation, 11(1), 75–84. https://doi.org/10.1162/089976699300016809 — チューニング幅とフィッシャー情報量の関係。刺激の次元で結論が反転する[5節]
- Majima, K., Sukhanov, P., Horikawa, T., & Kamitani, Y. (2017). Position information encoded by population activity in hierarchical visual areas. eNeuro, 4(2), ENEURO.0268-16.2017. https://doi.org/10.1523/ENEURO.0268-16.2017 — 受容野の大きさと位置デコーディング精度を fMRI で突き合わせた[5節]
- Shirakawa, K., et al. (2025). Spurious reconstruction from brain activity. Neural Networks, 190, 107515. https://doi.org/10.1016/j.neunet.2025.107515 — DNN の高次層からでも画像が復元できる(2.2.4 節)[5節・第15章第10節]
- Haxby, J. V., Connolly, A. C., & Guntupalli, J. S. (2014). Decoding neural representational spaces using multivariate pattern analysis. Annual Review of Neuroscience, 37(1), 435–456. https://doi.org/10.1146/annurev-neuro-062012-170325 — MVPA の総説
- Haynes, J.-D., & Rees, G. (2005). Predicting the orientation of invisible stimuli from activity in human primary visual cortex. Nature Neuroscience, 8(5), 686–691. https://doi.org/10.1038/nn1445 — 同時期の独立した報告[4節]
- Horikawa, T., Tamaki, M., Miyawaki, Y., & Kamitani, Y. (2013). Neural decoding of visual imagery during sleep. Science, 340(6132), 639–642. https://doi.org/10.1126/science.1234330 — クロスデコーディングを睡眠へ広げた[6節]
- Logothetis, N. K. (2008). What we can do and what we cannot do with fMRI. Nature, 453(7197), 869–878. https://doi.org/10.1038/nature06976 — 計測の限界[コラム C5]
- Logothetis, N. K., et al. (2001). Neurophysiological investigation of the basis of the fMRI signal. Nature, 412(6843), 150–157. https://doi.org/10.1038/35084005 — BOLD が何を反映するか[コラム C5]