面向二值卷积神经网络的高能效近似加法电路

 2022-07-25 10:35:15

论文总字数:25811字

摘 要

卷积神经网络在图像、语音识别分类等领域应用已经十分广泛,卷积神经网络的算法模型也在朝着更深的方向发展,网络运行所需要的计算量以及存储参数所需要的存储空间也在急剧增加。二值神经网络(BNN)是一种新型的神经网络模型,在不损失太多精度的前提下能够大大降低计算的复杂度和对硬件的要求。

本文针对二值神经网络的计算特点,以低功耗为目标设计了一种基于数模混合信号的运算方案。该运算方案主要由两部分组成:一是由CMOS反相器组成的延时链累加电路,延时链中各个输入数据分别控制各级反相器的信号传输时间,这样延时链的信号总延时时间就能代表输入数据的累加和;二是低功耗数字-时间转换单元(TDC)电路,该TDC单元基于二分比较算法,相比传统结构极大地降低了硬件需求且提高了能效。本文以基于二值化权重网络(BWN)的语音常用词识别的语音识别系统为典型应用案例,证明了本文提出的计算结构能够有效解决神经网络的运算功耗问题。

本文在TSMC28nm工艺下完成了所提出结构的版图设计,在面向语音识别的二值神经网络应用中精度只下降了2%~3%,而能效达到了168Tops/w,与其他二值网络加速器相比能效提升了2.7倍。

关键词:深度学习,近似计算,二值网络

Abstract

Convolutional neural networks have been widely used in the fields of image and speech recognition and classification. The algorithm model of convolutional neural networks is also moving in a deeper direction. The amount of computation required for network operations and the storage space required for storage parameters are also Dramatic increase. Binary neural network (BNN) is a new type of neural network model, which can greatly reduce the computational complexity and hardware requirements without losing much precision.

A computational scheme based on mixed-signal digital-to-analog signals is designed by us aiming at low power consumption for binary neural networks. The scheme is mainly composed of two parts: first is a kind of delay chain circuit composed of CMOS inverters. Each input data in the delay chain controls the signal transmission time, so that the total delay time of the signal can represent the sum of all the input data; the second is an energy-efficient digital-to-time converter (TDC). The TDC is based on a binary search algorithm, which greatly reduces hardware requirements and improves energy efficiency compared to the traditional architecture. As our typical application case, a speech recognition system with common words recognition based on Binary Weighted Network (BWN) proves that the computational structure proposed can effectively solve the computational power consumption problem of neural networks.

Experiments show that the approximate calculation scheme has an impact on network accuracy of 2%~3%. Under the TSMC28nm process, it achieves an energy 168Tops/w. Compared with other binary network accelerators, the energy efficiency of proposed scheme is improved by 2.7 times.

KEY WORDS: deep learning, approximate computation, binary network

目录

摘要 I

Abstract II

第一章 绪论 1

1.1 课题研究背景 1

1.2 国内外研究现状 1

1.2.1 二值/三值卷积神经网络结构及算法 1

1.2.2 神经网络计算电路/加速器 1

1.3 本文研究内容及创新点 2

1.3.1 本文研究内容 2

1.3.2 论文创新点 2

1.4 论文基本结构说明 4

第二章 卷积神经网络原理和二值化网络 5

2.1 卷积神经网络 5

2.1.1 卷积神经网络基本原理 5

2.1.2 典型的几种网络模型 6

2.2 二值神经网络 6

2.2.1 权重二值化 7

2.2.2 二值化活化函数和梯度估计 8

2.2.3 针对二值化数据的批量标准化 9

2.3 网络模型结构 10

第三章 基于数模混合信号的高能效运算 12

3.1 面向二值神经网络的张量计算电路 12

3.1.1 基于数字信号的计算方案 12

3.1.2 基于模拟信号的张量运算 12

3.1.3 基于时域信号的二值网络张量运算 13

3.2 基于数模混合信号处理的计算架构 15

3.2.1 基于延时链 TDC近似累加计算方案 16

3.2.2 基于二分比较法的TDC单元设计 16

3.3 本章小结 19

第四章 电路设计及实验分析 20

4.1 基于TSMC28nm工艺的版图设计 20

4.2 实验结果及分析 21

4.2.1 延时链误差分析 21

4.2.2 TDC误差分析 22

4.2.3 网络精度及能效分析 23

4.3 本章小结 24

第五章 总结与展望 25

5.1 总结 25

5.2 展望 25

致谢 26

参考文献 27

绪论

课题研究背景

近年来,人工神经网络在许多应用领域中得到广泛应用,特别是卷积神经网络(CNN)在计算机视觉和语音识别算法中体现了强大的优越性。这些应用都缘于使用卷积神经网络来对真实世界中的物体进行识别或分类往往具有更高的精确度和正确率。卷积网络在运行中需要进行大量的数据计算,尤其是其中的卷积即乘法和累加运算和用于计算的大量参数往往在硬件上需要消耗较大的内存资源和功耗[1]。为了使卷积神经网络能够在移动智能终端等设备上运行,就必须减少卷积神经网络中的计算功耗,为此人们提出了二值网络模型。二值神经网络(BNN)即把神经网络中的参数或输入数据进行压缩二值化,这样不仅节省了存储数据的所需的存储单元同时也极大地简化了卷积计算。2017年Mohammad Rastegari等人提出的XNOR-Net模型通过对输入数据和权重都进行二值化处理使网络运行速度提高了58倍[2],从而使得卷积神经网络不仅能够在拥有强大并行计算能力的GPU等器件上也能在CPU上运行。 一些实验表明,二值网络模型对MNISIST、CIFAR-10图像分类等数据集进行测试的结果已经取得近似全精度网络的正确率[3][4]

国内外研究现状

二值/三值卷积神经网络结构及算法

深度神经网络往往以更高的精确度为最高目标,所以长期以来人们认为降低神经网络中计算精度来提升效率是不值得采用的方法,但如今越来越多的案例证明训练和测试中对计算精度进行压缩不仅能大幅提高计算效率而且也能同时满足神经网络的高精度要求[5][6][7]。最早,由Yoshua Bengio等人提出深度神经网络中即使将权值和活化过程进行二值化后网络模型的训练效果也能几乎达到全精度网络的水平,之后文献[6]中在权重二值化的基础上加入了一个卷积系数使得计算结果更接近全精度网络,并提出一种新的将输入数据也进行二值化的网络模型(XNOR-Net)。

Yoshua Bengio等人提出的BinaryConnect和BinaryNet虽然在较小的数据集的测试结果下得到了很高的精度但仍存在训练速度和对ImageNet等大型数据集测试结果不理想的问题。针对这些问题,中国科学院应用数学研究所的张波教授团队在二值神经网络的基础上提出了三值神经网络模型(TWN),实验显示他们的网络模型对大型数据集的测试结果也能达到接近全精度网络的精度[8]

神经网络计算电路/加速器

早期由于极高的计算能力要求,深度神经网络的计算任务主要由高性能GPU执行。而为了推动神经网络在移动设备上的应用,近年来人们开始利用FPGA和ASIC(Application Specific Integrated Circuit)来设计神经网络的计算加速器,例如IBM的TrueNorth和我国自主研发的寒武纪系列。一般来说,在实现同样的功能指标下ASIC能更多地节省功耗和面积,也逐渐成为神经网络加速器的主流。

剩余内容已隐藏,请支付后下载全文,论文总字数:25811字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;