具有学习教练的异步代理以及在不降低性能的情况下在结构上修改深度神经网络制造技术

技术编号:23516229 阅读:29 留言:0更新日期:2020-03-18 02:18
方法和计算机系统通过以下方式来改善经训练的基础深度神经网络,即通过在结构上改变所述基础深度神经网络以创建更新的深度神经网络,使得相对于所述基础深度神经网络,所述更新的深度神经网络在训练数据上未产生性能下降。所述更新的深度神经网络随后进行训练。同时,用于在机器学习系统中使用的异步代理包括第二机器学习系统ML2,其将被训练以执行某些机器学习任务。所述异步代理进一步包括学习教练LC和任选的数据选择器机器学习系统DS。所述数据选择机器学习系统DS的目的是使所述第二级机器学习系统ML2在其学习过程中效率更高(通过选择一组较小但足够的训练数据)和/或更有效(通过选择一组集中于某项重要任务的训练数据)。所述学习教练LC是协助所述DS和所述ML2学习的机器学习系统。多个异步代理也可以彼此通信,每个异步代理在其各自的学习教练的指导下进行异步训练和增长以执行不同的任务。

Asynchronous agent with learning coach and deep neural network structure modification without performance degradation

【技术实现步骤摘要】
【国外来华专利技术】具有学习教练的异步代理以及在不降低性能的情况下在结构上修改深度神经网络优先权本申请要求2017年6月5日提交的标题为“具有学习教练的异步代理”的美国临时申请序列第62/515,142号的优先权,其具有与上述申请相同的专利技术人,并且其全部内容通过引用整体并入本文。相关申请的交叉引用本申请涉及以下申请,所有这些申请的全部内容被并入本文:标题为“用于机器学习系统的学习教练”的PCT申请第PCT/US17/52037号;以及标题为“用于机器学习系统的学习教练”的PCT申请第PCT/US18/20887号。
技术介绍
机器学习系统,特别是深度神经网络,近年来已经取得了巨大的成功。特别地,机器学习系统在处理大量数据的问题时可以很好地缩放。实际上,机器学习系统趋于满足“越大总是越好”的特性。也就是说,针对给定问题可用的数据越多,机器学习分类器或预测器的性能就越好。对于深度神经网络,网络越大且学习的参数越多,就越好,直到达到数据量的限制。作为数据集大小的一个示例,行业标准基准ImageNet拥有超过1400万张图像,其中超过一百万张已被注释并配有边框。然而,诸如深度神经网络的机器学习系统中的较大的数据集和大量参数也存在问题。例如,训练深度神经网络所需的计算量往往与数据集的大小乘以神经网络的大小成比例地增长。另外,具有多个隐藏层的大型神经网络很难解释。还难以以任何细化的方式来控制学习过程。对于非常大的网络存在的另一个问题是计算需要在多个计算机之间进行分配。然而,当网络训练在通过有限带宽的数据通道相互通信的多个计算机之间分配时,数据带宽可能成为计算速度的限制因素。这种数据瓶颈可能限制最大实际网络的大小,即使使用更多的计算机。随着深度神经网络的大小变得越来越大,最终还会出现其它问题,尤其是在向已经被训练成高性能的网络添加额外的层时。尽管从理论上讲,更深的网络应该总是比层较少的网络性能更好,至少在训练数据上,但也已经观察到相反的现象。也就是说最终,随着添加更多层,性能不仅下降,而且急剧下降。在出现此问题之前,某些较新的架构已能够显著地增加层的数量,但是这些较新的架构并未消除该问题。对于深度神经网络存在的另一个问题是,在多层的情况下,梯度趋于“消失”,即,梯度的幅度趋于收敛为零。当梯度的幅度接近零时,基于梯度下降的算法中的学习将变得非常缓慢。其中“越大总是越好”的另一方面是机器学习系统的集成的使用。对于几乎所有基准测试,机器学习系统的集成均击败了最佳单一系统的性能。此外,随着将更多成员添加到集成中,性能往往会逐渐提高。然而,通过向集成添加另外的成员而实现的逐渐提高的量迅速下降。一个重要的问题是,在训练和操作中,对于集成的计算量往往与集成中的成员数量成比例。因此,增加大型集成的大小并不划算。
技术实现思路
在一个总体方面,本专利技术涉及用于改善基础深度神经网络的方法和计算机系统。所述方法包括用训练数据将基础深度神经网络训练到期望的性能标准,例如达到或接近收敛或驻点(的阈值范围内)。基础深度神经网络包括输入层、输出层以及位于输入层和输出层之间的第一隐藏层。第一隐藏层包括第一节点,所述第一节点继而包括第一入弧和第一出弧。所述方法进一步包括在结构上改变基础深度神经网络以创建更新的深度神经网络,使得相对于基础深度神经网络,更新的深度神经网络在训练数据上未产生性能下降。所述方法进一步包括随后训练更新的深度神经网络。在各种实施方式中,在结构上改变基础网络可以包括在相对于基础神经网络未降低更新的神经网络的性能的情况下,向第一节点添加新的弧。新的弧可以是新节点的入弧,或者是新节点的出弧。对基础网络的结构改变还可以包括向第一隐藏层添加第二节点或向基础神经网络添加第二隐藏层。更进一步地,在结构上改变基础网络可以包括用包括例如检测器节点和拒绝器节点的复合节点替换隐藏层中的第一节点。在各种实施方式中,基础神经网络包括上子神经网络和下子神经网络,上子神经网络包括输出层,下子神经网络包括输入层,使得隐藏层位于上子神经网络和下子神经网络之间。在该情况下,在结构上改变基础网络可以进一步包括复制下子神经网络,使得至少存在第一下子神经网络和第二下子神经网络,使得隐藏层中的复合网络的检测器节点连接至上子神经网络和第一下子神经网络,且隐藏层中的复合网络的拒绝器节点连接至上子神经网络和第二下子神经网络。复合节点可以进一步包括第三节点,在这种情况下,在结构上改变基础网络可以进一步包括复制下子神经网络,使得存在第三下子神经网络,并且使得隐藏层中的复合网络的第三节点连接至上子神经网络和第三下子神经网络。在另一方面,本专利技术涉及一种用于在机器学习系统中使用的异步代理。异步代理包括第二机器学习系统ML2,其将被训练以执行某些机器学习任务。异步代理进一步包括学习教练LC和任选的数据选择器机器学习系统DS。数据选择机器学习系统DS的目的是使第二级机器学习系统ML2在其学习过程中效率更高(通过选择一组较小但足够的训练数据)和/或更有效(通过选择一组集中于某项重要任务的训练数据)。学习教练LC是协助DS和ML2学习的机器学习系统。由于异步代理包括一个或多个学习教练LC,因此在本文中有时将其称为具有学习教练或“AALC”的异步代理。本申请描述了如何利用来自学习教练LC和/或数据选择机器学习系统DS的输入来对第二级机器学习系统ML2进行逐渐训练和增长。第二级机器学习系统ML2增长的一种方式,特别是当其包括深度神经网络时,是在节点之间添加新的弧、在网络的现有层中添加新的节点、在网络中添加新的层、添加复合节点和/或新的输入或输出节点。本文描述了至少在关于训练数据方面不降低网络性能的情况下以这种方式使网络增长的各种技术。在其它方面,本专利技术涉及一种包括多个AALC的系统,所述多个AALC通过例如管理单元进行通信。每个AALC在各自的学习教练的指导下进行异步训练和增长,以执行不同的任务。在此类系统中,AALC可能已经在不同的数据上进行了训练和/或可能具有不同的网络架构。本申请描述了用于AALC以有效方式关于内部状态进行通信的方式。通过以下描述,本专利技术的实施例的这些和其它益处将变得显而易见。附图说明结合以下附图,通过示例的形式对本专利技术的各种实施例进行描述,其中:图1是根据本专利技术的各种实施例的AALC的框图;图2和图12是根据本专利技术的各种实施例的具有多个AALC的系统的框图;图3是根据本专利技术的各种实施例的用于AALC的逐渐学习和增长的过程的流程图;图4是示出根据本专利技术的各种实施例的用于将集成组合到单个深度神经网络中的技术的示意图;图5是示出根据本专利技术的各种实施例的在不降低网络性能的情况下向深度神经网络添加弧的技术的示意图;图6是示出根据本专利技术的各种实施例的在不降低网络性能的情况下向深度神经网络的现有层添加节点的技术的示意图;图7和图8是示出根据本专利技术的各种实施例的在不降低网络性能的情况下向深度神经网络的现有层添加新的节点层的技术的示意图;图9是复合节点的示意图;...

【技术保护点】
1.一种用于改善深度神经网络的方法,包括:/n用训练数据将基础深度神经网络训练到期望的性能标准,其中:/n所述基础深度神经网络包括输入层、输出层以及位于所述输入层和所述输出层之间的第一隐藏层;/n所述第一隐藏层包括第一节点;以及/n所述第一节点包括第一入弧和第一出弧;/n在结构上改变所述基础深度神经网络以创建更新的深度神经网络,其中相对于所述基础深度神经网络,所述更新的深度神经网络在所述训练数据上未产生性能下降;以及/n随后训练所述更新的深度神经网络。/n

【技术特征摘要】
【国外来华专利技术】20170605 US 62/515,1421.一种用于改善深度神经网络的方法,包括:
用训练数据将基础深度神经网络训练到期望的性能标准,其中:
所述基础深度神经网络包括输入层、输出层以及位于所述输入层和所述输出层之间的第一隐藏层;
所述第一隐藏层包括第一节点;以及
所述第一节点包括第一入弧和第一出弧;
在结构上改变所述基础深度神经网络以创建更新的深度神经网络,其中相对于所述基础深度神经网络,所述更新的深度神经网络在所述训练数据上未产生性能下降;以及
随后训练所述更新的深度神经网络。


2.根据权利要求1所述的方法,其中在结构上改变所述基础网络包括:在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一节点添加新的入弧。


3.根据权利要求2所述的方法,其中在随后训练所述更新的深度神经网络之前,将所述新的入弧的权重初始设置为零。


4.根据权利要求1所述的方法,其中在结构上改变所述基础网络包括:在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一节点添加新的出弧。


5.根据权利要求2所述的方法,其中在随后训练所述更新的深度神经网络之前,将所述新的出弧的权重初始设置为零。


6.根据权利要求1所述的方法,其中在结构上改变所述基础网络包括:在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一隐藏层添加第二节点。


7.根据权利要求6所述的方法,其中:
所述第二节点具有至少一个入弧和至少一个出弧;以及
在随后训练所述更新的深度神经网络之前,将所述第二节点的所述至少一个出弧中的每一个的权重初始设置为零。


8.根据权利要求6所述的方法,其中所述第二节点的激活并非由所述基础深度神经网络中的其它节点确定。


9.根据权利要求6所述的方法,其中所述第二节点具有针对到所述第二节点的输入数据值的每个向量的指定目标值。


10.根据权利要求1所述的方法,其中在结构上改变所述基础网络包括:在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述基础神经网络添加第二隐藏层,其中所述第二隐藏层位于所述输入层和所述输出层之间并且不同于所述第一隐藏层。


11.根据权利要求10所述的方法,其中:
所述第二隐藏层位于所述第一隐藏层和所述输出层之间;
所述第二隐藏层包括多个节点;
所述第二隐藏层的所述多个节点包括第一组一个或多个节点和第二组一个或多个节点;
所述第二隐藏层中的所述第二组一个或多个节点中的节点的数量等于所述第一隐藏层中的节点的数量,使得所述第二层中的所述第二组一个或多个节点中的每个节点在所述第一隐藏层中都具有对应节点;
所述第二隐藏层中的所述第一组一个或多个节点中的每个节点包括入弧和出弧;
所述第二隐藏层中的所述第二组一个或多个节点中的每个节点包括与所述第一隐藏层中的其对应节点相同数量的入弧和出弧,从而使得所述层中的所述第二组一个或多个节点中的每个节点具有与所述第一隐藏层中其对应节点相同数量的入弧和出弧;
在随后训练所述更新的深度神经网络之前,将所述第二隐藏层的所述第一组节点中的所述一个或多个节点的每个出弧的权重初始设置为零;以及
将所述第二隐藏层的所述第二组节点中的所述一个或多个节点的每个入弧的权重初始设置为值一。


12.根据权利要求10所述的方法,其中:
所述第二隐藏层位于所述第一隐藏层和所述输出层之间;
所述第二隐藏层包括一个或多个节点;
所述第二隐藏层中的所述一个或多个节点中的每一个包括入弧和出弧;
在随后训练所述更新的深度神经网络之前,将所述第二隐藏层中的所述一个或多个节点的每个出弧的权重初始设置为零;以及
在随后训练所述更新的深度神经网络之前,来自所述第一隐藏层的出弧跳过所述第二隐藏层。


13.根据权利要求11所述的方法,其中在结构上改变所述基础网络包括用复合节点替换所述隐藏层中的所述第一节点。


14.根据权利要求13所述的方法,其中所述复合节点包括检测器节点和拒绝器节点。


15.根据权利要求14所述的方法,其中:
所述基础神经网络包括:
包括所述输出层的上子神经网络;以及
包括所述输入层的下子神经网络,使得所述隐藏层位于所述上子神经网络和所述下子神经网络之间;以及
在结构上改变所述基础网络进一步包括复制所述下子神经网络,使得至少存在第一下子神经网络和第二下子神经网络;所述隐藏层中的所述复合网络的所述检测器节点连接至所述上子神经网络和所述第一下子神经网络;以及
所述隐藏层中的所述复合网络的所述拒绝器节点连接至所述上子神经网络和所述第二下子神经网络。


16.根据权利要求14所述的方法,其中:
所述复合节点包括第三节点;
在结构上改变所述基础网络进一步包括复制所述下子神经网络,使得存在第三下子神经网络;以及
所述隐藏层中的所述复合网络的所述第三节点连接至所述上子神经网络和所述第三下子神经网络。


17.根据权利要求1至16中任一项所述的方法,进一步包括:
在结构上改变所述基础深度神经网络之后,用验证数据对所述更新的深度神经网络进行验证;以及
在检测到相对于所述基础深度神经网络,所述更新的深度神经网络在所述验证数据上产生性能下降时:
通过机器学习学习教练学习针对所述更新的深度神经网络的特征改变,以纠正相对于所述基础深度神经网络,所述更新的深度神经网络在所述验证数据上的性能下降;
以及在所述更新的深度神经网络中实现所述特征改变。


18.根据权利要求17所述的方法,其中所述基础深度神经网络包括深度前馈神经网络。


19.根据权利要求17所述的方法,其中所述基础深度神经网络包括深度递归神经网络。


20.根据权利要求1至16中任一项所述的方法,其中所述基础深度神经网络包括深度前馈神经网络。


21.根据权利要求1至16中任一项所述的方法,其中所述基础深度神经网络包括深度递归神经网络。


22.根据权利要求1至16中任一项所述的方法,其中所述期望的性能标准是用于所述基础深度神经网络的反向传播训练算法中的驻点。


23.一种用于改善深度神经网络的计算机系统,所述计算机系统包括:
第一组一个或多个处理器,以用于用训练数据将基础深度神经网络训练到期望的性能标准,其中:
所述基础深度神经网络包括输入层、输出层以及位于所述输入层和所述输出层之间的第一隐藏层;
所述第一隐藏层包括第一节点;以及
所述第一节点包括第一入弧和第一出弧;第二组一个或多个处理器,以用于:
在结构上改变所述基础深度神经网络以创建更新的深度神经网络,其中相对于所述基础深度神经网络,所述更新的深度神经网络在所述训练数据上未产生性能下降;以及
随后训练所述更新的深度神经网络。


24.根据权利要求23所述的计算机系统,其中所述第二组一个或多个处理器通过在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一节点添加新的入弧来在结构上改变所述基础网络。


25.根据权利要求24所述的计算机系统,其中在随后训练所述更新的深度神经网络之前,将所述新的入弧的权重初始设置为零。


26.根据权利要求23所述的计算机系统,其中所述第二组一个或多个处理器通过在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一节点添加新的出弧来在结构上改变所述基础网络。


27.根据权利要求24所述的计算机系统,其中在随后训练所述更新的深度神经网络之前,将所述新的出弧的权重初始设置为零。


28.根据权利要求23所述的计算机系统,其中所述第二组一个或多个处理器通过在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述第一隐藏层添加第二节点来在结构上改变所述基础网络。


29.根据权利要求28所述的计算机系统,其中:
所述第二节点具有至少一个入弧和至少一个出弧;以及
在随后训练所述更新的深度神经网络之前,将所述第二节点的所述至少一个出弧中的每一个的权重初始设置为零。


30.根据权利要求28所述的计算机系统,其中所述第二节点的激活并非由所述基础深度神经网络中的其它节点确定。


31.根据权利要求28所述的计算机系统,其中所述第二节点具有针对到所述第二节点的输入数据值的每个向量的指定目标值。


32.根据权利要求23所述的计算机系统,其中所述第二组一个或多个处理器通过在相对于所述基础神经网络未降低所述更新的神经网络的性能的情况下,向所述基础神经网络添加第二隐藏层来在结构上改变所述基础网络,其中所述第二隐藏层位于所述输入层和所述输出层之间并且不同于所述第一隐藏层。


33.根据权利要求32所述的计算机系统,其中:
所述第二隐藏层位于所述第一隐藏层和所述输出层之间;
所述第二隐藏层包括多个节点;
所述第二隐藏层的所述多个节点包括第一组一个或多个节点和第二组一个或多个节点;
所述第二隐藏层中的所述第二组一个或多个节点中的节点的数量等于所述第一隐藏层中的节点的数量,使得所述第二层中的所述第二组一个或多个节点中的每个节点在所述第一隐藏层中都具有对应节点;
所述第二隐藏层中的所述第一组一个或多个节点中的每个节点包括入弧和出弧;
所述第二隐藏层中的所述第二组一个或多个节点中的每个节点包括与所述第一隐藏层中的其对应节点相同数量的入弧和出弧,使得所述层中的所述第二组一个或多个节点中的每个节点具有与所述第一隐藏层中的其对应节点相同数量的入弧和出弧;
在随后训练所述更新的深度神经网络之前,将所述第二隐藏层的所述第一组节点中的所述一个或多个节点的每个出弧的权重初始设置为零;以及
将所述第二隐藏层的所述第二组节点中的所述一个或多个节点的每个入弧的权重初始设置为值一。


34.根据权利要求32所述的计算机系统,其中:
所述第二隐藏层位于所述第一隐藏层和所述输出层之间;
所述第二隐藏层包括一个或多个节点;
所述第二隐藏层中的所述一个或多个节点中的每一个包括入弧和出弧;
在随后训练所述更新的深度神经网络之前,将所述第二隐藏层中的所述一个或多个节点的每个出弧的权重初始设置为零;以及
在随后训练所述更新的深度神经网络之前,来自所述第一隐藏层的出弧跳过所述第二隐藏层。


35.根据权利要求23至34中任一项所述的计算机系统,进一步包括:
由第三组一个或多个处理器实现的机器学习学习教练,其中所述机器学习学习教练用于在检测到相对于所述基础深度神经网络,所述更新的深度神经网络在验证数据上产生性能下降时:
学习针对所述更新的深度神经网络的特征改变,以纠正相对于所述基础神经网络,所述更新的神经网络在所述验证数据上的性能下降;以及
在所述更新的深度神经网络中实现所述特征改变。


36.根据权利要求35所述的计算机系统,其中所述基础深度神经网络包括深度前馈神经网络。


37.根据权利要求35所述的方法,其中所述基础深度神经网络包括深度递归神经网络。


38.根据权利要求23至34中任一项所述的方法,其中所述基础深度神经网络包括深度前馈神经网络。


39.根据权利要求23至34中任一项所述的方法,其中所述基础深度神经网络包括深度递归神经网络。


40.根据权利要求23至34中任一项所述的方法,其中所述期望的性能标准是用于所述基础深度神经网络的反向传播训练算法中的驻点。


41.一种自动编码器,包括:
下子网络,其包括编码器网络;
低带宽特征向量,其用作所述自动编码器的瓶颈层;以及
上子网络,使得所述低带宽特征向量位...

【专利技术属性】
技术研发人员:J·K·贝克尔
申请(专利权)人:D五AI有限责任公司
类型:发明
国别省市:美国;US

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

1