Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LT_20191211.pdf
Search
Shuntaro Ohno
December 11, 2019
Science
39
0
Share
LT_20191211.pdf
Rust LT #7.
I talked about Neuro-Simulation in Rust.
Shuntaro Ohno
December 11, 2019
More Decks by Shuntaro Ohno
See All by Shuntaro Ohno
JP - Baruch et al. A Little is Enough: Circumventing Defenses For Distributed Learning
doraneko94
0
79
Neural Trojan mini review
doraneko94
0
80
Training Neural Networks with Local Error Signals ver20190808
doraneko94
2
150
Combinatorial optimization with graph convolutional networks and guided tree search ver20190803
doraneko94
0
89
Other Decks in Science
See All in Science
シャボン玉の虹から原子も地震も重力も見える! 〜 物理の目「干渉縞」のすごい力 〜
syotasasaki593876
1
130
Distributional Regression
tackyas
0
490
あなたに水耕栽培を愛していないとは言わせない
mutsumix
1
330
データベース05: SQL(2/3) 結合質問
trycycle
PRO
0
990
生成AIの現状と展望
tagtag
PRO
0
120
共生概念の整理と AIアライメントの構想
hiroakihamada
0
190
【RSJ2025】PAMIQ Core: リアルタイム継続学習のための⾮同期推論・学習フレームワーク
gesonanko
0
850
防災デジタル分野での官民共創の取り組み (1)防災DX官民共創をどう進めるか
ditccsugii
0
630
Deep Space Network (abreviated)
tonyrice
0
150
(2025) Balade en cyclotomie
mansuy
0
560
水耕栽培:古代の知恵から宇宙農業まで
grow_design_lab
0
110
力学系から見た現代的な機械学習
hanbao
4
4.1k
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Making Projects Easy
brettharned
120
6.6k
My Coaching Mixtape
mlcsv
0
130
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
190
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
140
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
180
Odyssey Design
rkendrick25
PRO
2
620
How to train your dragon (web standard)
notwaldorf
97
6.6k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
500
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
neuRo- enthUsiaST for Rust でシミュレーションをしたら、とても良かった話
自己紹介 Name: Shuntaro OHNO Twitter: @doraneko_b1f Github: @doraneko94 URL: http://ushitora.net/
富山大学医学薬学研究部 生理学講座 博士課程1年 脳科学の研究室 みんながマウスで実験をしているなか、ラボ内でひとりだけ コンピュータシミュレーションを行っている人 この LT で用いたコードの詳細は、 「神経科学アドベントカレンダー」の12月11日分として、 明日の今頃には投稿されているはず。。。
このライトニングトークは、「なんか格好よさそうだか ら」という理由でオライリー本をAmaz〇nしてRustを始 めてみた初心者が、本職の神経回路シミュレーションで Rustを活用してみたところ「これめっちゃいいやん」と いうことに気付き、これはぜひ広めなければならないと 思ったものの、神経回路シミュレーションなんてやって る人間はあまりにも少ないという世界の真理にくじけ、 いやしかし、この利点は一般的なマルチなエージェント を扱うシミュレーション全般に言えることだという事実 に奮起し、「やはり布教しなければならぬ!」という使
命のもと、マルチエージェントのシミュレーションに Rustを使うといいことあるよ的なことを伝えるために実 施するものである!!!!!!!!!!!!!!!!!
よくわからない連中が、 よくわからない感じにつながっている…
Soma (細胞体) Dendrite (軸索) Synapse (シナプス) とりあえず、 動かしてみようってわけ。 = −
+ + 閾値を超えたら発火(ファイア)
1 0 1 1 0 1 0 0 1 1
0 0 1 0 1 1 ? ? ? ? さっきの神経活動 これからの神経活動 まだ見てないのに、 勝手に変更しないでくださる!? コンパイラ激おこ案件…?
これが、神経界隈のヒエラルキーだ!! 挑戦者
あなたが 安全性を保障しなさい!!
struct Neuron { synapses: Vec<usize>, weights: Vec<f64>, v: f64, i_ext:
f64, threshold: f64, t_rest: f64, } impl Neuron { fn new(n: usize) -> Neuron { // パラメータを設定 } fn run(&mut self, spike: &Vec<u8>, dt: f64) -> u8 { // 微分方程式を処理 } } 個々のニューロンをstructとして作る ひとりで活動できるように
struct Network { n: usize, neurons: Vec<Neuron>, count: usize, }
impl Network { fn new(n: usize) -> Network { // いつもの } fn run(&mut self, spike_train: &Vec<Vec<u8>>, dt: f64) -> Vec<u8> { // いろんな関数 } fn input(&mut self, current: f64) { // いろんな関数その2 } } 親玉がいた方が便利な気がする 親が走れば子も走る
Result Time (ms) #neuron V (mV) Time (ms)
あたしは友達が多いから、 特別扱いしなさいよ!! 線虫の神経回路網 均等に並列化…?
まとめ 1. マルチなエージェントの操作には、Rustの安全性がありがたい ✓ しみる 2. エージェントを一括支配する存在がいた方が便利? ✓ 読みやすさのうえでも 3.
エージェントのタスク量を見て、並列する ✓ 世界はべき乗則
None