[发明专利]一种用于神经网络计算的数据流动方法和装置有效
| 申请号: | 202210952808.4 | 申请日: | 2022-08-10 |
| 公开(公告)号: | CN115033391B | 公开(公告)日: | 2022-11-11 |
| 发明(设计)人: | 王宏升;陈光 | 申请(专利权)人: | 之江实验室 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/08 |
| 代理公司: | 北京志霖恒远知识产权代理有限公司 11435 | 代理人: | 戴莉 |
| 地址: | 311121 浙江*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 用于 神经网络 计算 数据 流动 方法 装置 | ||
本发明公开了一种用于神经网络计算的数据流动方法和装置,包括以下步骤:步骤1、初始化计算图中变量的生命周期,初始化从变量的定义开始到使用结束之间的时间段为所述变量在计算图中的生命周期;步骤2、定义使用中变量流过节点的传播规则,定义计算图某节点处的变量被使用,在该节点的前驱节点产生该变量的定义,使得流过该节点的有效变量的输入集合包含该变量;本发明公开了深度学习训练系统中一种用于神经网络计算的数据流动的建模方法和装置,可以从全局作用域的视角分析出局部循环里的每个计算子图的节点所需分配的内存单元块。所述的用于神经网络计算的数据流动方法提高整个计算图的计算效率,节约时间成本。
技术领域
本发明涉及特定计算模型的计算机系统领域,特别涉及一种用于神经网络计算的数据流动方法和装置。
背景技术
随着人工智能产业化应用的快速发展,大规模深度神经网络模型的训练系统越来越成为学术界和工业界的研究热点。在局部作用域下,已有的用于神经网络计算的子图之间的数据传递方式是通过计算节点与内存进行频繁交换,并且需要为每个子图设计数据流动算法。在全局作用域内,这种方式不能满足带循环结构计算子图的数据流动效率。
发明内容
本发明的目的在于提供一种用于神经网络计算的数据流动方法和装置,以克服现有技术中的不足。
为实现上述目的,本发明提供如下技术方案:
本发明公开了一种用于神经网络计算的数据流动方法,包括以下步骤:
步骤1、初始化计算图中变量的生命周期,初始化从变量的定义开始到使用结束之间的时间段为所述变量在计算图中的生命周期;
步骤2、定义使用中变量流过节点的传播规则,定义计算图某节点处的变量被使用,在该节点的前驱节点产生该变量的定义,使得流过该节点的有效变量的输入集合包含该变量;
步骤3、设计重定义变量流过节点的传播规则,当变量在计算图某节点处被重新定义,则使该节点的前驱节点中的该变量的生命周期在流过该节点时被终结;
步骤4、定义计算图中关联变量流过节点的传播规则;
步骤5、基于数据流分析每个节点的输入和输出的有效变量;
步骤6、收集流过节点前后的有效变量的集合,收集基于计算图的变量的生命周期分析所得的流经每个节点的有效变量的集合;
步骤7、为计算图边上的有效变量分配内存单元块;
步骤8、定义计算图中可用表达式的传播规则;
步骤9、基于数据流分析每个节点的输入和输出的可用表达式;
步骤10、优化计算图中的可用表达式:将计算图节点处的可用表达式的计算结果保存到中间变量中,再次出现在后继节点中的所述可用表达式将替换为所述中间变量。
作为优选的,所述步骤3中重定义变量流过节点的传播规则具体为:若该变量在所述计算图某节点处没有被重新定义,则流过所述节点的有效变量的输出集合中的变量可以穿过该节点传播至其输出集合的变量;若该变量在所述计算图某节点处被重新定义,则所述变量不可以穿过该节点。
作为优选的,所述步骤4的具体子步骤如下:
步骤4.1、定义流过计算图某节点的变量等于使用变量;
步骤4.2、定义该节点的输出变量的集合为该节点的所有后继节点的输入集合的并集;
步骤4.3、定义该节点的输入变量的集合为输出变量的集合去除该节点处定义的该变量集合,再与该节点处使用变量集合取并集。
作为优选的,所述步骤5的具体子步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210952808.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





