A system and method for reducing the weight storage bits of a deep learning network, comprising a quantization module and a cluster number reduction module. The quantization module quantifies the neural weights of each quantization layer in the deep learning network. The cluster number reduction module reduces the predetermined number of clusters having a clustering error as the minimum clustering error of the plurality of quantization layers. The quantizing module quantifies the layer based on the predetermined number of the reduced clusters of the layers, and the cluster number reduction module also determines another layer with a clustering error that has the minimum value of the clustering error of the multiple quantized layers, and reduces the predetermined number of the clusters of the other layer until the recognition performance of the depth learning network. The predetermined threshold has been reduced.
【技术实现步骤摘要】
用于减少深度学习网络的权重存储位的系统和方法本申请要求于2017年1月9日提交的第62/444,352号美国临时专利申请的优先权权益,所述美国临时专利申请的公开通过引用全部合并于此。
在此公开的主题总体涉及深度学习网络,更具体地讲,涉及一种用于减少深度学习网络的权重存储位的设备和方法。
技术介绍
深度学习是人工智能(AI)和计算机视觉领域中广泛使用的技术。各种深度学习架构(诸如,卷积神经网络(CNN)、深度信念网络(DBN)和自动编码器)已经显示出针对任务(诸如,视觉对象识别、自动语音识别、自然语言处理以及音乐/音频信号处理)产生最先进的结果。深度学习的主要工作已经集中在针对各种网络架构、学习算法和应用的软件实现上。然而,体现更强大的板上(on-board)学习行为的硬件实现仍受限制。对深度学习硬件的主要挑战与模型精度不足有关;更具体地,与网络权重和数据输入的低位分辨率有关。例如,软件实现可享有双精度(64位)计算,但是当考虑到如物理尺寸和功耗的硬件约束时,这样的精度水平变得难以置信。
技术实现思路
示例实施例提供一种用于减少深度学习网络的权重存储位的系统,其中,所述系统可包括簇初始化器、神经权重量化器、聚类误差确定器和簇数减少器。簇初始化器可初始化用于对深度学习网络的每个层l进行量化的簇的预定数量kl。神经权重量化器可反复地分配质心并关于用于量化的质心对权重进行聚类,直到针对每个量化层l确定了最低平均聚类误差εl为止。聚类误差确定器可从所述多个量化层确定具有作为所述多个量化层的聚类误差εl的最小值的聚类误差εl*的层l*。簇数减少器可将层l*的簇的预定数量减 ...
【技术保护点】
1.一种用于减少深度学习网络的权重存储位的系统,所述系统包括:簇初始化器,用于针对具有多个层的深度学习网络的每个层l初始化簇的预定数量kl;神经权重量化器,用于反复地分配簇的质心并关于质心对权重进行量化,直到针对量化的每个层l确定了最低平均聚类误差εl为止;聚类误差确定器,用于从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的层l*;簇数减少器,用于将层l*的簇的预定数量减少一而作为用于对层l*进行量化的簇的数量;神经权重量化器还用于基于层l*的簇的减少的预定数量对层l*进行重新量化,聚类误差确定器还用于从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的另一个层l*,簇数减少器将所述另一个层l*的簇的预定数量减少一而作为用于对所述另一个层l*进行量化的簇的数量,直到深度学习网络的识别性能已降低预定阈值为止。
【技术特征摘要】
2017.01.09 US 62/444,352;2017.03.20 US 15/464,3301.一种用于减少深度学习网络的权重存储位的系统,所述系统包括:簇初始化器,用于针对具有多个层的深度学习网络的每个层l初始化簇的预定数量kl;神经权重量化器,用于反复地分配簇的质心并关于质心对权重进行量化,直到针对量化的每个层l确定了最低平均聚类误差εl为止;聚类误差确定器,用于从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的层l*;簇数减少器,用于将层l*的簇的预定数量减少一而作为用于对层l*进行量化的簇的数量;神经权重量化器还用于基于层l*的簇的减少的预定数量对层l*进行重新量化,聚类误差确定器还用于从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的另一个层l*,簇数减少器将所述另一个层l*的簇的预定数量减少一而作为用于对所述另一个层l*进行量化的簇的数量,直到深度学习网络的识别性能已降低预定阈值为止。2.根据权利要求1所述的系统,其中,神经权重量化器使用K-means++来反复地分配簇的质心并关于质心对权重进行量化。3.根据权利要求2所述的系统,其中,聚类误差εl包括每个非零权重的平方簇误差。4.根据权利要求3所述的系统,其中,聚类误差εl包括其中,n为用于对层l进行量化的簇的预定数量,i为索引变量,wi为非零权重,Cl为用于层l的质心。5.根据权利要求3所述的系统,其中,预定阈值为1%。6.根据权利要求1所述的系统,其中,簇初始化器通过将两个邻近的簇合并以形成新的簇质心Cmerge来初始化量化的层的簇的预定数量kl,其中,所述两个邻近的簇的各自的质心之间的距离小于预定距离。7.根据权利要求6所述的系统,其中,簇初始化器将新的簇质心Cmerge确定为其中,C1和C2分别为所述两个邻近的簇的簇质心,N1和N2分别为属于所述两个各自的邻近的簇的权重点的数量。8.一种用于减少深度学习网络的权重存储位的方法,所述方法包括:针对具有多个层的深度学习网络的每个层l初始化簇的预定数量kl;针对每个层l,反复地分配权重的簇的质心并关于质心对权重进行量化,直到针对量化的层l确定了最低平均聚类误差εl为止;从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的层l*;将层l*的簇的预定数量减少一而作为用于对层l*进行量化的簇的数量;基于层l*的簇的减少的预定数量,对层l*进行重新量化;继续从所述多个层确定具有作为所述多个层的聚类误差εl的最小值的聚类误差εl*的另一个层l*,将所述另一个层l*的簇的预定数量减少一而作为用于对所述另一个层l*进行量化的簇的数量,基于所述另一个层l*的簇的减少的预定...
【专利技术属性】
技术研发人员:冀正平,约翰·韦克菲尔德·布拉泽斯,
申请(专利权)人:三星电子株式会社,
类型:发明
国别省市:韩国,KR
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。