Enabling AI at the edge with XNOR-networks

Enabling AI at the edge with XNOR-networks
复制标题

通过 XNOR 网络在边缘启用 AI

DOI:
10.1145/3429945
复制
发表时间:
2020
影响因子:
22.7
通讯作者:
Ali Farhadi
Ali Farhadi
中科院分区:
计算机科学3区
文献类型:
--
作者:
Mohammad Rastegari;Vicente Ordonez;Joseph Redmon;Ali Farhadi

文献摘要

被引文献

相似文献

近年来,我们已经看到越来越多的边缘设备被消费者采用,在他们的家中(例如,智能摄像机和门铃),在他们的汽车中(例如,驾驶员辅助系统),甚至在他们的身上(例如,智能手表和戒指)。航空航天、农业、医疗保健、运输和制造业等行业也出现了类似的增长。在设备变得越来越小的同时,为大多数形式的人工智能提供动力的深度神经网络(DNN)也变得越来越大,需要更多的计算能力、内存和带宽。这使得人工智能的进步与在边缘开发智能设备的能力之间越来越脱节。在本文中,我们提出了一种在边缘运行最先进的AI算法的新方法。我们提出了两种有效的标准卷积神经网络近似:二进制权重网络(BWN)和XNOR网络。在BWN中,滤波器近似于二进制值,从而节省了32倍的内存。在XNOR网络中,滤波器和卷积层的输入都是二进制的。XNOR网络主要使用二进制运算来近似卷积。这导致卷积运算速度提高58倍(就高精度运算的数量而言),并节省32倍的内存。XNOR-Nets提供了在CPU(而不是GPU)上实时运行最先进网络的可能性。我们的二进制网络简单、准确、高效,可用于具有挑战性的视觉任务。我们在ImageNet分类任务上评估了我们的方法。BWN版本的AlexNet的分类精度与全精度AlexNet相同。我们的代码可以在网址http://www.example.com上找到。allenai.org/plato/xnornet
In recent years we have seen a growing number of edge devices adopted by consumers, in their homes (e.g., smart cameras and doorbells), in their cars (e.g., driver assisted systems), and even on their persons (e.g., smart watches and rings). Similar growth is reported in industries including aerospace, agriculture, healthcare, transport, and manufacturing. At the same time that devices are getting smaller, Deep Neural Networks (DNN) that power most forms of artificial intelligence are getting larger, requiring more compute power, memory, and bandwidth. This creates a growing disconnect between advances in artificial intelligence and the ability to develop smart devices at the edge. In this paper, we present a novel approach to running state-of-the-art AI algorithms at the edge. We propose two efficient approximations to standard convolutional neural networks: Binary-Weight-Networks (BWN) and XNOR-Networks. In BWN, the filters are approximated with binary values resulting in 32x memory saving. In XNOR-Networks, both the filters and the input to convolutional layers are binary. XNOR-Networks approximate convolutions using primarily binary operations. This results in 58x faster convolutional operations (in terms of number of the high precision operations) and 32x memory savings. XNOR-Nets offer the possibility of running state-of-the-art networks on CPUs (rather than GPUs) in real-time. Our binary networks are simple, accurate, efficient, and work on challenging visual tasks. We evaluate our approach on the ImageNet classification task. The classification accuracy with a BWN version of AlexNet is the same as the full-precision AlexNet. Our code is available at: urlhttp://allenai.org/plato/xnornet.