在跨联网计算边缘连续运行应用程序的人工智能和深度学习中实现连续的存储器有界学习的系统和方法与流程

文档序号:20167361发布日期:2020-03-24 21:53阅读:225来源:国知局
在跨联网计算边缘连续运行应用程序的人工智能和深度学习中实现连续的存储器有界学习的系统和方法与流程
相关申请的交叉引用本申请要求根据《美国法典》第35卷第119(e)条,于2017年12月31日提交的美国申请号62/612,529和2017年5月9日提交的美国申请号62/503,639的优先权权益。这些申请中的每一个以全文引用的方式并入本文中。
背景技术
:包括含有插入到输入层与输出层之间的许多神经元层的深度神经网络(dnn)的传统神经网络需要对特定数据集训练数千个或数百万个迭代循环。这些循环常常在高性能计算服务器中执行。事实上,取决于输入数据集的大小,一些传统的dnn可能需要几天或甚至几周的训练。用于训练dnn的一种技术涉及反向传播算法。反向传播算法通过应用链法则以便反向传播误差梯度,来从标记的数据集计算与误差梯度成比例的dnn中的所有权重的变化。反向传播对每个数据的权重进行小的变化,并且在多个阶段中在集合中的所有数据上运行。每个迭代循环采用的学习速率越大,损失函数的梯度将越可能稳定到局部最小值,而非全局最小值,这可能导致性能较差。为了提高损失函数将稳定到全局最小值的可能性,dnn降低学习速率,这会使每个训练阶段的权重有小变化。这增加了训练循环的次数和总学习时间。图形处理单元(gpu)技术的进步对于用来实现过去需要数周或数月的训练工作的高度并行操作带来计算能力的巨大改进。这些工作现在可以在数小时或数天内用gpu完成,但是对于实时知识更新而言,这仍然不够快。此外,利用高性能计算服务器来更新dnn提高了服务器价格和能耗方面的成本。这使得在运行时更新基于dnn的系统的知识极其困难,这种更新是许多实时操作情况期望的。此外,由于针对任何单个训练样本计算的损失函数的梯度(由于通常为分布式表示)可能影响网络中的所有权重,当标准dnn学习新对象时很容易忘记先前的知识。在多个阶段中重复展示相同的输入可缓解此问题,缺点是将新知识快速添加到系统是极其困难的。这是为何在计算有限的边缘装置(例如,手机、平板电脑或小型处理器)上学习不切实际或完全不可能的一种原因。即使遗忘问题得到解决,由于训练的高计算负载、小训练步长以及所有输入的重复呈现,因此在边缘装置上进行学习仍将不切实际。这些限制不仅适用于整个部署寿命中的单个计算边缘,其中,边缘可能需要更新其知识,还适用于分布式多边缘系统(例如,网络中连接的智能电话、联网智能相机、无人机或自动驾驶车辆的车队等),其中快速共享新获取的知识是智能机构在其部署生命周期内的期望特性。运行反向传播算法的处理器计算在输出处每个神经元的误差贡献,并且通过网络层向后分配误差。通过计算损失函数的梯度来调整所有神经元的权重。因此,新的训练示例在不重新训练旧的示例的情况下无法添加至预先训练的网络,以免网络失去正确地对旧示例分类的能力。丧失正确分类旧示例的能力被称为“突然遗忘”。当结合实时操作机器考虑时,遗忘问题尤其相关,实时操作机器通常需要在运行的同时快速学习并在运行中并入新信息。为了学习知识,使用传统dnn的实时操作机器可能必须累积大量的数据以重新训练dnn。累积的数据从实时操作机器(即,装置本身,例如,自动驾驶汽车、无人机、机器人等)的“边缘”传输到中心服务器(例如,基于云的服务器),以便获得来自操作者的标签,然后重新训练在边缘上执行的dnn。累积的数据越多,在时间和网络带宽方面,传输过程费用越高。另外,在中心服务器上的交错训练必须将新数据与在系统的整个生命周期存储的原始数据进行组合。这产生了严重的传输带宽和数据存储限制。总之,将常规基于反向传播的dnn训练应用于实时操作系统有以下缺点:a.在运行中用新知识更新系统是不可能的;b.不与服务器定期通信,且没有大量的知识更新等待时间,在边缘的整个部署周期中进行学习是不可能的;c.学习新信息需要服务器空间、能耗和磁盘空间消耗,以便无限地存储所有输入数据以用于进一步训练;d.无法在小型计算边缘装置上进行学习;以及e.不经过缓慢且昂贵的服务器端重新训练和重新部署,无法跨多个边缘归并知识。技术实现要素:终身深度神经网络(l-dnn)使得能够在轻量级计算装置(边缘)中的人工神经网络(ann)和深度神经网络(dnn)中进行连续、在线、终身学习,而不需要耗时的计算密集型学习。l-dnn使得能够从连续数据流进行实时学习,避开了存储输入数据以用于反向传播学习的多次迭代的需要。l-dnn技术将富集表示、基于dnn的子系统(模块a)与快速学习子系统(模块b)结合以实现对表示感兴趣的实体或事件的特征的快速但仍稳定的学习。这些特征集可通过慢速学习方法(例如,反向传播)进行预训练。在本公开中详细描述的基于dnn的情况中(对于模块a通过采用非dnn方法,其他特征描述是可能的),dnn的高级特征提取层用作模块b中的快速学习系统的输入,以在运行时对熟悉的实体和事件进行分类,并且增加对陌生实体和事件的知识。模块b能够学习重要信息,并捕获环境的描述性和高度预测特征,而没有慢速学习的缺点。l-dnn技术可以应用于视觉、结构光、激光雷达、声纳、雷达或音频数据以及其他模式。对于视觉或类似数据,l-dnn技术可以应用于视觉处理,例如,实现全图像分类(例如,场景检测),基于边界盒的对象识别,像素方式分割,以及其他视觉识别任务。l-dnn技术还可以执行非视觉识别任务,例如非视觉信号的分类及其他任务,诸如,当机器人、自动驾驶汽车、无人机或其他装置正通过环境时,通过渐进地增加知识来更新即时定位与地图创建(slam)生成的地图。随着l-dnn学习更多实体或事件(用视觉术语,“对象”或“类别”),l-dnn中的内存合并使内存需求在模块b中得到控制。另外,l-dnn方法使得多边缘计算装置能够跨边缘归并他们的知识(或对输入数据分类的能力)。可以在点对点的基础上,通过在两个模块b之间直接交换神经网络表示,或经由将来自多个边缘的多个模块b的表示归并的中间服务器,来进行归并。最后,l-ddn不依赖于反向传播,由此显著地减少了使用新的输入数据更新l-dnn知识的训练时间、功率要求和计算资源。应了解,前述概念和下文更详细地论述的附加概念的所有组合(只要此类概念不相互矛盾)被认为是本文公开的本发明主题的一部分。具体地,在本公开的结束时出现的要求保护的主题的所有组合都被认为是本文公开的本发明主题的一部分。还应当理解,本文中明确使用的术语(也可以出现在通过引用并入的任何公开中)应当被赋予与本文公开的特定概念最一致的含义。通过查看以下附图和详细描述,其他系统、过程和特征对于所属领域的技术人员将变得显而易见。旨在将所有此类附加系统、过程和特征包括在本说明书中,在本发明的范围内,且受所附权利要求书的保护。附图说明技术人员将理解,附图主要是出于说明的目的,而不意图限制本文所描述的本发明主题的范围。附图未必按比例绘制;在一些情况下,本文公开的本发明主题的各个方面可在附图中被放大或扩大显示,以便于理解不同的特征。在附图中,类似的附图标记一般是指相同特征(例如,功能上类似和/或结构上类似的元件)。图1图示了终身深度神经网络(l-dnn)的概述,因为它涉及多个计算边缘,所述多个计算边缘单独地作用于数据流,或者被点对点或通过中间计算机服务器连接。图2图示了示例性l-dnn架构。图3图示了神经网络中未知的概念的实施方式。图4图示了作为一种示例性实施方式的基于vgg-16的l-dnn分类器。图5图示了非均匀多尺度对象检测。图6图示了用于对象分割的基于掩码r-cnn的l-dnn。图7a图示了使用自适应共振理论(art)神经网络的合并和融合。图7b图示了如何能够通过关于场景的全局信息和学习到的对象之间的过去关联解开本地模糊信息,例如,骆驼(第一场景,沙漠)或狗(第二场景,郊区)的像素化图像。图8图示了将l-dnn应用于基于无人机的工业检查使用案例。图9将图8的基于无人机的工业检查使用案例扩展到协同运行的多个l-dnn承载无人机的情况。图10图示了将l-dnn应用于仓库库存使用案例。图11图示了使用l-dnn共同获取和共享知识的多个智能装置。图12图示了在基于数据中心的应用中l-dnn替换常规dnn的案例。具体实施方式在实时操作机器中的持续学习终身学习深度神经网络或终身深度神经网络(l-dnn)使得实时操作机器能够在边缘处在运行时学习,而无需在中心服务器或云端学习。这消除了网络延时,提高了实时性能,并在需要时保证隐私。在某些情况下,可以在现场使用l-dnn对特定任务更新实时操作机器。例如,使用l-dnn,检查无人机可以学习如何识别在蜂窝塔或太阳能板阵列顶处的问题,可以基于用户偏好个性化智能玩具,而不需要担心隐私问题,因为数据不会在本地装置之外共享,智能电话可以(与所有装置点对点或全局地)共享在边缘处学习的知识,而无需传输信息给中心服务器以用于长时间学习,或自动驾驶汽车可以在运行时学习和共享知识。l-dnn还能够在不忘记旧知识的情况下学习新知识,从而减轻或消除突然遗忘。换言之,本技术使得实时操作机器能够在a)不需要发送或存储输入图像,b)耗时训练,或c)大型计算资源的情况下基于用户输入来连续地且最佳地调整边缘处的行为。在用l-dnn部署后的学习允许实时操作机器适应其环境中的变化和用户互动,处理原始数据集中的缺陷,并为用户提供定制体验。所公开的技术还可以归并来自多个边缘装置的知识。这种归并包括“群集集合”和知识的标记并在边缘装置中共享这些收集到的知识,消除数小时的冗长的集中式标记。换言之,来自一个或多个边缘装置的大脑可以归并到另一个(点对点)大脑或者归并到被推送回边缘处的一些或全部装置的共享大脑中。l-dnn确保了知识的归并/融合/共享/组合产生的存储器占用的增长不比对象数量的线性增长更快,是实时发生的,并使少量的信息在装置之间交换。这些特征使l-dnn应用于现实世界应用。l-dnn实施异构神经网络架构,其特征在于两个模块:1)慢速学习模块a,其包括神经网络(例如,深度神经网络),所述神经网络在工厂预先训练和固定,或被配置成经由反向传播或基于数据输入序列的其他学习算法进行学习;以及2)模块b,其提供增量分类器,所述增量分类器能够用很少的训练样本瞬时改变突触权重和表示。此增量分类器的示例性实例化包括,例如,自适应共振理论(art)网络或具有对比发散训练神经网络的限制性玻尔兹曼机(rbm),以及非神经方法,例如支持向量机(svc)或其他快速学习监督分类过程。l-dnn的典型应用示例由以下各项举例说明但不限于以下各项:物联网(iot)装置,其基于用户的习惯学习使用模式;自动驾驶车辆,其可以适应来自用户的驾驶“风格”,在运行中快速学习新技能,或停泊在新车道上;无人机,其能够在运行中学习基础设施损坏的新分类,并且能够在运行时经过短暂的学习之后发现该损坏;家庭机器人,诸如玩具或伴侣机器人,其能够(几乎)瞬时地学习并且无需连接云端以获得其所有者的身份;机器人,其能够学习识别以前从未见过的对象并对其作出反应,避免新障碍,或者找到世界地图上的新对象;工业机器人,其能够学习新零件以及如何在运行中操纵它;以及安全摄像头,其能够学习新个体或对象,并在由连接到网络的其他摄像头提供的图像中快速找到它。上面的应用仅是通过本文所述的创新得以解开和实现的一类问题的示例,其中学习可直接在嵌入特定应用的计算装置中进行,而无需在服务器上进行昂贵且冗长的迭代学习。本文公开的技术可应用于若干输入模式,包括但不限于来自有源传感器(例如,红外(ir)成像、激光雷达数据、声纳数据等)的视频流、数据、声学数据、其他时间序列数据(例如,传感器数据、实时数据流,包括工厂生成的数据、iot装置数据、财务数据等),以及这些数据流的任何多模式线性/非线性组合。l-dnn概述如上所公开,l-dnn实施异构神经网络架构以组合快速学习模式和慢速学习模式。在快速学习模式下,实现l-dnn的实时操作机器快速学习新知识和新经验,以便它能够几乎立即响应新知识。在此模式下,快速学习子系统中的学习速率很高,以有利于新知识和对应的新经验,而慢速学习子系统中的学习速率设置为低值或零,以保留旧知识和对应的旧经验。图1提供了l-dnn架构的总览,其中,运行l-dnn的多个装置协同操作,所述多个装置包括主边缘/中心服务器和若干计算边缘(例如,无人机、机器人、智能手机或其它iot装置)。每个装置接收感知输入100并将其馈送到包括慢速学习模块a102和快速学习模块b104的对应l-dnn106。每个模块a102基于预学习(固定权重)dnn,并充当特征提取器。它接收输入100,提取相关特征形成对象的压缩表示,并将这些表示馈送到对应的模块b104。模块b104能够快速学习这些对象表示。通过与用户互动,它接收陌生对象的正确标签,快速学习每个特征向量与对应标签之间的关联,并且因此可以立即识别这些新对象。由于多个l-dnn106学习不同的输入,它们可以点对点(虚线)连接或连接到中心服务器(点线)以融合(熔合、归并或组合)新获取的知识并与其他l-dnn106共享,如下文所公开。与传统的对象检测dnn“仅看一次”(yolo)相比,下面呈现的示例性对象检测l-dnn实施方式产生了以下引导结果。具有一个对象的相同的小(600个图像)自定义数据集用于训练和验证两个网络。这些图像中的200个图像被用作验证集。从剩余的400个图像创建四种不同大小的训练集(100个图像,200个图像,300个图像和400个图像)。对于l-dnn训练,训练集中的每个图像仅呈现一次。对于传统的dnnyolo,通过随机打乱训练集创建若干批次,并且通过这些批次进行多次迭代训练。训练后,在两个网络上运行验证,并产生以下平均准确率(map)结果:训练集大小100200300400yolomap0.510.630.640.65l-dnnmap0.550.770.770.79此外,使用400个图像训练集的l-dnn的训练时间是1.1秒;yolo的训练时间为21.5小时。这是非常大的性能改进。l-dnn的存储器占用为320mb,而yolo占用为500mb。这些结果清楚地显示,l-dnn能够实现比传统的dnnyolo更高的精度,并且使用较小的数据集、更快的训练时间和更小的存储器需求来实现。示例性l-dnn架构图2图示了由实时操作机器(诸如机器人、无人机、智能手机或iot装置)使用的示例性l-dnn架构。l-dnn106使用两个子系统,即慢速学习模块a102和快速学习模块b104。在一种实施方式中,模块a包括预先训练的dnn,模块b基于快速学习自适应共振理论(art)范式,其中dnn向art馈送后面特征层中的一个的输出(通常,dnn之前的最后一层或倒数第二层自己分类完全连接的层)。其他配置是可能的,其中多个dnn层可(例如,以多尺度、投票或分层形式)将输入提供到一个或多个模块b。输入源100(诸如数码相机、检测器阵列或麦克风)从环境获取信息/数据(例如,视频数据、结构化光数据、音频数据、其组合,等等)。如果输入源100包括相机系统,它可以获取围绕实时操作机器的环境的视频流。来自输入源100的输入数据由模块a102实时处理,该模块a将经压缩特征信号提供为模块b104的输入。在此示例中,视频流可以由模块a和模块b实时地处理为一系列图像帧。模块a和模块b可以在具有适当的易失性和非易失性存储器和适当的输入/输出接口的合适的计算机处理器(例如,图形处理器单元、现场可编程门阵列,或专用集成电路)中实现。在一种实施方式中,将输入数据馈送到模块a中的预先训练的深度神经网络(dnn)200。dnn200包括用于提取特征的卷积层204的叠堆202,所述卷积层用于提取可用于表示如在示例性实施部分中详述的输入信息/数据的特征。dnn200可在部署之前在工厂预先训练,以实现所需的数据表示水平。它可以完全由确定其架构的配置文件并由代表训练期间获取的知识的对应权重集定义。l-dnn系统106利用dnn中的权重是优异的特征提取器这一事实。为了将模块b104(其包括一个或多个快速学习神经网络分类器)连接到模块a102中的dnn200,一些仅由原始dnn进行分类的dnn上层(例如,图2中的层206、208)被忽略,或甚至完全从系统剥离。获取高级特征提取层204的期望的原始卷积输出以充当模块b104的输入。例如,原始dnn200通常包括许多完全连接的平均汇集层206加上成本层208,该成本层用于使得梯度下降技术能够在训练期间优化其权重。这些层在dnn训练期间被使用或被用于从dnn200获得直接预测,但是对于生成模块b104的输入是不必要的(图2中的阴影指示层206、208是不必要的)。相反,用于模块b104中的神经网络分类器的输入是从dnn204的卷积层的子集获取的。不同层或多个层可用于提供模块b104的输入。dnn200上的每个卷积层都包括滤波器,所述滤波器使用本地感受域(receptivefield)从前一层的一个小区域收集信息。这些滤波器维持通过dnn中的卷积层的空间信息。来自特征提取器(示意性表示为张量210)中的一个或多个后级卷积层204的输出被馈送到模块b104中的神经网络分类器(例如,art分类器)的输入神经层212。在模块a102中的每个后级卷积层204与模块b104中的相应快速学习神经网络分类器之间可能存在一对一或一对多对应性,这取决于l-dnn106是针对如在示例性实施部分中详述的整个图像分类还是对象检测设计的。从dnn200传输到模块b系统104的张量210可以被看作是来自原始输入数据(例如,来自传感器100的原始图像)的表示的n层堆叠。在此示例中,堆叠中的每个元件表示为具有与来自相机的输入图像相同的空间形貌的栅格。跨越n个堆叠的每个栅格元件是模块b神经网络的实际输入。初始模块b神经网络分类器可以用任意初始知识或用模块a102的训练后分类进行预先训练,以便在部署后有助于在运行中(on-the-fly)进行学习。在输入源100将与环境相关的数据提供给l-dnn106时,神经网络分类器连续地处理来自dnn200的数据(例如,张量210)。模块b神经网络分类器使用快速学习,优选单次学习。art分类器使用神经元类元件之间的自底向上(输入)和自顶向下(反馈)关联投影以实施基于匹配的模式学习,并使用水平投影以实施类别之间的竞争。在快速学习模式下,当新颖的特征集呈现为来自模块a102的输入时,基于art的模块b104将特征作为输入向量放置在f1层212中,并且计算此输入向量与现有权重向量214之间的距离运算以确定f2层216中的所有类别节点的激活。所述距离被计算为模糊and(在art的默认版本中)、点积或向量末端之间的欧几里得距离。然后,从最高激活到最低激活对类别节点排序,以实现它们之间的竞争并以此顺序考虑获胜候选者。如果获胜候选者的标签与由用户提供的标签匹配,则对应的权重向量通过学习过程被更新以推广并覆盖新输入,所述学习过程在最简单的实施方式中采用新输入与获胜节点的现有权重向量之间的加权平均值。如果没有获奖者有正确标签,则将新类别节点引入分类层f2216中,其中,权重向量是输入的副本。在任一种情况下,模块b104现在熟悉此输入,并且可以在下一次呈现时将其识别出来。取决于l-dnn106正在求解的任务,模块b104的结果本身或与来自模块a102的特定dnn层的输出组合充当l-dnn106的输出。对于整个场景对象识别,模块b输出可能是足够的,因为它对整个图像进行分类。对于对象检测,模块b104提供分类标签,这些分类标签叠加在由模块a活动确定的边界盒上,使得每个对象由模块a102正确地定位并且由模块b104正确地标记。对于对象分割,来自模块a102的边界盒可以被像素方式(pixel-wise)的掩码替换,模块b104为这些掩码提供标签。下面提供了关于模块a102和模块b104的更多细节。实时操作和神经网络中的未知概念由于l-dnn大体上且模块b具体被设计成对连续感知输入实时操作,模块b中的神经网络应当被实施,以便在没有熟悉对象呈现给它的情况下不会混淆。常规神经网络针对通常在输入中包含标记对象的数据集;因此,没有熟悉对象存在的话,不需要处理输入。因此,为了在l-dnn的模块b中使用这种网络,应向该网络添加额外的特殊类别“我什么都不知道”,以缓解模块b试图错误地将陌生对象分类为熟悉(假阳性)。在处理可能只包含之前未见过且未标记的对象的现场感官流时,“我什么都不知道”这个概念是有用的。它允许模块b和l-dnn将陌生对象识别为“我什么都不知道”或“之前未见过”,而不是潜在地将陌生对象不正确地识别为熟悉对象。通过实施“我什么都不知道”概念来扩展常规设计可以像将偏置节点添加到网络那样简单。“我什么都不知道”概念也可以在自动地衡量其影响的版本中实施,这取决于已知对象类别的数量和其对应的激活。“我什么都不知道”概念的一种可能的实施方式作为有利于预测的隐式动态阈值工作,其中,内部知识分布清楚地集中在共同类别,而不是在几个类别上均匀地分布。换言之,当模块b中的神经网络分类器指示对象的已知对象类别中存在清晰的获胜者时,则它将对象识别为属于获胜类别。但是,当多个不同的对象具有类似的激活(即,没有明确的获胜者)时,所述系统将所述对象报告为未知。由于学习过程明确使用标签,“我什么都不知道”实施方式只可能影响识别模式,而不可能干扰学习模式。图3中呈现了使用art网络的“我什么都不知道”概念的示例性实施方式。在输入的呈现期间,类别层f2216在其节点上用激活图案进行响应。包含熟悉对象的输入很可能具有显著的获胜者300,类似图3中的上面的情况。不包含熟悉对象的输入可能在f2层中具有更平坦的活动分布,如图3中下面的情况所示。计算所有激活的平均值且将其作为阈值使用不足以区分这两种情况,因为即使在第二种情况中,也可能存在活动高于阈值的节点302(图3中的点线)。用不小于1的参数乘以平均值增大阈值(图3中的虚线),使得仅明显获胜者300保持在其上方,如图3中上面的情况。该参数的确切值取决于多个因素,并且可以基于网络已经学习的类别的数目和网络中的类别节点的总数来自动计算。一种示例性计算是其中θ是阈值,c是已知类别的数目,n是类别节点的数目,比例因子s基于模块a中所用的dnn的类型设置,并在l-dnn制备期间进行微调。设置过高可能增加神经网络的假阴性率,而设置太低可能增加假阳性率。利用“我什么都不知道”概念训练独立模块b产生了以下结果。在哥伦比亚对象图像库100(coil-100)数据集中的100个对象中的50个对象被用作训练集。来自coil-100数据集的所有100个对象被用作测试集,使得50个新颖对象将被独立模块b识别为“我什么都不知道”。在训练期间,独立模块b中的art分类器被逐一馈送对象,而无需任何打乱以模拟实时操作。训练后,art分类器显示95.5%的正确识别率(组合对象和“无”)。为了比较,将coil-100数据集中的所有100个对象的无打乱数据集馈送到常规art仅产生了55%的正确识别率。这可能是由于下文所论述的art的顺序依赖性造成的。如果输入未被模块b中的art分类器识别,由用户决定引入更正并标记所需的输入。如果未经识别的输入不重要,用户可忽略,而art分类器将继续将其识别为“我什么都不知道”。如果该对象对用户很重要,她可以标记该对象,并且快速学习模块b网络将对象的特征和对应的标签添加到其知识。模块b可以接合跟踪系统以继续观察此新对象,并添加其更多视图以丰富与此对象相关联的特征集。模块a的示例性实施方式操作中,模块a提取特征并且创建对象的压缩表示。卷积深度神经网络非常适合于如下概述的这种任务。卷积神经网络(cnn)是使用卷积单元的dnn,其中所述单元的滤波器(权重向量)的感受域跨越所述输入的高度和宽度尺寸逐步移位。当应用于视觉输入时,cnn中的初始层的输入是图像,其具有高度(h)、宽度(w)和一至三个信道(c)尺寸(例如,红色、绿色和蓝色像素部件),而cnn中的后续层的输入具有高度(h)、宽度(w)和来自先前层的滤波器的数目(c)的尺寸。由于每个滤波器较小,与完全连接的层相比,参数的数目大大降低,其中,有一个唯一的权重从(h,w,c)中的每一个投影至下一层上的每个单元。对于卷积层,每个单元的权重数目等于(f,f,c),其中,f是空间滤波器大小(通常为3),其比h或w小得多。每个滤波器在输入中不同空间位置处的应用在以下意义上提供了平移不变性的有吸引力的性质:如果对象可以在其处于一个空间位置时被分类,它可在所有空间位置处被分类,因为包括所述对象的特征与其空间位置无关。卷积层通常之后是子采样(下采样)层。这些层通过将输入的小空间窗口(例如,2×2)减少到单个值来降低其输入的高度(h)和宽度(w)。简化操作已使用平均值(平均汇集)或采用最大值(最大汇集)。子采样层的响应对图像中的小位移是不变的,并且此效应在典型cnn的多个层上累积。在推理中,当将若干卷积和子采样层应用于图像时,输出相对于输入的各种变形(例如,平移、旋转、缩放、甚至翘曲)展现出令人印象深刻的稳定性,例如,对未断开的(连笔书写)手写数字进行训练的网络对来自训练集的数字“3”和通过将小圆圈放在一起书写的数字“3”有类似的响应。这些不变性提供了一个特征空间,其中输入的编码对视觉变化具有增强的稳定性,这意味着输入改变(例如,对象略微平移并在图像帧中旋转)时,输出值的变化比输入值小得多。这可以实现学习-可能难以学习另一种方法,例如,对由少数像素平移的对象编码两个帧几乎没有或根本没有相似性。另外,通过最近使用gpu加速梯度下降技术来从大量数据集学习滤波器,cnn能够达到针对训练好的对象类别的令人印象深刻的泛化性能。泛化意味着网络能够为测试图像产生与在经过训练的类别中的训练后图像不相同的相似输出。需要大量数据来学习定义类别的关键规则。如果网络接受了许多类别的训练,其滤波器在所有类别中均被共享的下层为所有自然输入提供一组良好的规则。因此,当将dnn用作其他任务的初始化时,或者当将下层用作预处理器以用于新的较高级表示时,经过一项任务训练的dnn可以提供优异的结果。自然图像共享共同的统计特性集。在低层处学习到的特征在很大程度上是与类别无关的,而越来越高的层变得更加与类别有关,如在可视化训练好的神经网络的内部的最近工作中所展示的。l-dnn利用模块a中的cnn的这些能力,以便模块b获得对象特征的高质量的压缩和泛化表示以供分类。为了提高或最大化此优势,可以对尽可能多的不同对象预先训练用于l-dnn的dnn,使得高级特征层的对象特异性不干扰l-dnn的快速学习能力。模块b的示例性实施方式操作中,模块b快速地学习新对象并且没有突然遗忘。自适应共振理论(art)模块b的一种示例性实施方式是art神经网络。art通过利用类别节点之间的竞争来确定针对每个对象呈现的获胜节点,避免了突然遗忘。当且仅当这个获胜节点与对象的正确标签相关联时,学习算法才会更新其权重。因为每个节点只与一个对象相关联,并且学习算法仅针对获胜节点更新权重,art中的任何学习情节影响一个且仅影响一个对象。因此,当新对象被添加到系统时,不会干扰先前知识;相反,art只是创建新类别节点并更新对应的权重。遗憾的是,如文献中所描述的art具有若干缺点,这些缺点使得其不能成功用作l-dnn模块b。这些缺点中的一个缺点,具体是缺少“我什么也不知道”概念不是art特有的且在上文进行过讨论。下文公开了art特有的问题和针对这些问题的解决方案的列表。经典模糊型art由于补充编码而不会很好地处理稀疏输入,这是其设计的主要部分。当稀疏输入被补充编码时,补集部分在大多数分量中具有高激活,因为稀疏输入中大量存在的零的补集是1。由于所有这些1都在输入的补集部分中,在距离计算过程中,将不同的输入彼此分离将非常困难,所以系统变得很混乱。另一方面,像dnn一样强大的特征提取器倾向于仅提供关于高水平特征提取的稀疏信号。保持art范式,但远离经典模糊设计和补充编码对于在l-dnn的模块b中使用art是很有用的。其中一种解决方案是删除补充编码,并将模糊art使用的模糊and距离度量替换为基于点积的度量。这种基于点积的度量具有的优点是结果保持归一化并且不需要对模糊art进行其他改变。神经网络的art系列对输入的呈现顺序非常敏感。换言之,art缺乏一致性的性质;不同的输入顺序导致art网络中对应对象的表示不同。遗憾的是,类似l-dnn的实时操作系统无法打乱他们的训练数据以提供一致性,因为它们在从传感器接收数据时消费训练数据。通常在实时操作期间,传感器在后续对象的所有样本之前提供第一对象的大部分或所有样本,因此,系统一次学习一个对象表示。这可能导致只有几个节点代表第一个对象的情况,由于与其他对象无竞争,系统可能不会出错,因此适当地细化对象表示。另一方面,后续对象可能被过度表示,因为所述系统将其表示挤压到已经大部分被第一对象的表示占据的超空间中。上文描述的“我什么都不知道”机制在早期阶段引入竞争,并确保第一对象的精细表示。下文描述的合并减少或消除对后续对象的过度表示。合并还减少了对象表示的存储器占用,这对于具有有限存储器的边缘装置尤其有益。为系统不能分类的对象的每个视图创建新的类别节点另外导致在新对象作为输入添加时art系统的存储器占用的不断增加。在实时操作和如上文所描述的对象的顺序呈现期间,所述系统对于每个连续对象创建超线性增加的节点数。在某些情况下,所述系统经历随对象数目增长的节点数目的指数增长。因此,使用常规art的模块b的存储器占用可以随对象数目以比线性增长更快的速率增长。在最坏的情况下,这种增长可能是指数形式的。合并将存储器增长限制到不随对象数目以比线性增长更快,并且允许为l-dnn学习的每个对象创建固定大小的接近最佳的表示。完整l-dnn实施方式的示例l-dnn分类器图4表示使用经修改的vgg-16dnn作为模块a的核心的整个图像分类的示例性l-dnn实施方式。sofmax和最后两个完全连接的层从原始vgg-16dnn移除,并且将基于art的模块b连接到vgg-16dnn的第一完全连接层。可使用alexnet代替vgg-16创建类似但简单得多的l-dnn。这是在任何现代智能手机上运行的一个非常简单且计算容易的系统,不需要gpu或任何其它专用处理器,并且可以从由智能手机摄像头提供的几个输入帧学习任何对象集。基于l-dnn网格的检测器检测图像中感兴趣对象的一种方式是将图像划分成网格并在每个网络单元上运行分类。在l-dnn的这种实施方式中,cnn的以下特征尤其有用。除了跨上述层的纵向分层组织之外,每一层对保持拓扑组织的数据进行处理。这意味着不管网络或内核中跨距或焊盘尺寸深度如何,对应于图像上的特定感兴趣区域的特征可在所述层的类似区域中以各种分辨率在每一层上发现。例如,当对象位于图像左上角时,对应的特征将沿层的层次结构位于每层的左上角。因此,将模块b附接到所述层中的每个位置允许模块b在图像的特定位置上运行分类,并确定在此位置是否存在任何熟悉的对象。此外,每个被用作输入的dnn层(或尺度)必须只创建一个模块b,因为相同的特征向量表示同一对象,而不管在图像中的位置如何。因此,学习右上角的一个对象可以使模块b在图像中的任何地方识别它。使用不同尺寸(尺度)的多个dnn层作为分离模块b的输入允许在多个尺度上进行检测。这可以用于精细地调整图像中对象的位置,而无需如下面的过程中以更精细的尺度处理整个图像。在此过程中,模块a将最粗尺度(例如,在公众可用的extractionnet中为7x7)的图像提供至模块b以进行分类。如果模块b判定对象位于左边缘第二个和顶边缘第四个的单元中,只有更精细的dnn输入的对应部分(例如,在相同的extractionnet中,为14×14)应被分析以进一步细化对象的位置。多尺度检测的另一应用可以使用dnn设计,其中,层尺寸不是彼此的倍数。例如,如果dnn具有30×30层,那么其可以降低到2×2(压缩因子为15)层,3×3(压缩因子为10)层,和5×5(压缩因子为6)层。如图5所示,将模块b附接到这些压缩dnn中的每一个得出对象的粗略位置(指示为502、504、506)。但是,如果对这些模块b的输出进行组合(指示为508),则空间分辨率变成不均匀的8×8网格,其中心的分辨率较高且朝向边缘分辨率较低。注意,为了实现此分辨率,系统仅运行模块b计算(2×2)+(3×3)+(5×5)=38次,同时为了计算均匀的8×8网格,其执行64次模块b计算。除了用较少运算计算以外,对于中心36个位置,图5中的多尺度网格中的分辨率等于均匀的8×8网格中的分辨率或比其更精细。因此,利用多尺度检测,所述系统能够仅使用相当的均匀网格的计算资源的60%更精确地查明对象(510)的位置。这种性能差异对于较大层增大,因为总和的平方(表示均匀网格的计算量)比平方的总和(表示非均匀网格的计算量)增长得更快。非均匀(多尺度)检测对于移动机器人来说可能是特别有益的,因为视图中心的对象最有可能处于机器人的路径中,并且受益于比不存在碰撞威胁的外围中的对象的更准确的检测。用于图像分割的l-dnn对于图像,对象检测通常被定义为将边界盒放置在对象周围并且用相关联的类别(例如,“狗”)标记的任务。除了前面部分的基于网格的方法,对象检测技术通常通过以下方式实施:使用边界盒选择图像的一个或多个区域,然后将该盒内的特征分类为特定类别,同时回归边界盒位置偏移。实施此对象检测方法的算法包括基于区域的cnn(r-cnn)、快速r-cnn和更快速r-cnn,尽管任何不使定位直接取决于分类信息的方法都可以被替代为检测模块。图像分割是为图像中的像素的全部或一个子集确定类别标签的任务。分割可以被分成:语义分割,其中来自同一类别的两个单独对象的各个像素未被消除歧义;和实例分割,其中来自同一类别的两个单独对象的各个像素被唯一地识别或实例化。图像分割通常通过获取对象检测方法(例如,r-cnn、快速r-cnn或更快速r-cnn)的边界盒输出并分割在该盒中的最突出的对象来实施。与边界盒相关联的类别标签然后与分割的对象相关联。如果没有类别标签可归属于边界框,分割结果被丢弃。所得的分割对象可以有或可以没有实例信息。实施这种分割方法的一种算法是掩码r-cnn。图6呈现了基于网络的r-cnn系列的图像检测或分割的l-dnn设计。考虑使用静态分类模块(例如,掩码r-cnn)的图像分割过程。在此情景中,静态分类模块600可以用l-dnn模块b104替换。即,网络的分割路径保持不变;区域建议正常进行,并且随后进行分割。就像静态分类模块的情况一样,当l-dnn模块b104不返回通过阈值的肯定类别预测(例如,如在网络未被训练或将分割的区域识别为如上文所述的“我什么也不知道”时就会发生)时,分割结果被丢弃。类似地,当l-dnn模块b104返回可接受的类别预测时,保留分割结果,正如与静态分类模块一样。不同于静态分类模块600,l-dnn模块b104经由用户反馈提供持续适应性以将状态从前一种变成后一种。用户反馈可直接通过边界盒和类别标签提供,如用户选择并在社交媒体配置文件上标记对象的情况,或通过间接反馈提供,如用户选择视频中的一个对象,然后可以在整个视频中跟踪该对象以向新对象类别上的l-dnn提供连续反馈的情况。此反馈用于训练l-dnn如何随时间推移对新类别网络进行分类。此过程不影响网络的分割部件。模块b104在此范式中的放置也具有一些灵活性。模块b104的输入应直接链接到模块a卷积层202的输出,使得类别标签可以与分割输出组合,以产生分割的标记输出602。这种约束可以通过使模块a和b两者获取区域建议阶段的输出来满足。模块a不应取决于模块b的任何动态部分。即,因为模块b正在调适其网络的权重,但模块a是静态的,如果模块b要更改其权重,然后将其输出传递至模块a,由于大多数静态神经网络无法处理其网络的输入表示的突然变化,模块a将可能会看到性能下降。大脑合并和大脑融合实施l-dnn的多个实时操作机器可在运行中通过l-dnn个别地学习新信息。在某些情况下,在实时操作机器之间共享知识可能是有利的,如下一部分中描述的若干使用案例中概述的。由于实时操作机器学习了边缘上的新知识,以便共享新知识,每个实时操作机器从边缘向中心服务器或其它实时操作机器发送新信息(在网络中根据在模块b中的突触权重矩阵表示)的压缩和泛化表示。通过执行以下步骤,每个实时操作机器获取的知识可以被提取、附加并且在中心服务器中或直接在边缘装置上合并,并通过集中式或点对点通信与其他实时操作机器共享。·在现场部署中学习新信息—如上文讨论的,实时操作机器可在运行中通过l-dnn学习新信息。当用户看到实时操作机器正遇到新对象和/或新知识时,她可以为新对象提供标签,并触发快速学习模式,以便实时操作机器可以在运行中学习新对象和/或新知识。这样,实时操作机器可以修改其行为并快速适应新对象和/或新知识。·合并新知识—在一个或多个对象在运行时被学习之后,系统在快速学习模块b中运行合并过程。此过程压缩新对象的表示,将其与之前已知对象的表示集成,提高网络泛化能力,并减少模块b的存储器占用。下面详细说明了基于art网络的示例性实施方式。·将合并的单个大脑传达给其他装置—在操作期间或完成任务之后的任何时间,实时操作机器可将其快速学习模块(模块b)的合并权重矩阵通过有线或无线通信信道传输到中心服务器(例如,基于云的服务器)。在某些情况下,每个实时操作机器的快速学习模块的权重矩阵可以下载到外部存储装置,并且可以物理地耦合到中心服务器。当中心服务器不可用或不需要时,所述通信可以在实时操作机器(边缘装置)中以点对点方式进行。·大脑融合(或熔合、归并、组合)—在中心服务器或边缘装置之一处收集若干实时操作机器的权重矩阵之后,中心服务器或边缘装置可运行融合实用程序,其组合、压缩并将从每个实时操作机器新获取的知识合并成单个权重矩阵。融合实用程序减少所得矩阵的存储器占用并且去除冗余,同时保持整个系统的准确性。下面详细说明基于art网络的示例性实施方式。·融合后更新单个大脑—然后在大脑融合期间产生的所得权重矩阵通过有线或无线通信信道下载到一个或多个实时操作机器,或通过将其下载到物理外部存储装置/存储器装置,并将存储装置/存储器装置物理传输到实时操作机器。这样,可以合并来自多个实时操作机器的知识,并且这些机器中的每一个机器学习的新知识可以与其它实时操作机器共享。使用art的大脑合并和融合过程的示例性实施方式图7a示出了使用art的示例性大脑合并和融合过程。它如下扩展了默认的art过程。层f2216中的每个art的类别节点表示某个对象,并且每个对象具有表示其的一个或多个类别节点。图7a的左侧示出了层f1212激活的层f2216中的类别节点的权重模式702。每种权重模式表示从提供给层f1212的多个真实特征输入210学习的泛化输入模式。注意,仅当类别节点和相应对象赢得竞争并正确地识别正被讨论的对象时,才会发生art中的学习。图7a的中间示出了在将不同对象的多个输入210呈现给art网络之后层f2216中不同类别节点的权重模式702。每个权重模式702表示对应节点学习以用对应的对象标签识别输入的泛化版本。图7a的中间的权重模式702变成图7a的右侧显示的合并输入704。在合并或融合时,原始输入210通常不可用于系统。另一方面,权重模式702的集合是对art网络在训练期间暴露于的所有输入210的泛化。这样,权重模式702表示与原始输入210一样好或更好的输入210的重要特征,并且可以用作训练过程期间的真实输入的替代。合并使用权重模式来替代真实输入。在合并期间,会发生以下步骤:·现有权重矩阵中的权重向量702(例如,图2中的权重向量214的矩阵)被添加到合并输入集(图7a的右侧)ai=wi,其中a是输入向量,w是权重向量,i是从1到网络中现有类别节点的数目。如果art网络使用补充编码,则将权重向量的补集的一半脱补并且与向量的初始的一半求平均(ai=(wi+(1-wic))/2)。合并输入集中的每个向量接收从其相应的类别节点提取的对应标签。·所有现有f2节点和对应的权重都从art网络移除,因此,art网络处于其空白初始状态。·随机打乱合并输入集,并且,art网络以与其学习原始输入相同的方式学习此集合。随机打乱降低了常规art网络中的顺序依赖性的影响,并且允许art网络构建更紧凑(产生更少的类别节点)以及更佳(更好的泛化)的表示。使用合并输入集的权重具有另一个优点,即单个向量替换许多原始输入向量,使得合并过程比原始学习过程具有降低的复杂性和更快的计算时间。合并过程可在基于l-dnn的系统操作期间的任何时间发生。它减少了模块b的基于art的实现的存储器占用,并且降低了基于art的系统的顺序依赖性。降低顺序依赖性对于基于l-dnn的任何实时操作机器是有益的,因为在此类操作期间,无法改变在系统操作时进入系统的感知输入的顺序。合并可由用户动作触发,或者当存储器占用变得太大(例如,达到或超过阈值大小)时自动地触发,或基于操作持续时间定期地触发。针对有意呈现给art网络的coil数据集进行了示例性合并,如同其实时运行并且相继看到对象一样。初始训练比合并训练花费的时间长4.5倍。合并将存储器占用减小了25%,并且将对象识别性能从50%正确率提高到75%正确率。对于一开始打乱训练数据集以减少顺序伪影的情况,合并仍显示出性能改善。存储器占用没有显著减少,因为系统在初始训练之后已经被良好压缩,但对象识别的百分比正确率平均从87%升至98%。这些实验结果代表出乎意料的大的性能改进。融合是合并的延伸,其中合并训练集与超过一个art网络的权重矩阵组合。它继承了合并的所有优势并利用art网络的泛化特性。结果,当多个融合的art网络具有相同对象的知识时,跨多个art网络的此对象的所有类似表示通过art学习过程自然地组合在一起,同时保留所有不同的表示。这导致对象表示的智能压缩并且进一步减少融合系统的存储器占用。例如,用一个art实例学习来自coil数据集的50个对象,并且用另一个art实例学习33个对象(对于两个集合而言17个对象是相同的)对于第一个实例产生92.9%的正确率,并且对于第二个实例产生90.5%的正确率。将它们融合在一起形成对于由两个art实例学习的所有66个独特对象的97%的正确率的网络。另外,融合版本具有两个网络的强力组合将具有的存储器占用的83%。此外,融合版本的存储器占用比第一网络与第二网络(不包括重叠的17个对象)的仅新对象的组合小3%。因此,融合实际上进行智能压缩并细化对象表示以提高准确性。如果未随机打乱输入,在正确度方面,融合的结果甚至更突出:85.3%和77.6%正确率的网络被融合成96.6%正确率的网络,所述96.6%正确率的网络具有两个网络的组合的存储器占用的84.6%。这些融合实验结果代表出乎意料的大的性能改进。使用情境信息提高性能基于l-dnn的系统可以通过将情境信息与当前对象信息组合来进一步提高性能准确度。情境l-dnn可以获悉某些对象可能在输入流中共同发生。例如,骆驼、棕榈树、沙丘和越野车辆是沙漠场景中的典型对象(参见图7b),而是房屋、跑车、橡树和狗是郊外场景的典型对象。根据情境,在像素级作为无人机输入获取的本地模糊信息可以被映射到两个对象类别(例如,骆驼或狗)。在这两种情况下,对象的注意焦点有模糊的表示,在低分辨率图像中通常是这种情况。在沙漠场景中,驼色的像素化图像可以通过关于场景的全局信息和学习的对象之间的过去关联来解决,尽管“骆驼”只是由l-dnn推断的第四个最可能的类别,单独基于本地像素信息最可能是“马”。情境对象(沙丘、越野车辆、棕榈树)已经在过去与“骆驼”相关联,使得情境分类器可以推翻“马”类别,支持“骆驼”类别。类似地,在包含“房屋”、“跑车”和“橡树”的城市场景中,相同的像素集可以被映射到“狗”。作为补充,当对象被识别为模糊或异常时,如以上示例中的骆驼,l-dnn系统可提示人类分析员/用户更深入地查看该对象。这种异常检测和报警子系统可以在识别不属于该场景的感兴趣对象与通过使用情境来消除正常对象的身份的疑义之间取得平衡。通过赋予标签最大概率作为情境分类器的输入,回避了无限回归问题,即,在情境模块可以产生对象类别之前需要对象分类。这样,在对象的每个固定处,情境分类器可迭代地改进其对对象标签的猜测。l-dnn可利用大量未标记数据大量非结构化内容即使没有任何标签也为l-dnn的模块a提供有价值的训练数据。被称为贪心的逐层预训练的技术允许dnn通过从底向上依次训练每一层来执行无监督式学习。逐层训练的机制包括对比发散去噪自动编码器和卷积自动编码器。自动编码器获取输入,通过权重和传递函数对其进行编码,并根据输入重建误差评估输出。在一层已经被训练之后,其输出成为下一层的输入。预先训练的网络享受任何深度网络的好处,即,它通常捕获有用的分层特征关系,例如,在第一层上的学习边缘,在第二层上的拐角和其他边缘分组,以及稍后层中的较高阶数据特定特征。此外,卷积变量享受卷积网的内置平移不变性。该过程被称为预训练,因为它往往领先于后面的监督学习(“微调”)。在许多情况下,预先训练的网络的性能优于未预先训练的网络的性能。在有大量标记数据的情况下,因为标签对分析员带来了一些负担,所以预先训练的网络不会战胜未预先训练的网络。相比其他预先训练的网络,预先训练的“具有环境特异性”的网将改善l-dnn系统的识别性能,同时使标记负担降低。换言之,对未标记的数据进行训练的dnn加上由分析员的报告产生的有限标签导致超出训练另一个重度标记的数据集获得的性能的改进性能,以及相对少量的分析员报告。最后,art作为模块b的实施方式具有另一个益处,因为它也可以执行无监督学习。art可被视为“半监督的”,这意味着它不需要标签来进行学习,但是,当标签可用时,其能够利用标签。art通过在其无监督学习模式下操作来协助组织未标记的数据,同时对于每个节点,存储最佳匹配的观察的帧和图像区的检索信息。每个art节点都可以允许分析员访问并检查许多类似的观察。l-dnn的示例性使用案例以下使用案例是l-dnn如何能够解决各种领域中的技术问题的非限制性示例。使用l-dnn以自动执行检查:单个或多个图像来源考虑一个希望使工业基础设施(例如,电力线、蜂窝塔或风力涡轮机)的检查过程自动化的无人机服务提供商。现有的解决方案要求检查员观看数小时的无人机视频以找到包括需要检查的关键部件的帧。检查员必须手动识别每个帧中的这些关键部件。相反,可以将基于l-dnn的助手引入到识别工具中。可以将包括感兴趣对象或异常的标签的数据提供给基于l-dnn的助手,作为在常规慢速dnn工厂训练期间的预先训练的集合。如下所述,在快速学习模式期间,可以由用户对此集合进行添加。图8示出了基于l-dnn的助手的操作,所述基于l-dnn的助手可以包括在“智能”无人机或者计算机上,以用于查看由“无智能(dumb)”无人机获取的视频。无人机800检查结构,例如通讯塔820、太阳能板阵列830、风力涡轮机场840,或电力线路分布850(这些仅是示例性结构,可以设想其他物体)。无人机操作员810可能正使用手动控制无人机,或者正监督自动运行的无人机。人类分析员805,如控制室中的分析员,在无人机在飞行时或飞行后,可以将来自无人机800的标签提供到处理感知输入100(例如,视频,激光雷达等)的l-dnn系统106中的模块b104。一开始,无人机800接收l-dnn106的副本作为其个人的本地分类器。当无人机800检查这些电力线850、蜂窝塔820和风力涡轮机840获取视频帧100时,l-dnn106的模块a102基于预先训练的数据从视频帧100提取图像特征。模块b104接着基于这些特征为每个对象提供可能的标签。此信息传递至用户805。如果用户805发现标签不满意,她可以采用快速学习模式,以用正确的标签更新模块b网络。这样,用户提供的信息可以纠正当前标签。因此,快速学习子系统可利用一次学习来确定早在更新后的第一帧中已经学习的对象(例如,电力线、蜂窝塔和风力涡轮机)的位置和特征。在分析之前获取的视频的情况下,这意味着在用户引入的校正后立即发生。因此,系统106随时间推移变得更有知识,并借助用户的帮助随时间推移而提供更好的识别。图9图示了可以应用本文中描述的l-dnn技术作为图8的泛化案例的方式,其中多个无人机(例如,无智能无人机(dumbdrone)800、900和智能无人机910)同步或异步地收集数据。由与每个无人机相关联的l-dnn学到的信息可以归并(组合或融合)并推送回其他无人机,在无人机之间点对点共享,或与包含模块b104的中心服务器共享。中心服务器归并单个l-dnn学习到的信息,并将归并的信息推送回所有的无人机(包括无人机910),其未暴露于关于从由无人机800、900获取的数据导出的电信塔820、太阳能板阵列830、风力涡轮机场840或电力线分布850的信息,但由于归并过程,现在能够理解这些项目并对其进行分类。使用l-dnn自动化仓库操作:从多个来源合并和融合知识可以对协同操作的多个机器或摄像头(固定、无人机绑定的等)扩展上述系统。考虑一家在多个不同地理位置具有大型仓库的公司。在大型仓库手动盘点存货可能花费许多工时,并且通常需要在此期间关闭仓库。现有的自动化解决方案难以识别可能隐藏的堆叠对象。另外,在现有自动化解决方案中,在一个地理位置处学习的信息不会转移到其他位置。在某些情况下,由于在不同地理位置处收集了大量数据,这些自动化解决方案可能花几周时间来学习新数据并作用于新数据。相比较,本文所述的l-dnn技术可以应用于如图10所示的仓库、工业设施或分配中心环境,其中传感器(例如,安装在机器人或无人机上的固定摄像头1010a–1010c或移动摄像头)可以经由连接到传感器的各种l-dnn模块在运行中学习库存中的新物品。另外,805和1005中的操作员可以非集中方式向各种l-dnn模块传授新信息。这种新知识可以在融合之后被集中地集成或点对点传送并推送回每个单个装置(例如,摄像头1010)。例如,考虑图10中的固定摄像头1010a–1010c(统称为摄像头1010)。这些摄像头1010中的每一个获取传送带上的对象的对应视频图像100,并将该图像100提供至对应的l-dnn106a–106c(统称为l-dnn106)。l-dnn106识别图像100中已知的对象,例如,用于检查、分类或其他分配中心功能。每个l-dnn106标记未知对象以供人类操作员805、1005评估,或者将未知对象标记为“我什么都不知道”。例如,当呈现未知对象1040时,l-dnn106a标记未知对象1040以供人类操作员805分类。类似地,l-dnn106c标记未知对象1060以供人类操作者805分类。当向l-dnn106b呈现未知对象1050时,它将未知对象1050简单地标记为“我什么都不知道”。耦合到l-dnn106的独立模块b104d将由l-dnn106a、106c从人类操作员805、1005获取的知识归并,并将其推送到l-dnn106b中的模块b104b,以便模块b104b可识别对象1040、1060的未来实例。针对每个装置的l-dnn106可以被预先训练,以识别仓库里的现有标志,诸如杆标记、类似出口标志的特征、其组合,等等。这使得系统能够对配备有传感器的无人驾驶车辆或出现在由传感器(例如,摄像头1010)获取的图像中的位置进行三角测量。每个车辆中的l-dnn以与上文所述的使用案例完全相同的方式操作。这样,来自多个无人驾驶车辆的知识可以被合并、融合并重新分配回每个无人驾驶车辆。来自所有位置的知识的合并和融合可由中心服务器执行,如上文的合并和融合部分中所述;另外,也可以应用点对点融合。因此,可盘点多个仓库的库存,并在对仓库运营影响最小的情况下合并知识。在移动装置机队中使用l-dnn考虑消费者移动装置组成的分布式网络,所述消费者移动装置诸如消费者智能电话和平板电脑,或专业装置(诸如,移动摄像头,穿戴在身体上的摄像头,和由第一响应者和公共安全人员使用的lte手持装置以用于公共安全)。消费者装置可用于了解消费者的周围环境,例如在拍摄照片时。在这些情况下,本文描述的l-dnn技术可以应用于图11所示的智能电话或平板装置1110、1120、1130。个人(例如,用户1105、1106)可以分别向装置1110、1130中的l-dnn模块106教授知识,并且点对点或在包含模块b104的服务器1190上归并这些信息。服务器1190将归并的知识推送回一些或所有连接的装置,可能包括不参与初始训练1020的装置。例如,l-dnn模块可学习将图像处理技术应用于用户拍摄的图片,其中用户向每个l-dnn教授与图片的各方面相关联的定制动作(例如,对这些类别的对象或区域施加滤波器或图像失真)。可以共享、归并或者在装置间点对点或共同组合这些组合的学习动作。另外,l-dnn技术可应用于智能电话使用的泛化使用案例,其中输入变量可以是感知或非感知的(智能电话的任何使用模式)。这些使用模式可以是输入变量和输出变量的任意组合,所述这些使用模式可在智能电话级别被学习,并推送到中心l-dnn模块104,归并且推送回各个装置。在另一个示例中,警察可能正在使用运行l-dnn的专业装置寻找失踪儿童、嫌疑犯或可疑对象。在这种情况下,警官和/或第一响应者不能浪费时间。向警官和/或第一响应者提供的现有解决方案需要来自摄像头的视频馈送以便手动分析和协调。此类解决方案花费时间过长,因为它们需要使用中心服务器来分析和识别对象。即,这类解决方案具有主要的延时问题,因为视频数据需要在云端/中心服务器中进行分析。这对于在接收到数据时通常需要立即行动的第一响应者/警官造成严重障碍。另外,连续地向中心服务器发送视频数据可能对通信信道造成压力。而通过在移动电话、穿戴在身体上的摄像头和lte手持装置中使用l-dnn,可以在边缘自身上学习和分析数据。消费者可以在现场学习以定制其装置,并且警官/第一响应者可以寻找并提供人/对象的位置,并搜索和识别在警官可能不会主动查看的地方的感兴趣的人/对象。l-dnn可以利用快速学习模式来在现场在装置上从警官学习,而不是在远程服务器上从操作员学习,从而减少或消除与中心化学习相关的延时问题。图1可以图示移动电话中的l-dnn的操作,其用于在消费者将电话指向场景并标记整个场景或场景的部分(对象、场景的部分,诸如天空、水等)时标记图像中的部件。另外,警员可以访问视频帧并识别可疑人/对象。当移动电话获取视频帧100时,模块a102可基于预先训练的数据从这些帧提取图像特征。模块b104接着可使用这些特征为每个对象提供可能的标签。例如,如果某人a居住在小区b,并且过去曾在小区b被看到,则某人a可以被标记为小区b的“居民”。因此,快速学习子系统可利用一次学习来早在第一帧的学习之后立即确定已经学习的对象(例如,房屋、树木)的相对位置和特征。更重要的是,中心服务器110上的调度程序可以将要寻找的新对象引入到服务器侧l-dnn,并根据需要将其融合并分发给本地的第一响应者。此使用案例与先前使用案例非常相似,但是,其更好地利用了l-dnn的快速学习新对象而不忘记旧知识的能力。虽然在检查和库存收集期间,通常时间压力较小,并且可在慢速学习模式下完成存储器合并,但在第一响应者的情况下,尽可能快速地合并和融合来自多个装置的知识以便区域中的所有装置都可以开始搜索嫌疑犯或失踪儿童可能是很重要的。因此,l-dnn快速学习由一名第一响应者引导的新对象的能力,几乎瞬间将它合并在服务器上并分配给区域中的所有第一响应者成为此使用案例的巨大优势。在数据中心用l-dnn替换常规dnn本文所述的l-dnn技术可以如图12所示作为工具应用,以在大数据中心中降低单个计算节点或服务器1200中的dnn过程的计算时间。l-dnn技术将dnn中的学习加快了几个数量级。此特征可用于显著降低对服务器上的计算资源的需求,或消减对服务器上的计算资源的消耗,其中可以在几秒内通过通常需要数小时/数天/数周的训练时间的大量数据集100学习信息。使用l-dnn还导致功耗的降低,以及总体更好地利用数据中心中服务器资源1200。结论如上所述,l-dnn可以为神经网络系统提供运行中(一次性)学习。相反,传统dnn通常需要数千个或数百万个迭代循环来学习新对象。每个迭代循环采用的步长越大,损失函数的梯度可能导致实际性能增益的可能性越小。因此,这些传统dnn对其每个训练样本的权重进行小的改变。这使得在运行中添加新知识极其困难。相反,具有快速学习神经网络的l-dnn可以通过非常少的训练示例学习稳定的对象表示。在某些情况下,仅一个训练示例就可满足l-dnn。因为l-dnn除了常规dnn之外还使用快速训练神经网络,它对于困扰传统dnn的“突然遗忘”有抵抗力。在突然遗忘中,在将新输入提供给dnn时,dnn中的所有权重都随着每次样本呈现而调整,导致dnn在学习新输入时“忘记”如何分类旧输入。通过简单地重新学习包括新输入的完整的输入集合就可避免突然遗忘,但重新学习可能花费太长时间而不实用。一些现有方法基于权重的重要性选择性地冻结权重,训练dnn的子网络,或者使用模块化方法来避免突然遗忘。然而,这些方法速度慢并且需要多个迭代循环来训练dnn。相反,l-dnn提供了在不重新训练的情况下实现快速和稳定的学习能力的方式。l-dnn还有利于用单个示例和/或在单个迭代循环中稳定学习对象表示。虽然本文已经描述和说明了各种本发明的实施例,所属领域的技术人员将容易想到用于执行功能和/或获得结果和/或本文所述的优点中的一个或多个的多种其它方式和/或结构,并且这些变化和/或修改中的每一个都被认为在本文所述的本发明实施例的范围内。更一般地说,所属领域的技术人员将容易了解本文中所描述的所有参数、尺寸、材料和配置意味着是示范性的且实际参数、尺寸、材料和/或配置将取决于本发明的教导所用于的一个或多个特定应用。本领域技术人员将认识到或能够使用不超过常规实验确定本文所述的特定发明实施例的许多等同物。因此,应了解,前述实施例仅以举例的方式呈现,且在所附权利要求书及其等效物的范围内,本发明的实施例可以特别描述和要求保护的方式之外的其他方式实践。本公开的发明性实施例涉及本文中描述的每个单个特征、系统、制品、材料、套件和/或方法。另外,如果此类特征、系统、制品、材料、套件和/或方法不相互不一致,则这些特征、系统、制品、材料、套件和/或方法的两个或多个的任何组合包括在本公开的发明范围内。上述实施例可以以多种方式中的任何一种来实现。例如,实施例可以使用硬件、软件或其组合实施。在软件中实施时,软件代码可以在任何合适的处理器或处理器集合上执行,无论是设置在单个计算机中提供还是分布在多个计算机中。此外,应了解,计算机可以多种形式中的任何一种体现,例如机架式计算机、台式计算机、笔记本电脑或平板电脑。另外,计算机可以嵌入一般不被视为计算机但具有适当的处理能力的装置中,包括个人数字助理(pda)、智能电话或任何其他合适的便携式或固定电子装置。同样,计算机可以具有一个或多个输入和输出装置。可使用这些装置,以及其他,以呈现用户接口。可以用于提供用户接口的输出装置的示例包括用于输出的视觉呈现的打印机或显示屏,以及用于输出的可听呈现的扬声器或其它声音产生装置。可用于用户接口的输入装置的示例包括键盘和指向装置,比如鼠标、触摸板和数字化平板电脑。作为另一个示例,计算机可以通过语音识别或以其他可听格式接收输入信息。此类计算机可以任何合适形式由一个或多个网络互连,包括局域网或广域网,例如企业网络,和智能网络(in)或互联网。此类网络可以基于任何合适的技术,并且可以根据任何合适的协议操作,并且可以包括无线网络、有线网络或光纤网络。本文中概述的各种方法或过程可编码为可在一个或多个处理器上执行的软件,所述一个或多个处理器采用多种操作系统或平台中的任一种。另外,可以使用多种合适的编程语言和/或编程或脚本工具中的任何一种来编写此类软件,并且此类软件还可以被编译为在框架或虚拟机上执行的可执行机器语言代码或中间代码。同样,各种发明概念可体现为一种或多种方法,已经提供了所述一种或多种方法的示例。作为方法的一部分执行的动作可以以任何合适的方式排序。因此,可以构造以不同于图示次序的次序执行动作的实施例,其可包括同时执行一些动作,即使在说明性实施例中显示为顺序动作。所有出版物、专利申请、专利以及本文提到的其他参考文献以全文引用的方式并入本文中。如本文所定义和使用的所有定义应理解为在词典定义、以引用的方式并入的文件中的定义和/或定义术语的普通含义之上。如本说明书和权利要求书中所使用的不定冠词“一(a)”和“一(an)”,除非明确指出为相反,应理解为意指“至少一个”。如本说明书和权利要求书中所使用的短语“和/或”应理解为意味着如此连接的元素中的“任何一个或两者”,即,所述元素在某些情况下共同存在,在其它情况下分开存在。用“和/或”列出的多个元素应以相同的方式解释,即,如此连接的元素中的“一个或多个”。除了由“和/或”子句特别标识的元素之外,其他元素可任选地存在,无论是否与特别标识的元素相关或不相关。因此,作为一个非限制性示例,对“a和/或b”的提及,当结合开放式语言(例如“包括”)使用时,在一个实施例中可仅指a(可选地包括除b以外的元素);在另一个实施例中仅指b(可选地包括除a以外的元素);在又一个实施例中指a和b(任选地包括其他元素)等等。如本说明书和权利要求书中所使用,“或”应理解为具有与上文定义的“和/或”相同的含义。例如,在列表中分离项目时,“或”或“和/或”应解释为包括性的,即,包括至少一个,还包括许多元素或元素列表中的不止一个,且任选地包括额外未列出的项目。只有术语明确指示为相反,例如“仅一个”或“恰好一个”,或当在权利要求书中使用时,“由……组成(consistingof)”将指包括许多元素或元素列表中的恰好一个元素。一般,如本文中所使用的术语“或”在排他性术语(诸如“任一个”、“一个”、“仅一个”或“恰好一个”)在其前面时仅应解释为指示排他性替代方案(即“一个或另一个,但不是两者”)。“基本上由……组成(consistingessentiallyof)”当在权利要求书中使用时,应具有如专利法领域所用的普通含义。如本说明书和权利要求书中所使用,短语“至少一个”在叙述一个或多个元素的列表时,应理解为指选自元素列表中的任何一个或多个元素中的至少一个元素,但不一定包括在元素列表中特别列出的每个元素的至少一个,且不排除元素列表中元素的任何组合。此定义还使得除短语“至少一个”指代的元素列表中特别标识的元素之外,元素可以任选地存在,无论是否与特别标识的元素相关或不相关。因此,作为一个非限制性示例,“a和b中的至少一者”(或等效地,“a或b中的至少一者”或等效地“a和/或b中的至少一者”)在一个实施例中可以指至少一个a,任选包括超过一个a,且b不存在(且任选地包括除b之外的元素);在另一个实施例指至少一个b,任选包括超过一个b,且a不存在(并且任选地包括除a以外的元素);在又一个实施例指至少一个a,任选包括超过一个a和至少一个b,任选包括超过一个b(并且任选地包括其它元素)等等。在权利要求书中,以及上述说明书中,所有过渡短语诸如“包括”、“包含”、“携带”、“具有”、“含有”、“涉及”、“保持”、“由……组成(composedof)”等等应理解为是开放式的,即,意味着包括但不限于。只有过渡短语“由……组成(consistingof)”和“基本上由……组成(consistingessentiallyof)”应分别为封闭或半封闭的过渡短语,如美国专利审查程序专利局手册第2111.03节所述。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1