当前位置: 首页 > 专利查询>清华大学专利>正文

场景生成方法、模型测试方法及模型训练方法技术

技术编号:35776205 阅读:34 留言:0更新日期:2022-12-01 14:20
本申请公开一种场景生成方法、模型测试方法及模型训练方法,从目标模型所对应的原始训练场景集合中选取原始训练场景作为初始场景,确定初始场景在目标模型下的第一损失函数,确定第一损失函数对原初始场景的第一梯度,根据第一梯度和初始场景确定第一场景,并确定第一场景在目标模型下的第二损失函数,然后在确定第二损失函数符合预设的第一条件时,将第一场景确定为目标场景。根据本申请实施例,基于模型的原始训练场景集合,即可生成新的目标场景,无需再从实际环境中进行场景采样,缩短了获取场景所需的时间、减少了人力和物力的消耗,并且利用目标模型内部的梯度信息、损失函数信息能够更有针对性的生成新的场景数据。数信息能够更有针对性的生成新的场景数据。数信息能够更有针对性的生成新的场景数据。

【技术实现步骤摘要】
场景生成方法、模型测试方法及模型训练方法


[0001]本申请属于自动驾驶领域,尤其涉及一种场景生成方法、模型测试方法及模型训练方法。

技术介绍

[0002]通常自动驾驶系统主要由定位模块、地图模块、感知模块、控制模块等构成。其中,感知模块主要利用深度学习模型对自动驾驶系统的高清摄像机传来的图像进行感知识别。在工业界,一些主流的深度学习模型(例如,PoseNet、FasterRCNN、YOLO、VGG等)均已被用于自动驾驶系统的感知模块中,用于进行位姿感知、图像语义分割、红绿灯检测、环境目标物(行人/自行车/小汽车/卡车/公交车/其他样本)检测等。
[0003]目前,在对上述模型进行训练时,通常需要从实际环境中进行大规模的场景采样,然后利用采样得到的场景对模型进行训练。
[0004]但是,从实际环境中进行大规模场景采样涉及到多方的人机协同工作,需要提前准备采样车辆、路测许可证等,因此不可避免的会延长采样时间,消耗大量人力物力。因此现在急需一种新的可以获取场景的方式。

技术实现思路

[0005]本申请实施例提供一种场景生成方法、模型测试方法及模型训练方法,基于模型的原始训练场景集合即可生成新的目标场景,无需再从实际环境中进行场景采样,缩短了获取场景所需的时间、减少了人力和物力的消耗。
[0006]第一方面,本申请实施例提供一种场景生成方法,包括:
[0007]从目标模型的原始训练场景集合中选取原始训练场景作为初始场景,其中,目标模型为基于原始训练场景集合训练得到的模型;r/>[0008]确定初始场景在目标模型下的第一损失函数;
[0009]确定第一损失函数对初始场景的第一梯度;
[0010]根据第一梯度和初始场景,生成初始场景对应的第一场景;
[0011]确定第一场景在目标模型下的第二损失函数;
[0012]判断第二损失函数是否满足预设的第一条件;
[0013]若确定第二损失函数满足所述第一条件,则将第一场景确定为目标场景。
[0014]作为一种可能的实现方式,将第一场景确定为目标场景之后,所述方法还包括:
[0015]确定从选取原始训练场景作为初始场景到将第一场景确定为目标场景所用的第一时长;
[0016]将第一时长作为目标场景对应的生成时长。
[0017]作为一种可能的实现方式,在将第一场景确定为目标场景之后,所述方法还包括:
[0018]返回执行从目标模型的原始训练场景集合中选取原始训练场景作为初始场景的步骤。
[0019]作为一种可能的实现方式,所述方法还包括:
[0020]若确定第二损失函数不满足第一条件,则将第一场景作为初始场景,并返回执行确定初始场景在目标模型下的第一损失函数的步骤。
[0021]作为一种可能的实现方式,根据第一梯度和初始场景,生成初始场景对应的第一场景,包括:
[0022]计算第一梯度与第一系数的乘积;
[0023]将初始场景与上述乘积的和值,作为初始场景对应的第一场景。
[0024]作为一种可能的实现方式,判断第二损失函数是否满足预设的第一条件,包括:
[0025]计算第二损失函数与第一损失函数的差值;
[0026]将差值与第一阈值进行比较;
[0027]若比较出与差值大于或等于第一阈值,则确定第二损失函数满足预设的第一条件;
[0028]若比较出差值小于第一阈值,则确定第二损失函数不满足第一条件。
[0029]作为一种可能的实现方式,从目标模型的原始训练场景集合中选取原始训练场景作为初始场景之后,方法还包括:
[0030]将选取的原始训练场景从原始训练场景集合中删除;
[0031]从目标模型的原始训练场景集合中选取原始训练场景作为初始场景的步骤之前,所述方法还包括:
[0032]判断原始训练场景集合是否为空集;
[0033]从目标模型的原始训练场景集合中选取原始训练场景作为初始场景,包括:
[0034]在确定原始训练场景集合不是空集的情况下,从目标模型的原始训练场景集合中选取原始训练场景作为初始场景。
[0035]作为一种可能的实现方式,确定第二损失函数不满足第一条件之后,将第一场景作为初始场景之前,所述方法还包括:
[0036]将选取的原始训练场景对应的迭代次数加1,并确定从选取原始训练场景作为初始场景到确定第二损失函数不满足所述第一条件所用的第二时长;
[0037]判断迭代次数是否小于最大迭代次数;
[0038]判断第二时长是否小于最大计时时间;
[0039]将第一场景作为初始场景,包括:
[0040]在确定迭代次数小于最大迭代次数且第二时长小于最大计时时间的情况下,将第一场景作为初始场景。
[0041]第二方面,本申请实施例还提供一种模型测试方法,包括:
[0042]生成目标模型对应的目标场景集合和场景用时集合,其中,目标场景集合包含基于第一方面任意一项所的场景生成方法生成的目标场景,场景用时集合包含目标场景对应的生成时间;
[0043]利用目标场景集合和场景用时集合对目标模型进行测试,得到目标模型对应的测试结果。
[0044]作为一种可能的实现方式,利用目标场景集合和场景用时集合对目标模型进行测试,得到目标模型对应的测试结果,包括:
[0045]根据目标场景集合和场景用时集合按照预设的测试指标计算公式计算目标模型对应的测试指标;
[0046]将测试指标作为目标模型的测试结果;
[0047]测试指标计算公式为:
[0048][0049]其中,P表示测试指标,s表示目标场景,t
s
表示目标场景s对应的生成时间,表示目标场景集合,表示目标场景集合中包含的目标场景的数量;T
max
表示场景用时集合;表示原始训练场景集合中包含的原始训练场景的数量,α表示时间重要度,β表示成功率重要度,α和β均为常量,且α+β=1,α>0,β>0,∈为极小常量。
[0050]第三方面,本申请实施例还提供一种模型训练方法,包括:
[0051]基于第一方面任意一项所述的场景生成方法,生成目标模型对应的目标场景;
[0052]将目标场景加入训练集;
[0053]利用训练集,采用梯度下降的方式对目标模型进行训练,直至目标模型在预设验证集上的损失函数收敛。
[0054]第四方面,本申请实施例还提供一种场景生成装置,所述装置包括:
[0055]选取单元,用于从目标模型的原始训练场景集合中选取原始训练场景作为初始场景,其中,目标模型为基于所述原始训练场景集合训练得到的模型;
[0056]第一计算单元,用于确定初始场景在所述目标模型下的第一损失函数;
[0057]第二计算单元,用于确定第一损失函数对初始场景的第一梯度;
[0058]场景生成单元,用于根据本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种场景生成方法,其特征在于,包括:从目标模型的原始训练场景集合中选取原始训练场景作为初始场景,其中,所述目标模型为基于所述原始训练场景集合训练得到的模型;确定所述初始场景在所述目标模型下的第一损失函数;确定所述第一损失函数对所述初始场景的第一梯度;根据所述第一梯度和所述初始场景,生成所述初始场景对应的第一场景;确定所述第一场景在所述目标模型下的第二损失函数;判断所述第二损失函数是否满足预设的第一条件;若确定所述第二损失函数满足所述第一条件,则将所述第一场景确定为目标场景。2.根据权利要求1所述的方法,其特征在于,所述将所述第一场景确定为目标场景之后,所述方法还包括:确定从选取所述原始训练场景作为初始场景到将所述第一场景确定为目标场景所用的第一时长;将所述第一时长作为所述目标场景对应的生成时长。3.根据权利要求1所述的方法,其特征在于,在将所述第一场景确定为目标场景之后,所述方法还包括:返回执行从目标模型的原始训练场景集合中选取原始训练场景作为初始场景的步骤。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:若确定所述第二损失函数不满足所述第一条件,则将所述第一场景作为初始场景,并返回执行确定所述初始场景在所述目标模型下的第一损失函数的步骤。5.根据权利要求1所述的方法,其特征在于,所述根据所述第一梯度和所述初始场景,生成所述初始场景对应的第一场景,包括:计算所述第一梯度与第一系数的乘积;将所述初始场景与所述乘积的和值,作为所述初始场景对应的第一场景。6.根据权利要求1所述的方法,其特征在于,所述判断所述第二损失函数是否满足预设的第一条件,包括:计算所述第二损失函数与所述第一损失函数的差值;将所述差值与第一阈值进行比较;若比较出与所述差值大于或等于所述第一阈值,则确定所述第二损失函数满足预设的第一条件;若比较出所述差值小于所述第一阈值,则确定所述第二损失函数不满足所述第一条件。7.根据权利要求1所述的方法,其特征在于,所述从目标模型的原始训练场景集合中选取原始训练场景作为初始场景之后,所述方法还包括:将选取的所述原始训练场景从所述原始训练场景集合中删除;所述从目标模型的原始训练场景集合中选取原始训练场景作为初始场景的步骤之前,所述方法还包括:判断所述原始训练场景集合是否为空集;所述从目标模型的原始训练场景集合中选取原始训练场景作为初始场景,包括:
在确定所述原始训练场景集合不是空集的情况下,从目标模型的原始训练场景集合中选取原始训练场景作为初始场景。8.根据权利要求3所述的方法,其特征在于,所述确定所述第二损失函数不满足所述第一条件之后,将所述第一场景作为初始场景之前,所述方法还包括:将选取的所述原始训练场景对应的迭代次数加1,并确定从选取所述原始训练场景作为初始场景到确定所述第二损失函数不满足所述第一条件所用的第二时长;判断所述迭代次数是否小于最大迭代次数;判断所述第二时长是否小于最大计时时间;所述将所述第一场景作为初始场景,包括:在确定所述迭代次数小于所述最大迭代次数且所述第二时长小于所述最大计时时间的情况下,将所述第一场景作为初始场景。9.一种模型测试方法...

【专利技术属性】
技术研发人员:李彦夫郑文强
申请(专利权)人:清华大学
类型:发明
国别省市:

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

1