研究により、ディープニューラルネットワークにはかなりの冗長性が含まれているため、重みとアクティベーションがバイナリ値に量子化された場合でも高い分類精度を達成できることが示されています。 FPGAのネットワーク2値化は、リソースを消費する乗算器を軽量のXNORゲートに置き換えることにより、面積効率を大幅に向上させます。ただし、FPGAの基本的な構成要素であるK-LUTは、XNORよりもはるかに多く実装できます。K入力ブール演算を実行できます。この観察に着想を得て、ネイティブのLUTを推論演算子として使用して、面積効率の高いFPGAベースのニューラルネットワークアクセラレータを構築するためのエンドツーエンドのハードウェア/ソフトウェアフレームワークであるLUTNetを提案します。展開されたLUTNetアーキテクチャとタイル化されたLUTNetアーキテクチャの両方の実現について説明します。後者は前者よりも小さく、電力消費の少ない展開を促進し、スループットとともに面積とエネルギー効率を犠牲にします。両方の種類について、LUTの柔軟性を活用することで、従来の作業で可能なものよりもはるかに重い枝刈りが可能になり、同等の精度を達成しながら大幅な面積節約が実現することを示します。最先端の2値化ニューラルネットワークの実装に対して、人気のあるデータセットを推測する場合、いくつかの標準ネットワークモデルで最大2倍の面積効率を達成します。また、さらに大きなエネルギー効率の改善が得られることを示しています。
Research has shown that deep neural networks contain significant redundancy, and thus that high classification accuracy can be achieved even when weights and activations are quantized down to binary values. Network binarization on FPGAs greatly increases area efficiency by replacing resource-hungry multipliers with lightweight XNOR gates. However, an FPGA's fundamental building block, the K-LUT, is capable of implementing far more than an XNOR: it can perform any K-input Boolean operation. Inspired by this observation, we propose LUTNet, an end-to-end hardware-software framework for the construction of area-efficient FPGA-based neural network accelerators using the native LUTs as inference operators. We describe the realization of both unrolled and tiled LUTNet architectures, with the latter facilitating smaller, less power-hungry deployment over the former while sacrificing area and energy efficiency along with throughput. For both varieties, we demonstrate that the exploitation of LUT flexibility allows for far heavier pruning than possible in prior works, resulting in significant area savings while achieving comparable accuracy. Against the state-of-the-art binarized neural network implementation, we achieve up to twice the area efficiency for several standard network models when inferencing popular datasets. We also demonstrate that even greater energy efficiency improvements are obtainable.