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

用于训练机器学习模型的方法

文献发布时间:2024-04-18 20:02:18


用于训练机器学习模型的方法

技术领域

本公开涉及用于训练机器学习模型的方法。

背景技术

诸如神经网络的机器学习模型典型地是基于输出和目标输出(例如标签形式的地面实况)之间的偏差来加以训练的。在此,大量训练输入数据元素被输送到相应的机器学习模型,并且由个体损失(每个训练输入数据元素的个体损失)形成总损失。在此,训练输入数据元素对于训练的重要性可能非常不同,即,例如机器学习模型应该对仅反映在少数训练输入数据元素中的特殊性特别敏感。

因此,期望一种用于训练机器学习模型的方法,其中训练的焦点在于对于相应任务的训练具有高度重要性的训练输入数据元素。

发明内容

根据各种实施方式,提供了一种用于训练机器学习模型的方法,具有:确定训练输入数据元素的大量训练序列,其中对于每个训练序列,每个训练输入数据元素包含来自分配给该训练序列的时间段的一个时间点的传感器数据,在所述时间段中预给定事件在一个或多个相应的事件时间点至少发生一次;针对每个训练输入数据元素确定所述训练输入数据元素包含传感器数据时的时间点与所述一个或多个相应事件时间点之一之间的时间距离;以及根据所确定的时间距离来训练所述机器学习模型。

上述方法使得可以将训练过程集中在训练数据包含传感器数据时的具体重要时间段(即,例如关键训练输入数据元素)。由此可以提高经过训练的机器学习模型的性能(例如预测准确性)和训练的数据效率。这在训练输入数据元素的重要性与其标签出现的频率不相关的情况下也可以实现。机器学习模型的输出在此也可以是连续的(即可以针对分类任务或回归任务训练该机器学习模型。)

下面说明各种实施例。

实施例1是如上所述的一种用于训练机器学习模型的方法。

实施例2是根据实施例1的方法,其中所述训练具有:针对每个训练输入数据元素确定所述机器学习模型的目标输出;将所述训练输入数据元素输送给所述机器学习模型;确定损失,所述损失对于每个训练输入数据元素具有所述机器学习模型针对该训练输入数据元素的输出与针对该训练输入数据元素确定的目标输出之间的偏差,其中对于每个训练输入数据元素,用加权因子对所述损失中的偏差进行加权,所述加权因子取决于针对该训练输入数据元素确定的时间距离;以及训练所述神经网络以减少所述损失。

这使得可以有效地考虑训练输入数据元素对于训练机器学习模型在识别特定事件方面的重要性。

实施例3是根据实施例2的方法,其中针对所述训练输入数据元素确定的时间距离的绝对值越小,所述加权因子就越大。

这是基于以下假设:距离事件较近的传感器数据比(时间上)距离较远的传感器数据对于事件的检测更相关。

实施例4是根据实施例2或3所述的方法,其中所述加权因子取决于所述训练输入数据元素包含传感器数据时的时间点是在一个或多个相应事件时间点之一之前还是之后。

由此可以考虑训练输入数据元素包含事件之前还是之后的传感器数据(例如代表新状况)对于训练的不同重要性。

实施例5是根据实施例1至4之一的方法,其中从所述训练输入数据元素中选择训练输入数据元素,其中每个训练输入数据元素被选择的概率取决于针对该训练输入数据元素确定的时间距离,并且借助于所选择的训练输入数据元素来训练所述机器学习模型。

这是有效考虑训练输入数据元素对于训练机器学习模型在识别特定事件方面的重要性的另一种可能性。该可能性可以与根据实施例2的权重适配结合使用。

未选择的训练输入数据元素例如不用于训练。由此可以提高数据效率。所选择的训练输入数据元素还可以被划分成用于训练、验证和测试的训练输入数据元素。

实施例6是根据实施例5的方法,其中针对所述训练输入数据元素确定的时间距离的绝对值越小,所述概率就越大。

如上所述,这是基于以下假设:距离事件较近的传感器数据比(在时间上)距离较远的传感器数据对于事件的检测更相关。

实施例7是根据实施例5或6所述的方法,其中所述加权因子取决于所述训练输入数据元素包含传感器数据时的时间点是在所述一个或多个相应事件时间点之一之前还是之后。

与上述自适应加权的情况类似,由此可以考虑训练输入数据元素包含事件之前还是之后的传感器数据对于训练的不同重要性。

实施例8是根据实施例1至7之一的方法,其中对于分配有其中所述预给定事件出现多次的时间段的训练序列,确定该训练序列的训练输入数据元素在该训练输入数据元素包含传感器数据时的时间点与最接近于该训练输入数据元素包含传感器数据时的时间点的事件时间点之间的时间距离。

因此,在对应于训练序列的时间段内(即,训练序列在以下含义中与该时间段相关联(或分配):该训练序列包含该时间段的传感器数据),事件可以出现多次,并且于是该时间距离考虑最近的出现。在此还可以预给定多个不同的事件,并且可以考虑相应的时间距离(即权重也可以取决于到不同事件的时间距离)。

实施例9是一种训练装置,其被设置为执行根据实施例1至8之一的方法。

实施例10是一种具有指令的计算机程序,所述指令当其由处理器执行时使得所述处理器执行根据实施例1至8之一的方法。

实施例11是一种存储指令的计算机可读介质,所述指令当其由处理器执行时使得所述处理器执行根据实施例1至8之一的方法。

附图说明

在附图中,类似的附图标记通常在完全不同的视图中指代相同的部件。附图不一定按比例绘制,而是通常将重点放在显示本发明的原理上。在下面的描述中,参考以下附图描述各个方面。

图1示出了车辆。

图2说明了神经网络的训练。

图3示出了一个示例,其中用于训练的时间序列包含关于车辆行驶的路径的传感器数据。

图4示出了一个示例,其中用于训练的时间序列包含麦克风的音频电平。

图5示出了图示根据实施方式的用于训练机器学习模型的方法的流程图。

具体实施方式

以下详细描述参考了附图,附图为了解释示出了可以在其中实践本发明的本公开的具体细节和方面。可以使用其他方面并且可以进行结构、逻辑和电气改变而不脱离本发明的保护范围。本公开的各个方面不一定是相互排斥的,因为本公开的一些方面可以与本公开的一个或多个其他方面组合以形成新的方面。

下面更详细地描述各种示例。

图1示出了(例如自主)车辆101。

在图1的示例中,车辆101(例如乘用车或卡车)配备有车辆控制装置102。

车辆控制装置102具有数据处理组件,例如处理器(例如CPU(中央处理单元))103和存储器104,存储器104用于存储车辆控制装置102根据其工作的控制软件和由处理器103处理的数据。

例如,所存储的控制软件(计算机程序)具有指令,所述指令当其由处理器执行时使得处理器103实现神经网络107。

存储在存储器104中的数据可以包括例如由一个或多个相机105捕获的图像数据。例如,一个或多个相机105可以记录车辆101的环境的一个或多个灰度或彩色照片。然后,神经网络107可以例如基于图像数据来确定车辆101位于哪个车道。另一种可能性是例如车辆控制装置102包含位置信息(即例如作为相应坐标系中的x-y坐标,例如来自GPS测量)并且神经网络107根据这些位置信息来确定其位于哪条车道。

然后车辆控制装置102可以根据神经网络107的输出来控制车辆101。从而例如车道保持助手在此可以帮助将车辆保持在神经网络107已检测到车辆101所在的车道中。

图2说明了神经网络201的训练。

依次向神经网络201输送训练输入数据元素的(输入)序列203(即,训练输入数据元素的训练序列)的训练输入数据元素202。根据上面的示例,训练输入数据元素例如是相机图像或一对x-y坐标。

对于每个训练输入数据元素202,神经网络201产生相应的输出(即,输出数据元素)204,即在输入对应于输出数据元素的(输出)序列205的输入序列203时。

对于每个训练输入数据元素202,还存在相应的目标输出206。这些可以是监督学习中的预定标签,但也可以在自监督学习中产生或存在。例如,当训练自动编码器时,目标输出等于输入数据元素。一般而言,目标输出206是神经网络201的输出204应尽可能接近于的输出。

根据神经网络的输出204与相关联的目标输出206(即,对于特定训练输入数据元素202)的偏差,可以计算该训练输入数据元素202的(个体)损失207。但该偏差也可以是平方差等。

组合个体损失207提供了总损失208。然后(典型地借助于反向传播,即back-propagation)适配神经网络201的参数(即权重)以减少总损失208。这典型地发生在所谓的批次中,即序列203是一批训练输入数据元素202。用于训练的所有批次一起形成训练数据集。

当训练神经网络201(或者通常以类似方式训练机器学习模型)时,可以在总损失208中对个体损失207进行不同大小的加权,以考虑训练输入数据元素与训练数据集中的其他训练输入数据元素相比的相对重要性。训练输入数据元素202的个体损失207的权重大小例如由训练数据集中训练输入数据元素202的标签的出现频率得出。从而例如在训练数据集中代表性不足的标签比代表性过高的标志获得更高的权重。

然而,上述根据标签频率对个体损失进行加权的方案可能无法检测各个训练数据元素对于针对特定任务来训练神经网络所具有的实际重要性。因此,根据各种实施方式,训练输入数据元素202的个体损失208不(或至少不仅)根据其标签来加权,而是配备有根据训练输入数据元素202包含传感器数据时的时间点与反映在训练输入数据元素202(其例如属于一个时间序列)中的预给定事件的出现时间点之间的时间距离的加权因子。

为了简单起见,假设输入序列203对应于来自时间序列(即训练序列)210(每个时间序列具有多个(训练输入)数据元素211)的池209的时间序列。对应地,在这种情况下的总损失208是来自该时间序列的训练输入数据元素202的损失。(应当注意的是,这只是一个简单的例子以用于解释:一个批次可以包含多个时间序列210,然后对每个时间序列计算总损失208,并将这些总损失208加在一起形成该批次的总损失,并且适配神经网络201以减少该批次的总损失。)

于是,每个训练输入数据元素202即是时间序列的元素,即包含来自一个时间段的时间点序列中的特定时间点的传感器数据(对于该训练输入数据元素该时间序列包含传感器数据)。现在进一步假设预给定事件在该时间段内(在一个或多个事件时间点)至少发生一次,即传感器数据对应于预给定事件在该时间段内的(至少)一次出现或反映该(至少一次)出现。

例如,每个训练输入数据元素包含捕获传感器数据的时间点(或分配给时间点(例如,其初始时间点或中间时间点)的相应片段或相应时间窗口)的传感器数据,例如音频记录或图像记录或视频记录(从而每个训练输入数据元素包含一个或多个帧)。为了训练神经网络201,对应的训练装置(其例如可以是车辆控制装置102,但也可以是分开的训练装置,然后将经过训练的神经网络从该训练装置传输到车辆控制装置102)使用一个或多个事件的定义或过程,以确定每个时间序列210的一个或多个事件时间点。另外,假设每个训练输入数据元素202与一个时间点(即,该训练输入数据元素包含传感器数据时的时间点,这也可以对应于该时间点周围的特定区域(即,针对该时间点所包含的传感器数据也可以是来自该时间地点周围的特定区域的传感器数据),例如一个片段或时间窗口)相关联,使得训练装置可以为该训练输入数据元素202计算与其相关联的时间点与事件时间点(例如,在事件在时间段内——针对该事件时间序列包含传感器数据——多次出现的情况下是最近的事件时间点)之间的时间距离dt。然后,训练装置将该时间距离映射为权重w(dt),在计算总损失208时,该训练装置用该权重对个体损失207进行加权,例如根据

L

其中L

例如为训练时间序列210说明事件时间点(例如通过人工或自动注释)。事件例如是对象离开相机的视野或车辆改变车道。

训练装置针对每个时间序列210(或者至少该训练装置用于训练的时间序列)确定事件时间点,针对每个训练输入数据元素计算时间距离(例如到时间序列中最近的事件时间点),借助于函数w(dt)将该时间距离映射为权重,并在训练神经网络201时使用该权重来对该训练输入数据元素(即,个体损失207)对总损失208的贡献进行加权。

图3示出了一个示例,其中时间序列包含关于车辆301行驶的路径302的传感器数据(例如,从车辆301的角度来看的x-y位置或相机图像)。事件时间点303时的事件(在时间轴304上进行了标记)是车道变换。训练输入数据元素的标签305在车道变换之前为0并且在车道变换之后为1(即,神经网络201要训练的任务是检测车道变换)。如沿着时间轴304所示,计算权重w(dt),使得时间距离dt的绝对值越小,权重w(dt)就越大(其中权重也可以在事件时间点之前和之后不同地缩放)。

图4示出了一个示例,其中时间序列包含麦克风的音频电平401。事件时间点402处的事件(在时间轴403上进行了标记)是用户开始说话(即,从噪声到语音的转变)。训练输入数据元素的标签404在开始说话之前是0并且在开始说话之后是1(即,神经网络201要训练的任务是语音检测,例如为了自动取消用户的静音)。如沿着时间轴403所示,权重w(dt)被计算为使得在事件之前时间距离dt的绝对值越小,权重就越小,并且在事件之后时间距离dt的绝对值越小,权重就越大。因此在该示例中,函数w(dt)考虑dt的符号(例如,如果与训练输入数据元素相关联的时间点位于事件时间点402之前,则时间距离dt为负,并且如果与训练输入数据元素相关联的时间点位于事件时间点402之后,则时间距离dt为正)。这里的结果是最后一个噪声样本被低加权,而第一个语音样本被高加权。

在上面的示例中,如上所述,对神经网络201的训练取决于时间距离,因为根据时间距离对个体损失207进行加权。

替代地(但也可以附加地),神经网络201的训练还可以取决于时间距离,因为根据时间距离来选择训练输入数据元素202。例如,训练输入数据元素202是从时间序列210的池209(每个时间序列具有多个数据元素211)中采样的,并且数据元素211被选择用于训练神经网络201的概率,即被选择为训练输入数据元素202的概率取决于数据元素211与相应事件(即,与针对相应时间序列211所述预给定事件出现时的时间点)的时间距离。换句话说,不是根据时间距离对个体损失进行加权(例如,越靠近事件的时间点,权重越高),而是数据元素被采样为训练输入数据元素的概率取决于时间距离(例如,越靠近事件的时间点,概率越高)。

总之,根据各种实施方式提供了如图5中所示的方法。

图5示出了图示根据实施方式的用于训练机器学习模型的方法的流程图500。

在501中,确定训练输入数据元素的大量训练序列(即训练时间序列),其中对于每个训练序列,每个训练输入数据元素包含来自分配给该训练序列的时间段的一个时间点的传感器数据,在所述时间段中预给定事件在一个或多个相应的事件时间点至少发生一次。

在502中,针对每个训练输入数据元素确定所述训练输入数据元素包含传感器数据时的时间点与所述一个或多个相应事件时间点之一之间的时间距离。

在503中,根据所确定的时间距离来训练所述机器学习模型。

应当注意的是,502和503不一定需要严格地先后执行,即训练步骤和时间距离的计算步骤可以交替进行。这些步骤也可以与501部分地交替进行。

图5的方法可以由具有一个或多个数据处理单元的一个或多个计算机来执行。术语“数据处理单元”可以理解为使得能够处理数据或信号的任何类型的实体。所述数据或信号例如可以根据由数据处理单元执行的至少一个(即,一个或多于一个)具体功能来处理。数据处理单元可以包括模拟电路、数字电路、逻辑电路、微处理器、微控制器、中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、可编程门阵列的集成电路(FPGA)或者其任何组合,或者由模拟电路、数字电路、逻辑电路、微处理器、微控制器、中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、可编程门阵列的集成电路(FPGA)或者其任何组合形成。实现本文更详细描述的相应功能的任何其他方式也可以理解为数据处理单元或逻辑电路装置。这里详细描述的方法步骤中的一个或多个可以由数据处理单元通过由数据处理单元执行的一个或多个具体功能来执行(例如实现)。

根据各种实施,该方法即特别是通过计算机来实现。

训练后,机器学习模型可以应用于由至少一个传感器确定的传感器数据。因此,机器学习模型的输出提供关于至少一个传感器的环境和/或至少一个传感器本身的物理状态的结果,或者该方法可以具有将经过训练的机器学习模型的输出用作这样的结果,所述输出是所述机器学习模型响应于传感器数据的输入而提供的。

关于物理状态的结果特别是可以包含关于预给定事件是否已经发生的信息(例如,说话者已经开始说话或者已经发生车道变换)。换句话说,关于物理状态的结果可以表征预给定事件的发生。

换句话说,该方法可以具有借助于经过训练的机器学习模型(即,其输出响应于传感器数据)基于物理属性的测量(即,关于对象的传感器数据)来导出或预测现有真实对象的物理状态。

例如,在训练之后,机器学习模型用于通过向该机器学习模型输送关于机器人设备和/或其环境的传感器数据来产生用于所述机器人设备的控制信号。术语“机器人设备”可以理解为涉及任何技术系统(具有运动受控的机械部件),例如计算机控制的机器、车辆、家用电器、电动工具、制造机器、个人助理或访问控制系统。

各种实施方式可以接收和使用来自各种传感器的传感器数据的时间序列,例如视频、雷达、LiDAR、超声、运动、热成像等。可以对时间段测量或模拟传感器数据(对应于一个或多个事件时间点以及一个或多个预给定事件)。

尽管本文已经示出和描述了具体实施方式,但是本领域技术人员认识到,示出和描述的具体实施方式可以替换为各种替代和/或等效实现方案而不脱离本发明的保护范围。本申请应当覆盖本文所讨论的具体实施方式的任何适配或变化。因此,本发明旨在仅由权利要求及其等同物限制。

技术分类

06120116581625