Using Algorithmic Transformations and Sensitivity Analysis to Unleash Approximations in CNNs at the Edge
Previous studies have demonstrated that, up to a certain degree, Convolutional Neural Networks (CNNs) can tolerate arithmetic approximations. Nonetheless, perturbations must be applied judiciously, to constrain their impact on accuracy. This is a challenging task, since the implementation of inexact operators is often decided at design time, when the application and its robustness profile are unknown, posing the risk of over-constraining or over-provisioning the hardware. Bridging this gap, we propose a two-phase strategy. Our framework first optimizes the target CNN model, reducing the bitwidth of weights and activations and enhancing error resiliency, so that inexact operations can be performed as frequently as possible. Then, it selectively assigns CNN layers to exact or inexact hardware based on a sensitivity metric. Our results show that, within a 5% accuracy degradation, our methodology, including a highly inexact multiplier design, can reduce the cost of MAC operations in CNN inference up to 83.6% compared to state-of-the-art optimized exact implementations.
MDPI_Approximate_multipliers.pdf
postprint
openaccess
copyright
3.76 MB
Adobe PDF
06c3f2d2837113621f249ac782dd163e
micromachines-13-01143.pdf
publisher
openaccess
CC BY
1.45 MB
Adobe PDF
b5b216a9dfa8e4b600528f470d5c665d