Comparison of Arithmetic Number Formats for Inference in Sum-Product Networks on FPGAs

Probabilistic Graphical Models (PGM) have recently received increasing attention for various machine learning tasks and approaches for their acceleration on FPGAs have been presented.In this work, we investigate three different arithmetic formats, namely customized floating-point, Posit and logarithmic number systems with regard to their suitability for the inference in PGMs, specifically so-called Sum-Product Networks (SPN). Based on results from an automatic design-space exploration developed in this work, we implement hardware arithmetic operators for each format, optimized for SPN inference.Our evaluation shows that the choice of the most area-efficient solution depends on the relation between the numbers of adders to multipliers in the network. Up to 57% and 68% of Slice and DSP reductions, respectively, could be obtained compared to previous work. With regard to performance, all formats achieve similar results and outperform CPU and GPU-based implementations of SPN inference by factors up to 12x and 4. 6x, respectively.

[1]  Marian Verhelst,et al.  PROBLP: A framework for Iow-precision probabilistic inference , 2019, 2019 56th ACM/IEEE Design Automation Conference (DAC).

[2]  Han Zhao,et al.  On the Relationship between Sum-Product Networks and Bayesian Networks , 2015, ICML.

[3]  Jesse Davis,et al.  Markov Network Structure Learning: A Randomized Feature Generation Approach , 2012, AAAI.

[4]  Jean-Michel Muller,et al.  Posits: the good, the bad and the ugly , 2019, CoNGA'19.

[5]  John L. Gustafson,et al.  Beating Floating Point at its Own Game: Posit Arithmetic , 2017, Supercomput. Front. Innov..

[6]  Paul Michael Farmwald,et al.  On the design of high performance digital arithmetic units , 1981 .

[7]  Peter Zipf,et al.  Resource Optimal Design of Large Multipliers for FPGAs , 2017, 2017 IEEE 24th Symposium on Computer Arithmetic (ARITH).

[8]  Jesse Davis,et al.  Learning Markov Network Structure with Decision Trees , 2010, 2010 IEEE International Conference on Data Mining.

[10]  Rainer Leupers,et al.  Parameterized Posit Arithmetic Hardware Generator , 2018, 2018 IEEE 36th International Conference on Computer Design (ICCD).

[11]  Florent de Dinechin,et al.  Designing Custom Arithmetic Data Paths with FloPoCo , 2011, IEEE Design & Test of Computers.

[12]  J. Detrey,et al.  A VHDL library of LNS operators , 2003, The Thrity-Seventh Asilomar Conference on Signals, Systems & Computers, 2003.

[13]  Kristian Kersting,et al.  Mixed Sum-Product Networks: A Deep Architecture for Hybrid Domains , 2018, AAAI.

[14]  Rob A. Rutenbar,et al.  Video-Rate Stereo Matching Using Markov Random Field TRW-S Inference on a Hybrid CPU+FPGA Computing Platform , 2013, IEEE Transactions on Circuits and Systems for Video Technology.

[15]  Karl S. Hemmert,et al.  A comparison of floating point and logarithmic number systems for FPGAs , 2005, 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'05).

[16]  Pedro M. Domingos,et al.  Sum-product networks: A new deep architecture , 2011, 2011 IEEE International Conference on Computer Vision Workshops (ICCV Workshops).

[17]  Guy Van den Broeck,et al.  Tractable Learning for Complex Probability Queries , 2015, NIPS.

[18]  Song Han,et al.  Deep Compression: Compressing Deep Neural Network with Pruning, Trained Quantization and Huffman Coding , 2015, ICLR.

[19]  Andreas Koch,et al.  Resource-Efficient Logarithmic Number Scale Arithmetic for SPN Inference on FPGAs , 2019, 2019 International Conference on Field-Programmable Technology (ICFPT).

[20]  Carsten Binnig,et al.  Automatic Mapping of the Sum-Product Network Inference Problem to FPGA-Based Accelerators , 2018, 2018 IEEE 36th International Conference on Computer Design (ICCD).

[21]  Sebastian Tschiatschek,et al.  Sum-Product Networks for Sequence Labeling , 2018, ArXiv.

[22]  Satoshi Matsuoka,et al.  Hardware Implementation of POSITs and Their Application in FPGAs , 2018, 2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW).

[23]  Florent de Dinechin,et al.  Multipliers for floating-point double precision and beyond on FPGAs , 2011, CARN.

[24]  Sebastian Tschiatschek,et al.  On Theoretical Properties of Sum-Product Networks , 2015, AISTATS.

[25]  Rajesh P. N. Rao,et al.  Deep Spatial Affordance Hierarchy : Spatial Knowledge Representation for Planning in Large-scale Environments , 2017 .

[26]  Hayden Kwok-Hay So,et al.  PACoGen: A Hardware Posit Arithmetic Core Generator , 2019, IEEE Access.

[27]  Andreas Koch,et al.  The TaPaSCo Open-Source Toolflow , 2019, Journal of Signal Processing Systems.

[28]  Jorge Dias,et al.  Brief survey on computational solutions for Bayesian inference , 2015 .