ディープラーニング ~ハードウェア化への道~入門編【オンライン限定セミナ】

ディープラーニング ~ハードウェア化への道~入門編【オンライン限定セミナ】
―― PythonのプログラムをHDL化してFPGAで動かすまでの方法論!

  

【開催日】2020年11月4日(水) 10:00-17:00 1日コース
【セミナNo.】ES20-0111  【受講料】25,000円(税込)
【会場】オンライン限定セミナ

※本セミナはGoogle Meetを使ったオンライン限定セミナです。
詳細は、オンライン限定セミナについてを参照ください。

 ディープラーニング(全結合ニューラルネットワーク)のハードウェア化に挑戦する。特殊なIPコアや高位合成などは使わずに「力技」でHDL化する。
 Pythonで書かれたMNISTという手書き数字画像データセットの「推論」プログラムを「整数化」して正解率がどの程度落ちるか確認する。その後重み係数や画像データをExcelに貼り付け、結果・途中経過がPythonと一致することを確認する。
 その後は回路図を描き、タイムチャートでその動作を吟味した後、回路をHDL化する。その後論理シミュレーションを行い、結果・途中経過がExcelとピタリ一致することを確認する。さらに並列化、パイプライン化によって高速化する(サイクル数1/40以下)。
 最後にHDLをZYBO(Zynq7000)というFPGAボードに書き込み、実際にMNIST画像を入力して高速かつ正しく推論されるかを確認する。
 講師サイト(下記参照)の「第1部 全結合ニューラルネットワーク」のセミナ版(セミナではVHDLに加えてVerilog HDLも用意)。
 本セミナで扱うニューラルネットワークは全結合型ゆえ、畳み込み型(CNN)と比べると正解率は落ちるがシンプルな構成になる。本セミナの続きとしてCNN編も用意している。

※ZYBO Zynq7000ボード用「microSDカード」は下記サイトから販売予定。
http://digitalfilter.shop-pro.jp/

●対象聴講者
・電気製品にディープラーニングを組み込みたい人
・ディープラーニングを高速化、低消費電力化したい人
・FPGAに興味がある人
・PythonやC言語で書かれたアルゴリズムをHDL化したい人
 講師サイトに目を通しおくとベター

●講演の目標
・大量な積和演算を必要とするアルゴリズムを実装する際、CPUやGPUの他に「FPGA」という選択肢が一つ増える
・並列化、パイプライン化ができるのでCPUより高速化が可能であり、GPUと比べて低消費電力になる
・PythonやC言語で書かれたアルゴリズムをハードウェア化する手順が分かる
・回路のどの部分を「並列化」すれば高速化できるかの勘所が分かる
・「パイプライン化」のイメージとその効果をつかめる
・特殊なIP、ライブラリ、高位合成ツールを使わず、FPGAベンダ・デバイスに依存しないHDLを作成する

●内容
1 Pythonでディープラーニング(推論)
 1.1 まずは普通にPythonで実行して正解率を確認
 1.2 重み係数や画像データを整数化して正解率を確認
 1.3 Pythonから重み係数や画像データをファイルに書き出し

2 Excel(LibreOffice)で実行
 2.1 重み係数や画像データをExcel(LibreOffice)に貼り付け
 2.2 Excel(LibreOffice)の結果がPythonとピタリ一致するのを確認
 2.3 Excel(LibreOffice)+VBAで重み係数のVHDL/Verilog HDLを自動生成

3 回路図とタイムチャートの説明
 3.1 ROMの読み出し回路とタイムチャート
 3.2 積和演算の回路とタイムチャート
 3.3 擬似シグモイド関数の回路とタイムチャート

4 VHDLの説明(Verilogも用意する)
 4.1 VHDLファイルの階層構造
 4.2 ROMの読み出し部のVHDL
 4.3 積和演算部のVHDL
 4.4 擬似シグモイド関数のVHDL

5 論理シミュレーション(ModelSim)
 5.1 なぜ論理シミュレーションするのか
 5.2 論理シミュレーションの手順
 5.3 論理シミュレーションの結果がExcelとピタリ一致するのを確認

6. 並列化とパイプライン化
 6.1 1層目を並列化で高速化。サイクル数の確認・検討
 6.2 2層目を並列化で高速化。サイクル数の確認・検討
 6.3 パイプライン化。サイクル数の確認

7. FPGAに書いて実行
 7.1 FPGAにプログラミングするまでの手順
 7.2 SDカードイメージをコピーしてZYBOで実行

●講演の参考文献、参考URL
1. 講師サイト:http://digitalfilter.com/deeponhw/deeponhw01.html
2. ゼロから作るDeep Learning、オライリー。
3. FPGAパソコンZYBOで作るLinux I/Oミニコンピュータ、CQ出版社。



ハードウェア化が必要な理由

ハードウェア化が必要な理由

本セミナ全体の流れ

本セミナ全体の流れ

 ZYBOZynq7000に実装

ZYBO Zynq7000に実装

 ZYBOZynq7000で正解不正解確認

ZYBO Zynq7000で正解不正解確認


MNIST画像1枚につき11usでリアルタイム認識


100枚の画像が正しく認識されているか確認



【受講者が持参するもの】
オンライン限定で基本的に実習なしだが、PC(OS:Windows 7以降、64bit)に下記ソフトウェアをインストールして「予習」しておくと理解の助けになる。
・Anaconda(セミナではJupyter Labを使用)
・ExcelまたはLibreOffice

【講師】
岩田 利王 氏〔株式会社 デジタルフィルター 代表取締役〕
 音声・画像などのデジタル信号処理システム、VHDL/VerilogによるFPGA(Xilinx, Intel)、dsPIC, ARM Cortex、MSP430等マイコンシステム、ラズベリーパイ、Arduino、Windowsアプリケーション、スマートフォンアプリ(Android/iPhone)、プリント基板などの開発に従事。 「FPGAスタータ・キットで初体験!オリジナル・マイコン作り」、「FPGAパソコンZYBOで作るLinux I/Oミニコンピュータ」などCQ出版社から著書多数。
講師サイト:http://digitalfilter.com/


参加申し込み

このセミナに参加する

Webからのお申し込み

  以下の「参加申し込み」ボタンをクリックしてください.参加申し込みフォームを開きます.

参加申し込み

FAXやE-mailでのお申し込み

  Webの参加申し込みフォーム以外の申し込み方法をご希望の方は こちらのページ をご確認ください.

このセミナのタグ情報
各タグをクリックすると,類似するセミナの一覧を表示します.

コース

 1日コース

カテゴリ

 組み込みシステム

シリーズ

 

特徴

 オンライン限定セミナ
 講師実演

キーワード

 FPGA
 HDL
 ソフトウェア
 開発手法

セミナ事務局からのお知らせ

・オンラインセミナを始めました(2020/5/21).

キャンセルの規定が変わりました(2020/2/21).