2020年4月16号,特斯拉《带扩充数据的机器模型训练系统和方法》专利公布(专利公开号:US20200117953A1),该专利涉及用于在机器学习环境中训练数据的系统和方法,并且更具体地涉及通过在训练数据集中包括诸如传感器特性的附加数据来增强训练数据。
特斯拉该专利“公开了一种用扩充数据训练机器模型的系统和方法。一种示例方法包括识别由一组照相机捕捉的、同时附加到一个或多个图像收集系统的一组图像。对于图像集中的每个图像,识别图像的训练输出。对于一组图像中的一个或多个图像,生成一组增强图像的增强图像。生成增强图像包括使用维护图像的相机属性的图像操作功能修改图像。增强后的训练图像与图像的训练输出相关联。基于包含图像和增强图像集的图像训练集,训练预测计算机模型的一组参数来预测训练输出。”
在典型的机器学习应用中,可以通过各种方式增加数据,以避免模型与用于获取训练数据的捕获设备的特性过度拟合。例如,在用于训练计算机模型的典型图像集合中,图像可以表示在许多不同的捕获环境中捕获的对象,这些环境相对于被捕获的对象具有不同的传感器特性。例如,可以通过各种传感器特性(例如各种尺度(例如,图像内的显著不同距离)、不同焦距、不同透镜类型、不同的前处理或后处理、不同的软件环境、传感器阵列硬件等来捕获此类图像。这些传感器还可以根据不同的外部参数而不同,例如当图像被捕获时,成像传感器相对于环境的位置和方向。所有这些不同类型的传感器特性都会导致捕获的图像在图像集中的不同图像中呈现出不同和多样的形式,从而使正确训练计算机模型变得更加困难。
许多神经网络应用程序从在各种条件下捕获的数据中学习,并部署在各种不同的传感器配置上(例如,在运行于多种类型移动电话的应用程序中)。为了解释用于捕获图像的传感器的差异,开发人员可以通过诸如翻转、旋转或裁剪图像之类的修改来增加图像训练数据,这些修改将开发的模型推广到相机特性,例如焦距、轴倾斜、位置和旋转。
为了解释这些变化,并在各种来源上部署训练网络,可以增加或操纵训练数据,以提高训练模型的稳健性。然而,这些方法通常通过应用修改增强图像中的相机属性的变换来阻止模型有效地学习任何特定的相机配置。
特斯拉该专利用已增强的图像训练计算机模型,以保持原始捕获图像的相机特性。这些相机特性可以包括相机的内在或外在特性。这些固有特性可以包括传感器本身的特性,例如动态范围、视野、焦距和透镜失真。外部属性可以描述相机相对于拍摄环境的配置,例如相机的角度、比例或姿势。
下图是特斯拉专利公布的根据一个实施例的用于计算机模型训练和部署的环境的框图。“根据一个实施例的计算机模型训练和部署的环境。一个或多个图像收集系统140捕获可由模型训练系统用于训练计算机模型的图像,其可由模型应用系统部署和使用。这些系统经由网络120(例如因特网)连接,该网络120表示这些设备通过其进行通信的各种无线或有线通信链路。
图 1
模型训练系统130训练具有一组可训练参数的计算机模型,用于预测给定一组输入的输出。在本示例中,模型训练系统130通常基于图像输入来训练模型,以生成关于图像的输出预测信息。例如,在各种实施例中,这些输出可以识别图像中的对象(通过包围盒或分割来识别对象),可以识别图像的条件(例如,一天中的时间、天气)或图像的其他标记或描述符。
图像收集系统140具有从图像收集系统140的环境捕获信息的传感器组。尽管示出了一个图像收集系统140,但是许多图像收集系统140可以为模型训练系统130捕获图像。图像收集系统140的传感器具有在图像收集系统140中可以相同或基本相同的传感器特性。一个实施例中的图像收集系统是在环境中移动并用照相机捕捉环境图像的车辆或其他系统。图像收集系统140可以是手动操作的,或者可以是部分或全自动的车辆。因此,当图像收集系统140遍历环境时,图像收集系统140可以捕获环境的图像并将其发送到模型训练系统130。
模型应用系统110是具有与图像采集系统具有相同或基本相同的传感器特性的一组传感器的系统。在一些示例中,模型应用系统110还用作图像收集系统130,并将捕获的传感器数据(例如,图像)提供给模型训练系统130以用作进一步的训练数据。模型应用系统110接收来自模型训练系统130的训练模型,并使用由其传感器感测的数据的模型。由于从图像收集系统140和模型应用系统110捕获的图像具有相同的相机配置,模型应用系统110可以以与图像收集系统相同的方式和从相同的视角(或基本上相似的)捕获其环境。在应用模型之后,模型应用系统110可以将模型的输出用于各种目的。例如,当模型应用系统110是车辆时,模型可以预测图像中对象的存在,模型应用系统110可以将其用作安全系统的一部分或作为自主(或半自主)控制系统的一部分。
图2示出了用相同相机特性捕获的示例图像。“在本示例中,图像200A由图像收集系统130上的相机拍摄。另一图像200B也可以由图像收集系统130拍摄,图像收集系统130可以是相同的,也可以是不同的图像收集系统130。在捕获环境中的不同环境和不同对象时,这些图像保持与捕获环境的图像相关的相机属性。相机属性是指影响环境在相机中显示方式的相机的配置和方向属性。例如,这些相机属性可以包括相机相对于环境的角度、比例和姿势(例如,观察位置)。相对于拍摄图像的同一环境,修改相机的角度、比例或位置会导致环境图像发生更改。例如,放置在较高位置的相机将从不同高度查看对象,并显示该对象的不同部分,而不是较低位置。同样地,这些图像包括图像中的一致的伪影和效果,因为相机配置不是要分析的环境的一部分。例如,图像200A和200B都包括来自挡风玻璃的眩光和其他效果,图像右下侧的对象遮挡环境,挡风玻璃遮挡图像的底部。因此,从相同相机特征捕获的图像通常呈现相同的伪影、失真,并以相同的方式捕获环境。”
图 2
图3示出了根据一个实施例的模型训练系统130的组件。“模型训练系统包括用于训练计算机模型的各种模块和数据存储。模型训练系统130通过增强来自图像收集系统140的图像来训练模型以供模型应用系统110使用,以改进模型的泛化。使用不影响(例如,保持)图像的相机配置的图像操作功能生成增强图像。这允许更有效的建模,同时允许模型参数的泛化,从而更有选择地避免对图像中可能不同的方面的过度拟合,同时允许模型参数更紧密地学习与一致的相机特征相关的权重。
图 3
模型训练系统包括从图像收集系统140接收图像的数据输入模块310。数据输入模块310可以将这些图像存储在图像数据存储350中。数据输入模块310可以接收由数据收集系统140生成或提供的图像,或者可以从图像收集系统140请求图像。
标签模块320可以识别或应用标签到图像数据350中的图像。在一些例子中,图像可能已经识别出特征。标签还可以表示将由训练模型预测或输出的数据。例如,标签可以指定图像中所示环境中的特定对象,或者可以包括与图像相关联的描述符或“标记”。根据模型的应用,标签可以以各种方式表示该信息。例如,对象可以与图像中的边界框相关联,或者对象可以从图像的其他部分分割。因此,标记的图像可以表示模型所训练的基本事实。图像可以通过任何合适的方式进行标记,并且通常可以通过监督标记过程(例如,由用户审查图像并指定图像的标签)进行标记。然后,这些标签可以与图像数据存储器350中的图像相关联。
图像增强模块330可以基于图像收集系统140捕获的图像生成附加图像。这些图像可以作为模型训练模块340的训练管道的一部分生成,或者可以在模型训练模块340中开始训练之前生成这些增强图像。可以基于由图像收集系统140捕获的图像生成增强图像。”
图4示出了根据一个实施例的基于标记的训练图像400的增强图像的示例生成。“标记的训练图像可以是由图像收集系统140捕获的图像。训练图像410可以包括未增强的训练图像410A,其具有对应于标记的训练图像400中的标记数据的关联训练输出420A。
图 4
图像增强模块330通过对标记的训练图像400应用图像处理功能来生成增强图像。图像处理功能生成标记的训练图像400的修改版本,以改变用于训练模型的图像的特性。用于生成训练图像的图像处理功能保持标记的训练图像400的相机特性。因此,操纵功能可以保持环境的视图的比例、透视、方向和其他特性,这些特性可能受到相机的物理捕获特性的影响,或者在捕获跨各种设备可能一致的环境时相机的位置的影响。因此,图像处理功能可以影响在场景中可看到的对象或环境的其他特征的可视性或可清楚地看到这些对象或特征的程度,但不可以影响对象在图像中的位置或大小。可应用的维持相机特性的示例图像处理功能包括剪切、抖动(例如,对于色调、饱和度或颜色值)、盐和胡椒(引入黑白点)、模糊和域传输。这些图像处理函数中的多个可以组合应用以生成增强图像。剪切是指一种图像处理功能,它删除图像的一部分,并用其他图像内容替换删除的部分。域传输指的是图像处理功能,它修改图像以对应于图像中的另一个环境条件。例如,可以对白天的图像进行修改,使其近似于夜间的图像,或者对在太阳下拍摄的图像进行修改,以添加雨雪效果。
这些增强图像可以与标记的训练图像400与相同的训练输出相关联。在图4所示的示例中,通过对标记的训练图像400应用切口来生成增强图像410B,并且增强图像410B可以与训练输出420B相关联。同样地,为了生成训练图像410C,应用多个切口来修改图像的部分。在本例中,应用于生成训练图像410C的切口用不同的图案填充图像的切口区域。”
“在各种实施例中,可以使用各种参数和配置来应用切口,这些参数和配置可以基于训练图像和训练输出在图像中的位置而变化。因此,在不同的实施例中,并且基于训练输出的位置,剪切的数量、大小、位置和替换图像内容可以变化。作为示例,截断函数可以应用多个大小相似的截断,或者可以在一个范围内应用多个大小不同、半随机的截断。通过使用多个切口并改变大小,切口可以更紧密地模拟现实世界中(各种大小的)障碍物对观察对象的影响,并且可以阻止训练模型学习补偿任何特定大小的切口。
切口尺寸的范围可以基于对象尺寸的一部分或图像中的其他标签。例如,剪切可能不超过图像中对象边界框大小的40%,或者小于最小对象的边界框。这可以确保剪切块不会完全遮挡目标对象,因此图像将继续包含模型可以学习的对象的图像数据。切口的数量也可以是随机的,并且可以从分布中选择,例如均匀分布、高斯分布或指数分布。
此外,可以基于图像中对象的位置来选择切口的位置。这可能会与边界框提供一些重叠,但不会过多重叠。对象和剪切区域之间的交集可以通过被剪切替换的对象部分来测量,或者可以通过并集上的交集(IoU)来测量,IoU可以通过对象和剪切区域的交集除以对象和剪切区域的面积并集来测量。例如,可以将剪切区域放置为在20%到50%的范围内与并集值相交。通过在剪切图中包含一些但不是压倒性数量的对象,剪切图可以因此创建更具“挑战性”的示例,在不删除太多相关图像数据的情况下部分地模糊对象。类似地,还可以基于图像中照相机的预期视图,对图像的某些部分选择切口。例如,切口可以主要位于图像的下半部分或图像的中心,因为底部通常可以包括始终存在的伪影,而图像的中心可以是最感兴趣的区域(例如,对于车辆,通常是车辆的行驶方向)。
用于剪切区域的替换图像数据可以是纯色(例如常数)或者可以是另一图案,例如高斯噪声。作为另一示例,为了表示遮挡或其他障碍物,可以用来自具有相同图像类型或标签的另一图像的图像数据块替换该切口。最后,可以将切口与切口附近的区域混合,例如使用poisson混合。通过使用各种混合方法,例如背景修补或混合,这些方法可以确保剪切中的替换数据更难与环境区分,从而提供与真实世界障碍物更相似的示例。
尽管在图4中显示为矩形区域,但是在其他实施例中,用于生成增强图像的切口可以在不同形状上变化。在生成增强图像410B、410C并将增强图像与相关训练输出420B、420C相关联之后,图像增强模块330可以将图像添加到图像数据存储器350。
模型训练模块340基于图像收集系统140捕获的图像和图像增强模块330生成的增强图像来训练计算机模型。这些图像可以用作模型训练的图像训练集。在一个实施例中,机器学习模型是由模型训练模块340基于训练数据训练的神经网络模型,例如前馈网络、卷积神经网络(CNN)、深神经网络(DNN)、递归神经网络(RNN)、自组织映射(SOM)等。训练后,计算机模型可以存储在训练后的计算机模型存储器370中。模型接收传感器数据(例如图像)作为输入,并根据模型的训练输出输出预测。在训练该模型时,该模型学习(或“训练”)一组参数,这些参数根据由训练数据的损失函数评估的输入图像预测输出。也就是说,在训练期间,根据当前的一组参数来评估训练数据以生成预测。可以将训练输入的预测与指定输出(例如,标签)进行比较以评估损失(例如,使用损失函数),并且可以通过优化算法来修改参数以优化参数集以减少损失函数。尽管这些算法被称为“优化”,但它们可以减少一组参数的损失,但不能保证在给定一组输入的情况下找到参数的“最优”值。例如,梯度下降优化算法可以找到局部极小值,而不是全局极小值。”
通过在增强的训练数据上训练计算机模型,当计算机模型应用于在具有捕获数据的传感器特性的环境中工作的物理传感器的传感器数据时,计算机模型可以以更高的精度执行。由于增强保持这些特性,这些传感器特性(例如,摄像机特性)在用于训练数据的图像中表示。在一个实施例中,训练数据不包括由修改图像的相机特性的图像操纵功能生成的增强图像,例如对图像进行裁剪、填充、翻转(垂直或水平)或应用仿射变换(例如剪切、旋转、平移、倾斜)的操作。
在训练之后,模型分发模块380可以将训练的模型分发给系统以应用训练的模型。具体地,模型分发模块380可以将训练的模型(或其参数)发送到模型应用系统110,以用于检测基于模型应用系统110的传感器的图像的特性。因此,来自模型的预测可用于模型应用系统110的操作,例如用于模型应用系统110的对象检测和控制。
关于特斯拉电池组安全充电方法的专利解析报道就简要介绍到这里。特拉斯专利原文见附件。