Skip to main content

Login for students

Login for employees

Publication detail

Comparison of Floating-point Representations for the Efficient Implementation of Machine Learning Algorithms
Authors: Mishra Saras Mani | Tiwari Ankita | Shekhawat Hanumant Singh | Guha Prithwijit | Trivedi Gaurav | Pidanič Jan | Němec Zdeněk
Year: 2022
Type of publication: článek ve sborníku
Name of source: 2022 32ND INTERNATIONAL CONFERENCE RADIOELEKTRONIKA (RADIOELEKTRONIKA)
Publisher name: IEEE
Place: NEW YORK
Page from-to: 191-196
Titles:
Language Name Abstract Keywords
cze Srovnání reprezentací v plovoucí desetinné čárce pro efektivní implementaci algoritmů strojového učení Inteligentní systémy jsou umožněny umělou inteligencí (AI), která je realizována pomocí technik strojového učení (ML). Algoritmy ML jsou implementovány v hardwaru s využitím reprezentace s pevnou řádovou čárkou, celými čísly a plovoucí řádovou čárkou. Výkonnost hardwarové implementace je ovlivněna velmi malými nebo velkými hodnotami kvůli jejich omezené velikosti slova. K překonání tohoto omezení se používají různé reprezentace s plovoucí desetinnou čárkou, například IEEE754, posit, bfloat16 atd. Navíc pro efektivní implementaci ML algoritmů je jedním z nejintuitivnějších řešení použití vhodné číselné soustavy. Jak víme, nejběžnějšími stavebními prvky různých ML algoritmů jsou jednotky pro násobení a sčítání (MAC), dělička a odmocnina. V tomto článku proto předkládáme srovnávací studii hardwarových implementací těchto jednotek založených na reprezentaci čísel bfloat16 a posit. Bylo zjištěno, že implementace založené na posit mají 1,50x lepší výkon z hlediska přesnosti, ale spotřebují 1,51x více hardwarových prostředků ve srovnání s realizacemi založenými na bfloat16. Z hlediska kompromisu mezi přesností a využitím zdrojů lze tedy konstatovat, že v hardwarových implementacích ML algoritmů lze upřednostnit reprezentaci čísel bfloat16 před ostatními existujícími reprezentacemi čísel. Reprezentace s plovoucí desetinnou čárkou; Hluboké učení; Pozice; Trénink
eng Comparison of Floating-point Representations for the Efficient Implementation of Machine Learning Algorithms Smart systems are enabled by artificial intelligence (AI), which is realized using machine learning (ML) techniques. ML algorithms are implemented in the hardware using fixedpoint, integer, and floating-point representations. The performance of hardware implementation gets impacted due to very small or large values because of their limited word size. To overcome this limitation, various floating-point representations are employed, such as IEEE754, posit, bfloat16 etc. Moreover, for the efficient implementation of ML algorithms, one of the most intuitive solutions is to use a suitable number system. As we know, multiply and add (MAC), divider and square root units are the most common building blocks of various ML algorithms. Therefore, in this paper, we present a comparative study of hardware implementations of these units based on bfloat16 and posit number representations. It is observed that posit based implementations perform 1.50x better in terms of accuracy, but consume 1.51x more hardware resources as compared to bfloat16 based realizations. Thus, as per the trade-off between accuracy and resource utilization, it can be stated that the bfloat16 number representation may be preferred over other existing number representations in the hardware implementations of ML algorithms. Floating-point representations; Deep Learning; Posit; Training