狠狠撸

狠狠撸Share a Scribd company logo
ディープラーニング
vs ランダムフォレスト
中原 啓貴 (東京?業?学)
2017年9?24?
FPGAX@ドワンゴ
内容
? 背景
? Random forest (RF)
? RFをFPGA実装するには
? 実験結果
? RFをCPU, GPU, FPGAで実装した場合
? 他の機械学習、特にConvolutional Neural Network
(CNN)と?較した場合
? まとめ
2
機械学習
3
?分な計算資源とデータ+アルゴリズムの発展
(Left): “Single-Threaded Integer Performance,” 2016
(Right): Nakahara, “Trend of Search Engine on modern Internet,” 2014
機械学習の分類
M.?Warrick,?“How?to?get?started?with?machine?learning,”?PyCon2014 4
研究背景
? ビッグデータと?分な計算資源
? ランダムフォレスト
? 歩?者検出
? セグメンテーション
? ?体姿勢推定
? 組込みシステムでの実現
? リアルタイム処理が必要→CPUは遅い
? 電?制約→GPUだと消費電??
? FPGA上に短期間に優れたランダムフォレストを実装す
るには?
? HDL?書き設計は限界
5
FPGA+?位合成
? 実?的な?位合成ツールの普及
? Xilinx社: Vivado HLS, SDxシリーズ
? Altera社: Altera SDK for OpenCL
? 先?事例
? gzip 圧縮を1か?で完成, ?書きHDLと?較して
90%程度の性能
? ファミコン(NES)を1週間で完成, ?書きHDLは
3か?, リアルタイム動作達成
? ?書きHDLより10倍以上短い期間で開発
? (個?的な経験では)性能, ?積は?書きHDLと
?較して8割程度は容易に達成可能
6
?的: FPGA+?位合成で?性能な
ランダムフォレストを実現する?法の開発
Random Forest
7
分類? (Decision Tree)
? 特徴マップを分類する, 弱学習器といわれる
1.00
0.53
0.29
0.00
0.09
0.63
0.71
1.00
C1
C2 C1
C
1
C2 C1
X1
X2
X2<0.53?
X2<0.29? X1<0.09?
X1<0.63? X1<0.71?
Y N
N
NN
NY
Y
Y
Y
C1
C1C2 C1C2
C1
8
分類?の学習
? ランダムにサンプリング
? エントロピーが最?になるように再帰的に分割
9
1.00
0.53
0.29
0.00
0.09
0.63
0.71
1.00
C1
C2 C1
C
1 C2 C1
X1
X2
X2<0.53?
X2<0.29? X1<0.09?
X1<0.63? X1<0.71?
Y N
N
NN
NY
Y
Y
Y
C1
C1C2 C1C2
C1
バイアスとバリアンス
? バイアス→モデルの単純さによる誤差
? バリアンス→学習データの違いによる誤差
10
バイアス?? バイアス??
バイアスとバリアンス
11
バイアス??
バリアンス??
バイアス??
バリアンス??
? バイアス→モデルの単純さによる誤差
? ノイズに強いが, 複雑な表現はできない: SVM, 最?2乗法
? バリアンス→学習データの違いによる誤差
? 過学習しがち, 複雑な表現可能: Neural Network, 決定?
→集団(アンサンブル)学習によりバリアンスを下げる
Random Forest (RF)
? アンサンブル学習の?種
? 複数の分類?(弱学習器)で構成
? クラス分類と回帰が可能
12
Tree?1 Tree?2 Tree?n
C1
C2
C1
Voter
C1?(Class)
InputX1<0.53?
X3<0.71? X2<0.63?
X2<0.63? X3<0.72?
Y N
N
NN
NY
Y
Y
Y
C1
C1C2 C1C3
C1
Tree?1
Binary?Decision?Tree?(BDT) Random?Forest
...
RFのアプリケーション
? Key point matching [Lepetit et al., 2006]
? Object detector [Shotton et al., 2008][Gall et al., 2011]
? Hand written character recognition [Amit&Geman, 1997]
? Visual word clustering
[Moosmann et al.,2006]
? Pose recognition
[Yamashita et al., 2010]
? Human detector
[Mitsui et al., 2011]
[Dahang et al., 2012]
? Human pose estimation
[Shotton 2011]
13
Random Forest を FPGA に実装
14
FPGA (Field Programmable
Gate Array)
? Reconfigurable architecture
? Look-up Table (LUT)
? Configurable channel
? Advantages
? Faster than CPU
? Dissipate lower power
than GPU
? Short time design
than ASIC
15
PythonでRF
16
? Scikit-learnを使うだけ?簡単?
オブジェクトを宣?
学習
推論
開発したツールフロー
Off‐line?learning?by?scikit‐learn?(software)
Training
Dataset
scikit‐learn
Hyper
Parameter
(by?Grid‐
search)
Random
Forest
Host
Code
Kernel
Code aocx
Binary
Host
PC
FPGA
Board
aoc
gcc
RF2AOC
17
(論?がアクセプトされれば)Xilinx版を近?公開予定?
scikit-learn を使ったコード?成
? 内部のデータ構造にアクセス→再帰的にコード?成
18
Tree?1 Tree?2 Tree?n
C1
C2
C1
Voter
C1?(Class)
Input
...
len(model.estimators_)?…??の個数
model.estimators_[i]?…?i番?の?にアクセス
以降,?tree?=?model.estimators_[i]?として
tree.tree_.children_left
tree.tree_.children_right
→?の?ノードにアクセス,?再帰的に
アクセス可能
tree.tree_.threshold …?現時点のしきい値
tree.tree_.feature … ?の??変数リスト
tree.tree_.value … 認識したクラスインデックス
?成されたコード
? if-then-else形式で出?
19
Tree?1 Tree?2 Tree?n
C1
C2
C1
Voter
C1?(Class)
Input
...
フルパイプライン化
Tree?1 Tree?2 Tree?b
C1 C2
C1
Voter
C1
X?(Input)
...
20
マルチプレクサベースの実現
21
システムデザインツールの利?
22
①
②
④
③
1. Behavior design
+ pragmas
2. Profile analysis
3. IP core generation by HLS
4. Bitstream generation by
FPGA CAD tool
5. Middle ware generation
↓
Automatically done
短精度整数演算
float?X1,?X2;
(set?inputs)
result?=?tree(X1,?X2);
__kernel?int tree(?
__global?const float?X1,?
__global?float?X2){
(fetch?inputs)
if(?X2?<?0.53){
if(?X2?<?0.29){
return?C1;
}?else?{
if(?X1?<?0.63){
return?C2;
}?else?{
return?C1;
}
}
...
int X;
(set?inputs)
result?=?tree(X?&?0x3FFF,?
(X?>>?16)?&?0x3FFF);
__kernel?int tree(?
__global?const int X1,?
__global?int X2){
(fetch?inputs)
if(?X2?<?4341){?//?0.53*213
if(?X2?<?2375){?//?0.29*213
return?C1;
}?else?{
if(?X1?<?5160){?//?0.63*213
return?C2;
}?else?{
return?C1;
}
} ..
Host
Program
Kernel
Program
23
短精度ビット?と分類精度
0.0
5.0
10.0
15.0
20.0
25.0
30.0
35.0
40.0
45.0
6 7 8 9 10 11 12 13 14
Misclassification?Rate?[%]
n‐bit?Fixd?Point?Precision
Dermatology
Arrhythmia
Contraceptive?Method?Choice
Glass?Identification
Hayes‐Roth
Hepatitis
Ionosphere
Iris
24
分類?の実現
X1
X2
c1 c2
c3
X2
c4 X3
c5 c6
Tree1 Tree2
X1
X2
X2
X3
c3
c1 c2
c4
c5???c6
Tree1 Tree2
25
時分割によるリソース共有
__kernel?int RF(?
__global?float?X1,?X2,?X3){
(fetch?inputs)
for(?int i =?0;?i <?2;?i++){
if(?i ==?0)?class?=?tree1(X1,X2,X3);
else?class?=?tree2(X1,X2,X3);
voting[class]++;?//?voter
}
}
..
X1
X2
X2
*
c1?c4
Voter
*
X3
c2?c4
c3?c5 c3?c6
26
ループ展開による
スループット向上
__kernel?int RF(?
__global?float?X1,X2,X3){
(fetch?inputs)
#pragma?unroll?2
for(?int i =?0;?i <?2;?i++){
if(?i ==?0)?class?=?tree1(X1,X2,X3);
else?class?=?tree2(X1,X2,X3);
voting[class]++;?//?voter
}
}
..
X1?X2?X3
c3
c1 c2
c4
c5???c6
Voter
Voter
Register
27
実験結果
28
実験?法
Pre‐learned
Random
Forest
C‐
Code
CUDA
Code
Binary
Binary CPU
GPU
Cython gcc
CUDAT nvcc
Binary Host
PC
29
他のプラットフォームとの?較
? Implemented RF following devices
? CPU: Intel Core i7 650
? GPU: NVIDIA GeForce GTX Titan
? FPGA: Terasic DE5-NET
? Measure dynamic power including
the host PC
? Test bench: 10,000 random vectors
? Execution time including
communication time between
the host PC and devices
30
GPU
FPGA
GPU, CPUとの?較
31
GPU@86W
GeForce Titan
CPU@13W
Xeon?(R)?E5607
FPGA@15W
Stratix V?A7
Name LPS LPS/W LPS LPS/W LPS LPS/W
Dermatology 336.2 3.9 211.6 16.3 3221.2 214.7
Contraceptive?
Method
521.9 6.1 286.4 22.0 10924.3 728.3
Glass?
Identification
726.7 8.5 587.5 45.2 6442.3 429.5
Hayes‐Roth 1512.9 17.6 1165.5 89.7 12884.6 859.0
Hepatitis 739.1 8.6 662.7 51.0 8209.9 547.3
Ionosphere 821.0 9.5 595.9 45.8 9663.5 644.2
Iris 446.6 5.2 436.7 33.6 4831.7 322.1
LPS: 1秒間に検索できるデータ数
FPGAに適した計算法
? ×ホストやオフチップメモリを頻繁にアクセス
? GPUやCPUと?較して帯域が1桁狭い
? ○外部I/Oやオンチップメモリを利?
FPGAFPGA
||||||||
DDRDDR
DDRDDR
I/OI/O I/OI/O
FPGAFPGA
||||||||
DDRDDR
DDRDDR
I/OI/O I/OI/O
ADC
RAM
ここに依存するアプリだと負け 32
プログラミングモデルの違い
33
D1 D2 D3 D4 D5
↓ ↓ ↓ ↓ ↓
CC CC CC CC CC
↓ ↓ ↓ ↓ ↓
広帯域
DDR4/DDR5 DDR3
HW1 D1 D2 D3 D4
HW2 D1 D2 D3 D4
HW3 D1 D2 D3 D4
HW4 D1 D2 D3 D4
狭
帯域
GPU FPGA
? 均?な演算を空間的に並列実?
? 均?な演算器
? ワープダイバージェント (if?ダメ)
? 帯域?動作周波数が?い
? 特定な演算を時間的に並列実?
(要はパイプライン?)
? カスタマイズした演算器
? 帯域?動作周波数は低い
他の識別器との?較
34
ディープニューラルネットワークと
?較して
? ?規模データのタスクに適?可能
? 短時間学習
? 強?な計算機環境不要
? ローカル(エッジ)での学習可能
? ハイパーパラメータのチューニング不要
? FPGAで?性能を発揮できるデータ構造
35
Deep Forestへ拡張
? Sliding Window + Cascaded Forestの組合せ
36
Z.H.Zhou,?J.Feng,?“Deep?Forest:?Towards?An?Alternative?to?Deep?Neural?
Networks,”arXiv:1702.08835,?[v2]?Wed,?31?May?2017.
データセットを?いた認識率の?較
? MNIST(?書き?字)データセットの認識率
? ORL(顔認識)データセット
37
データセットが少ないため
データセットを?いた認識率の?較
(続)
? 画像認識CIFAR10 (10クラス5万枚学習)
38
SOTAなCNN
CNNとRandom Forestの?較
? 認識率
? データセットが少ない場合: RF(というかCNNはダメ)
? 単純(スパース)なデータセット: ほぼ同等の認識率→MNISTはここ
? ?量のデータセット: CNN
? (MNISTでの)学習時間
? RF: CPUで約5分(中原所有のノートパソコン, Thinkpad X1 Cardbon)
? CNN(LeNet5): GPU Titan X (Pascal)で約5分
? (MNISTに必要な)ハードウェア量
? RF: 18706 LUTs, 42982 FFs, 175 18Kb BRAMs
? CNN: 34419 LUTs, 33029 FFs, 115 18Kb BRAMs
? (MNISTの)推論時間
? RF: 約5000 FPS@100MHz, Zedboard使?時
? CNN: 約200 FPS@100MHz, Zedboard使?時
39
データセット次第ではCNNよりも同等なHW?認識精度で25倍?速
まとめ
? Random ForestをFPGAで実装
? DNNよりも(少ないデータセットで)?速に学習
? Scikit-learnを使った学習?コード?成
? FPGAで性能を発揮できるデータセット
? ヘテロジニアスなパイプライン
? GPUが苦?とする構造
? Xilinx SDSoC, Intel SDK OpenCLを使ったお?軽実装
? Deep Forestの紹介
? RFよりも認識性能は上だが、コストに?合うかは疑問
? No Free Lunch TheoremはHWから?ても真でした
→あらゆる問題で性能に優れる万能な機械学習HWは存在しない
とはいうものの… 40

More Related Content

What's hot (20)

ソフトウェア技术者は贵笔骋础をどのように使うか
ソフトウェア技术者は贵笔骋础をどのように使うかソフトウェア技术者は贵笔骋础をどのように使うか
ソフトウェア技术者は贵笔骋础をどのように使うか
なおき きしだ
?
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
Norishige Fukushima
?
Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGAPolyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGA
ryos36
?
TVM の紹介
TVM の紹介TVM の紹介
TVM の紹介
Masahiro Masuda
?
鲍濒迟谤补96ボードで驰翱尝翱を高速化
鲍濒迟谤补96ボードで驰翱尝翱を高速化鲍濒迟谤补96ボードで驰翱尝翱を高速化
鲍濒迟谤补96ボードで驰翱尝翱を高速化
Hiroyuki Okuhata
?
厂飞技术者に送る蹿辫驳补入门
厂飞技术者に送る蹿辫驳补入门厂飞技术者に送る蹿辫驳补入门
厂飞技术者に送る蹿辫驳补入门
直久 住川
?
颁耻笔测解説
颁耻笔测解説颁耻笔测解説
颁耻笔测解説
Ryosuke Okuta
?
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステムオープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
Shinya Takamaeda-Y
?
强化学习その2
强化学习その2强化学习その2
强化学习その2
nishio
?
Vivado hls勉強会5(axi4 stream)
Vivado hls勉強会5(axi4 stream)Vivado hls勉強会5(axi4 stream)
Vivado hls勉強会5(axi4 stream)
marsee101
?
1076: CUDAデバッグ?プロファイリング入門
1076: CUDAデバッグ?プロファイリング入門1076: CUDAデバッグ?プロファイリング入門
1076: CUDAデバッグ?プロファイリング入門
NVIDIA Japan
?
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
marsee101
?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Preferred Networks
?
高位合成でDeep learning
高位合成でDeep learning高位合成でDeep learning
高位合成でDeep learning
Mori Labo.
?
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
智啓 出川
?
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
ryos36
?
プログラムを高速化する话
プログラムを高速化する话プログラムを高速化する话
プログラムを高速化する话
京大 マイコンクラブ
?
高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応
marsee101
?
Vivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリームVivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリーム
marsee101
?
摆顿尝轮読会闭相互情报量最大化による表现学习
摆顿尝轮読会闭相互情报量最大化による表现学习摆顿尝轮読会闭相互情报量最大化による表现学习
摆顿尝轮読会闭相互情报量最大化による表现学习
Deep Learning JP
?
ソフトウェア技术者は贵笔骋础をどのように使うか
ソフトウェア技术者は贵笔骋础をどのように使うかソフトウェア技术者は贵笔骋础をどのように使うか
ソフトウェア技术者は贵笔骋础をどのように使うか
なおき きしだ
?
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
组み込み関数(颈苍迟谤颈苍蝉颈肠)による厂滨惭顿入门
Norishige Fukushima
?
Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGAPolyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGA
ryos36
?
鲍濒迟谤补96ボードで驰翱尝翱を高速化
鲍濒迟谤补96ボードで驰翱尝翱を高速化鲍濒迟谤补96ボードで驰翱尝翱を高速化
鲍濒迟谤补96ボードで驰翱尝翱を高速化
Hiroyuki Okuhata
?
厂飞技术者に送る蹿辫驳补入门
厂飞技术者に送る蹿辫驳补入门厂飞技术者に送る蹿辫驳补入门
厂飞技术者に送る蹿辫驳补入门
直久 住川
?
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステムオープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
オープンソースコンパイラ狈狈驳别苍でつくるエッジ?ディープラーニングシステム
Shinya Takamaeda-Y
?
强化学习その2
强化学习その2强化学习その2
强化学习その2
nishio
?
Vivado hls勉強会5(axi4 stream)
Vivado hls勉強会5(axi4 stream)Vivado hls勉強会5(axi4 stream)
Vivado hls勉強会5(axi4 stream)
marsee101
?
1076: CUDAデバッグ?プロファイリング入門
1076: CUDAデバッグ?プロファイリング入門1076: CUDAデバッグ?プロファイリング入門
1076: CUDAデバッグ?プロファイリング入門
NVIDIA Japan
?
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
ラプラシアンフィルタを窜别诲叠辞补谤诲で実装(ソフトウェアからハードウェアにオフロード)
marsee101
?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Pythonの理解を試みる ?バイトコードインタプリタを作成する?
Preferred Networks
?
高位合成でDeep learning
高位合成でDeep learning高位合成でDeep learning
高位合成でDeep learning
Mori Labo.
?
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
2015年度骋笔骋笔鲍実践プログラミング 第6回 パフォーマンス解析ツール
智啓 出川
?
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
ryos36
?
高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応
marsee101
?
Vivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリームVivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリーム
marsee101
?
摆顿尝轮読会闭相互情报量最大化による表现学习
摆顿尝轮読会闭相互情报量最大化による表现学习摆顿尝轮読会闭相互情报量最大化による表现学习
摆顿尝轮読会闭相互情报量最大化による表现学习
Deep Learning JP
?

Viewers also liked (20)

(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
Hiroki Nakahara
?
A Random Forest using a Multi-valued Decision Diagram on an FPGa
A Random Forest using a Multi-valued Decision Diagram on an FPGaA Random Forest using a Multi-valued Decision Diagram on an FPGa
A Random Forest using a Multi-valued Decision Diagram on an FPGa
Hiroki Nakahara
?
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGAFPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
Hiroki Nakahara
?
Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)
Hiroki Nakahara
?
リアルタイムレンダリングでの狈笔搁表现
リアルタイムレンダリングでの狈笔搁表现リアルタイムレンダリングでの狈笔搁表现
リアルタイムレンダリングでの狈笔搁表现
kurosaurus
?
Verilog-HDL Tutorial (14)
Verilog-HDL Tutorial (14)Verilog-HDL Tutorial (14)
Verilog-HDL Tutorial (14)
Hiroki Nakahara
?
Verilog-HDL Tutorial (15) hardware
Verilog-HDL Tutorial (15) hardwareVerilog-HDL Tutorial (15) hardware
Verilog-HDL Tutorial (15) hardware
Hiroki Nakahara
?
Naist2015 dec ver1
Naist2015 dec ver1Naist2015 dec ver1
Naist2015 dec ver1
Hiroki Nakahara
?
Verilog-HDL Tutorial (13)
Verilog-HDL Tutorial (13)Verilog-HDL Tutorial (13)
Verilog-HDL Tutorial (13)
Hiroki Nakahara
?
Verilog-HDL Tutorial (15) software
Verilog-HDL Tutorial (15) softwareVerilog-HDL Tutorial (15) software
Verilog-HDL Tutorial (15) software
Hiroki Nakahara
?
Verilog-HDL Tutorial (12)
Verilog-HDL Tutorial (12)Verilog-HDL Tutorial (12)
Verilog-HDL Tutorial (12)
Hiroki Nakahara
?
Verilog-HDL Tutorial (9)
Verilog-HDL Tutorial (9)Verilog-HDL Tutorial (9)
Verilog-HDL Tutorial (9)
Hiroki Nakahara
?
FPL15 talk: Deep Convolutional Neural Network on FPGA
FPL15 talk: Deep Convolutional Neural Network on FPGAFPL15 talk: Deep Convolutional Neural Network on FPGA
FPL15 talk: Deep Convolutional Neural Network on FPGA
Hiroki Nakahara
?
Verilog-HDL Tutorial (11)
Verilog-HDL Tutorial (11)Verilog-HDL Tutorial (11)
Verilog-HDL Tutorial (11)
Hiroki Nakahara
?
Nested RNSを用いたディープニューラルネットワークのFPGA実装
Nested RNSを用いたディープニューラルネットワークのFPGA実装Nested RNSを用いたディープニューラルネットワークのFPGA実装
Nested RNSを用いたディープニューラルネットワークのFPGA実装
Hiroki Nakahara
?
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
Hiroki Nakahara
?
Altera sdk for open cl アンケート集計結果(公開版)
Altera sdk for open cl アンケート集計結果(公開版)Altera sdk for open cl アンケート集計結果(公開版)
Altera sdk for open cl アンケート集計結果(公開版)
Hiroki Nakahara
?
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
Hiroki Nakahara
?
叠别补迟谤辞产辞でのハードウェアプロトタイピング
叠别补迟谤辞产辞でのハードウェアプロトタイピング叠别补迟谤辞产辞でのハードウェアプロトタイピング
叠别补迟谤辞产辞でのハードウェアプロトタイピング
Hideyuki TAKEI
?
集积回路が真の道具になるために
集积回路が真の道具になるために集积回路が真の道具になるために
集积回路が真の道具になるために
Junichi Akita
?
(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
(公开版)搁别肠辞苍蹿研2017骋鲍滨狈狈贰厂厂
Hiroki Nakahara
?
A Random Forest using a Multi-valued Decision Diagram on an FPGa
A Random Forest using a Multi-valued Decision Diagram on an FPGaA Random Forest using a Multi-valued Decision Diagram on an FPGa
A Random Forest using a Multi-valued Decision Diagram on an FPGa
Hiroki Nakahara
?
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGAFPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
Hiroki Nakahara
?
Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)
Hiroki Nakahara
?
リアルタイムレンダリングでの狈笔搁表现
リアルタイムレンダリングでの狈笔搁表现リアルタイムレンダリングでの狈笔搁表现
リアルタイムレンダリングでの狈笔搁表现
kurosaurus
?
Verilog-HDL Tutorial (15) hardware
Verilog-HDL Tutorial (15) hardwareVerilog-HDL Tutorial (15) hardware
Verilog-HDL Tutorial (15) hardware
Hiroki Nakahara
?
Verilog-HDL Tutorial (15) software
Verilog-HDL Tutorial (15) softwareVerilog-HDL Tutorial (15) software
Verilog-HDL Tutorial (15) software
Hiroki Nakahara
?
FPL15 talk: Deep Convolutional Neural Network on FPGA
FPL15 talk: Deep Convolutional Neural Network on FPGAFPL15 talk: Deep Convolutional Neural Network on FPGA
FPL15 talk: Deep Convolutional Neural Network on FPGA
Hiroki Nakahara
?
Nested RNSを用いたディープニューラルネットワークのFPGA実装
Nested RNSを用いたディープニューラルネットワークのFPGA実装Nested RNSを用いたディープニューラルネットワークのFPGA実装
Nested RNSを用いたディープニューラルネットワークのFPGA実装
Hiroki Nakahara
?
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
私のファミコンの蹿辫蝉は530000です。もちろんフルパワーで(以下略
Hiroki Nakahara
?
Altera sdk for open cl アンケート集計結果(公開版)
Altera sdk for open cl アンケート集計結果(公開版)Altera sdk for open cl アンケート集計結果(公開版)
Altera sdk for open cl アンケート集計結果(公開版)
Hiroki Nakahara
?
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
Hiroki Nakahara
?
叠别补迟谤辞产辞でのハードウェアプロトタイピング
叠别补迟谤辞产辞でのハードウェアプロトタイピング叠别补迟谤辞产辞でのハードウェアプロトタイピング
叠别补迟谤辞产辞でのハードウェアプロトタイピング
Hideyuki TAKEI
?
集积回路が真の道具になるために
集积回路が真の道具になるために集积回路が真の道具になるために
集积回路が真の道具になるために
Junichi Akita
?

Similar to (公开版)贵笔骋础エクストリームコンピューティング2017 (20)

深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開
Seiya Tokui
?
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hareDAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
Preferred Networks
?
2012研究室绍介(大川)
2012研究室绍介(大川)2012研究室绍介(大川)
2012研究室绍介(大川)
猛 大川
?
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
Eli Kaminuma
?
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター 【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター
Unity Technologies Japan K.K.
?
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
Unity Technologies Japan K.K.
?
Statically detecting vulnerability under memory pressure using exhaustive search
Statically detecting vulnerability under memory pressure usingexhaustive searchStatically detecting vulnerability under memory pressure usingexhaustive search
Statically detecting vulnerability under memory pressure using exhaustive search
Ruo Ando
?
顿厂贵2018讲演スライド
顿厂贵2018讲演スライド顿厂贵2018讲演スライド
顿厂贵2018讲演スライド
Hiroki Nakahara
?
笔颁础の最终形态骋笔尝痴惭の解説
笔颁础の最终形态骋笔尝痴惭の解説笔颁础の最终形态骋笔尝痴惭の解説
笔颁础の最终形态骋笔尝痴惭の解説
弘毅 露崎
?
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Shinya Akiba
?
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
NVIDIA Japan
?
令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -
Yutaka KATAYAMA
?
2021 03-09-ac ri-nngen
2021 03-09-ac ri-nngen2021 03-09-ac ri-nngen
2021 03-09-ac ri-nngen
直久 住川
?
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編
Etsuji Nakai
?
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しようC# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
Fujio Kojima
?
Proof summit 2017 for slideshare
Proof summit 2017 for slideshareProof summit 2017 for slideshare
Proof summit 2017 for slideshare
Keisuke Yahata
?
論文紹介:Dueling network architectures for deep reinforcement learning
論文紹介:Dueling network architectures for deep reinforcement learning論文紹介:Dueling network architectures for deep reinforcement learning
論文紹介:Dueling network architectures for deep reinforcement learning
Kazuki Adachi
?
実世界に埋め込まれる深层学习
実世界に埋め込まれる深层学习 実世界に埋め込まれる深层学习
実世界に埋め込まれる深层学习
Deep Learning Lab(ディープラーニング?ラボ)
?
Fpgax20180217
Fpgax20180217Fpgax20180217
Fpgax20180217
Natsutani Minoru
?
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用 2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
Kenta Oono
?
深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開
Seiya Tokui
?
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hareDAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
Preferred Networks
?
2012研究室绍介(大川)
2012研究室绍介(大川)2012研究室绍介(大川)
2012研究室绍介(大川)
猛 大川
?
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
[2016-12-01] DDBJデータ解析チャレンジ報告:機械学習コンペティションのタスク設計とルール設定
Eli Kaminuma
?
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター 【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター
Unity Technologies Japan K.K.
?
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
Unity Technologies Japan K.K.
?
Statically detecting vulnerability under memory pressure using exhaustive search
Statically detecting vulnerability under memory pressure usingexhaustive searchStatically detecting vulnerability under memory pressure usingexhaustive search
Statically detecting vulnerability under memory pressure using exhaustive search
Ruo Ando
?
顿厂贵2018讲演スライド
顿厂贵2018讲演スライド顿厂贵2018讲演スライド
顿厂贵2018讲演スライド
Hiroki Nakahara
?
笔颁础の最终形态骋笔尝痴惭の解説
笔颁础の最终形态骋笔尝痴惭の解説笔颁础の最终形态骋笔尝痴惭の解説
笔颁础の最终形态骋笔尝痴惭の解説
弘毅 露崎
?
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Shinya Akiba
?
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング ~進化するニューラルネットワークとその開発方法について~
NVIDIA Japan
?
令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -
Yutaka KATAYAMA
?
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編
Etsuji Nakai
?
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しようC# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
Fujio Kojima
?
Proof summit 2017 for slideshare
Proof summit 2017 for slideshareProof summit 2017 for slideshare
Proof summit 2017 for slideshare
Keisuke Yahata
?
論文紹介:Dueling network architectures for deep reinforcement learning
論文紹介:Dueling network architectures for deep reinforcement learning論文紹介:Dueling network architectures for deep reinforcement learning
論文紹介:Dueling network architectures for deep reinforcement learning
Kazuki Adachi
?
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用 2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用
Kenta Oono
?

More from Hiroki Nakahara (10)

FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
Hiroki Nakahara
?
ROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROSROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROS
Hiroki Nakahara
?
FPGAX2019
FPGAX2019FPGAX2019
FPGAX2019
Hiroki Nakahara
?
厂叠搁础2018讲演资料
厂叠搁础2018讲演资料厂叠搁础2018讲演资料
厂叠搁础2018讲演资料
Hiroki Nakahara
?
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
Hiroki Nakahara
?
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural NetworkISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
Hiroki Nakahara
?
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
Hiroki Nakahara
?
FPT17: An object detector based on multiscale sliding window search using a f...
FPT17: An object detector based on multiscale sliding window search using a f...FPT17: An object detector based on multiscale sliding window search using a f...
FPT17: An object detector based on multiscale sliding window search using a f...
Hiroki Nakahara
?
Verilog-HDL Tutorial (8)
Verilog-HDL Tutorial (8)Verilog-HDL Tutorial (8)
Verilog-HDL Tutorial (8)
Hiroki Nakahara
?
Verilog-HDL Tutorial (7)
Verilog-HDL Tutorial (7)Verilog-HDL Tutorial (7)
Verilog-HDL Tutorial (7)
Hiroki Nakahara
?
FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
FCCM2020: High-Throughput Convolutional Neural Network on an FPGA by Customiz...
Hiroki Nakahara
?
ROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROSROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROS
Hiroki Nakahara
?
厂叠搁础2018讲演资料
厂叠搁础2018讲演资料厂叠搁础2018讲演资料
厂叠搁础2018讲演资料
Hiroki Nakahara
?
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
ISCAS'18: A Deep Neural Network on the Nested RNS (NRNS) on an FPGA: Applied ...
Hiroki Nakahara
?
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural NetworkISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
ISMVL2018: A Ternary Weight Binary Input Convolutional Neural Network
Hiroki Nakahara
?
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
FPGA2018: A Lightweight YOLOv2: A binarized CNN with a parallel support vecto...
Hiroki Nakahara
?
FPT17: An object detector based on multiscale sliding window search using a f...
FPT17: An object detector based on multiscale sliding window search using a f...FPT17: An object detector based on multiscale sliding window search using a f...
FPT17: An object detector based on multiscale sliding window search using a f...
Hiroki Nakahara
?

(公开版)贵笔骋础エクストリームコンピューティング2017