【技术实现步骤摘要】
用于深度神经网络的硬件实现的误差分配格式选择
本公开涉及用于深度神经网络的硬件实现的误差分配格式选择。
技术介绍
深度神经网络(DNN)是可以用于机器学习应用的一种人工神经网络。具体地,DNN可以用于信号处理应用,包括图像处理和计算机视觉应用。DNN已经在其中功率资源不是重要因素的应用中被实现。尽管如此,DNN还应用于许多不同的
,在这些领域中用于实现DNN的硬件资源的功耗、处理能力或硅面积是有限的。因此,需要实现被配置为以有效方式(即,以在操作时需要更少硅面积或更少处理能力的方式)实现DNN的硬件。此外,DNN可以以多种不同的方式被配置以用于各种不同的应用。因此,还需要用于实现DNN的硬件能够灵活地支持各种DNN配置。以下描述的实施例仅作为示例被提供,并且不限制解决深度神经网络的已知硬件实现的任意或所有缺点的实现方式。
技术实现思路
提供该
技术实现思路
是为了介绍将在以下详细描述中进一步描述的一些概念。该
技术实现思路
不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。本文描述的是用于基于DNN的输出误差中归因于每个层的权重和/或输入数据值的量化的部分来确定DNN的一个或多个层的定点数格式的方法。具体地,在本文描述的方法中,使用泰勒近似来确定可归因于每个层的权重或输入数据值的量化的DNN的输出误差,并且基于该归因来调整一个或多个层的定点数格式。例如,在由DNN用来表示权重和/或输入数据值的每个定点数格式包括指数和尾数位长度的情况下,可减小归因于最少部分的输出误差的(一个或多个)层的尾数位长度,或者可以增加归因于最多部分的 ...
【技术保护点】
1.一种确定用于表示深度神经网络“DNN”的一个或多个层的值的定点数格式以用于配置所述DNN的硬件实现的计算机实现的方法(900,1000),值包括权重和输入数据值中的至少一者,所述方法(900,1000)包括:接收被配置为根据用于该层的一个或多个初始定点数格式表示一个或多个层的值的DNN的实例(602);确定响应于测试输入数据的所述DNN的所述实例的输出(604);确定所述DNN的所述实例的所述输出相对于基线输出的可微分误差(606);使用泰勒近似来确定所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的部分(608);以及基于所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的所述部分,调整所述一个或多个层中的至少一层的定点数格式(902)。
【技术特征摘要】
2017.11.03 GB 1718295.71.一种确定用于表示深度神经网络“DNN”的一个或多个层的值的定点数格式以用于配置所述DNN的硬件实现的计算机实现的方法(900,1000),值包括权重和输入数据值中的至少一者,所述方法(900,1000)包括:接收被配置为根据用于该层的一个或多个初始定点数格式表示一个或多个层的值的DNN的实例(602);确定响应于测试输入数据的所述DNN的所述实例的输出(604);确定所述DNN的所述实例的所述输出相对于基线输出的可微分误差(606);使用泰勒近似来确定所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的部分(608);以及基于所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的所述部分,调整所述一个或多个层中的至少一层的定点数格式(902)。2.根据权利要求1所述的方法(900,1000),其中,具有最低权重量化误差部分和/或最低输入数据值量化误差部分的层的定点数格式被调整。3.根据权利要求2所述的方法(900,1000),其中,每个定点数格式包括指数和尾数位长度,并且调整定点数格式包括将定点数格式调整为具有下一最低尾数位长度的定点数格式。4.根据权利要求1所述的方法(900,1000),其中,具有最高权重量化误差部分和/或最高输入数据值量化误差部分的层的定点数格式被调整。5.根据权利要求4所述的方法(900,1000),其中,每个定点数格式包括指数和尾数位长度,并且调整定点数格式包括将定点数格式调整为具有下一最高尾数位长度的定点数格式。6.根据前述任一项权利要求所述的方法(1000),还包括:在所述调整之后,确定响应于测试输入数据的所述DNN的所述实例的输出的准确度(1002);以及响应于确定所述DNN的所述实例的所述输出的所述准确度超过准确度阈值(1004),重复所述确定可微分误差、所述确定所述部分、以及所述调整。7.根据权利要求6所述的方法(1000),还包括:响应于确定所述DNN的所述实例的所述输出的所述准确度不超过所述准确度阈值,将所述调整丢弃(1006)。8.根据权利要求6所述的方法(1000),其中,所述DNN是分类网络,并且所述DNN的所述实例的所述输出的所述准确度是前1名的分类准确度或前5名的分类准确度。9.根据权利要求1至5中任一项所述的方法(900,1000),其中,使用泰勒近似来确定所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的所述部分包括:使用反向传播确定所述可微分误差关于值的斜率;以及通过将特定值的量化误差乘以相应的斜率来计算所述可微分误差中可归因于该值的量化的所述部分。10.根据权利要求9所述的方法(900,1000),其中,确定所述可微分误差中与所述一个或多个层中的每个层的值的量化相关的所述部分还包括:通过对所述可微分误差中可归因于该层的权重的量化的部分求和来确定可归因于所述一个或多个层中的每个层的权重的量化的总误差,和/或通过对所述可微分误差中可归因于该层的输入数据值的量化的部分求和来确定可归因于所述一个或多个层中的每个层的输入数据值的量化的总误差。11.根据权利要求1至5中任一项所述的方法(900,1000),其中,所述DNN是分类网络,并且所述...
【专利技术属性】
技术研发人员:詹姆斯·因贝尔,
申请(专利权)人:畅想科技有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。