【技术实现步骤摘要】
利用非均匀量化和查找表加速神经网络计算的方法和系统
本专利技术涉及人工神经网络,更具体涉及利用非均匀量化和查找表加速神经网络计算的方法和系统。
技术介绍
人工神经网络(ArtificialNeuralNetworks,可以缩写为ANN),也简称神经网络(NN),是一种模仿动物神经网络的行为特征,进行分布式并行信息处理的数学计算模型。近年来,神经网络发展很快,被广泛应用于诸多领域,如图像识别、语音识别、自然语言处理、天气预报、基因表达、内容推送等等。近年来,神经网络发展迅速,层数越来越深,参数量相应的也越来越多,对计算资源的需求也不断增加。然而在移动设备上,在嵌入式的应用场景中,计算能力以及功耗都严格受限,因此网络压缩的相关技术也越来越受到大家的关注。网络压缩的主流技术包括剪枝(pruning)、量化(quantization)、蒸馏(distilling)等。另一方面,设计精巧的小计算量的网络,比如SqueezeNet、MobileNets、ShuffleNet,也都在一些应用中取得了不错的效果。此外,有研究者提出了深度压缩(DeepCompression)的概念 ...
【技术保护点】
1.一种利用非均匀量化和查找表加速神经网络计算的方法,包括:对神经网络的每一层的参数进行非均匀量化;对神经网络的每一层的输入进行非均匀量化;通过将每一层的参数的所有量化值与每一层的输入的所有量化值进行乘法运算,构建每一层的查找表;在进行神经网络的前向计算时,对于每一层的参数与输入的乘法运算,从该层的查找表中查找乘法运算的结果,逐层计算直至全部完成。
【技术特征摘要】
1.一种利用非均匀量化和查找表加速神经网络计算的方法,包括:对神经网络的每一层的参数进行非均匀量化;对神经网络的每一层的输入进行非均匀量化;通过将每一层的参数的所有量化值与每一层的输入的所有量化值进行乘法运算,构建每一层的查找表;在进行神经网络的前向计算时,对于每一层的参数与输入的乘法运算,从该层的查找表中查找乘法运算的结果,逐层计算直至全部完成。2.根据权利要求1所述的方法,其中,通过标定的方法完成对神经网络的每一层的输入的非均匀量化。3.根据权利要求2所述的方法,其中,通过以下步骤来进行标定:将标定数据分成M个批次;对每个批次分别进行网络的前向计算,得到这一层的输入{X1,X2,…XM};对第i个批次Xi中的所有元素,进行Kmeans聚类,得到N=2n个聚类中心和这个聚类的样本数{(ci1,cnti1),(ci2,cnti2),…(CiN,cntiN)};针对M个批次所有的聚类中心,再进行一次Kmeans聚类,最终得到N个聚类中心作为输入的量化值{c1,c2,…cN}类。4.一种利用非均匀量化和查找表加速神经网络计算的系统,包括:网络参数量化单元,用于对神经网络的每一层的参数进行非均匀量化;输入量化单元,用于对神经网络的每一层的输入进行非均匀量化;查找表,通过将每一层的参数的所有量化值与每一层的输入的所有量化值进行乘法运算,构建每一层的查找表;主处理单元,用于进行...
【专利技术属性】
技术研发人员:江帆,王瑜,盛骁,韩松,单羿,
申请(专利权)人:北京深鉴智能科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。