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
ニューラルネットの1bit化 / 1bit-neural-network
Search
shun74
July 13, 2022
Programming
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ニューラルネットの1bit化 / 1bit-neural-network
Explanation of what is 1bit neural network .
shun74
July 13, 2022
More Decks by shun74
See All by shun74
深度推定モデルの自己教師あり学習/self-supervised-depth
shun74
0
540
GPUでステレオマッチング / Stereo-matching with GPU
shun74
0
1.2k
卒業研究の進め方 / How to preceed with the research
shun74
1
600
Barcode Recognition / pharmacode-decoder
shun74
0
1.1k
Vision Transformer講座 / Vision Transformer Presentation
shun74
1
780
Defocus Map Estimation From a Single Image Based on Two-Parameter Defocus Model / two-parameter-defocus-model
shun74
0
420
理解してほしいVision Transformer / plz-understand-ViT
shun74
0
820
Other Decks in Programming
See All in Programming
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
500
yield再入門 #phpcon
o0h
PRO
0
1.2k
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
320
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.8k
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
540
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
330
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
190
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
820
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.8k
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
1
140
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
5.7k
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.8k
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.4k
The Cost Of JavaScript in 2023
addyosmani
55
10k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
410
Ruling the World: When Life Gets Gamed
codingconduct
0
300
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
340
Navigating Team Friction
lara
192
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
800
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Transcript
ニューラルネットの1bit化 B4 shun sato
本日のお話 • ニューラルネットとは • ニューラルネットの1bit化 • 1bit化のメリット • FPGAによる爆速化
ニューラルネットとは • 人間のシナプス結合を模倣 • 掛け算足し算をたくさんやる • 出力と答えの誤差を微分して学習 ニューラルネット内の数値表現 • 入力
:float32, int32, uint8… • 重み :float32 • バイアス :float32 • 出力・答え :float32, int32, uint8… シナプス結合 ニューラルネット(多層パーセプトロン)
ニューラルネットの1bit化 内部の表現をいろいろと1bit化する 式: ⇢⇢⇢ 1bit化 重み・活性化関数・正則化などが1bit化可能 ※ここでいう1bitとは{-1, 1}のことです
1bit化のメリット • メモリ大幅削減! float32 ⇢ 1bitでメモリ消費が1/32になる • 計算の単純化 ⇢ 高速化・省電力
• FPGAによる爆速化 (次のスライド) 1bitの掛け算はXNORと同じ ⇢ ALUを使わなくても計算可能 足し算もbit countで高速に処理
FPGAによる爆速化 FPGA = Field Programmable Gate Array (その場で書き換え可能な集積論理回路) ⇠こういうやつ 高位合成でプログラムするのが一般的
HDLでもプログラム可能 LUT(Look up table)を使った高速な計算が可能 浮動小数点演算 :速くて40クロックぐらい LUT+FFによる演算 :数クロック LUTで数値を取り出してFFに入力
FPGAの実験 ⇠ FPGAのみの実験結果 ネットワークの大きさはSFC<LFC<CNVの順番 手元でSFCをGPUで動かしたら9500FPSぐらいだった 1bit+FPGAにすれば約1000倍速(1200万FPS)になる? LUTは回路の面積も小さいので省電力
デメリットもあるよね? • 普通に1bit化すると大幅な精度低下 • ニューラルネットの1bit化について様々な研究が存在 • Binary Connect:BC (CVPR 2015)
https://arxiv.org/abs/1511.00363 NNの重みを1bit化した初のモデル • Binarized Neural Network:BNN (NIPS 2016) https://arxiv.org/abs/1602.02830 BCの活性化関数を1bit化 計算のボトルネックになるBatchNormalizationをシフト演算化 • XNOR-Net (CVPR 2016) https://arxiv.org/abs/1603.05279 BNNの演算に係数をつけて大規模データセットにも対応 畳み込みブロックの順序を変えて精度を向上
参考文献 • ニューラルネット https://sinhrks.hatenablog.com/entry/2014/11/30/192940 • 1bit化とハードウェア https://www.slideshare.net/kentotajiri/ss-77136469 • 演算のクロック数 http://rakasaka.fc2web.com/delphi/numop.html
• FPGAの大手企業 Xilinx https://xilinx.com/