计算机科学
按位运算
二进制数
算法
规范化(社会学)
人工神经网络
并行计算
数据流图
推论
管道(软件)
剪裁(形态学)
计算机工程
算术
人工智能
数学
数据库
哲学
社会学
语言学
程序设计语言
人类学
作者
Lorenzo Vorabbi,D. Maltoni,S. Santi
标识
DOI:10.48550/arxiv.2304.00952
摘要
Binary Neural Networks (BNNs) can significantly accelerate the inference time of a neural network by replacing its expensive floating-point arithmetic with bitwise operations. Most existing solutions, however, do not fully optimize data flow through the BNN layers, and intermediate conversions from 1 to 16/32 bits often further hinder efficiency. We propose a novel training scheme that can increase data flow and parallelism in the BNN pipeline; specifically, we introduce a clipping block that decreases the data-width from 32 bits to 8. Furthermore, we reduce the internal accumulator size of a binary layer, usually kept using 32-bit to prevent data overflow without losing accuracy. Additionally, we provide an optimization of the Batch Normalization layer that both reduces latency and simplifies deployment. Finally, we present an optimized implementation of the Binary Direct Convolution for ARM instruction sets. Our experiments show a consistent improvement of the inference speed (up to 1.91 and 2.73x compared to two state-of-the-art BNNs frameworks) with no drop in accuracy for at least one full-precision model.
科研通智能强力驱动
Strongly Powered by AbleSci AI