CN117152550A - 一种面向自动驾驶系统的神经元覆盖引导式测试方法 - Google Patents
一种面向自动驾驶系统的神经元覆盖引导式测试方法 Download PDFInfo
- Publication number
- CN117152550A CN117152550A CN202310354927.4A CN202310354927A CN117152550A CN 117152550 A CN117152550 A CN 117152550A CN 202310354927 A CN202310354927 A CN 202310354927A CN 117152550 A CN117152550 A CN 117152550A
- Authority
- CN
- China
- Prior art keywords
- test
- automatic driving
- seed sample
- sample
- driving system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 210000002569 neuron Anatomy 0.000 title claims abstract description 41
- 238000010998 test method Methods 0.000 title claims abstract description 10
- 238000012360 testing method Methods 0.000 claims abstract description 67
- 238000000034 method Methods 0.000 claims description 24
- 238000005457 optimization Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000007621 cluster analysis Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 238000012549 training Methods 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 2
- 230000000630 rising effect Effects 0.000 claims description 2
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 10
- 230000006399 behavior Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/763—Non-hierarchical techniques, e.g. based on statistics of modelling distributions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种面向自动驾驶系统的神经元覆盖引导式测试方法,属于人工智能测试领域,具体涉及到自动驾驶系统测试中大规模高质量的测试样本严重稀缺的问题,其特征是根据图像斑点信息对自动驾驶系统采集的原始测试样本聚类,筛选出等量种子样本,然后以最大化神经元覆盖率和使得系统预测不一致为目标,将在原始测试用例上的修改转化为一个优化问题,并采用梯度上升法求解,自动生成出容易使系统输出错误且神经元覆盖率高的测试用例集,最后重新输入至自动驾驶模型中训练,主要解决目前自动驾驶系统中测试用例不足,且存在神经元覆盖率低、耗时长等问题,从而挖掘出更多自动驾驶软件不合理的系统缺陷,减少测试损耗,增强系统模型的预测准确率。
Description
技术领域
本发明属于人工智能测试领域,特别涉及一种面向自动驾驶系统的神经元覆盖引导式测试方法。基于已有自动驾驶系统图像数据集进行测试用例的增扩,以检测和修复系统潜在的缺陷和不合理行为。
背景技术
随着深度神经网络技术的快速发展,其广泛应用到了计算机视觉,自然语言处理等很多安全敏感领域,自动驾驶系统的研究与开发也取得了巨大突破,成为汽车产业迎接智能时代的核心动力之一。但是近年来,不断有自动驾驶相关的车祸发生,事故分析指出发生原因都是自动驾驶系统的不同程度误判导致。与任何依赖于软件算法的系统一样,自动驾驶系统也存在使用风险,会出现错误或意外的极端情况。一旦出现行为预测问题,可能会导致致命碰撞等严重后果。因此,在自动驾驶被部署之前,自动驾驶系统必须得到充分的检测以尽可能地消除安全隐患。
深度神经网络模型测试经典的方法是收集足够多带标签的测试数据,以评估模型的预测准确性。然而,自动驾驶系统的输入样本是由不同的传感器拍摄得到的,输入空间非常大,很难手动收集所有可能的输入来触发自动驾驶系统的每一个可行逻辑,并且在仅有依靠手动收集的少量测试样本中还存在类别不平衡性、标注不确定性、神经元覆盖率低等问题,严重阻碍了对自动驾驶系统的测试。
基于上述原因,本发明提出一种神经元覆盖引导式测试方法来解决自动驾驶系统面临的这类测试问题,从而自动化地生成自动驾驶测试用例集,提高测试效率。
发明内容
本发明解决的问题是:自动驾驶系统测试中大规模高质量的测试样本严重稀缺,且人工手动收集和筛选测试样本效率低,导致自动驾驶系统测试用例不足,存在神经元覆盖率低、耗时长等问题。如何充分测试与验证安全敏感的自动驾驶系统已成为当前面临的主要挑战。本发明将神经元覆盖引入到了自动驾驶测试中,自动生成具备高神经元覆盖率且容易被预测错误的测试用例,增扩原始测试数据集,挖掘自动驾驶系统中存在的潜在缺陷和不合理行为,以提高深度神经网络技术下的自动驾驶系统的模型鲁棒性。其特点在于主要包括以下步骤:
步骤1,获取自动驾驶系统采集的光学传感器图像数据和相应的标签信息,作为原始的测试样本,对图像的斑点特征数目进行检测。
步骤2,根据图像斑点特征数目和标签信息对测试样本进行聚类分析,从每一类中选取等量的测试样本保存至种子样本集合中。
步骤3,选取目标自动驾驶预测模型,将定量种子样本输入至预训练后的模型中,记录模型预测值,若转向角的输出值与对应种子样本的原始标签误差超过设定范围值,则舍弃此种子样本,否则进行步骤4。
步骤4,针对筛选出的种子样本,选择在过去测试中经常和很少覆盖到的靶向神经元,计算损失值,更新神经元覆盖率。
步骤5,以最大化神经元覆盖率和使得自动驾驶系统预测不一致为目标,将在种子样本上的修改转为为一个优化问题,采用梯度上升法求解。
步骤6,为种子样本添加三种不同类型的约束条件,设置图像部分的宽度、遮挡、污垢模拟图像数据的不同环境,对求解优化问题加以约束。
步骤7,设置梯度迭代次数,开始执行梯度上升引导的局部搜索,找到最大化所需目标的新输入,使种子样本进入迭代过程。
步骤8,重复执行步骤7,直至最大迭代次数或预测转向值与对应种子样本的原始标签误差达到预设条件,生成目标模型新的测试样本。
步骤9,循环执行步骤3-7,直至生成目标模型的测试样本集合,将不同模型的测试样本共同组成面向自动驾驶系统的神经元覆盖引导式测试样本集。
步骤10,使用最终生成的测试样本集重新训练自动驾驶预测模型,计算并评估自动驾驶系统的预测准确率。
其中步骤1以斑点信息作为图像的重要特征,采用LoG算法检测测试样本的斑点特征数目,步骤2采用K-Means算法依据斑点特征和标签信息对测试样本集进行聚类,使种子样本从每一个类别中等量选取。步骤5中所述优化问题定义为objjoint=max((ci-c)+λ(fn(x)),ci是目标模型将种子样本x预测为类别i的概率,c是种子样本x的真实标签,fn(x)是在种子样本x下神经元n的输出值,λ是用来平衡两个目标优化问题的平衡参数。
本发明的特点在于:
1.将图像斑点检测技术与基于神经元覆盖的测试方法结合应用于自动驾驶系统的测试用例生成中。
2.实现自动化生成自动驾驶系统新的测试用例,应用于自动驾驶模型的训练中以增强模型鲁棒性。
与现有技术相比,本发明的有益效果为:
本发明的基于神经元覆盖引导式测试方法,免去了多个功能相似的模型进行交叉验证的过程,缩短了测试用例生成时间,且提升神经元覆盖率更加明显。相比于基于对抗生成测试用例的方法更容易实现,保证了种子样本队列的多样性。实验采用与现有基于覆盖方法DeepXplore相同的自动驾驶模型和数据集,分别使用两方法在测试数据集HMB3上生成100个测试样本,比较两者的平均神经元覆盖率提升、平均生成时间、预测错误的样本数量以评判测试用例质量,实验结果见表1,证实了该方法的有效性。
表1DeepXplore方法与本发明方法测试实验对比结果
通过以上实例验证和分析表明,在相同的参数设置和约束条件下,本发明方法相比于现有基于覆盖的测试方法平均提升神经元覆盖率1.3%,平均生成时间仅是其1/12,最好生成致使模型误判测试样本数从20个增加至52个,可以发现模型更多的错误行为。说明本发明方法在提升神经元覆盖率,更短时间内生成测试样本和在相同的原始测试样本限制下发现更多的系统错误行为方面具有较大优势。
附图说明
附图1为面向自动驾驶系统的神经元覆盖引导式测试方法流程示意图。
具体实施方式
为了使本发明的目的,技术方案和优点更加明确,下面将结合具体实例和附图1对本发明作进一步详细描述,具体包括以下步骤:
1.获取自动驾驶系统预测模型与图像数据集,具体包括:
1.1收集图像数据集,获取Udacity自动驾驶数据集HMB3并保存;
1.2收集自动驾驶系统的预测模型,获取DAVE-orig、DAVE-norminit、DAVE-dropout三个基于NVIDIADAVE-2的驾驶系统模型。
2.预处理,具体包括:
2.1选取步骤1.1中收集的某个数据集,将图片格式处理为模型输入需要的格式;
2.2选取步骤2.2中处理好的数据集,根据标签列表为图片标注相应的标签值。
3.获取种子样本,具体包括:
3.1针对处理好的数据集进行图像斑点检测,记录各个图片的斑点数目。斑点检测通过计算图像与卷积函数的相似性实现,将待测图像假设为一个随机变量x的密度函数I(x,y)与高斯拉普拉斯函数进行卷积运算,当两个函数的分布情况相似时获得较大的函数响应值。当待测图像的拉普拉斯响应达到越大时检测到的图像像素点则为图像特征斑点,计算公式为:其中Gσ(x,y)为标准差,是σ的二维高斯函数。
3.2根据图像斑点数目和相应标签对数据集进行聚类分析,设置类别个数为六类,在每类别中选取50个样本,共300个种子样本构成种子样本集T。聚类分析依据最大期望算法,不断迭代样本与特征中心的距离均值,均值误差公式为Σk i=1Σx∈ci|d(x,ci)|2,式中d为样本x和聚类中心ci之间的欧式距离,当到达迭代次数或均值向量不再改变时,模型构建完成,输出聚类结果。
4.筛选种子样本,具体包括:
4.1选取步骤1.2中收集的某个自动驾驶模型作为目标模型F,并将种子样本集T输入至模型中进行车辆的转向角预测,记录预测值;
4.2初始化神经元覆盖率表,记录每个种子样本的初始神经元覆盖率,计算计算公式为其中N表示深度神经网络模型中神经元个数,t为激活函数阈值,T为种子样本集合,f(x,n)表示种子样本x在神经元n上的输出。
4.3将种子样本的预测值与原始标签值进行比较,记录种子样本的预测差异值,若差值超出预设范围0.2,则视为已出现预测误差的测试用例,舍弃样本;若未超出预设范围,则保留样本至新批次。
5.建立优化问题,具体包括:
5.1根据神经元选择策略从新批次的种子样本中选取过去经常和很少覆盖的神经元,作为靶向神经元并计算其损失值;
5.2联合步骤4.3所述预测差异值和步骤4.2所述神经元覆盖率构建种子样本的目标优化问题,定义为objjoint=max((ci-c)+λ(fn(x)),其中ci是目标模型将种子样本x预测为类别i的概率,c是种子样本x的真实标签,fn(x)是在种子样本x下神经元n的输出值,λ是用来平衡两个目标优化问题的平衡参数,设置为0.1。
6.求解优化问题,具体包括:
6.1为种子样本添加三种不同类型的约束条件,设置图像部分的宽度、遮挡、污垢模拟图像数据的不同环境,对求解梯度加以约束。具体通过限制图像像素的加减来模拟光照强弱情况;通过在种子样本任意位置上添加一个小矩形R来模拟被遮挡的情况;通过在种子样本的任意部分添加一个或多个碎片S模拟污垢镜头下拍摄的图像完成约束。
6.2设置梯度迭代次数,开始执行梯度上升引导的局部搜索,找到最大化所需目标的新输入,使种子样本进入迭代过程。梯度上升法沿函数梯度方向探寻最大值,其求解公式为:w:=w+α▽wf(w),其中α为学习率,▽为w的梯度。
6.3重复执行步骤6.2,直至最大迭代次数或测试样本的模型预测值与其原始标签的误差达到预设条件,得到目标模型新的测试样本,计算并记录新测试样本的模型预测值和神经元覆盖信息。
7.循环执行步骤4-6,直至生成目标模型的测试样本集合,将不同模型的测试样本共同组成面向自动驾驶系统的神经元覆盖引导式测试样本集。
8.使用最终生成的测试样本集重新训练自动驾驶预测模型,计算并评估自动驾驶系统的预测准确率。
9.以上所述的实例对本发明的技术方案进行了详细说明,应理解的是以上所述仅为本发明的具体实例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种面向自动驾驶系统的神经元覆盖引导式测试方法,其特征在于所述方法包括如下步骤:
步骤1,获取自动驾驶系统采集的光学传感器图像数据和相应的标签信息,作为原始的测试样本,对图像的斑点特征数目进行检测;
步骤2,根据图像斑点特征数目和标签信息对测试样本进行聚类分析,从每一类中选取等量的测试样本保存至种子样本集合中;
步骤3,选取目标自动驾驶预测模型,将定量种子样本输入至预训练后的模型中,记录模型预测值,若转向角的输出值与对应种子样本的原始标签误差超过设定范围值,则舍弃此种子样本,否则进行步骤4;
步骤4,针对筛选出的种子样本,选择在过去测试中经常和很少覆盖到的靶向神经元,计算损失值,更新神经元覆盖率;
步骤5,以最大化神经元覆盖率和使得自动驾驶系统预测不一致为目标,将在种子样本上的修改转为为一个优化问题,采用梯度上升法求解;
步骤6,为种子样本添加三种不同类型的约束条件,设置图像部分的宽度、遮挡、污垢模拟图像数据的不同环境,对求解优化问题加以约束;
步骤7,设置梯度迭代次数,开始执行梯度上升引导的局部搜索,找到最大化所需目标的新输入,使种子样本进入迭代过程;
步骤8,重复执行步骤7,直至最大迭代次数或预测转向值与对应种子样本的原始标签误差达到预设条件,生成目标模型新的测试样本;
步骤9,循环执行步骤3-7,直至生成目标模型的测试样本集合,将不同模型的测试样本共同组成面向自动驾驶系统的神经元覆盖引导式测试样本集;
步骤10,使用最终生成的测试样本集重新训练自动驾驶预测模型,计算并评估自动驾驶系统的预测准确率。
2.根据权利要求1所述的面向自动驾驶系统的神经元覆盖引导式测试方法,其特征在于:步骤2中以斑点信息作为图像的重要特征,采用LoG算法检测测试样本的斑点特征数目,然后采用K-Means算法依据斑点特征和标签信息对测试样本集进行聚类,使种子样本从每一个类别中等量选取。
3.根据权利要求1所述的面向自动驾驶系统的神经元覆盖引导式测试方法,其特征在于:步骤5中所述优化问题定义为objjoint=max((ci-c)+λ(fn(x)),ci是目标模型将种子样本x预测为类别i的概率,c是种子样本x的真实标签,fn(x)是在种子样本x下神经元n的输出值,λ是用来平衡两个目标优化问题的平衡参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310354927.4A CN117152550A (zh) | 2023-04-04 | 2023-04-04 | 一种面向自动驾驶系统的神经元覆盖引导式测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310354927.4A CN117152550A (zh) | 2023-04-04 | 2023-04-04 | 一种面向自动驾驶系统的神经元覆盖引导式测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117152550A true CN117152550A (zh) | 2023-12-01 |
Family
ID=88899430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310354927.4A Pending CN117152550A (zh) | 2023-04-04 | 2023-04-04 | 一种面向自动驾驶系统的神经元覆盖引导式测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117152550A (zh) |
-
2023
- 2023-04-04 CN CN202310354927.4A patent/CN117152550A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210089895A1 (en) | Device and method for generating a counterfactual data sample for a neural network | |
CN111369572A (zh) | 一种基于图像修复技术的弱监督语义分割方法和装置 | |
US20210125061A1 (en) | Device and method for the generation of synthetic data in generative networks | |
CN111507370A (zh) | 获得自动标注图像中检查标签的样本图像的方法和装置 | |
CN113052873B (zh) | 一种在线自监督学习场景适应的单目标跟踪方法 | |
CN111753986B (zh) | 面向深度学习模型的动态测试方法及其装置 | |
CN112132014B (zh) | 基于非督导金字塔相似性学习的目标重识别方法及系统 | |
CN112149491A (zh) | 用于确定探测到的对象的信任值的方法 | |
CN110738247A (zh) | 一种基于选择性稀疏采样的细粒度图像分类方法 | |
EP3933691A1 (en) | System and method to alter an image | |
CN111523421A (zh) | 基于深度学习融合各种交互信息的多人行为检测方法及系统 | |
CN116797533B (zh) | 电源适配器的外观缺陷检测方法及其系统 | |
CN116311005A (zh) | 一种用于运动图像处理装置、方法及存储介质 | |
CN115376101A (zh) | 一种面向自动驾驶环境感知的增量式学习方法和系统 | |
CN112800934A (zh) | 一种多类别工程车的行为识别方法及装置 | |
CN114708518A (zh) | 基于半监督学习与先验知识嵌入策略的螺栓缺陷检测方法 | |
CN110532904B (zh) | 一种车辆识别方法 | |
CN116188445A (zh) | 一种产品表面缺陷的检测定位方法、装置及终端设备 | |
US11755688B2 (en) | Apparatus and method for generating training data for a machine learning system | |
CN117152550A (zh) | 一种面向自动驾驶系统的神经元覆盖引导式测试方法 | |
Bi et al. | CASA-Net: a context-aware correlation convolutional network for scale-adaptive crack detection | |
CN114202671A (zh) | 一种图像预测优化处理方法及装置 | |
KR20210089044A (ko) | 물체 인식을 위한 학습 데이터를 선택하는 방법 및 상기 방법을 이용하여 학습된 물체 인식 모델을 이용하여 물체를 인식하는 물체 인식 장치 | |
CN111291624B (zh) | 一种挖掘机目标识别方法及系统 | |
CN113362372B (zh) | 一种单目标追踪方法及计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |