[发明专利]一种对任意深度神经网络优化其运行功能时所需存储的方法在审
申请号: | 201910980066.4 | 申请日: | 2019-10-15 |
公开(公告)号: | CN110766135A | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 杨旭光;林森;孙凌阁 | 申请(专利权)人: | 北京芯启科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04 |
代理公司: | 11453 北京名华博信知识产权代理有限公司 | 代理人: | 李冬梅 |
地址: | 100091 北京市海淀区上地*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 有向图 神经网络优化 高效复用 静态分配 内存管理 偏移地址 神经网络 网络转化 运行时 存储 输出 灵活 转化 探索 分析 管理 | ||
提供一种对任意深度神经网络优化其运行时所需存储的方法。将AutoML探索得到的任意网络转化为有向图,对有向图分析后,将每个神经网络层输入、输出所需要的内存管理,都转化为简单的对偏移地址的管理,从而达到静态分配、高效复用、灵活操作的目的。
技术领域
本发明属于计算机软件、人工神经网络算法部署软件存储优化的领域,具体涉及一种对任意深度神经网络优化其运行功能时所需存储的设计方法。
背景技术
深度卷积神经网络算法由多层具体的神经元算法层、隐藏层组成,主要包含有卷积层,主要算子为矩阵或向量的卷积计算。该计算任务的主要特点为输入的数据量大、输入数据具有空间特征信息的耦合。层计算所需算力巨大,所需要的数据量更大,存储瓶颈成为了主要的制约因素。
近年来在嵌入式端侧部署人工神经算法已经成为广泛需求,但在相关场景下,数据存储的容量、性能和成本因素成为制约需求的主要因素。
在嵌入式端侧部署人工神经算法,其需求特征为,由于存储的硬件容量有限,必需要将数据进行复用,减少数据的膨胀;而对于不同领域和产业场景所常用的人工神经网络算法不同,需要存储容量不同,动态分配带来的风险需要一种静态分配方法,防止存储空间分配失败的风险。这样,我们就需要一种方法,能够静态分配神经网络数据存储,复用神经网络存储区存储神经网络数据,灵活快速定位神经网络数据地址。
发明内容
本发明提供一种对任意深度神经网络优化其运行功能时所需存储的方法。针对嵌入式端侧部署场景,解决对数据存储静态分配问题,突破过去动态管理内存的技术限制;解决存储数据的复用问题,大大降低过去所需要的存储规模所带来的成本限制;还对静态分配办法进行了优化,使数据定位以及操作仍具有灵活性。
本发明所述一种对任意深度神经网络优化其运行功能时所需存储的方法,包括一套数据结构设计方法,一套编译神经网络算法中进行存储区间参数初始化的方法,以及一套可供运行支持本发明方法的软件的硬件平台实施例。
本发明的效果在于:
1、提供了一种面向嵌入式智能端侧部署的存储优化方法
2、降低了软硬件系统的整体成本
3、提高了嵌入式系统的性能
4、适合于低成本嵌入式ASIC上应用
附图说明
图1为深度神经网络优化其运行功能时所需存储的方法框图;
图2为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的主流程图;
图3为本发明所述人工智能神经网络算法数据处理过程图;
图4为本发明所述数据宏块的可能的内存地址分布示意图;
图5为本发明所述可部署所述人工智能算法推理软件的硬件平台;
图6为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化层只读数据描述项流程图;
图7为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化不复用层读写数据存储区描述流程图;
图8为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化层读写数据描述项流程图.
附图标记说明
layer 神经网络层
ro Read only,神经网络只读存储区
rw Read Write,神经网络可读可写存储区
buffer 神经网络存储区
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京芯启科技有限公司,未经北京芯启科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910980066.4/2.html,转载请声明来源钻瓜专利网。