当前位置: 首页 > 专利查询>谷歌公司专利>正文

经压缩的递归神经网络模型制造技术

技术编号:15983323 阅读:51 留言:0更新日期:2017-08-12 05:49
本申请涉及经压缩的递归神经网络模型。用于实现经压缩递归神经网络(RNN)的方法、系统和装置,所述装置包括在计算机存储介质上编码的计算机程序。系统中的一种包括经压缩RNN,经压缩RNN包括多个递归层,其中每个递归层具有相应的递归权重矩阵和相应的层间权重矩阵,并且其中至少一个递归层被压缩使得经压缩层的相应递归权重矩阵由第一经压缩权重矩阵和投影矩阵定义,并且经压缩层的相应层间权重矩阵由第二经压缩权重矩阵和投影矩阵定义。压缩可以提供许多技术优点,包括更有效地处理数据并且使用更少的数据存储的能力。

【技术实现步骤摘要】
经压缩的递归神经网络模型
本说明书涉及神经网络架构和压缩神经网络。
技术介绍
神经网络是采用一个或多个非线性单元层来预测所接收的输入的输出的机器学习模型。一些神经网络除了输出层之外还包括一个或多个隐藏层。每个隐藏层的输出被用作所述网络中下一层的输入,即下一隐藏层或输出层的输入。网络的每层根据相应参数集的当前值从所接收的输入生成输出。例如被设计用于时间序列问题或序列到序列学习的那些神经网络(递归(recurrent)神经网络(RNN))的一些神经网络包括许可其以隐藏状态变量的形式的记忆持久存在于数据输入之间的层内的递归环路。RNN的变体,长的短期记忆(LSTM)神经网络包括每层内用于控制数据输入之间的数据的持久性的多个门。例如被设计用于时间序列问题或序列到序列学习的那些神经网络的一些神经网络包括许可以隐藏状态变量的形式的记忆持久在数据输入之间的层内的递归环路。
技术实现思路
本说明书描述了涉及递归神经网络架构的技术。一般来说,递归神经网络包括至少一个被压缩的递归神经网络层。具体地,使用共享投影矩阵来联合压缩用于经压缩递归层的递归权重矩阵和层间权重矩阵。对于要被配置为执行特定操作或动作的一个或多个计算机的系统而言,意味着系统已经在其上安装了操作中的软件、固件、硬件或它们的组合,其在操作中使得系统执行操作或动作。对于要被配置为执行特定操作或动作的一个或多个计算机程序而言,意味着一个或多个程序包括当由数据处理装置执行时使得所述装置执行操作或动作的指令。在本说明书中描述的主题可以在特定实施例中实现,以便实现以下优点中的一个或多个。通过在递归神经网络中压缩一个或多个递归层的权重矩阵,递归神经网络被配置为能够更有效地处理数据并且使用更少的数据存储。特别地,可以有效地训练具有一个或多个经压缩递归层的递归神经网络,以实现与全尺寸(例如未经压缩的递归神经网络)相当的性能,同时使用较少的数据存储并且能够通过以下方式更快地处理输入:经压缩递归层的经压缩权重矩阵具有比未经压缩递归神经网络中的对应层的权重矩阵少的参数。实际上,因为经压缩的递归神经网络具有较小的计算足迹,所以经压缩的网络可以能够有效地被实现为即使当未经压缩的网络不能在移动设备上运行时,也能够在具有有限存储和处理能力的移动设备上实时处理输入。在下面的附图和描述中阐述了本说明书的主题的一个或多个实施例的细节。根据说明书、附图和权利要求,主题的其他特征、方面和优点将变得显而易见。附图说明图1示出了示例神经网络系统。图2是用于经压缩递归神经网络的示例过程的流程图。图3是用于针对特定递归层压缩层间权重矩阵和递归权重矩阵的示例过程的流程图。各个附图中相同的附图标号和名称指示相同的元素。具体实施方式图1示出了示例神经网络系统100。神经网络系统100是被实现为其中实现了下面描述的系统、组件和技术的在一个或多个位置中的一个或多个计算机上的计算机程序的系统的示例。神经网络系统100是机器学习系统,其在多个时间步长中的每一个处接收相应的神经网络输入,并且在每个时间步长处生成相应的神经网络输出。也就是说,在多个时间步长中的每一个处,神经网络系统100接收神经网络输入并处理神经网络输入以生成神经网络输出。例如,在给定的时间步长t处,神经网络系统100可以接收神经网络输入102并且生成神经网络输出142。神经网络系统100可以将所生成的神经网络输出存储在输出数据存储库中或者提供神经网络输出以用于某些其他直接目的。神经网络系统100可以被配置为接收任何种类的数字数据输入并且基于该输入生成任何种类的分数或分类输出。例如,如果到神经网络系统100的输入是图像或已经从图像提取的特征,则由神经网络系统100针对给定图像所生成的输出可以是针对对象类别集中的每一个类别的评分,其中每个分数表示图像包含属于该类别的对象的图像的估计似然率。作为另一示例,如果到神经网络系统100的输入是互联网资源(例如,网页)、文档或文档的部分或从互联网资源、文档或文档的部分提取的特征,则由用于给定的互联网资源,则神经网络系统100针对给定的互联网资源、文档或文档的部分所生成的输出可以是一组主题中的每一个的分数,其中每个分数代表互联网资源、文档或文档部分关于所述话题的估计似然率。作为另一示例,如果到神经网络系统100的输入是针对用户的个性化推荐的特征,例如表征推荐的场境的特征、例如表征用户所采取的先前动作的特征,则通过神经网络系统100所生成的输出可以是内容项集合中的每一个内容项的分数,其中每个分数表示用户将有利地响应于被推荐内容项的估计似然率。在这些示例中的一些中,神经网络系统100是向用户提供内容推荐的强化学习系统的一部分。作为另一示例,如果对神经网络系统100的输入是一种语言的文本,则由神经网络系统100所生成的输出可以是针对另一种语言的文本段集合中的每一个文本段的分数,其中每个分数表示所述另一种语言的文本段是所述输入文本到另一种语言的适当翻译的估计似然率。作为另一个示例,如果到神经网络系统100的输入是所说话语的特征,则由神经网络系统100所生成的输出可以是文本段集合中的每一个文本段的分数,每个分数表示该文本段是该话语的正确转录的估计似然率。作为另一个示例,如果到神经网络系统100的输入是图像,则由神经网络系统100所生成的输出可以是文本段集合中的每一个文本段的分数,每个分数表示文本段是存在于输入图像中的文本的估计似然率。特别地,神经网络系统100包括递归神经网络110,其又包括多个递归层,即至少一个经压缩递归层l120和递归层l+1130。递归神经网络110被配置为在每个时间步长处接收在该时间步长处的神经网络输入并且处理神经网络输入以在该时间步长处生成神经网络输出。除了经压缩递归层120和递归层130之外,递归神经网络110可以包括一个或多个其他组件,例如其他递归层,其他非递归神经网络层等等。例如,递归神经网络100可以是包括多个递归层的深度递归网络,所述多个递归层包括一个在另一个之上的有序堆栈中排列的经压缩递归层120和递归层130,以及输出层,所述输出层在每个时间步长处接收来自堆栈中的最高递归层的层输出和可选地堆栈中的其他递归层的层输出,并且处理层输出以在时间步长处生成神经网络输出142。经压缩递归层120被配置为在每个时间步长处接收当前层输入122并且处理当前层输入122、递归层120的当前层状态以及递归层120的当前层输出122,以生成新的层输出126并更新当前层状态以生成新的层状态124。根据递归神经网络110的配置,当前层输入122可以是神经网络输入102或由递归神经网络110的不同组件所生成的输出。另外,对于第一步骤之后的每个时间步长,当前层状态是在前一时间步长处所生成的新的层状态。对于第一时间步长,当前层状态可以是预定的初始层状态。递归层130被配置为在每个时间步长处接收新的层输出126并且处理新的层输出126和递归层130的当前层状态以生成新的层输出136并且以更新当前层状态以生成新的层状态134。根据递归神经网络110的配置,新的层输出126可以作为输入被提供给递归神经网络110中的另一个递归层,以作为对不同类型的神经网络组件的输入,例如到输出层或不同类型的神经网络层的输入,或者可以被提本文档来自技高网...
经压缩的递归神经网络模型

【技术保护点】
一种系统,包括:由一个或多个计算机实现的经压缩递归神经网络(RNN),所述经压缩RNN包括多个递归层,其中,所述RNN的所述多个递归层中的每一个递归层被配置为:针对多个时间步长中的每一个时间步长,接收针对该时间步长的相应层输入,并且处理针对该时间步长的所述层输入,以生成针对该时间步长的相应层输出,其中,所述多个递归层中的每一个递归层具有相应的递归权重矩阵Wh和相应的层间权重矩阵Wx,以及其中所述多个递归层中的至少一个递归层被压缩,使得所述经压缩层的相应的递归权重矩阵

【技术特征摘要】
2016.02.03 US 62/290,6241.一种系统,包括:由一个或多个计算机实现的经压缩递归神经网络(RNN),所述经压缩RNN包括多个递归层,其中,所述RNN的所述多个递归层中的每一个递归层被配置为:针对多个时间步长中的每一个时间步长,接收针对该时间步长的相应层输入,并且处理针对该时间步长的所述层输入,以生成针对该时间步长的相应层输出,其中,所述多个递归层中的每一个递归层具有相应的递归权重矩阵Wh和相应的层间权重矩阵Wx,以及其中所述多个递归层中的至少一个递归层被压缩,使得所述经压缩层的相应的递归权重矩阵由第一经压缩权重矩阵和投影矩阵P1定义,并且所述经压缩层的相应层间权重矩阵由第二经压缩权重矩阵和投影矩阵P1定义。2.根据权利要求1所述的系统,其中所述多个递归层中的每一个递归层被配置为,针对每个时间步长:通过将用于先前层的层间权重矩阵应用于对该层的当前输入以及将用于该层的递归权重矩阵应用于对该层的递归输入,来生成针对该时间步长的所述相应层输出。3.根据任何在前权利要求所述的系统,其中所述多个递归层中的被压缩的所述至少一个递归层被配置为,针对每个时间步长:部分地通过将所述第一经压缩权重矩阵和所述投影矩阵应用于针对该层的相应递归输入,来生成针对该时间步长的所述相应层输出。4.根据任何在前权利要求所述的系统,其中,所述相应的递归权重矩阵由所述第一经压缩权重矩阵和所述投影矩阵的乘积定义,并且其中,所述相应的层间权重矩阵由所述第二经压缩矩阵和所述投影矩阵的乘积定义。5.根据任何在前权利要求所述的系统,其中所述RNN是声学模型。6.根据权利要求1-4中任一项所述的系统,其中所述RNN是语音识别模型。7.根据任何在前权利要求所述的系统,其中所述RNN是所述RNN的未经压缩版本的至少68%的压缩。8.根据权利要求7所述的系统,其中,所述RNN的字错误率在所述RNN的未经压缩版本的字错误率的5%以内。9.一种用于对递归神经网络(RNN)进行压缩的方法,其中,所述RNN由一个或多个计算机实现并且包括多个递归层,其中,所述RNN的所述多个递归层中的每一个递归层被配置为针对多个时间步长中的每一个时间步长,接收针对该时间步长的相应的层输入,并处理所述层输入以生成针对该时间步长的相应的层输出,以及其中每个递归层具有相应的递归权重矩阵Wh和相应的层间权重矩阵Wx,针对所述多个递归层中的一个递归层,所述方法包括:生成第一经压缩权重矩阵和投影矩阵P1,其中所述...

【专利技术属性】
技术研发人员:奥艾斯·阿尔沙里夫罗希特·普拉卡什·普拉巴瓦尔卡尔伊恩·C·麦格劳安托万·让·布吕盖
申请(专利权)人:谷歌公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1