Skip to main content
QUICK REVIEW

[論文レビュー] FINN-R: An End-to-End Deep-Learning Framework for Fast Exploration of Quantized Neural Networks

Michaela Blott, Thomas B. Preußer|arXiv (Cornell University)|Sep 12, 2018
Advanced Neural Network Applications参考文献 50被引用数 30
ひとこと要約

FINN-R は、FPGA 上の量子化ニューラルネットワークアクセラレータの設計空間探索とハードウェア生成を自動化するエンドツーエンドのディープラーニングフレームワークです。任意の精度をサポートし、パフォーマンスとリソース使用量の最適化を図り、AWS F1 で最大 50 TOp/s、PYNQ-Z1 などの組み込みプラットフォームで 5 TOp/s の性能を達成しています。

ABSTRACT

Convolutional Neural Networks have rapidly become the most successful machine learning algorithm, enabling ubiquitous machine vision and intelligent decisions on even embedded computing-systems. While the underlying arithmetic is structurally simple, compute and memory requirements are challenging. One of the promising opportunities is leveraging reduced-precision representations for inputs, activations and model parameters. The resulting scalability in performance, power efficiency and storage footprint provides interesting design compromises in exchange for a small reduction in accuracy. FPGAs are ideal for exploiting low-precision inference engines leveraging custom precisions to achieve the required numerical accuracy for a given application. In this article, we describe the second generation of the FINN framework, an end-to-end tool which enables design space exploration and automates the creation of fully customized inference engines on FPGAs. Given a neural network description, the tool optimizes for given platforms, design targets and a specific precision. We introduce formalizations of resource cost functions and performance predictions, and elaborate on the optimization algorithms. Finally, we evaluate a selection of reduced precision neural networks ranging from CIFAR-10 classifiers to YOLO-based object detection on a range of platforms including PYNQ and AWS\,F1, demonstrating new unprecedented measured throughput at 50TOp/s on AWS-F1 and 5TOp/s on embedded devices.

研究の動機と目的

  • リソース制限のある FPGAs に効率的で低精度のニューラルネットワークをデプロイする課題に対処すること。
  • 量子化ニューラルネットワークにおける精度、パフォーマンス、リソース使用量の設計的トレードオフを迅速に探索できること。
  • 多様なニューラルネットワークアーキテクチャとターゲットプラットフォームに最適化されたカスタムハードウェアアクセラレータの自動生成を可能にすること。
  • 任意の精度をサポートし、プルーニングと量子化技術を統合することで、推論の精度と効率を向上させること。
  • 完全な実装サイクルを経ずに設計意思決定を支援するため、パフォーマンスとリソース予測の正確性を提供すること。

提案手法

  • FPGA ベースの量子化ニューラルネットワークアクセラレータのための形式化されたリソースコスト関数とパフォーマンス予測モデルを導入すること。
  • ニューラルネットワークの記述を受け取り、特定の FPGAs に最適化されたハードウェアアーキテクチャを生成するエンドツーエンドのワークフローを採用すること。
  • データフロー(DF)およびメモリ最適化(MO)アーキテクチャを両方サポートし、ターゲットプラットフォームの制約に基づいて自動的にマッピングすること。
  • ハイレベルシンセシス(HLS)とハードウェアコスト推定を用いて、ビットストリーム生成の前段階でパフォーマンスとリソース使用量を予測すること。
  • モデルサイズと計算コストを削減しながら精度を維持するため、プルーニングと量子化技術を統合すること。
  • リーフラインモデリングを活用して精度選択をガイドし、さまざまなビット幅とプラットフォームにおけるパフォーマンススケーリングを評価すること。

実験結果

リサーチクエスチョン

  • RQ1FPGA 上で、最小限の手作業で量子化ニューラルネットワークアクセラレータの設計空間をどのように効率的に探索できるか?
  • RQ2最新の FPGAs において、任意精度の量子化ネットワークで達成可能なパフォーマンスとリソース効率はどの程度か?
  • RQ3完全な実装を行わずに、パフォーマンスとリソース予測がハードウェア生成をガイドする際にどの程度正確か?
  • RQ4スループットとレイテンシの観点から、データフロー型とメモリ最適化型アーキテクチャの間にはどのようなトレードオフがあるか?
  • RQ5プルーニングと量子化をどの程度組み合わせることで、モデルサイズと計算コストを削減しながら精度を保持できるか?

主な発見

  • FINN-R は AWS F1 FPGA で 50 TOp/s を達成し、量子化ニューラルネットワーク推論において前例のないスループットを実現しました。
  • PYNQ-Z1 などの組み込みプラットフォームでは 5 TOp/s を達成し、低消費電力・低面積環境での高い効率性を示しました。
  • データフロー型アーキテクチャのパフォーマンス予測は 75%〜99% の精度を達成しており、実装前の信頼できる設計ガイドラインを提供できます。
  • CIFAR-10 クラス分類器から YOLO を用いたオブジェクト検出器まで、PYNQ や AWS F1 を含む複数のプラットフォームで幅広いネットワークをサポートしています。
  • ZedBoard および PYNQ-Z1 の結果から、先行研究に比べて 10 倍の高速化が達成されており、FINN-R はより小さな FPGAs でも既存のアクセラレータを上回る性能を発揮しています。
  • ホストシステムでのメモリ再編成は、PYNQ-Z1 のような低コア数プラットフォームではパフォーマンスを低下させる可能性がありますが、Ultra96 のようなコア数の多いシステムではこれを緩和できます。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。