[发明专利]通过高效混合并行化减少深度神经网络训练次数在审
申请号: | 202011209924.4 | 申请日: | 2020-11-03 |
公开(公告)号: | CN112836787A | 公开(公告)日: | 2021-05-25 |
发明(设计)人: | 文穆吉尔·伊兰戈 | 申请(专利权)人: | 百度(美国)有限责任公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/063;G06N3/08 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 王达佐;王艳春 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 通过 高效 混合 并行 减少 深度 神经网络 训练 次数 | ||
1.一种包括一个或多个指令序列的非暂时性计算机可读介质,所述一个或多个指令序列在由至少一个处理器执行时实现用于寻找对深度神经网络DNN的层进行并行化以增加所述DNN的硬件利用率并减少所述DNN的训练时间的有效策略的步骤,所述步骤包括:
获得顶点序列,所述顶点序列中的顶点表示DNN的层,所述顶点序列已根据顶点排序策略排序,使得表示所述DNN的计算图中的受限邻居集合的大小得以减小;
对于每个顶点,使用递归来计算用于对所述DNN的顶点进行并行化的子策略,每个顶点与一个或多个根据成本函数来降低配置成本的有效配置相关联;和
输出具有用于所述计算图的最低成本的策略。
2.如权利要求1所述的非暂时性计算机可读介质,其中,所述受限邻居集合是右相关顶点集合。
3.如权利要求2所述的非暂时性计算机可读介质,其中,获得所述顶点序列包括以下步骤:
对于顶点集合中的一个或多个顶点,初始化所述右相关顶点集合、末端顶点集合和未排序的顶点集合;
对于每个顶点,执行以下步骤:
从所述未排序的顶点集合中迭代地选择具有最小右相关集合基数的顶点,并将所选择的顶点分配给顶点序列;
更新所述末端顶点集合和所述右相关顶点集合,以正确保持用于所述DNN的计算图中的右相关顶点集合的大小;和
输出所述顶点序列作为有序的顶点序列。
4.如权利要求1所述的非暂时性计算机可读介质,其中,所述递归包括一组末端集合。
5.如权利要求1所述的非暂时性计算机可读介质,其中,所述成本函数忽略所述DNN的不同顶点中的层间管道并行以减小搜索空间,并考虑所述DNN的层内的管道并行。
6.如权利要求1所述的非暂时性计算机可读介质,所述步骤还包括使用具有所述最低成本的所述策略来根据所述策略在多个设备上并行执行所述DNN以训练所述DNN。
7.如权利要求1所述的非暂时性计算机可读介质,所述步骤还包括从动态编程表中检索所述一个或多个有效配置及其成本以提高计算速度。
8.如权利要求1所述的非暂时性计算机可读介质或介质,其中,所述计算图包括定义为通过无向路径从顶点可达的左可达顶点集合。
9.一种包括一个或多个指令序列的非暂时性计算机可读介质,所述指令序列在由至少一个处理器执行时实现以下步骤,所述步骤用于对深度神经网络DNN的计算图的顶点进行排序以产生有效的顶点序列,其中,所述顶点序列中的顶点表示DNN的层,进而有效地计算提高所述DNN的硬件利用率和减少所述DNN的训练时间的最佳策略,所述步骤包括:
对于顶点集合中的一个或多个顶点,初始化右相关顶点集合、末端顶点集合和未排序的顶点集合;
对于每个顶点,执行以下步骤:
从所述未排序的顶点集合中迭代地选择具有最小右相关集合基数的顶点,并将所选择的顶点分配给顶点序列;
更新所述末端顶点集合和所述右相关顶点集合,使得计算图中的右相关顶点集合的大小得以正确保持;和
输出所述顶点序列作为有序的顶点序列。
10.如权利要求9所述的非暂时性计算机可读介质,其中,所述计算图表示DNN。
11.如权利要求9所述的非暂时性计算机可读介质,其中,所述计算图包括定义为通过无向路径从顶点可达的左可达顶点集合。
12.如权利要求11所述的非暂时性计算机可读介质,其中,所述顶点与一个或多个有效配置相关联。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度(美国)有限责任公司,未经百度(美国)有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011209924.4/1.html,转载请声明来源钻瓜专利网。