[发明专利]减少人工神经网络中卷积运算期间数据移动的系统和方法在审
申请号: | 202011520382.2 | 申请日: | 2020-12-21 |
公开(公告)号: | CN113011554A | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 阿卜杜勒卡迪尔·乌特库·迪里尔;克里希纳库马尔·纳拉亚南·奈尔;伊赫桑·基什阿德斯坦尼扎德;郝宇辰;拉凯什·科姆拉韦利;马丁·沙茨 | 申请(专利权)人: | 脸谱公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/063 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 俞立文;杨明钊 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 减少 人工 神经网络 卷积 运算 期间 数据 移动 系统 方法 | ||
1.一种计算机实现的方法,包括:
在支持人工神经网络(ANN)的硬件加速器处接收激活数据集,所述激活数据集将经由所述ANN的滤波器内核进行卷积运算;
在所述硬件加速器处接收参数,所述参数指示当在所述卷积运算期间滑过特定位置时,所述滤波器内核超过所述激活数据集的至少一个边界;
至少部分地基于所述参数,确定所述硬件加速器将结合所述滤波器内核的特定位置在所述激活数据集的边界处生成填充数据;和
当所述滤波器内核滑过所述特定位置时,在所述硬件加速器处通过处理所述激活数据集的一部分和所述填充数据来执行所述卷积运算。
2.根据权利要求1所述的计算机实现的方法,还包括在所述硬件加速器处接收指示所述特定位置的起始地址的附加参数;并且
其中,执行所述卷积运算包括至少部分地基于所述附加参数,在所述特定位置处将所述滤波器内核应用于所述激活数据集的所述一部分和所述填充数据。
3.根据权利要求2所述的计算机实现的方法,其中,在所述硬件加速器处接收的所述激活数据集没有填充数据。
4.根据权利要求3所述的计算机实现的方法,还包括由所述硬件加速器结合所述滤波器内核的特定位置在所述激活数据集的边界处生成填充数据。
5.根据权利要求3所述的计算机实现的方法,还包括将所述激活数据集存储在所述硬件加速器的本地存储器设备中,用于结合所述卷积运算进行处理;并且
其中,执行所述卷积运算包括将所述滤波器内核移动到所述硬件加速器的本地存储器设备内的特定位置的起始地址,以便于处理所述激活数据集的所述一部分和所述填充数据。
6.根据权利要求5所述的计算机实现的方法,其中,由所述硬件加速器生成所述填充数据包括消除将所述填充数据从外部数据储存器传输到所述硬件加速器的本地存储器设备的需要。
7.根据权利要求1所述的计算机实现的方法,还包括:
在所述硬件加速器处接收附加参数,所述附加参数指示当在所述卷积运算期间滑过附加位置时,所述滤波器内核不超过所述激活数据集的任何边界;和
至少部分地基于所述附加参数,确定所述硬件加速器将抑制结合所述滤波器内核的附加位置生成附加填充数据;并且
其中,执行所述卷积运算包括当所述滤波器内核滑过所述附加位置时,处理所述激活数据集的附加部分,而没有任何填充数据。
8.根据权利要求7所述的计算机实现的方法,还包括在所述硬件加速器处接收指示所述附加位置的起始地址的另一个参数;并且
其中,执行所述卷积运算包括至少部分地基于所述另一个参数,在所述附加位置处将所述滤波器内核应用于所述激活数据集的所述附加部分。
9.根据权利要求1所述的计算机实现的方法,其中,所述参数包括以下中的至少一项:
计数,其指示当在所述卷积运算期间滑过所述特定位置时,所述滤波器内核超过的所述激活数据集的边界数量;
一个或更多个边指示符,其标识当在所述卷积运算期间滑过所述特定位置时,所述滤波器内核超过所述激活数据集的哪些边界;或者
深度指示符,其标识将由所述硬件加速器结合所述滤波器内核的特定位置在所述激活数据集的边界处生成的填充数据的深度。
10.根据权利要求1所述的计算机实现的方法,其中,执行所述卷积运算包括通过在所述激活数据集上滑动所述滤波器内核来生成输出数据集。
11.根据权利要求10所述的计算机实现的方法,其中,所述卷积运算包括相同卷积运算,其中:
所述激活数据集包含特定数量的维度;和
所述输出数据集也包含所述特定数量的维度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于脸谱公司,未经脸谱公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011520382.2/1.html,转载请声明来源钻瓜专利网。