[发明专利]一种模型训练方法及相关设备在审
申请号: | 202011063706.4 | 申请日: | 2020-09-30 |
公开(公告)号: | CN112541159A | 公开(公告)日: | 2021-03-23 |
发明(设计)人: | 任晓哲;尹伊淳;蒋欣 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F7/523;G06F7/544;G06N3/08 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 李杭 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 模型 训练 方法 相关 设备 | ||
本申请涉及人工智能领域,公开了一种模型训练方法,包括:获取待训练的第一神经网络模型,所述第一神经网络模型包括第一算子,所述第一算子用于将输入数据与目标权重矩阵进行乘积运算;将所述第一神经网络模型中的所述第一算子替换为第二算子,以得到第二神经网络模型,其中,所述第二算子用于将输入数据与多个子权重矩阵进行乘积运算,所述多个子权重矩阵为对所述目标权重矩阵进行矩阵分解得到的;对所述第二神经网络模型进行模型训练,得到目标神经网络模型。本申请将目标权重矩阵拆分为多个子权重矩阵的乘积,使得训练设备在进行输入数据与多个子权重矩阵的乘积运算所需的时间较小,进而减少了模型训练时间。
技术领域
本申请涉及人工智能领域,尤其涉及一种模型训练方法及相关设备。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、 延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术 及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并 生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种 智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
深度学习框架是指在特定硬件计算平台上,如中央处理器(central processingunit, CPU),图形处理器(graphics processing unit,GPU),神经网络处理器(neuralnetwork processing unit,NPU),等,执行深度学习网络的计算机软件系统。常见的深度学习框架 有TensorFlow,PyTorch,Caffe,MindSpore等等。深度学习框架通常为用户提供一系列软件 接口,这些软件接口是定义好的深度学习网络计算单元,称为算子,用户可以通过组合算 子,来构建某种深度学习网络,如卷积神经网络(convolutional neuralnetwork,CNN),注 意力网络(Transformer),循环神经网络(recurrent neural network,RNN)等等。
在深度学习技术中,有一类算子被称为全连接层算子,或者线性层算子,执行如下的 乘加运算:F(x)=XW+b;其中W是权重矩阵,W是需要学习的参数,X是线性层的输入,b 是需要学习的偏置值,这一类算子通常占据深度学习网络中相当程度的运算量,是深度学 习框架是否能加速运算的关键。
针对线性层算子运算速度的提升,现有可以通过手动修改脚本,寻求更快的线性层设 置,如更少的输入X,更小的可学习参数量W和b,或者是通过研发更快的硬件平台。然而, 如何在用户最小程度修改脚本,且不需要升级硬件资源的情况下获得性能提升是尚需解决 的技术问题。
发明内容
第一方面,本申请提供了一种模型训练方法,所述方法包括:
获取待训练的第一神经网络模型,所述第一神经网络模型包括第一算子,所述第一算 子用于将输入数据与目标权重矩阵进行乘积运算;用户可以输入预先编写好的脚本程序, 该脚本程序可以表达出待训练的第一神经网络模型的模型架构以及第一神经网络模型中 待训练的参数的尺寸大小等等,其中,脚本程序可以包括第一算子相关的代码,该代码可 以规定第一算子的算子类型为线性层算子,并规定第一算子中的目标权重矩阵的尺寸大小, 进而训练设备在训练第一神经网络模型时,可以基于第一算子相关的代码来调用线性层算 子相关的API以执行第一算子;第一算子可以为线性层算子,框架的线性层算子,是对乘 加运算的一种封装,通常以类的形式出现,第一算子可以但不限于为Linear,或者Dense, 其数学表达一般为一个乘加运算:F(x)=XW+b;其中W是权重矩阵,W是需要学习的 参数,X是线性层的输入,b是需要学习的偏置值,若第一算子的数学表达为F(x)=XW+b;则W是目标权重矩阵,X是线性层的输入数据,b是偏置值,应理解,在一些场景中 上述偏置值可以有,也可以没有,第一算子用于将输入数据与目标权重矩阵进行乘积运算, 可选地,第一算子用于将将输入数据与目标权重矩阵进行乘积运算,以得到第一运算结果, 并将第一运算结果与偏置值进行相加运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011063706.4/2.html,转载请声明来源钻瓜专利网。