掌桥专利:专业的专利平台
掌桥专利
首页

神经网络训练

文献发布时间:2024-01-17 01:26:37


神经网络训练

技术领域

本公开涉及车辆中的神经网络。

背景技术

图像可以由传感器获取并使用计算机进行处理以确定关于系统周围环境中的对象的数据。感测系统的操作可以包括获取关于系统环境中的对象的准确且及时的数据。计算机可以从一个或多个图像传感器获取图像,所述图像可以被处理以确定对象的位置。计算机可以使用从图像中提取的对象位置数据来操作系统,包括车辆、机器人、安全和对象跟踪系统。

发明内容

感测系统可以获取关于系统周围的环境的数据(例如图像数据),并且处理所述数据以确定对象的身份和/或位置。例如,可以训练并然后使用深度神经网络(DNN)来确定由系统中的传感器获取的图像数据中的对象,所述系统包括车辆引导系统、机器人操作系统、安全系统、制造系统和产品跟踪系统。车辆引导可以包括车辆在包括多个对象的环境中在自主或半自主模式下的操作。机器人引导可以包括引导机器人末端执行器(例如夹持器)来拾取零件并对零件进行取向以在包括多个零件的环境中进行组装。安全系统包括其中计算机从观察安全区域的相机获取视频数据以向授权用户提供访问权限并检测包括多个用户的环境中的未经授权进入的特征。在制造系统中,DNN可以确定包括多个零件的环境中的一个或多个零件的位置和取向。在产品跟踪系统中,深度神经网络可以确定包括多个包裹的环境中的一个或多个包裹的位置和取向。

车辆引导在本文中将被描述为使用计算机来检测交通场景中的对象(例如,车辆和行人)并且基于检测到的对象来确定操作车辆的车辆路径的非限制性示例。交通场景是交通基础设施系统或车辆周围的环境,其可以包括道路的一部分以及包括车辆和行人等的对象。例如,车辆或交通基础设施系统中的计算装置可以被编程为从包括在车辆或交通基础设施系统中的一个或多个传感器获取一个或多个图像,检测图像中的对象,并传送标识对象的标签连同对象的位置。

训练DNN以检测由车辆传感器获取的图像数据中的对象可能需要包括数千个带注释的图像的训练数据集。带注释的图像是已经被处理为包括描述图像中要检测的对象的随附数据(通常称为地面实况数据)的图像。可以通过用DNN多次处理来自训练数据集的图像并将来自DNN的输出与输入图像的地面实况进行比较以计算损失函数来训练DNN。可以在多个处理时间内选择控制DNN的操作的权重或参数,以最小化损失函数,即,提供与地面实况最匹配的结果。为大型训练数据集标注图像数据可能是一项困难的任务,会消耗大量时间和计算资源。有利地,本文讨论的技术可以减少注释训练数据集的时间和计算资源,同时通过处理不带注释的图像并确定哪些图像产生结果的最大不确定性来改进DNN训练过程。可以对产生最不确定结果的图像进行注释以在DNN中进一步训练,从而减少训练结果的不确定性,同时最小化训练DNN的注释量。

本文公开了一种方法,所述方法包括:基于第一训练数据集来训练深度神经网络(DNN),所述第一训练数据集包括具有带注释的第一对象的第一图像;基于所述第一训练数据集来测试所述DNN以确定包括第一不确定性的第一对象预测;以及通过输入第二训练数据集并输出包括第二不确定性的第一对象预测来测试所述DNN,其中所述第二训练数据集包括具有不带注释的第二对象的第二图像。所述方法还可以包括基于所述第二不确定性来选择包括在所述第二训练数据集中的图像子集,注释包括在所述第二训练数据集中的所选择的图像子集中的所述第二对象,以及基于包括在所述第二训练数据集中的包括带注释的第二对象的所选择的图像子集来训练所述DNN。第二计算机可包括用于基于第三对象预测来操作车辆的指令,所述第三对象预测包括由所述DNN确定的第三不确定性。所述带注释的第一对象和所述带注释的第二对象可包括地面实况。可通过将包括在所述第一训练数据集中的图像输入到所述DNN多次以确定对象预测来训练所述DNN,所述对象预测与包括在所述第一训练数据集中的所述地面实况进行比较以确定损失函数。

可以使所述损失函数反向传播通过所述DNN的层从最靠近输出端的所述层到最靠近输入端的所述层以选择DNN处理权重。所述DNN可为卷积神经网络,所述卷积神经网络包括多个卷积层和全连接层。所述第一不确定性和所述第二不确定性可为所述对象预测正确的概率。基于将所述第二不确定性与所述第一不确定性进行比较,图像子集可包括在所述第二训练数据集中。将所述第一不确定性与所述第二不确定性进行比较可包括基于高斯分布来确定所述第一不确定性的平均和标准偏差。第一图像和第二图像可以包括交通场景。所述带注释的第一对象和所述不带注释的第二对象可包括车辆和行人中的一者或多者。训练DNN可以包括多个数据集。高斯分布可包括确定所述第一不确定性和所述第二不确定性的平均和标准偏差。可以在多个训练时期中训练DNN。

还公开了一种计算机可读介质,所述计算机可读介质存储用于执行上述方法步骤中的一些或全部的程序指令。还公开了一种包括计算机设备的计算机,所述计算机被编程为执行上述方法步骤中的一些或全部,所述计算机设备被编程为:基于第一训练数据集来训练深度神经网络(DNN),所述第一训练数据集包括具有带注释的第一对象的第一图像;基于所述第一训练数据集来测试所述DNN以确定包括第一不确定性的第一对象预测;以及通过输入第二训练数据集并输出包括第二不确定性的第一对象预测来测试所述DNN,其中所述第二训练数据集包括具有不带注释的第二对象的第二图像。所述方法还可以包括基于所述第二不确定性来选择包括在所述第二训练数据集中的图像子集,注释包括在所述第二训练数据集中的所选择的图像子集中的所述第二对象,以及基于包括在所述第二训练数据集中的包括带注释的第二对象的所选择的图像子集来训练所述DNN。第二计算机可包括用于基于第三对象预测来操作车辆的指令,所述第三对象预测包括由所述DNN确定的第三不确定性。所述带注释的第一对象和所述带注释的第二对象可包括地面实况。可通过将包括在所述第一训练数据集中的图像输入到所述DNN多次以确定对象预测来训练所述DNN,所述对象预测与包括在所述第一训练数据集中的所述地面实况进行比较以确定损失函数。

所述指令还可以包括用于使所述损失函数反向传播通过所述DNN的层从最靠近输出端的所述层到最靠近输入端的所述层以选择DNN处理权重的指令。所述DNN可为卷积神经网络,所述卷积神经网络包括多个卷积层和全连接层。所述第一不确定性和所述第二不确定性可为所述对象预测正确的概率。基于将所述第二不确定性与所述第一不确定性进行比较,图像子集可包括在所述第二训练数据集中。将所述第一不确定性与所述第二不确定性进行比较可包括基于高斯分布来确定所述第一不确定性的平均和标准偏差。第一图像和第二图像可以包括交通场景。所述带注释的第一对象和所述不带注释的第二对象可包括车辆和行人中的一者或多者。训练DNN可以包括多个数据集。高斯分布可包括确定所述第一不确定性和所述第二不确定性的平均和标准偏差。可以在多个训练时期中训练DNN。

附图说明

图1是示例性交通基础设施系统的框图。

图2是交通场景的示例性图像的图示。

图3是包括边界框的交通场景的示例性图像的图示。

图4是示例性卷积神经网络的图示。

使用对象向量来预测对象在图像数据中的未来位置的示例性过程的流程图。

图5是训练DNN的示例性过程的流程图。

图6是基于预测的对象来操作车辆的示例性过程的流程图。

具体实施方式

图1是可以包括交通基础设施系统105的感测系统100的图示,所述交通基础设施系统包括服务器计算机120和固定传感器122。感测系统100包括车辆110,所述车辆可在自主(“自主”本身在本公开中意指“完全自主”)模式、半自主模式和乘员驾驶(也被称为非自主)模式下操作。一个或多个车辆110的计算装置115可从传感器116接收关于车辆110的操作的数据。计算装置115可以自主模式、半自主模式或非自主模式操作车辆110。

计算装置115包括诸如已知的处理器和存储器。此外,存储器包括一种或多种形式的计算机可读介质并且存储指令,所述指令可由处理器执行来执行包括如本文所公开的各种操作。例如,计算装置115可以包括编程以操作车辆制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆110的加速度)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算装置115(而不是人类操作员)是否以及何时控制此类操作。

计算装置115可以包括多于一个计算装置(例如,包括在车辆110中以用于监测和/或控制各种车辆部件的控制器等(例如,动力传动系统控制器112、制动控制器113、转向控制器114等)),或例如经由如下面进一步描述的车辆通信总线通信地联接到所述多于一个计算装置。计算装置115通常被布置用于通过车辆通信网络(例如,包括车辆110中的总线,诸如控制器局域网络(CAN)等)通信;车辆110网络可另外或替代地包括诸如已知的有线或无线通信机制,例如以太网或其他通信协议。

计算装置115可经由车辆网络向车辆中的各种装置(例如,控制器、致动器、传感器(包括传感器116)等)传输消息和/或从所述各种装置接收消息。替代地或另外,在计算装置115实际上包括多个装置的情况下,可使用车辆通信网络来在本公开中表示为计算装置115的装置之间通信。另外,如下文所提及,各种控制器或感测元件(诸如传感器116)可经由车辆通信网络向计算装置115提供数据。

另外,计算装置115可被配置用于通过车辆对基础设施(V2I)接口111经由网络130与远程服务器计算机120(诸如云服务器)通信,如下所描述的,所述接口包括硬件、固件和软件,所述硬件、固件和软件准许计算装置115经由诸如无线互联网

如已经提及的,通常包括在存储在存储器中并可由计算装置115的处理器执行的指令中的是用于在没有人类操作员干预的情况下操作一个或多个车辆110部件(例如,制动、转向、推进等)的编程。使用在计算装置115中接收的数据(例如,来自传感器116的传感器数据、服务器计算机120等的数据),计算装置115可在没有驾驶员的情况下进行各种确定和/或控制各种车辆110部件和/或操作以操作车辆110。例如,计算装置115可包括编程以调节车辆110操作行为(即,车辆110操作的物理表现),诸如速度、加速度、减速度、转向等,以及策略性行为(即,通常以意图实现路线的有效的穿越的方式控制操作行为),诸如车辆之间的距离和/或车辆之间的时间量、车道改变、车辆之间的最小间隙、左转跨过路径最小值、到特定位置处的到达时间以及从到达到穿过十字路口的十字路口(无信号灯)最短时间。

如本文所使用的术语控制器包括通常被编程来监测和/或控制特定车辆子系统的计算装置。示例包括动力传动系统控制器112、制动控制器113和转向控制器114。控制器可为诸如已知的电子控制单元(ECU),可能包括如本文所描述的附加的编程。控制器可通信地连接到计算装置115并且从所述计算装置接收指令以根据指令来致动子系统。例如,制动控制器113可从计算装置115接收指令以操作车辆110的制动器。

用于车辆110的一个或多个控制器112、113、114可以包括已知的电子控制单元(ECU)等,作为非限制性示例,包括一个或多个动力传动系统控制器112、一个或多个制动控制器113和一个或多个转向控制器114。控制器112、113、114中的每一者可包括相应的处理器和存储器以及一个或多个致动器。控制器112、113、114可被编程并且连接到车辆110通信总线,诸如控制器局域网(CAN)总线或局域互连网(LIN)总线,以从计算装置115接收指令并且基于指令而控制致动器。

传感器116可以包括已知的多种装置,以经由车辆通信总线提供数据。例如,固定到车辆110的前保险杠(未示出)的雷达可提供从车辆110到车辆110前方的下一车辆的距离,或者设置在车辆110中的全球定位系统(GPS)传感器可提供车辆110的地理坐标。例如,由雷达和/或其他传感器116提供的距离和/或由GPS传感器提供的地理坐标可由计算装置115用来自主或半自主地操作车辆110。

车辆110通常是能够自主和/或半自主操作并且具有三个或更多个车轮的基于地面的车辆110(例如,客车、轻型货车等)。车辆110包括一个或多个传感器116、V2I接口111、计算装置115和一个或多个控制器112、113、114。传感器116可以收集与车辆110和车辆110的操作环境相关的数据。以举例的方式但非限制,传感器116可以包括例如测高仪、相机、激光雷达、雷达、超声传感器、红外传感器、压力传感器、加速度计、陀螺仪、温度传感器、压力传感器、霍尔传感器、光学传感器、电压传感器、电流传感器、机械传感器(诸如开关)等。传感器116可以用来感测车辆110的操作环境,例如,传感器116可以检测诸如天气状况(降雨、外部环境温度等)的现象、道路坡度、道路位置(例如,使用道路边缘、车道标记等)或目标对象(诸如邻近车辆110)的位置。传感器116还可以用于收集数据,包括与车辆110的操作相关的动态车辆110数据,诸如速度、横摆率、转向角度、发动机转速、制动压力、油压、施加到车辆110中的控制器112、113、114的功率电平、在部件之间的连接性以及车辆110的部件的准确且及时的性能。

车辆可被配备成以自主模式和乘员驾驶模式两者操作。半自主模式或完全自主模式意指车辆可由作为具有传感器和控制器的系统的一部分的计算装置部分地或完全地驾驶的操作模式。车辆可能被占用或未被占用,但是在任一种情况下,都可在没有乘员协助的情况下部分地或完全地驾驶车辆。出于本公开的目的,自主模式被定义为车辆推进(例如,经由包括内燃发动机和/或电动马达的动力传动系统)、制动和转向中的每一者由一个或多个车辆计算机控制的模式;在半自主模式中,车辆计算机控制车辆推进、制动和转向中的一者或多者。在非自主模式下,这些都不由计算机控制。

图2是交通场景202的图像200的图示。交通场景202包括车辆204、206和行人208、210、212,统称为对象214。交通场景202的图像200可以由包括在车辆110中的传感器116获取。例如,传感器116可以是单目RGB相机。单目RGB相机可以是可以例如以高达每秒60帧的帧速率获取多个图像200作为RGB图像数据的帧的摄像机。图像200也可以由包括在交通基础设施系统105中的固定传感器122获取。固定传感器122可安装在相机支架上,该相机支架可以包括交通信号杆、灯杆、专用杆或支架、建筑物、或现有结构(诸如桥梁、立交桥或标志杆)。固定传感器122可以是摄像机并且获取多个RGB彩色图像帧。由固定传感器122获取的图像200可由交通基础设施系统105中包括的服务器计算机120传送到车辆110中的计算装置115。

图3是在用DNN处理以确定关于图像300中的对象的预测之后的交通场景202的图像300的图示。关于对象的预测包括边界框304、306、308、310、312,它们统称为围绕交通场景202中所包括的对象214的边界框314。可以标记边界框314以识别包括在边界框314中的对象的类别,即,“车辆”或“行人”。车辆110中的计算装置115可以使用由DNN输出的预测来操作车辆110。例如,计算装置115可以确定避开预测的对象的操作车辆110的车辆路径。车辆路径可以由描述车辆110的未来位置的多项式函数(称为“路径多项式”)指定。多项式函数可以基于起始位置和目的地来确定,并且在车辆110在车辆路径上操作时观察对车辆110的横向加速度和纵向加速度的限制。计算装置115可以通过将命令传输到控制器112、113、114以控制车辆动力传动系统、车辆转向和车辆制动来控制对车辆110的操作。

图4是DNN 400的框图。DNN 400可为卷积神经网络(CNN)。DNN 400输入图像402并输出预测410。预测410可以包括关于包括在输入图像402中的对象的数据。例如,对象预测410可以包括关于包括在输入图像402中的对象的标签和位置。例如,包括在输入图像402中的对象可以被标记为“车辆”或“行人”,并且每个对象的位置可以由如图3所示的边界框314指定。DNN 400包括卷积层404,所述卷积层使用多个卷积核对输入图像402进行卷积并向全连接层408输出潜在变量406。全连接层408用多个线性和/或非线性代数函数处理潜在变量406,以确定关于包括在输入图像402中的对象214的一个或多个预测410。

可以使用训练数据集来训练DNN 400,所述训练数据集包括多个输入图像402和与输入图像402相对应的用户确定的地面实况。地面实况包括关于训练数据集中所包括的对象的真实世界位置的数据。可以通过任何合适的技术来确定关于训练数据集中的对象的数据,诸如通过检查和处理包括在训练数据集中的图像数据以确定包括在图像中的对象的标签和边界框。

在训练期间,可以随机地或伪随机地选择对应于卷积核和代数函数的参数,并且处理输入图像402以确定一个或多个对象预测410。可以将对象预测410与伴随输入图像402的地面实况进行比较,并且可以确定损失函数。损失函数可被输入到卷积层404和全连接层408,以选择导致对象预测410与地面实况之间的最佳匹配的卷积核和代数函数的权重,因此训练第二DNN 400。对象预测410损失函数测量对象预测与用户确定的地面实况对象类别的比较接近程度。对象预测410还可以包括不确定性。不确定性是测量对象预测410正确的概率的值。不确定性是0与1之间的值,并且可以基于在训练DNN 400时确定的损失函数来生成。

可以通过将训练数据集划分为多个时期来训练DNN 400。本文档的上下文中的时期是训练数据集的一部分通过DNN 400的一次完整传递,其中训练数据集的所述部分中的每个图像已经由DNN 400处理一次或多次以确定损失函数,以更新DNN 400中包括的权重。每个时期包括训练数据集中的图像的不同部分。在每个时期中,基于当前时期中包括的训练数据集图像的部分来训练DNN 400。在当前时期之后,选择下一个时期,并基于下一个时期中包括的训练数据集的部分来训练DNN 400。选择后续时期,直到用尽时期的数量。将训练数据集划分为时期可以帮助使DNN 400的训练更易于管理。例如,训练数据集可以包括数千个图像。将训练数据集划分为时期可以使训练图像的数量更易于管理,并且将训练划分为多个一天或两天的会话,而不是可能需要多天的一个大型训练会话。通过将训练划分为时期,可以更快地评估进度,并且可以比其他可能方式更快地(例如,在几小时而不是几天内)对训练进行任何期望的改变。

如本文所述将训练数据集划分为时期提供了基于将测试结果与先前时期进行比较来对测试稍后时期的结果进行排名而对稍后时期中的图像进行注释。通过测试当前时期中的图像并将当前时期图像的输出不确定性与先前时期中的图像的不确定性进行比较,可以通过选择不确定性与紧邻前一时期的平均不确定性相比更大的当前时期中包括的图像子集来选择稍后时期中的图像子集。在一些示例中,可以将当前时期中包括的不确定性与所有先前时期的平均不确定性进行比较。选择最大化或至少增加当前时期的不确定性的用于注释的图像子集可以减少或最小化当前时期要注释的图像的数量,同时最大化基于训练的所得预测中的不确定性的降低。此外,通过相对于先前时期测试当前时期生成的不确定性,可以提前结束训练和/或进一步减少训练时间和资源。如果当前时期未生成大于或等于由先前时期产生的不确定性的不确定性,则用该时期进行进一步训练不太可能导致改进DNN 400的训练,并且使用该时期的训练可以停止并且可以测试下一个时期。用以这种方式选择的训练数据集的子集来训练DNN 400提供的训练结果等于或优于通过注释整个数据集来训练DNN 400。用太多类似的图像训练DNN 400可能导致“过度训练”,其中DNN 400基于训练数据集中的图像中的不相关细节开始输出结果。可以通过基于已经导致高不确定性分数的图像(这意味着它们与先前训练时期中包括的图像不相似)来训练DNN 400来避免过度训练。

本文讨论的技术通过将训练数据集划分为时期并仅对包括在第一时期中的训练图像进行完全注释来改进DNN 400训练。可以继续进行第一时期的训练,结果是经训练的DNN 400。有利地,可以通过输入来自第二时期的不带注释的图像然后对输出结果进行排名来测试第一时期训练的DNN 400。因为第二时期图像没有随附的地面实况,所以无法确定第二时期图像的损失函数。不确定性值通常可以包括在由DNN 400输出的对象预测410中。可以针对来自一个或多个先前时期的结果对不确定性值进行排名,以确定第二训练时期中的哪个图像子集产生最不确定的预测。

可以通过检查伴随第二时期训练数据集中的图像的输出预测的不确定性来选择第二时期训练数据集中产生最不确定预测的图像子集。例如,可以基于不确定性值对输出预测进行排名,并且可以基于用户确定的阈值来选择排名最高的不确定性。可以通过使用经训练的DNN处理第一训练数据集来测试DNN。可以确定响应于来自第一训练时期的图像输出的预测的不确定性值的统计信息,并将其与针对响应于第二训练数据集输出的不确定性确定的值进行比较。例如,可以假设训练时期的不确定性遵循高斯分布,并且可以确定不确定性的平均和标准偏差。可以将从第二训练时期输出的不确定性与第一训练时期的平均和标准偏差进行比较。可以选择来自所述第二训练时期的其不确定性与所述第一训练时期均值相差超过所述标准偏差的用户确定的百分比的图像以进行注释。

然后可以对基于不确定性选择的第二时期训练图像进行注释,并且使用所选择和注释的第二时期图像来训练DNN 400。在使用来自第二时期的选择的图像进行训练之后,可以通过处理来自第三时期的不带注释的图像来测试DNN 400,并且重复所述过程。可以基于预测不确定性来选择来自第三时期的图像子集并进行注释。然后可以使用所选择和注释的第三时期图像来训练DNN 400。可以重复该过程,直到用尽训练数据集时期。

通常,当训练DNN 400时,在训练之前对每个训练时期中的图像进行注释。使用不带注释的图像数据测试经训练的DNN 400并基于不确定性选择要注释的训练图像子集可以训练DNN 400消除最大量的不确定性,这是训练DNN 400的目标。基于不确定性对训练数据进行注释可以训练DNN 400,同时使注释训练数据所需的时间和资源最小化。

基于不确定性对训练数据进行注释可以类似于训练DNN 400中的遗忘概念。使用时期来训练DNN 400的问题可能是后续时期中的数据可能导致DNN 400“遗忘”先前的训练,即,后续训练可能导致DNN 400对来自先前时期的输入数据输出不正确的预测,其先前已正确预测。不同之处在于防止遗忘的技术依赖于带注释的数据来检测和补偿遗忘,而本文讨论的技术使用不带注释的数据和不确定性度量来选择数据进行注释。

图5是关于图1至图4所描述的用于训练DNN 400的过程500的流程图的图示。过程500可以由计算装置115或服务器计算机120的处理器将来自传感器116的数据作为输入并执行命令来实施。过程500包括可以按所示次序执行的多个框。替代地或另外,过程500可以包括更少的框,或者可以包括以不同次序执行的框。

过程500开始于框502,其中计算装置115或服务器计算机120使用如上面关于图4所讨论的带注释的第一数据集来训练DNN 400。

在框504处,使用如上文关于图4所讨论的不带注释的第二数据集来测试DNN 400,以获得第一结果。

在框506处,对第一结果进行排名以选择第二数据集中的包括最大不确定性的数据,如上面关于图4所讨论的。可以通过将来自第二数据集的第一结果中包括的不确定性的平均和标准偏差与来自处理第一数据集的结果的不确定性的平均和标准偏差进行比较来对来自第二数据集的第一结果进行排名。

在框508处,如上面关于图4所讨论的那样注释来自第二数据集的所选择的数据。

在框510处,使用如上文关于图4所讨论的来自第二数据集的带注释的数据来训练DNN 400。因为DNN 400是通过基于通过处理不带注释的数据获得的结果来注释选择的数据来训练的,所以可以使用比注释整个数据集的示例更少的计算资源来训练DNN 400确定更可靠的结果。在框510之后,过程500结束。

图6是关于图1至图5所描述的用于基于如上文在图5的过程500中所示那样训练的DNN 400来操作车辆110的过程的流程图的图示。过程600可以由计算装置115的处理器来实施,所述处理器将来自传感器116的数据作为输入,并执行命令,且操作车辆110。过程600包括可以按所示次序执行的多个框。替代地或另外,过程600可以包括更少的框,或者可以包括以不同次序执行的框。

过程600开始于框602,其中车辆110中的计算装置115从包括在车辆110中的传感器116获取图像200,所述传感器可以是例如相机。

在框604处,计算装置115通过将图像200输入到如上文关于图4和图5所讨论的训练的DNN 400来基于图像200确定对象预测410。

在框606处,计算装置115基于由DNN 400输出的对象预测410来操作车辆110。操作车辆110可包括基于对象预测410确定车辆路径,并向控制器112、113、114输出命令以控制车辆动力传动系统、车辆转向和车辆制动以控制车辆运动,从而沿着该车辆路径来操作车辆110。在框606之后,过程600结束。

诸如本文讨论的那些计算装置的计算装置通常各自包括命令,所述命令可由诸如上文所识别的那些计算装置的一个或多个计算装置执行并用于执行上文所描述的过程的框或步骤。例如,上文论述的过程框可体现为计算机可执行命令。

计算机可执行命令可由使用各种编程语言和/或技术创建的计算机程序来编译或解译,所述编程语言和/或技术包括但不限于以下的单一形式或组合形式:Java

计算机可读介质(也称为处理器可读介质)包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂时性(例如,有形)介质。此类介质可采用许多形式,包括但不限于非易失性介质和易失性介质。指令可通过一种或多种传输介质来传输,所述一种或多种传输介质包括光纤、线、无线通信,包括构成耦合到计算机的处理器的系统总线的内部件。常见形式的计算机可读介质包括例如RAM、PROM、EPROM、FLASH-EEPROM、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。

除非本文作出相反的明确指示,否则权利要求中使用的所有术语意图给出如本领域技术人员所理解的普通和通常的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一个”、“该”、“所述”等单数冠词应被解读为叙述所指示的元素中的一者或多者。

术语“示例性”在本文中以表示示例的意义使用,例如,对“示例性小部件”的引用应当被理解为仅指代小部件的示例。

修饰值或结果的副词“大约”意味着形状、结构、测量、值、确定、计算等可因为材料、加工、制造、传感器测量、计算、处理时间、通信时间等的缺陷而与确切描述的几何结构、距离、测量、值、确定、计算等有偏差。

在附图中,相同的附图标记指示相同的元素。另外,可改变这些元素中的一些或全部。相对于本文描述的介质、过程、系统、方法等,应理解,尽管此类过程等的步骤或框已被描述为根据特定的有序顺序发生,但是此类过程可通过以本文描述的次序以外的次序执行所描述的步骤来实践。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文描述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例的目的而提供的,并且决不应解释为限制所要求保护的发明。

根据本发明,提供了一种计算机,其具有:处理器;以及存储器,所述存储器包括指令,所述指令可由所述处理器执行以:基于将第一训练数据集接收为输入来训练深度神经网络(DNN),所述第一训练数据集包括具有带注释的第一对象的第一图像;基于所述第一训练数据集来测试所述DNN以确定包括第一不确定性的第一对象预测;通过输入第二训练数据集并输出包括第二不确定性的第一对象预测来测试所述DNN,其中所述第二训练数据集包括具有不带注释的第二对象的第二图像;基于所述第二不确定性来选择包括在所述第二训练数据集中的图像子集;注释包括在所述第二训练数据集中的所选择的图像子集中的所述第二对象;以及基于包括在所述第二训练数据集中的包括带注释的第二对象的所选择的图像子集来训练所述DNN。

根据实施例,第二计算机包括用于基于第三对象预测来操作车辆的指令,所述第三对象预测包括由所述DNN确定的第三不确定性。

根据实施例,所述带注释的第一对象和所述带注释的第二对象包括地面实况。

根据实施例,所述指令包括用于进行以下操作的另外的指令:通过将包括在所述第一训练数据集中的图像输入到所述DNN多次以确定对象预测来训练所述DNN,所述对象预测与包括在所述第一训练数据集中的所述地面实况进行比较以确定损失函数。

根据实施例,所述指令包括用于使所述损失函数反向传播通过所述DNN的层从最靠近输出端的所述层到最靠近输入端的所述层以选择DNN处理权重的另外的指令。

根据实施例,所述DNN为卷积神经网络,所述卷积神经网络包括多个卷积层和全连接层。

根据实施例,所述第一不确定性和所述第二不确定性为所述对象预测正确的概率。

根据实施例,所述指令包括用于进行以下操作的另外的指令:基于将所述第二不确定性与所述第一不确定性进行比较来选择包括在所述第二训练数据集中的图像子集。

根据实施例,所述指令包括用于进行以下操作的另外的指令:将所述第一不确定性与所述第二不确定性进行比较包括基于高斯统计来确定所述第一不确定性的平均和标准偏差。

根据实施例,第一图像和第二图像包括交通场景。

根据实施例,所述带注释的第一对象和所述不带注释的第二对象包括车辆和行人中的一者或多者。

根据实施例,训练所述DNN包括多个数据集。

根据本发明,一种方法包括:基于第一训练数据集来训练深度神经网络(DNN),所述第一训练数据集包括具有带注释的第一对象的第一图像;基于所述第一训练数据集来测试所述DNN以确定包括第一不确定性的第一对象预测;通过输入第二训练数据集并输出包括第二不确定性的第一对象预测来测试所述DNN,其中所述第二训练数据集包括具有不带注释的第二对象的第二图像;基于所述第二不确定性来选择包括在所述第二训练数据集中的图像子集;注释包括在所述第二训练数据集中的所选择的图像子集中的所述第二对象;以及基于包括在所述第二训练数据集中的包括带注释的第二对象的所选择的图像子集来训练所述DNN。

在本发明的一个方面,第二计算机包括用于基于第三对象预测来操作车辆的指令,所述第三对象预测包括由所述DNN确定的第三不确定性。

在本发明的一个方面,所述带注释的第一对象和所述带注释的第二对象包括地面实况。

在本发明的一个方面,该方法包括通过将包括在所述第一训练数据集中的图像输入到所述DNN多次以确定对象预测来训练所述DNN,所述对象预测与包括在所述第一训练数据集中的所述地面实况进行比较以确定损失函数。

在本发明的一个方面,该方法包括使所述损失函数反向传播通过所述DNN的层从最靠近输出端的所述层到最靠近输入端的所述层以选择DNN处理权重。

在本发明的一个方面,所述DNN为卷积神经网络,所述卷积神经网络包括多个卷积层和全连接层。

在本发明的一个方面,所述第一不确定性和所述第二不确定性为所述对象预测正确的概率。

在本发明的一个方面,该方法包括基于将所述第二不确定性与所述第一不确定性进行比较来选择包括在所述第二训练数据集中的图像子集。

技术分类

06120116216136