[发明专利]神经网络计算方法、装置、设备及计算机可读存储介质有效
| 申请号: | 202111417211.1 | 申请日: | 2021-11-26 |
| 公开(公告)号: | CN113835900B | 公开(公告)日: | 2022-02-22 |
| 发明(设计)人: | 吴延庆;熊超;蔡权雄;牛昕宇 | 申请(专利权)人: | 山东产研鲲云人工智能研究院有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/02 |
| 代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 陈文斌 |
| 地址: | 250000 山东省济南市中国(山东)自*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 神经网络 计算方法 装置 设备 计算机 可读 存储 介质 | ||
本申请公开了一种神经网络计算方法、装置、设备及计算机可读存储介质,所述神经网络计算方法包括:获取神经网络模型中各算子在执行数据运算时所需的高速缓存占用量;根据所述神经网络模型中各分支的算子所需的高速缓存占用量确定在执行神经网络计算时各所述分支的优先级;按照所述优先级依次执行所述神经网络模型中各所述分支的数据运算。本申请旨在提高高速缓存的利用率,从而提高执行神经网络计算的速度。
技术领域
本申请涉及神经网络技术领域,尤其涉及一种神经网络计算方法、装置、设备及计算机可读存储介质。
背景技术
随着深度学习的快速发展,神经网络已经大量应用于机器视觉应用,例如图像识别与图像分类。
传统深度学习计算图执行时,采用拓扑排序顺序,即首先对计算图进行拓扑排序,然后按照拓扑排序顺序执行计算图中的每个节点。虽然不同的拓扑排序算法可能会产生不同的顺序,但是对于相同拓扑结构的计算图总是产生相同的执行顺序。拓扑排序算法对相同拓扑结构的计算图总是产生相同的执行顺序,没有考虑每个算子对内存需求的不同,导致缓存的利用率不高。
发明内容
本申请的主要目的在于提供一种神经网络计算方法、装置、设备及计算机可读存储介质,旨在提高高速缓存的利用效率。
为实现上述目的,本申请提供一种神经网络计算方法,所述神经网络计算方法包括:
获取神经网络模型中各算子在执行数据运算时所需的高速缓存占用量;
根据所述神经网络模型中各分支的算子所需的高速缓存占用量确定在执行神经网络计算时各所述分支的优先级;
按照所述优先级依次执行所述神经网络模型中各所述分支的数据运算。
可选地,所述根据所述神经网络模型中各分支的算子所需的高速缓存占用量确定在执行神经网络计算时各所述分支的优先级的步骤包括:
根据每一所述分支的算子所需的高速缓存占用量的总和确定所述神经网络模型中各分支的第一优先级得分,根据每一所述分支中目标算子所需的高速缓存占用量确定所述神经网络模型中各分支的第二优先级得分,根据每一所述分支的算子所需的最大高速缓存占用量确定所述神经网络模型中各分支的第三优先级得分;
根据所述第一优先级得分,和/或第二优先级得分,和/或第三优先级得分确定所述神经网络模型中各分支的优先级。
可选地,所述根据所述第一优先级得分,和/或第二优先级得分和/或第三优先级得分确定所述神经网络模型的各分支的优先级的步骤包括:
获取预设的计算权重矩阵;
根据所述计算权重矩阵及所述第一优先级得分、第二优先级得分以及第三优先级得分确定所述神经网络模型的优先级得分;
根据优先级得分确定所述神经网络模型各分支的优先级。
可选地,所述根据优先级得分确定所述神经网络模型各分支的优先级的步骤包括:
根据所述优先级得分依次对所述神经网络模型中各所述分支进行排序,其中按照得分由高到低依次排序;
根据排序结果确定所述神经网络模型中各所述分支的优先级,其中,得分高的分支的优先级高于得分低的分支的优先级。
可选地,所述获取神经网络模型中各算子在执行数据运算时所需的高速缓存占用量的步骤包括:
获取高速缓存的存储大小以及所述算子执行数据运算时的数据量;
根据所述高速缓存的存储大小以及所述数据量确定所述高速缓存占用量。
可选地,所述按照所述优先级依次执行各分支的数据运算的步骤之后,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东产研鲲云人工智能研究院有限公司,未经山东产研鲲云人工智能研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111417211.1/2.html,转载请声明来源钻瓜专利网。





