FPGA

LUT-Network

FPGAでのDNN(Deep Neural Network)の整理(LUT-Netまとめ)

はじめに現在DNN(Deep Neural Network)の実装において、FPGAの活用はしばし議論の対象になっています。もちろんDNN分野全体からするとニッチな部類に入るとは考えますが、FPGAベンダーはここに非常に力を入れており、作成...
LUT-Network

LUT-NetのFPGAリソースについて

久しく作業が止まっていましたが、今日はLUT-Netと従来のネットワークとのFPGA化したときのリソース規模の違いを俯瞰しておきたいと思います。あらかじめ断っておきますが、ここで行う比較は認識率が異なるので公平な比較ではありません。通常のN...
Deep Learning

MNIST認識のリアルタイム動作環境更新

先日MNIST環境強化したのですがTwitterに書き込んでそのままだったので今更ながら更新しておきます。今回は Data Augmentation により、若干のスケール/回転/併進/ネガポジ耐性を付与 数字部分かを判定する2クラス分類器...
LUT-Network

LUT-Networkの最新資料更新

FPGAXでお話のお時間を頂いて資料を作ってからある程度開発が進展してきました。Twitter上中心に、多くの方からご支援いただけたことをまことに感謝しております。特に marsee101さんには、FPGAの部屋にてBinaryBrainの...
LUT-Network

祝! LUT-NetworkのLUTモデルの逆伝播学習動作

前回メモで書いた内容がどうやら動作したようなので、速報レベルで記事を書いておきます。上記はMNISTデータをFP32にて、入力値がそれぞれバイナリの1になる確率として計算した後に、実際にバイナリモデルにテーブルコピーを行って動作確認したもの...
LUT-Network

LUT-Networkの為の学習方法アイデアメモ

先日、LUT-Networkでの回帰をやってみましたが、もともと観測すると1か0に確定するだけで、その確率を扱っているだけなので、多値が扱えないなんて事はまったく無いと思っています。 で、今日急にお風呂の中でLUT-Networkの学習を効...
LUT-Network

バイナリLUT-Networkで回帰問題をやってみる

バイナリネットワークをやっていると課題の一つに「普通にやると回帰問題が解けない」というのがあるかと思います。バイナリネットはバイナリを入れてバイナリを出力しますので、そのままでは多値的なものが扱えません。例えば二乗誤差が最小になるようにフィ...
LUT-Network

fpgax発表資料(2019/02/02) LUT-Network

今回、下記の勉強会で発表する機会を頂きました。fpgax #11 + TFUG ハード部:DNN専用ハードについて語る会  内容はともかくとして、折角資料を作りましたので、Webでも公開したいと思います。 なお、実際の Slide Shar...
LUT-Network

LUT-Network CNN実機動作

概要 Zybo Z7-20 にて、LUT-Network で構成したCNNが1000fpsの高速度カメラ入力にてリアルタイムで動き始めたので、結果を纏めておきます。 システムの構成とか、カメラやOLEDの高速駆動とかは過去記事をご参照くださ...
LUT-Network

LUT-Networkの実機への組み込み

ひとまず実際にFPGAに組み込んで動き始めたので一旦ブログにも記載しておきます。 なおLUT-Network学習用の環境(BinaryBrain)はgithubにて公開しながら日々開発中です。  以前やったRaspberry PI用カメラ(...