SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
LeapMind株式会社 HW開発チーム
コンパイラ&合成ユニット リーダー
今井 健男
2017/12/21 @ TFUG KANSAI
JUIZ DLK
組込み向け
Deep Learningコンパイラ
Contents
1. 発表者紹介
2. LeapMindの紹介
3. JUIZ DLK 概要
4. JUIZ DLK における量⼦化の取り扱い
5. 余談を少し
LeapMind, Inc. © 2017
今井健男 Takeo Imai
経歴
⼤阪⼤学基礎⼯学部情報⼯学科卒
LSI⾼位設計、HW&SW協調設計
東京⼤学⼤学院理学系研究科情報科学専攻 修⼠了
分散・並列プログラミング⾔語設計
⻑らく某⼤⼿電機メーカーの研究所に所属
LSI設計⾃動化(EDA)
プログラミング⾔語
ソフトウェア⼯学
の研究に従事
2017年、LeapMindにジョイン
Deep Learning 向けコンパイラ開発 を担当
訳書(共訳)
『抽象によるソフトウェア設計−Alloyではじめる形式⼿法−』
『型システム⼊⾨−プログラミング⾔語と型の理論−』
発表者紹介
LeapMind, Inc. © 2017
会社概要 & ビジネス
Company LeapMind株式会社
Established
in
2012年12⽉25⽇
Capital
781,984,235円
(総投資額 $14M)
CEO 松⽥ 総⼀
Major
Shareholder
Intel capital、伊藤忠テクノロジー
ベンチャーズ、Visionnaire
Ventures、NTTデータ、NECキャ
ピタル
Employees 47名
Head Office
東京都渋⾕区渋⾕3-15-3
⼟屋ビル3F
研究 ソリューション
ライセンス
サービス提供共同研究
技術提供
LeapMind, Inc. © 2017
LeapMindʼs Concept
Smaller, Faster, More Efficient
We enable Deep Learning of Things(DoT)
LeapMind, Inc. © 2017
New market for Deep Learning Computing
Calculation Environment
for GPU
New Market Calculation
Environment
Calculation Environment
for Cloud
LeapMind, Inc. © 2017
LeapMindが狙うアプリケーション
• ⾃動運転⾞
• ⽡礫撤去ロボット
• 発電所での異常検知
• ⾷物の異物混⼊検査
• ドローンを⽤いたビル監視
• スマート家電
• etc.
LeapMind, Inc. © 2017
LeapMindのサービス形態
コンパイル&最適化Deep Learning モデル
JUIZ DoT
Client Original
JUIZ DLK
さまざまな製品へデプロイ
LeapMind, Inc. © 2017
LeapMindコアプロダクト開発体制
全社員の約1/4がココ
なぜか全員外国⼈
ほぼ全員がモデル圧縮
(量⼦化, pruning, 蒸留, etc.)
の研究
Deep Learningモデル向け
コンパイラ開発
FPGAアクセラレータ設計
研究チームの開発した
アルゴリズムをライブラリ化、
製品化、サービス化
JUIZ DLKの概要
LeapMind, Inc. © 2017
JUIZ DLKとは
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
LeapMind, Inc. © 2017
JUIZ DLKとは
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
LeapMind, Inc. © 2017
JUIZ DLKとは
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
LeapMind, Inc. © 2017
NNVM / TVMとは
開発者
Tianqi Chen(ワシントン⼤)
w/ DMLC (Distributed (Deep) Machine Learning Community)
MXNet, XGBoost, TinyFlow等を開発
NNVM (Neural Network Virtual Machine)
ONNX/CoreMLを介して、様々なフレームワークのモデルをインポート
DNNのグラフを最適化 グラフ中の複数オペレータを合成(fusion)
TVM (Tensor Virtual Machine)
Tensor演算(=多重ループ)の最適化、並列化
タイリング、「テンソル化」、etc.
様々なターゲットHW向けのコード⽣成、コンパイル
CPU(Intel, ARM, ...), GPU(OpenCL, CUDA)
↑LeapMindはFPGAをターゲットに拡張
LeapMind, Inc. © 2017
ん?
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
?????
LeapMind, Inc. © 2017
TensorFlow → ONNX ?
ONNX (Open Neural Network Exchange)
FacebookとMicrosoftが共同提案した、
フレームワーク⾮依存なDNNの標準フォーマット
現在、多数の企業が協賛・公式サポートを表明
onnx-tensorflow
IBM Research が開発、ONNXにて公式採⽤
(https://github.com/onnx/onnx-tensorflow)
ONNXファイルをTensorFlowにインポートして実⾏できる(ONNX→TensorFlow)
TensorFlowからONNXへは限定的?
TensorFlowからONNXへの変換をサポートした
(完璧な)ツールはまだない!!
???
LeapMind, Inc. © 2017
そこで
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
tensorflow-onnx
LeapMind, Inc. © 2017
tensorflow-onnx開発してます!
TensorFlow の Protobuf ファイルを ONNX フォーマットに変換
特定のオペレータ(の並び)
を削除するなど可能
単なる変換ツールではなく
様々なユーザ定義処理を
合間に挟むことのできる
フレームワークとして設計
OSSとして公開予定
JUIZ DLKにおける
量⼦化の取り扱い
LeapMind, Inc. © 2017
量⼦化 (quantization) って?
n モデル圧縮のテクニックの1つ
n 通常なら32bit floatでなされているDNN内計算を
n bit integer (n=1…)に圧縮
n 様々な細かいテクニックが存在
l ビット幅 n を幾つにするか?
• BNN … 重み, アクティベーションとも1bit
• DoReFa … 重み1bit, アクティベーション2bit 他
• etc.
l どう変換するか?
• linear quantization(線形変換)
• log quantization(対数変換)
• etc.
n TensorFlow には 8bit linear quantization のライブラリが存在
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
2bit hogehoge quantization
できた!
めっちゃ精度ええで!
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
2bit hogehoge quantization
できた!
めっちゃ精度ええで!
おっ、
なかなかええんちゃう?
HWにもええ具合に落ちそう
SWチームさん、どう?
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
2bit hogehoge quantization
できた!
めっちゃ精度ええで!
おっ、
なかなかええんちゃう?
HWにもええ具合に落ちそう
SWチームさん、どう?
よっしゃーウチで
モデル作って
ライブラリに加えるわ
できたらFPGA焼いたってー
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
6bit hogefuga quantization
できた!
こいつ半端ないわマジで!
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
6bit hogefuga quantization
できた!
こいつ半端ないわマジで!
アホか!
6bitなんかアラインメント
かけたら8bitやないか
そんなん意味あるかボケ!
LeapMind, Inc. © 2017
LeapMindにおける量⼦化テクニックの開発
6bit hogefuga quantization
できた!
こいつ半端ないわマジで!
アホか!
6bitなんかアラインメント
かけたら8bitやないか
そんなん意味あるかボケ!はあ?
そういうことは先に
⾔わんかいこのクソが!
LeapMind, Inc. © 2017
量⼦化モデルの処理の流れ
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
量子化オペレータ
付モデル
LeapMind, Inc. © 2017
TensorFlow + 量⼦化オペレータ
n 「量⼦化」をカスタムオペレータを使って表現
l attribute: ビット幅? 量⼦化の⽅式は? etc.
l 実現⽅法
→ Qiita TensorFlow Advent Calendar 2017
12/17 「 tensorflow Defun で ternary weight 」
LeapMind, Inc. © 2017
量⼦化モデルの処理の流れ
GPU
FPGA
(SoC)
CUDA
OpenCL
ARM
Intel
JUIZ DLK
CoreML LLVM
NNVM TVM
tensorflow-onnx
量⼦化オペレータ
付モデル
量⼦化オペレータの
合成(fusion)
FPGAバイナリ
⽣成
LeapMind, Inc. © 2017
TVMからFPGA向けVerilog HDLの⽣成
TVM (HalideIR)
C++
Verilog HDL
n TVMの機能に則った、タイリング、テンソル化→ 並列化
n スパース性を考慮したループの圧縮
n etc.
n サードパーティ製HLSを⽬的に応じて利⽤
l Intel (Altera) HLS
l Vivado HLS
l 某社(ひみつ)とも共同開発中
余談
LeapMind, Inc. © 2017
すいません公開できません
都合により
ばっさりカットします
( ;´Д`)
LeapMind, Inc. © 2017
そんなこんなで
⽇々のめまぐるしい
競争にもめげず
僕らLeapMindは
開発ガンバってます
LeapMind, Inc. © 2017 34
info@leapmimd.io
imai@leapmind.io
http://leapmind.io/
ご質問などございましたら、お気軽にご連絡ください。

Mais conteúdo relacionado

Mais procurados

Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用
Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用
Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用Preferred Networks
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)NTT DATA Technology & Innovation
 
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~NTT DATA OSS Professional Services
 
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...NTT DATA Technology & Innovation
 
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)NTT DATA OSS Professional Services
 
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリット
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリットネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリット
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリットMidokura
 
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)NTT DATA OSS Professional Services
 
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)NTT DATA OSS Professional Services
 
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & ChainerDeep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & ChainerPreferred Networks
 
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~NTT DATA OSS Professional Services
 
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えようクラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えようNTT Communications Technology Development
 
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介Tamakoshi Hironori
 
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~NVIDIA Japan
 
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...NTT DATA Technology & Innovation
 
OpenStack & Container
OpenStack & ContainerOpenStack & Container
OpenStack & ContainerHiroki Ito
 
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介NTT Communications Technology Development
 
JJUG java one 2017 Feedback LT (Daisuke Nishino)
JJUG java one 2017 Feedback LT (Daisuke Nishino)JJUG java one 2017 Feedback LT (Daisuke Nishino)
JJUG java one 2017 Feedback LT (Daisuke Nishino)Daisuke Nishino
 
6万行の TypeScript 移行とその後
6万行の TypeScript 移行とその後6万行の TypeScript 移行とその後
6万行の TypeScript 移行とその後Shingo Sasaki
 
OpenVINOとAzure こう連携できるのでは?
OpenVINOとAzure こう連携できるのでは?OpenVINOとAzure こう連携できるのでは?
OpenVINOとAzure こう連携できるのでは?Hiroshi Ouchiyama
 

Mais procurados (20)

Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用
Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用
Cloud operator days tokyo 2020講演資料_少人数チームでの機械学習製品の効率的な開発と運用
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
 
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
 
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)
Sparkコミュニティに飛び込もう!(Spark Meetup Tokyo 2015 講演資料、NTTデータ 猿田 浩輔)
 
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリット
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリットネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリット
ネットワーク仮想化ソフトウェアMidoNet ユースケースとユーザメリット
 
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)
 
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)
PuppetConf2015参加レポート (第1回 Puppetユーザ会 発表資料)
 
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & ChainerDeep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
 
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
 
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えようクラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えよう
 
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介
多言語を一つの処理系でハイパフォーマンスに実行するGraalPythonの紹介
 
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~
エヌビディアが加速するディープラーニング~進化するニューラルネットワークとその開発方法について~
 
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
 
SpinnakerとOpenStackの構築
SpinnakerとOpenStackの構築SpinnakerとOpenStackの構築
SpinnakerとOpenStackの構築
 
OpenStack & Container
OpenStack & ContainerOpenStack & Container
OpenStack & Container
 
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
 
JJUG java one 2017 Feedback LT (Daisuke Nishino)
JJUG java one 2017 Feedback LT (Daisuke Nishino)JJUG java one 2017 Feedback LT (Daisuke Nishino)
JJUG java one 2017 Feedback LT (Daisuke Nishino)
 
6万行の TypeScript 移行とその後
6万行の TypeScript 移行とその後6万行の TypeScript 移行とその後
6万行の TypeScript 移行とその後
 
OpenVINOとAzure こう連携できるのでは?
OpenVINOとAzure こう連携できるのでは?OpenVINOとAzure こう連携できるのでは?
OpenVINOとAzure こう連携できるのでは?
 

Semelhante a JUIZ DLK 組込み向けDeep Learningコンパイラ

【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~leverages_event
 
Machine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hubMachine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hubJunya Kamura
 
DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃Teruo Adachi
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントMasaki NIWA
 
2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leapSony Network Communications Inc.
 
Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門Shinobu Kawano
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況Akihiro Suda
 
DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所Hidetoshi Hirokawa
 
第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料Naoki Shibata
 
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築Hirokatsu Kataoka
 
ソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたYasuharu Seki
 
2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network ConsoleSony Network Communications Inc.
 
DBTS2016 Data as Code - Delphix
DBTS2016 Data as Code - DelphixDBTS2016 Data as Code - Delphix
DBTS2016 Data as Code - DelphixMasaya Ishikawa
 
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組みRecruit Technologies
 
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~apkiban
 
ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成Kenichiro MITSUDA
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップKaz Aiso
 
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでSphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでStudy Group by SciencePark Corp.
 

Semelhante a JUIZ DLK 組込み向けDeep Learningコンパイラ (20)

【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
 
Machine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hubMachine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hub
 
DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイント
 
2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap
 
Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況
 
DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所
 
第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料
 
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築
 
ソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみた
 
2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console
 
DBTS2016 Data as Code - Delphix
DBTS2016 Data as Code - DelphixDBTS2016 Data as Code - Delphix
DBTS2016 Data as Code - Delphix
 
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
 
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~
脆弱性の探し方 ~発見と対応のノウハウ in NTTDATA~
 
OSS Market Momentum In Japan
OSS Market Momentum In JapanOSS Market Momentum In Japan
OSS Market Momentum In Japan
 
ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成ソフトウェアエンジニアと高位合成
ソフトウェアエンジニアと高位合成
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
 
#ibis2017 Description: IBIS2017の企画セッションでの発表資料
#ibis2017 Description: IBIS2017の企画セッションでの発表資料#ibis2017 Description: IBIS2017の企画セッションでの発表資料
#ibis2017 Description: IBIS2017の企画セッションでの発表資料
 
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでSphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
 

Mais de LeapMind Inc

Final presentation optical flow estimation with DL
Final presentation  optical flow estimation with DLFinal presentation  optical flow estimation with DL
Final presentation optical flow estimation with DLLeapMind Inc
 
Survey on optical flow estimation with DL
Survey on optical flow estimation with DLSurvey on optical flow estimation with DL
Survey on optical flow estimation with DLLeapMind Inc
 
[Icml2019] mix hop higher-order graph convolutional architectures via spars...
[Icml2019]  mix hop  higher-order graph convolutional architectures via spars...[Icml2019]  mix hop  higher-order graph convolutional architectures via spars...
[Icml2019] mix hop higher-order graph convolutional architectures via spars...LeapMind Inc
 
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...LeapMind Inc
 
[Icml2019] parameter efficient training of deep convolutional neural network...
[Icml2019] parameter efficient training of  deep convolutional neural network...[Icml2019] parameter efficient training of  deep convolutional neural network...
[Icml2019] parameter efficient training of deep convolutional neural network...LeapMind Inc
 
エッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことエッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことLeapMind Inc
 
20190227[EDLS]JAL's INNOVATION エアラインのAI活用
20190227[EDLS]JAL's INNOVATION エアラインのAI活用20190227[EDLS]JAL's INNOVATION エアラインのAI活用
20190227[EDLS]JAL's INNOVATION エアラインのAI活用LeapMind Inc
 
E20190227[EDLS]インテル®︎FPGAによるエッジAI
E20190227[EDLS]インテル®︎FPGAによるエッジAIE20190227[EDLS]インテル®︎FPGAによるエッジAI
E20190227[EDLS]インテル®︎FPGAによるエッジAILeapMind Inc
 
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係LeapMind Inc
 
20180831 [DeLTA TECH] 深く青い脂
20180831 [DeLTA TECH] 深く青い脂20180831 [DeLTA TECH] 深く青い脂
20180831 [DeLTA TECH] 深く青い脂LeapMind Inc
 
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜LeapMind Inc
 
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)LeapMind Inc
 
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.120180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1LeapMind Inc
 
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会LeapMind Inc
 

Mais de LeapMind Inc (15)

Final presentation optical flow estimation with DL
Final presentation  optical flow estimation with DLFinal presentation  optical flow estimation with DL
Final presentation optical flow estimation with DL
 
Survey on optical flow estimation with DL
Survey on optical flow estimation with DLSurvey on optical flow estimation with DL
Survey on optical flow estimation with DL
 
[Icml2019] mix hop higher-order graph convolutional architectures via spars...
[Icml2019]  mix hop  higher-order graph convolutional architectures via spars...[Icml2019]  mix hop  higher-order graph convolutional architectures via spars...
[Icml2019] mix hop higher-order graph convolutional architectures via spars...
 
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...
[Icml2019]LIT: Learned Intermediate Representation Training for Model Compres...
 
[Icml2019] parameter efficient training of deep convolutional neural network...
[Icml2019] parameter efficient training of  deep convolutional neural network...[Icml2019] parameter efficient training of  deep convolutional neural network...
[Icml2019] parameter efficient training of deep convolutional neural network...
 
エッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことエッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なこと
 
20190227[EDLS]JAL's INNOVATION エアラインのAI活用
20190227[EDLS]JAL's INNOVATION エアラインのAI活用20190227[EDLS]JAL's INNOVATION エアラインのAI活用
20190227[EDLS]JAL's INNOVATION エアラインのAI活用
 
E20190227[EDLS]インテル®︎FPGAによるエッジAI
E20190227[EDLS]インテル®︎FPGAによるエッジAIE20190227[EDLS]インテル®︎FPGAによるエッジAI
E20190227[EDLS]インテル®︎FPGAによるエッジAI
 
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係
20190227[EDLS]進化するAI on Edge 〜 CloudとEdgeの最適な関係
 
20180831 [DeLTA TECH] 深く青い脂
20180831 [DeLTA TECH] 深く青い脂20180831 [DeLTA TECH] 深く青い脂
20180831 [DeLTA TECH] 深く青い脂
 
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜
20180831 [DeLTA TECH] 新・深層の世紀 〜第3集 ディープラーニング・時代はAIを求めた 〜
 
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)
20180831 [DeLTA TECH] DeLTA-Liteを支える技術(システム構成編)
 
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.120180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1
20180831 [DeLTA TECH] DeLTA-FamilyによるIndustry4.1
 
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会
2018年1月19日開催 IoTビジネス共創ラボ 第6回勉強会
 
Pitch v2.2
Pitch v2.2Pitch v2.2
Pitch v2.2
 

JUIZ DLK 組込み向けDeep Learningコンパイラ

  • 1. LeapMind株式会社 HW開発チーム コンパイラ&合成ユニット リーダー 今井 健男 2017/12/21 @ TFUG KANSAI JUIZ DLK 組込み向け Deep Learningコンパイラ
  • 2. Contents 1. 発表者紹介 2. LeapMindの紹介 3. JUIZ DLK 概要 4. JUIZ DLK における量⼦化の取り扱い 5. 余談を少し
  • 3. LeapMind, Inc. © 2017 今井健男 Takeo Imai 経歴 ⼤阪⼤学基礎⼯学部情報⼯学科卒 LSI⾼位設計、HW&SW協調設計 東京⼤学⼤学院理学系研究科情報科学専攻 修⼠了 分散・並列プログラミング⾔語設計 ⻑らく某⼤⼿電機メーカーの研究所に所属 LSI設計⾃動化(EDA) プログラミング⾔語 ソフトウェア⼯学 の研究に従事 2017年、LeapMindにジョイン Deep Learning 向けコンパイラ開発 を担当 訳書(共訳) 『抽象によるソフトウェア設計−Alloyではじめる形式⼿法−』 『型システム⼊⾨−プログラミング⾔語と型の理論−』 発表者紹介
  • 4. LeapMind, Inc. © 2017 会社概要 & ビジネス Company LeapMind株式会社 Established in 2012年12⽉25⽇ Capital 781,984,235円 (総投資額 $14M) CEO 松⽥ 総⼀ Major Shareholder Intel capital、伊藤忠テクノロジー ベンチャーズ、Visionnaire Ventures、NTTデータ、NECキャ ピタル Employees 47名 Head Office 東京都渋⾕区渋⾕3-15-3 ⼟屋ビル3F 研究 ソリューション ライセンス サービス提供共同研究 技術提供
  • 5. LeapMind, Inc. © 2017 LeapMindʼs Concept Smaller, Faster, More Efficient We enable Deep Learning of Things(DoT)
  • 6. LeapMind, Inc. © 2017 New market for Deep Learning Computing Calculation Environment for GPU New Market Calculation Environment Calculation Environment for Cloud
  • 7. LeapMind, Inc. © 2017 LeapMindが狙うアプリケーション • ⾃動運転⾞ • ⽡礫撤去ロボット • 発電所での異常検知 • ⾷物の異物混⼊検査 • ドローンを⽤いたビル監視 • スマート家電 • etc.
  • 8. LeapMind, Inc. © 2017 LeapMindのサービス形態 コンパイル&最適化Deep Learning モデル JUIZ DoT Client Original JUIZ DLK さまざまな製品へデプロイ
  • 9. LeapMind, Inc. © 2017 LeapMindコアプロダクト開発体制 全社員の約1/4がココ なぜか全員外国⼈ ほぼ全員がモデル圧縮 (量⼦化, pruning, 蒸留, etc.) の研究 Deep Learningモデル向け コンパイラ開発 FPGAアクセラレータ設計 研究チームの開発した アルゴリズムをライブラリ化、 製品化、サービス化
  • 11. LeapMind, Inc. © 2017 JUIZ DLKとは GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM
  • 12. LeapMind, Inc. © 2017 JUIZ DLKとは GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM
  • 13. LeapMind, Inc. © 2017 JUIZ DLKとは GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM
  • 14. LeapMind, Inc. © 2017 NNVM / TVMとは 開発者 Tianqi Chen(ワシントン⼤) w/ DMLC (Distributed (Deep) Machine Learning Community) MXNet, XGBoost, TinyFlow等を開発 NNVM (Neural Network Virtual Machine) ONNX/CoreMLを介して、様々なフレームワークのモデルをインポート DNNのグラフを最適化 グラフ中の複数オペレータを合成(fusion) TVM (Tensor Virtual Machine) Tensor演算(=多重ループ)の最適化、並列化 タイリング、「テンソル化」、etc. 様々なターゲットHW向けのコード⽣成、コンパイル CPU(Intel, ARM, ...), GPU(OpenCL, CUDA) ↑LeapMindはFPGAをターゲットに拡張
  • 15. LeapMind, Inc. © 2017 ん? GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM ?????
  • 16. LeapMind, Inc. © 2017 TensorFlow → ONNX ? ONNX (Open Neural Network Exchange) FacebookとMicrosoftが共同提案した、 フレームワーク⾮依存なDNNの標準フォーマット 現在、多数の企業が協賛・公式サポートを表明 onnx-tensorflow IBM Research が開発、ONNXにて公式採⽤ (https://github.com/onnx/onnx-tensorflow) ONNXファイルをTensorFlowにインポートして実⾏できる(ONNX→TensorFlow) TensorFlowからONNXへは限定的? TensorFlowからONNXへの変換をサポートした (完璧な)ツールはまだない!! ???
  • 17. LeapMind, Inc. © 2017 そこで GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM tensorflow-onnx
  • 18. LeapMind, Inc. © 2017 tensorflow-onnx開発してます! TensorFlow の Protobuf ファイルを ONNX フォーマットに変換 特定のオペレータ(の並び) を削除するなど可能 単なる変換ツールではなく 様々なユーザ定義処理を 合間に挟むことのできる フレームワークとして設計 OSSとして公開予定
  • 20. LeapMind, Inc. © 2017 量⼦化 (quantization) って? n モデル圧縮のテクニックの1つ n 通常なら32bit floatでなされているDNN内計算を n bit integer (n=1…)に圧縮 n 様々な細かいテクニックが存在 l ビット幅 n を幾つにするか? • BNN … 重み, アクティベーションとも1bit • DoReFa … 重み1bit, アクティベーション2bit 他 • etc. l どう変換するか? • linear quantization(線形変換) • log quantization(対数変換) • etc. n TensorFlow には 8bit linear quantization のライブラリが存在
  • 21. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 2bit hogehoge quantization できた! めっちゃ精度ええで!
  • 22. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 2bit hogehoge quantization できた! めっちゃ精度ええで! おっ、 なかなかええんちゃう? HWにもええ具合に落ちそう SWチームさん、どう?
  • 23. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 2bit hogehoge quantization できた! めっちゃ精度ええで! おっ、 なかなかええんちゃう? HWにもええ具合に落ちそう SWチームさん、どう? よっしゃーウチで モデル作って ライブラリに加えるわ できたらFPGA焼いたってー
  • 24. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 6bit hogefuga quantization できた! こいつ半端ないわマジで!
  • 25. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 6bit hogefuga quantization できた! こいつ半端ないわマジで! アホか! 6bitなんかアラインメント かけたら8bitやないか そんなん意味あるかボケ!
  • 26. LeapMind, Inc. © 2017 LeapMindにおける量⼦化テクニックの開発 6bit hogefuga quantization できた! こいつ半端ないわマジで! アホか! 6bitなんかアラインメント かけたら8bitやないか そんなん意味あるかボケ!はあ? そういうことは先に ⾔わんかいこのクソが!
  • 27. LeapMind, Inc. © 2017 量⼦化モデルの処理の流れ GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM 量子化オペレータ 付モデル
  • 28. LeapMind, Inc. © 2017 TensorFlow + 量⼦化オペレータ n 「量⼦化」をカスタムオペレータを使って表現 l attribute: ビット幅? 量⼦化の⽅式は? etc. l 実現⽅法 → Qiita TensorFlow Advent Calendar 2017 12/17 「 tensorflow Defun で ternary weight 」
  • 29. LeapMind, Inc. © 2017 量⼦化モデルの処理の流れ GPU FPGA (SoC) CUDA OpenCL ARM Intel JUIZ DLK CoreML LLVM NNVM TVM tensorflow-onnx 量⼦化オペレータ 付モデル 量⼦化オペレータの 合成(fusion) FPGAバイナリ ⽣成
  • 30. LeapMind, Inc. © 2017 TVMからFPGA向けVerilog HDLの⽣成 TVM (HalideIR) C++ Verilog HDL n TVMの機能に則った、タイリング、テンソル化→ 並列化 n スパース性を考慮したループの圧縮 n etc. n サードパーティ製HLSを⽬的に応じて利⽤ l Intel (Altera) HLS l Vivado HLS l 某社(ひみつ)とも共同開発中
  • 32. LeapMind, Inc. © 2017 すいません公開できません 都合により ばっさりカットします ( ;´Д`)
  • 33. LeapMind, Inc. © 2017 そんなこんなで ⽇々のめまぐるしい 競争にもめげず 僕らLeapMindは 開発ガンバってます
  • 34. LeapMind, Inc. © 2017 34 info@leapmimd.io imai@leapmind.io http://leapmind.io/ ご質問などございましたら、お気軽にご連絡ください。