ヒト規模の脳神経回路シミュレーション を目指して: 小脳の場合 · J Comp...

Preview:

Citation preview

ヒト規模の脳神経回路シミュレーションを目指して: 小脳の場合

山﨑 匡 (電通大)NumericalBrain.Org

2017年10月26日 科学技術計算分科会 2017年度会合 @ANAクラウンプラザホテル神戸

大学院生募集中

修士博士問わず

給料払えます

今日の内容

1. (小)脳について

2. 人工小脳の開発

2.1. 小脳神経回路シミュレーション

2.2. ネコスケール人工小脳の開発

2.3. リアルタイムシミュレーションの御利益

3. ヒトスケール小脳の開発に向けて

今日の目標「小脳ってすごい!」と思ってもらえること

人工の脳を作ることに相当

EUのThe Human Brain Project

神経回路シミュレーションとは

Markram et al. Cell (2015)

・仮説の検証・神経回路の挙動の再現脳のシステム的理解

・実験結果の解釈と予言

ヒト全脳シミュレーション10年で10億ユーロ

JUQUEEN (IBM, 5.9PFs)

実験ではできない操作が可能 解剖

生理

行動実験可能

実験可能

実験可能

実験可能?

小脳

大脳と小脳

大脳

大脳 小脳

体積比 80% 10%

細胞数 1.6×1010 (19%)

6.9×1010 (80%)

Azevedo FA et al. Equal numbers of neuronal and nonneuronal cells make the human brain an isometrically scaled-up primate brain. J Comp Neurol. 513:532-541, 2009.

Pons (橋核)

Granule cell (顆粒細胞)

Purkinje cell (プルキンエ細胞)Climbing fiber (登上線維)

Inferior olive (下オリーブ核)

*

Parallel fiber (平行線維)

Mossy fiber (苔状線維)

小脳 = 教師付学習機械(Marr 1969; Albus 1971; Ito 1982)(aka Marr-Albus-Ito model)

小脳はパーセプトロン

小脳の役割

一次運動野 身体部位(例えば腕) 実現軌道

感覚系

運動指令高次運動野

目標軌道 -+

小脳

+ +

フィードバック誤差学習 (Kawato 1987)

2. 人工小脳の開発

Golgi cells

Granule cellsPurkinje cells

Basket cells

Inferior olive

Inpu

t

Inpu

t

Output

Mossy fibers

Parallel fibers

Climbing fiber

ExcitatoryInhibitory Vestibular

nuclei

ニューロンモデルはスパイキングニューロン (積分発火型)

2 x 2 mm21048576 GR1024 GO32 PKJ32 BS1 IO1 VN

実装する小脳回路2x2 mm2の微小複合体を実装 (厚さ方向は押しつぶす)

シミュレーションのコード概要

for ( int nt = 0; nt < NT; nt++ ) { for ( int i = 0; i < N; i++ ) {//ニューロン シナプス入力の計算 ( i ); } for ( int i = 0; i < N; i++ ){//ニューロン 膜電位の更新 ( i ); スパイク生成 ( i ); } }

入力

状態出力

分子層ネットワークダイナミクス

(Lennon et al., Front Comput Neurosci 2014)

(Hausser & Clark, Neuron 1997)

2.1. 小脳神経回路シミュレーション

小脳と運動学習

運動制御 = ゲイン + タイミング運動の大きさ 運動の開始と終了

・運動制御・運動学習において重要・損傷→運動失調・運動学習障害

適切なパラメータを発見・記憶として保持 = 運動学習

エアパフ

まばたき

時間

時間

時間

瞬目反射の条件づけ

US

CS CR

IO

小脳皮質

CNPN 苔状線維

登上線維

顆粒細胞

プルキンエ細胞

小脳核

下オリーブ核

橋核(音)

(エアパフ)

(まばたき)

瞬目反射条件づけの小脳回路

0

10

20

30

40

50

0 200 400 600 800 1000

neur

on in

dex

time (ms)

顆粒細胞の発火パターン

音時間

顆粒細胞集団苔状線維 平行線維

エアパフ

プルキンエ細胞

下オリーブ核

登上線維

時間

時間

-60

-40

-20

0

20

0 200 400 600 800 1000

mem

bran

e po

tent

ial (

mV)

time (ms)

PKJ ID = 11, 94 spikes

0 200 400 600 800 1000time (ms)

PKJ ID = 1, 27 spikes

0 200 400 600 800 1000time (ms)

PKJ ID = 11, 30 spikes

-80

-60

-40

-20

0

0 200 400 600 800 1000

mem

bran

e po

tent

ial (

mV)

time (ms)

CN ID = 1, 0 spikes

0 200 400 600 800 1000time (ms)

CN ID = 1, 2 spikes

0 200 400 600 800 1000time (ms)

CN ID = 1, 13 spikes

プルキンエ細胞

小脳核

(Yamazaki and Tanaka 2007)

シミュレーション結果

小脳によるゲイン学習の例視機性眼球運動 (OKR)の適応

眼球の回転の大きさ = ゲイン

視野速度 眼球運動苔状線維

網膜像のずれ

興奮性抑制性

登上線維

プルキンエ細胞顆粒層

平行線維

介在細胞伊藤仮説 (1979)

前庭核

顆粒細胞のダイナミクス

時間 (ms)

ニューロン番号

OKRのシミュレーション結果

0

20

40

60

80

0 500 1000 1500 2000

firin

g ra

te (s

pike

s/s)

time (ms)

0

20

40

60

80

0 500 1000 1500 2000fir

ing

rate

(spi

kes/

s)

time (ms)

プルキンエ細胞 前庭核

cycle #1cycle #10cycle #100

cycle #1cycle #10cycle #100

2.2. ネコスケール人工小脳の開発

1,008 PEZY-SCチップ (252/320ノード)を利用

・面積換算で 62×64 mm2

10億 (= 109) ニューロンからなる小脳回路を実装・ニューロン数でネコ1匹分の小脳相当

実時間シミュレーション・1秒間の小脳の神経活動を1秒以内でシミュレート・Δt = 1 ミリ秒

・4月上旬の時点で単精度ピーク性能2.6PFlops

もちろん世界最大最高速最も精緻

・実行効率 2.6%

ネコスケール人工小脳

32個

31個

16個

実装の実際 (1/4)

1008チップをタイル上に並べて 平面を作る

1チップに2x2 mm2の回路を実装

1008 = 32 x 31 + 16

小脳を広げて平らにすることを 想像する

(厚さ方向は押しつぶす)

シミュレーションのコード概要for ( int nt = 0; nt < NT; nt++ ) { for ( int i = 0; i < N; i++ ) {//ニューロン シナプス入力の計算 ( i ); } for ( int i = 0; i < N; i++ ){//ニューロン 膜電位の更新 ( i ); スパイク生成 ( i ); } }

入力

状態出力

for ( int nt = 0; nt < NT; nt++ ) { シナプス入力の計算 (); 膜電位の更新 (); スパイク生成 (); }

}カーネル呼び出しニューロンで並列

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

カーネル=ニューロンの並列計算

カーネル実行

カーネル実行

プルキンエ細胞へのシナプス入力

顆粒細胞の活動 xj

syn( i ) = Σ wijxj を計算

プルキンエ細胞 i32個/PEZY-SCチップ

j

262144個/プルキンエ細胞

(積和の計算)

wij の値を変える = シナプス可塑性

平行線維重み wij

PEZY-SCチップの構成

PE: 計算コア (Processing Element)

1 PC 1 PC

1 PC 1 PC

Compute syn( i ) = Σ wijxj0 ≦ i < 32 0 ≦ j < 262144

Reduction #1

#2

syn( i )Repeat 8 times

キャッシュ階層の利用

PC = Purkinje cell

j

リダクションの高速化

1024

256

262144

GiB)

16#3

#41

計算と通信のオーバーラップ

カーネル実行

MPI通信

カーネル実行

MPI通信

時間

カーネル実行 MPI通信

カーネル実行 MPI通信

時間

: :

:

スパイクの配列をダブルバッファリング

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

通信そのものの削減

Yamazaki, Igarashi, Makino, Ebisuzaki (2017)Noisy delayed spike transmission

ニューロンの計算Nステップ毎に 1回通信

通信回数を1/Nに

MPI通信

MPI通信

時間: :

カーネル実行

カーネル実行

カーネル実行

カーネル実行

カーネル実行

カーネル実行

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

1スレッド

t

t+Δt

Neuron 1

Neuron 2:

Neuron 1

Neuron 2:

t

t+Δt

Neuron 1 Neuron 2 Neuron N

Neuron 1 Neuron 2 Neuron N

スレッド

Thread 1 Thread 2 Thread N

N

こういう工夫を積み上げてリアルタイムに近づける

2.3. リアルタイムシミュレーションの御利益

ロボット

バットバックネット

センサ

目標: ボールが飛んでくるタイミングを学習して打ち返す

1. ロボット制御

Shutoh et al. Neuroscience (2006)

記憶の形成 = 獲得 + 定着

2. 長時間かかる脳内現象の再現

視野速度 眼球運動苔状線維

網膜像のずれ

興奮性抑制性

登上線維

プルキンエ細胞

平行線維顆粒層

複数のシナプス可塑性が関与介在細胞

長期抑圧 (LTD)

長期増強 (LTP)

短期記憶

長期記憶

記憶の転送

・間接的な証拠が積み上がるばかり ・統一理論は提唱されていなかった

前庭核

Shutoh et al. (2006); Ito, Yamaguchi, Nagao, Yamazaki (2014)

0.2

0.4

0.6

0.8

0 1 2 3 4 5 6 7 8 9

OKR

gai

n

Training period (day)

小脳学習における記憶定着の理論

ゲインの変化

0.0

0.5

1.0

1.5

2.0

0 1 2 3 4 5 6 7 8 9Sy

napt

ic w

eigh

tTraining period (day)

Cerebellarcortex

Cerebellarnucleus

Synaptic efficacy

シナプス結合の変化

・記憶の定着はトレーニング後に起こる・破壊実験や薬理実験の結果も再現成功

平行線維 (w)

苔状線維 (v)

Yamazaki et al. PNAS (2015)

シミュレーション理論 (数学モデル)

0.2

0.4

0.6

0.8

0 1 2 3 4 5 6 7 8 9

OKR

gai

n

Training period (day)Yamazaki et al. PNAS (2015)

1週間のトレーニングを再現

Gosui & Yamazaki, Front Neuroanat (2016)

0.2

0.4

0.6

0.8

0 1 2 3 4 5 6 7O

KR g

ain

Training period (day)

OKRゲイン

(Modified)

1週間のトレーニングのシミュレーションが1週間でできる

3.ヒトスケール小脳の開発に向けて

ネコからヒトへ隣接する8チップのみとの通信 → 弱スケーリングは良好

32個

31個

16個

基本的にこのまま規模を大きくしていけば良い

Confidential

人工小脳の最終形態脳機能の一部を人工脳で補完する

運動の補完リハビリテーションQoLの向上

神経活動

運動指令実時間

人工小脳

Recommended