[发明专利]用于深度神经网络的硬件实现的层次化尾数位长度选择在审
申请号: | 201811300265.8 | 申请日: | 2018-11-02 |
公开(公告)号: | CN110007959A | 公开(公告)日: | 2019-07-12 |
发明(设计)人: | 詹姆斯·因贝尔;卡加泰·迪基奇;张琳玲 | 申请(专利权)人: | 畅想科技有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06N3/04;G06N3/063 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 林强 |
地址: | 英国赫*** | 国省代码: | 英国;GB |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 子集 定点数 尾数 神经网络 层次化 长度选择 硬件实现 输出误差 迭代 丢弃 输出 重复 | ||
本公开涉及用于深度神经网络的硬件实现的层次化尾数位长度选择。提供了用于选择具有缩减的尾数位长度的、用于表示输入到深度神经网络DNN的层和/或从DNN的层输出的值的定点数格式的层次化方法。该方法以每个层具有一个或多个初始定点数格式开始。这些层被分成层的子集,并且定点数格式的尾数位长度在每个子集的基础上从初始定点数格式开始迭代地缩减。如果缩减导致DNN的输出误差超过误差阈值,则丢弃该缩减,并且不再对该子集的层进行缩减。否则,对该子集中的层的定点数格式进行进一步缩减。一旦不能对任何子集进行进一步的缩减,则针对持续增加的多个子集重复该方法,直到每个子集达到预定数量的层为止。
技术领域
本公开涉及神经网络,更具体地,涉及用于深度神经网络的硬件实现的层次化尾数位长度选择。
背景技术
深度神经网络(DNN)是一种可用于机器学习应用的人工神经网络。特别地,DNN可以用于信号处理应用,包括图像处理和计算机视觉应用。
DNN已经实现于功率资源不是重要因素的应用中。尽管如此,DNN还应用于许多不同的技术领域,在这些技术领域中,用于实现DNN的硬件资源使得功耗、处理能力或硅面积受到限制。
因此,需要实现被配置为以有效方式(即以在操作时需要更少硅面积或更少处理能力的方式)实现DNN的硬件。此外,DNN可以针对各种不同的应用以多种不同的方式来配置。因此,还需要用于实现DNN的、能够支持各种DNN配置的灵活的硬件。
下文描述的实施例仅作为示例提供,并不是作为对解决深度神经网络的已知硬件实现的任何或所有缺点的实现方式的限制。
发明内容
提供本发明内容以介绍下面在具体实施方式中进一步描述的概念的选择。本发明内容不用于识别请求保护的主题的关键特征或本质特征,也不用于限制请求保护的主题的范围。
本文描述的是用于选择具有缩减的尾数位长度的、用于表示输入到DNN的层和/或从DNN的层输出的值的定点数格式的层次化方法。该方法以每个层具有初始定点数格式开始。这些层被分成相关层的子集,并且定点数格式的尾数位长度在每个子集的基础上从初始定点数格式开始迭代地缩减。如果缩减导致DNN的输出误差超过误差阈值,则丢弃该缩减,并且不再对子集的层进行缩减。否则,对该子集进行进一步缩减。一旦不能对任何子集进行进一步的缩减,则针对持续增加的多个子集重复该方法,直到每个子集达到预定数量的层为止。
第一方面提供了一种计算机实现的方法,该方法用于选择用来表示输入到深度神经网络(DNN)的多个层和/或从DNN的多个层输出的值的定点数格式以用于配置DNN的硬件实现。该方法包括:接收DNN实例,该实例被配置为使用针对多个层中的每个层的一个或多个初始定点数格式来表示该层的值,每个初始定点数格式包括指数和尾数位长度;从多个层形成多个不相交的子集;对于多个子集中的每个子集,迭代地将子集中的层的定点数格式调整为具有下一最低尾数位长度的定点数格式,直到DNN实例的输出误差超过误差阈值为止;响应于确定子集包括大于下限阈值数量的层,从多个层形成更多数量的不相交子集并重复迭代调整;以及响应于确定子集包括小于或等于下限阈值数量的层,输出用于多个层的定点数格式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于畅想科技有限公司,未经畅想科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811300265.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:指令验证方法、装置及存储介质
- 下一篇:电子装置及使用其处理指令的方法