[发明专利]使用合成梯度来训练神经网络在审
申请号: | 201780031195.8 | 申请日: | 2017-05-19 |
公开(公告)号: | CN109478254A | 公开(公告)日: | 2019-03-15 |
发明(设计)人: | 奥里奥尔·温亚尔斯;亚历山大·本杰明·格拉韦斯;沃伊切赫·恰尔内茨基;科拉伊·卡武克曲奥卢;西蒙·奥辛德罗;麦克斯维尔·埃利奥特·耶德贝里 | 申请(专利权)人: | 渊慧科技有限公司 |
主分类号: | G06N3/08 | 分类号: | G06N3/08;G06N3/04 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 李宝泉;周亚荣 |
地址: | 英国*** | 国省代码: | 英国;GB |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 子网络 合成梯度 训练神经网络 神经网络 激活 计算机存储介质 优化目标函数 计算机程序 目标函数 输入生成 输入提供 训练模型 输出 更新 | ||
用于通过优化目标函数来在训练输入上训练神经网络的方法、系统和装置,包括编码在计算机存储介质上的计算机程序,所述神经网络包括后面有第二子网络的第一子网络。在一个方面中,一种方法包括:使用所述神经网络来处理训练输入以生成训练模型输出,包括使用所述第一子网络来处理用于所述训练输入的子网络输入以根据所述第一子网络的参数的当前值为所述训练输入生成子网络激活,以及将所述子网络激活作为输入提供给所述第二子网络;通过使用合成梯度模型来根据所述合成梯度模型的参数的当前值处理所述子网络激活而确定用于所述第一子网络的所述目标函数的合成梯度;以及使用所述合成梯度来更新所述第一子网络的参数的当前值。
背景技术
本说明书涉及训练神经网络。
神经网络是采用非线性单元的一个或多个层来针对接收到的输入预测输出的机器学习模型。一些神经网络除了包括输出层之外还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中的下一层(即,下一个隐藏层或输出层)的输入。网络的每个层根据相应的参数集的当前值来从接收到的输入生成输出。
一些神经网络是递归神经网络。递归神经网络是接收输入序列并且从该输入序列生成输出序列的神经网络。特别地,递归神经网络可在在当前时间步计算输出时使用来自先前时间步的网络的内部状态中的一些或全部。
发明内容
本说明书描述作为计算机程序实现在一个或多个位置中的一个或多个计算机上的系统,所述系统在多个训练输入上训练神经网络,即,以通过优化目标函数来确定神经网络的参数的训练值。
一般而言,本说明书中描述的主题的一个创新方面可用由一个或多个计算机执行的用于通过优化目标函数来在多个训练输入上训练神经网络的方法加以具体实现,其中,神经网络被配置成接收网络输入并且处理该网络输入以生成网络输出;神经网络包括后面有第二子网络的第一子网络;并且第一子网络被配置成在通过神经网络对所述网络输入的所述处理期间,接收子网络输入,处理子网络输入以生成子网络激活,并且将子网络激活作为输入提供给第二子网络。方法包括使用神经网络来处理训练输入以为训练输入生成训练模型输出的动作,包括使用第一子网络来处理用于训练输入的子网络输入以根据第一子网络的参数的当前值来为训练输入生成子网络激活并且将子网络激活作为输入提供给第二子网络;通过使用合成梯度模型来根据合成梯度模型的参数的当前值处理子网络激活而确定用于第一子网络的目标函数的合成梯度;以及更新参数的当前值。
此方面的其它实施例可包括以下可选特征中的一个或多个。在一些实施方式中,合成梯度模型是与神经网络、第一子网络和第二子网络中的每一个不同的神经网络。在一些实施方式中,方法包括针对每个训练输入确定用于第一子网络的目标梯度并且基于目标梯度与合成梯度之间的误差更新合成梯度模型的参数的当前值的动作。
在一些实施方式中,确定用于第一子网络的目标梯度包括通过神经网络反向传播目标函数的实际梯度以确定目标梯度;或者通过第二子网络反向传播用于第二子网络的合成梯度以确定用于第一子网络的目标梯度。在一些实施方式中,第一子网络包括多个神经网络层,并且使用合成梯度来更新第一子网络的参数的当前值包括通过第一子网络反向传播合成梯度以更新第一子网络的参数的当前值。在一些实施方式中,神经网络是前馈神经网络,第一子网络是第一神经网络层,并且第二子网络是第二神经网络层。
在一些实施方式中,方法还包括以下步骤的动作:通过使用合成梯度模型来根据合成梯度模型的参数的当前值处理子网络激活而确定用于第一子网络的目标函数的至少一个将来的合成梯度的动作;以及基于每个将来的合成梯度与对应的目标将来的梯度之间的误差更新合成梯度模型的参数的当前值。在一些实施方式中,使用合成梯度来更新第一子网络的参数的当前值包括使用合成梯度代替实际的反向传播梯度来更新参数的当前值。在一些实施方式中,使用合成梯度来更新第一子网络的参数的当前值包括与更新第二子网络的参数的当前值异步地使用合成梯度来更新参数的当前值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于渊慧科技有限公司,未经渊慧科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780031195.8/2.html,转载请声明来源钻瓜专利网。