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
0
32
LT_20191211.pdf
Rust LT #7.
I talked about Neuro-Simulation in Rust.
Shuntaro Ohno
December 11, 2019
Tweet
Share
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
72
Neural Trojan mini review
doraneko94
0
73
Training Neural Networks with Local Error Signals ver20190808
doraneko94
2
140
Combinatorial optimization with graph convolutional networks and guided tree search ver20190803
doraneko94
0
85
Other Decks in Science
See All in Science
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
490
Explanatory material
yuki1986
0
410
実力評価性能を考慮した弓道高校生全国大会の大会制度設計の提案 / (konakalab presentation at MSS 2025.03)
konakalab
2
200
論文紹介 音源分離:SCNET SPARSE COMPRESSION NETWORK FOR MUSIC SOURCE SEPARATION
kenmatsu4
0
340
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
260
データベース09: 実体関連モデル上の一貫性制約
trycycle
PRO
0
1k
地質研究者が苦労しながら運用する情報公開システムの実例
naito2000
0
290
Transport information Geometry: Current and Future II
lwc2017
0
210
知能とはなにかーヒトとAIのあいだー
tagtag
0
100
02_西村訓弘_プログラムディレクター_人口減少を機にひらく未来社会.pdf
sip3ristex
0
650
mathematics of indirect reciprocity
yohm
1
200
LayerXにおける業務の完全自動運転化に向けたAI技術活用事例 / layerx-ai-jsai2025
shimacos
2
2k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
161
23k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Typedesign – Prime Four
hannesfritz
42
2.8k
Designing for humans not robots
tammielis
254
26k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Language of Interfaces
destraynor
162
25k
Why Our Code Smells
bkeepers
PRO
339
57k
Writing Fast Ruby
sferik
629
62k
Documentation Writing (for coders)
carmenintech
75
5.1k
The World Runs on Bad Software
bkeepers
PRO
72
11k
We Have a Design System, Now What?
morganepeng
53
7.8k
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