CN109933309A - 机器学习算法应用于汽车软件开发功能安全的流程方法 - Google Patents
机器学习算法应用于汽车软件开发功能安全的流程方法 Download PDFInfo
- Publication number
- CN109933309A CN109933309A CN201910170435.3A CN201910170435A CN109933309A CN 109933309 A CN109933309 A CN 109933309A CN 201910170435 A CN201910170435 A CN 201910170435A CN 109933309 A CN109933309 A CN 109933309A
- Authority
- CN
- China
- Prior art keywords
- software
- machine learning
- safety
- function
- test
- 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.)
- Granted
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 81
- 230000006870 function Effects 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000011161 development Methods 0.000 title claims abstract description 29
- 238000012360 testing method Methods 0.000 claims abstract description 40
- 230000036961 partial effect Effects 0.000 claims abstract description 23
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000013461 design Methods 0.000 claims abstract description 9
- 230000000977 initiatory effect Effects 0.000 claims abstract description 4
- 238000004088 simulation Methods 0.000 claims abstract description 3
- 238000012549 training Methods 0.000 claims description 24
- 238000012163 sequencing technique Methods 0.000 claims description 13
- 230000007246 mechanism Effects 0.000 claims description 12
- 230000003068 static effect Effects 0.000 claims description 4
- 238000004774 atomic orbital Methods 0.000 claims description 3
- 230000001364 causal effect Effects 0.000 claims description 3
- 238000013480 data collection Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 3
- 230000033001 locomotion Effects 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000003014 reinforcing effect Effects 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 claims description 3
- 230000029305 taxis Effects 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000013459 approach Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 201000001880 Sexual dysfunction Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 231100000872 sexual dysfunction Toxicity 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
机器学习算法应用于汽车软件开发功能安全的流程方法,包括七个步骤,步骤一:项目启动阶段,采用机器学习决策门;步骤二:软件安全要求阶段,规范化描述安全要求;步骤三:软件架构设计阶段,采用容错设计方法;步骤四:软件开发阶段,数据采集;步骤五:软件开发阶段,模型选取;步骤六:软件开发阶段,模型实现;步骤七:软件集成阶段,验证和测试。本发明在汽车电子软件开发过程中,明确部分规范化描述的性质,有助于基于各种机器学习的算法特征选取模型,进而提高开发效率和安全性。基于上述,本发明具有好的应用前景。
Description
技术领域
本发明涉及汽车软件安全和机器学习技术领域,特别一种机器学习算法应用于汽车软件开发功能安全的流程方法。
背景技术
随着科技的发展,汽车各种功能软件应用越来越多,比如说高级驾驶辅助系统(ADAS)和自动驾驶系统(ADS)等。在汽车软件的开发过程中,其中机器学习发挥着越来越重要的作用,保证了软件的开发及应用。在汽车软件开发中,安全是一个主要问题。ISO 26262(汽车的一个安全性国际标准)基于从工业实践的角度、系统地处理安全问题,该标准定义了汽车的安全生命周期,以及实现各阶段安全的方法;该标准还提出了对于软件开发的安全,应遵循以下的安全确保原则:通过使用适当的严格规则进行开发,将软件故障造成的潜在危险降低到可接受的水平,但是该标准的设计并未考虑实际应用中,对ADS等技术的适用性,因而存在不完整性。
现有技术中,虽然对神经网络等机器学习技术的理解仍有许多挑战,但是由于神经网络等机器学习技术具有先进性,这些机器学习技术已经被广泛应用于高可靠性系统开发应用中。与传统编程从规范出发不同,机器学习通过对数据样本的学习来完成建模;应用于在汽车软件开发中,汽车的高级功能(例如ADS等)需要对环境进行感知,并应用机器学习算法进行开发,由于这些高级功能不具备完全的规范性描述,需要和数据样本一起完成功能建模,因此在考虑汽车功能安全的发展时,必须将对机器学习算法的安全性要求纳入考虑之中。
现有技术中,基于机器学习的软件,存有实现安全确保原则的两个关键性障碍:缺少规范和不可解释性。由于,许多类型的高级功能(如自动驾驶系统)软件开发需要感知环境,而现有功能软件不能完全规范化的描述;例如,识别行人的规范是什么?使用规范(例如必要和充分条件)只能部分指定这些条件,实际应用中,还需要数据样本来帮助描述功能;由于类似感知的功能很难明确规范,所以需要使用基于机器学习的方法来实现软件组件,通过从样本进行训练,而不是从规范出发通过程序化编程来实现软件组件。然而,这种模式下,因为基于机器学习的方法缺少规范对功能安全的保证造成了障碍。
另一方面,所有类型的机器学习模型都包含编码形式的知识,而这些编码通常不具备很好的可解释性。由于,机器学习算法中,神经网络模型通常不可解释,越来越多的机器学习模型的能力通常以牺牲可解释性为代价,不可解释性使得开发中,手动白盒验证方法无法使用,如走查和检验,造成对功能安全保证的障碍。由于,机器学习算法模型的可解释性与其他安全活动,如正式验证或静态分析密切相关,因此,需要加强对模型的了解,以更好的解释机器学习的结果。
现代机器学习算法中,深度神经网络、卷积神经网络、对抗生成网络、递归神经网络等现代算法,和传统机器学习算法如感知机、支持向量机、决策树、贝叶斯网络等一起,在数据挖掘、模式识别、图像处理、自然语言处理等领域得到充分的应用。因其特点性质不同,各种机器学习算法适用于不同的应用场景。如卷积神经网络具有平移不变性,所以应用在图像处理中,可以判别图像的局部性质;递归神经网络的结构则能够更好的表达语言中的前后文内容,因此更多应用在自然语言处理中。基于上述,提供一种能实现在汽车电子软件开发过程中,明确部分规范化描述的性质,有助于基于各种机器学习的算法特征选取模型,进而提高开发效率和安全性的方法显得尤为必要。
发明内容
为了克服现有技术中,机器学习算法在开发汽车功能安全系统带来的弊端,本发明提供了一种将传统的软件功能安全开发流程,通过编程规范(或使用基于模型的生成代码)的程序化开发方法,推广到应用了机器学习算法的软件中,生成对基于机器学习软件的确保功能安全的软件开发流程,开发中,对于ISO26262规定的要求进行重述,为基于机器学习的软件进行解释,评估其适用的程度,在可能的情况下,为不适用的标准规定提出新的要求和建议,推荐适用方法,并确定了与基于机器学习的软件相关,但未在ISO26262标准中体现的安全要求,由此达到在汽车电子软件开发过程中,明确部分规范化描述的性质,有助于基于各种机器学习的算法特征选取模型,进而提高开发效率和安全性的机器学习算法应用于汽车软件开发功能安全的流程方法。
本发明解决其技术问题所采用的技术方案是:
机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于包括七个步骤,步骤一:项目启动阶段,采用机器学习决策门;步骤二:软件安全要求阶段,规范化描述安全要求;步骤三:软件架构设计阶段,采用容错设计方法;步骤四:软件开发阶段,数据采集;步骤五:软件开发阶段,模型选取;步骤六:软件开发阶段,模型实现;步骤七:软件集成阶段,验证和测试。
所述步骤一中,开发者确定安全要求是否可能通过程序化的方法实现以解决故障,进行评估以确定安全要求是否必须由机器学习组件执行,或是否可以使用程序化编程组件执行,如果可以使用程序化编程组件执行成立,安全要求可完全规范化描述,则应从安全功能规范出发使用传统编程方法实现软件功能;如果使用程序化编程组件执行安全要求不可完全规范化描述,则将软件组件拆分为程序化编程部分和机器学习部分;实际应用中,在一些情况下,通过加强对软件的安全要求,可以使软件完全规范化描述,如果此时仍然能够确保软件功能的正常执行,则应加强安全要求,使其完全规范化描述,并以程序化编程组件方法进行开发。
所述步骤二中,在安全要求不可完全规范化描述的情况下,定义部分规范以描述安全要求,并最大程度地对软件的每个安全要求应进行规范化描述;对不可规范化描述的部分,需提供数据集以支持软件功能的开发,对数据集提出安全要求,并对此要求做出规范化描述;
软件的规范化描述具体包括如下要素:
a)软件功能的前置和后置条件;
b)等价性和不变性;
c)其他规范:概率限制、基于模式的限制和上下文限制等;
对数据集的安全要求和规范化描述具体包括:
a)训练和测试数据集应对软件组件功能的输入和输出确保充分的覆盖率和代表性;
b)利用部分规范对数据集提出要求,可通过确保数据符合规范来检查数据有效性,识别输入空间中罕见的、边界的大小、边界情况等;
c)利用部分规范选择更适合问题的机器学习模型;
d)部分规范的约束可用作机器学习中损失函数的一部分来进行学习;
e)模型训练后,可以根据部分规范进行验证,确保训练的模型输出符合规范。
所述步骤三中,使用容错机制以确保机器学习组件的安全,以弥补因不能完全规范化描述安全要求导致的开发严谨性缺失,提供软件组件的错误检测和恢复机制,包括如下要素:
a)静态恢复机制;
b)适合的安全降级措施;
c)独立的并行冗余机制;
d)数据纠错码。
所述步骤四中,收集满足规范要求的数据集,以支持机器学习组件的训练、验证和测试,具体步骤包括如下:
a)收集数据集,以支持机器学习组件的训练、验证和测试;
b)核实数据集,以表明其符合数据集要求规范;
c)对数据集中的不确定性应进行分析和量化,不确定性包括内在的数据噪声、由于训练和测试分布之间的差异而产生的不确定性;
d)使用数据增强策略来综合增加数据集,基于部分规范,可以合成满足足够条件(正面示例)和违反必要条件(反面示例)的数据,可使用规范不变量和等价变量从现有的示例中生成新的示例。
所述步骤五中,选择模型类型以正确实现机器学习组件的功能,并考虑模型的可解释性,优先选择支持安全要求规范的模型。
所述步骤六中,通过分析选取与机器学习组件输出因果相关的特征进行建模,在训练过程中确保模型满足安全要求规范描述,并评估训练过程是否充分,内容包括如下:
a)对实际运行环境操作和训练环境之间差异的控制;
b)对数据分布趋向性变化的处理;
c)损失函数中对安全要求和规范限制的表达;
d)损失函数的正规化。
所述步骤七中,利用测试数据集和测试用例对软件进行验证和确认测试,通过迭代开发确保软件的功能安全,具体步骤包括如下:
a)确定机器学习组件可接受的最大错误率;
b)通过验证选择和细化模型的超参数,验证和测试程序的目标是将已知和已知未知示例的错误率降低到可接受的水平,如果需要,调整软件架构以降低残余故障率;
c)评估测试用例的完整性,证明没有功能的正确实施,确保测试的覆盖率,如果测试覆盖率不足,则应具体说明额外的试验案例或提供理由;
d)应对测试结果进行分析,以验证测试通过或失败的原因,确保测试通过是软件功能正确执行的结果。
本发明有益效果是:本发明中假设机器学习仅用于实现单个软件组件,而不用于整个子系统,即子系统是传统的,具有一个明确设计的体系结构,由彼此连接的明确定义功能的组件组成,而非应用端到端学习的软件系统(端到端学习的软件系统中,传感器输入和执行器输出之间的复杂关系建模是直接从训练样本中学习得到的),实际应用中,经七个流程,通过编程规范(或使用基于模型的生成代码)的程序化开发方法,推广到应用了机器学习算法的软件中,生成对基于机器学习软件的确保功能安全的软件开发流程,开发中,对于ISO 26262第6部分中规定的要求进行重述,为基于机器学习的软件进行解释,评估其适用的程度,在可能的情况下,为不适用的标准规定提出新的要求和建议,推荐适用方法,并确定了与基于机器学习的软件相关,但未在ISO 26262标准中体现的安全要求,由此达到在汽车电子软件开发过程中,明确部分规范化描述的性质,有助于基于各种机器学习的算法特征选取模型,进而提高开发效率和安全性的要求。基于上述,本发明具有好的应用前景。
附图说明
图1是本发明提供的基于机器学习的软件开发流程图。
具体实施方式
图1中所示,一种机器学习算法应用于汽车软件开发功能安全的流程方法,包括七个步骤,步骤一:项目启动阶段,采用机器学习决策门;步骤二:软件安全要求阶段,规范化描述安全要求;步骤三:软件架构设计阶段,采用容错设计方法;步骤四:软件开发阶段,数据采集;步骤五:软件开发阶段,模型选取;步骤六:软件开发阶段,模型实现;步骤七:软件集成阶段,验证和测试。
图1中所示,步骤一中,开发者确定安全要求是否可能通过程序化的方法实现以解决故障,进行评估以确定安全要求是否必须由机器学习组件执行,或是否可以使用程序化编程组件执行,如果可以使用程序化编程组件执行成立,安全要求可完全规范化描述,则应从安全功能规范出发使用传统编程方法实现软件功能;如果使用程序化编程组件执行安全要求不可完全规范化描述,则将软件组件拆分为程序化编程部分和机器学习部分;实际应用中,在一些情况下,通过加强对软件的安全要求,可以使软件完全规范化描述,如果此时仍然能够确保软件功能的正常执行,则应加强安全要求,使其完全规范化描述,并以程序化编程组件方法进行开发。
图1中所示,步骤二中,在安全要求不可完全规范化描述的情况下,定义部分规范以描述安全要求,并最大程度地对软件的每个安全要求应进行规范化描述;对不可规范化描述的部分,需提供数据集以支持软件功能的开发,对数据集提出安全要求,并对此要求做出规范化描述。机器学习旨在从有限训练集的输入输出对(I,O)中学习函数I→O;关于(I,O)的规范以形式化语言表示的限制条件,函数的所有输入输出对都必须满足该条件;规范用以描述(1,O)的特性,规范具有可解释性以克服有限训练集的局限性,并提高基于机器学习的方法的安全性。软件的规范化描述具体包括如下要素:
a)软件功能的前置和后置条件;
b)等价性和不变性;
c)其他规范:概率限制、基于模式的限制和上下文限制等;
对数据集的安全要求和规范化描述具体包括:
a)训练和测试数据集应对软件组件功能的输入和输出确保充分的覆盖率和代表性;
b)利用部分规范对数据集提出要求,可通过确保数据符合规范来检查数据有效性,识别输入空间中罕见的、边界的大小、边界情况等;
c)利用部分规范选择更适合问题的机器学习模型;
d)部分规范的约束可用作机器学习中损失函数的一部分来进行学习;
e)模型训练后,可以根据部分规范进行验证,确保训练的模型输出符合规范。
图1中所示,步骤三中,使用容错机制以确保机器学习组件的安全,以弥补因不能完全规范化描述安全要求导致的开发严谨性缺失,提供软件组件的错误检测和恢复机制,包括如下要素:
a)静态恢复机制;
b)适合的安全降级措施;
c)独立的并行冗余机制;
d)数据纠错码。
图1中所示,步骤四中,收集满足规范要求的数据集,以支持机器学习组件的训练、验证和测试,具体步骤包括如下:
a)收集数据集,以支持机器学习组件的训练、验证和测试;
b)核实数据集,以表明其符合数据集要求规范;
c)对数据集中的不确定性应进行分析和量化,不确定性包括内在的数据噪声、由于训练和测试分布之间的差异而产生的不确定性;
d)使用数据增强策略来综合增加数据集。基于部分规范,可以合成满足足够条件(正面示例)和违反必要条件(反面示例)的数据。可使用规范不变量和等价变量从现有的示例中生成新的示例。
图1中所示,步骤五中,选择模型类型以正确实现机器学习组件的功能,并考虑模型的可解释性,优先选择支持安全要求规范的模型。
图1中所示,步骤六中,通过分析选取与机器学习组件输出因果相关的特征进行建模,在训练过程中确保模型满足安全要求规范描述,并评估训练过程是否充分,内容包括如下:
a)对实际运行环境操作和训练环境之间差异的控制;
b)对数据分布趋向性变化的处理;
c)损失函数中对安全要求和规范限制的表达;
d)损失函数的正规化。
图1中所示,步骤7中,利用测试数据集和测试用例对软件进行验证和确认测试,通过迭代开发确保软件的功能安全,具体步骤包括如下:
a)确定机器学习组件可接受的最大错误率;
b)通过验证选择和细化模型的超参数,验证和测试程序的目标是将已知和已知未知示例的错误率降低到可接受的水平。如果需要,调整软件架构以降低残余故障率;
c)评估测试用例的完整性,证明没有功能的正确实施,确保测试的覆盖率。如果测试覆盖率不足,则应具体说明额外的试验案例或提供理由;
d)应对测试结果进行分析,以验证测试通过或失败的原因,确保测试通过是软件功能正确执行的结果。
下表中提出的问题有助于诊断和修复导致失效的故障。
本发明中假设机器学习仅用于实现单个软件组件,而不用于整个子系统,即子系统是传统的,具有一个明确设计的体系结构,由彼此连接的明确定义功能的组件组成,而非应用端到端学习的软件系统(端到端学习的软件系统中,传感器输入和执行器输出之间的复杂关系建模是直接从训练样本中学习得到的),实际应用中,经七个流程,通过编程规范(或使用基于模型的生成代码)的程序化开发方法,推广到应用了机器学习算法的软件中,生成对基于机器学习软件的确保功能安全的软件开发流程,开发中,对于ISO 26262第6部分中规定的要求进行重述,为基于机器学习的软件进行解释,评估其适用的程度,在可能的情况下,为不适用的标准规定提出新的要求和建议,推荐适用方法,并确定了与基于机器学习的软件相关,但未在ISO 26262标准中体现的安全要求,由此达到在汽车电子软件开发过程中,明确部分规范化描述的性质,有助于基于各种机器学习的算法特征选取模型,进而提高开发效率和安全性的要求。基于上述,本发明具有好的应用前景。
以上显示和描述了本发明的基本原理和主要特征及本发明的优点,对于本领域技术人员而言,显然本本发明限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (8)
1.机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于包括七个步骤,步骤一:项目启动阶段,采用机器学习决策门;步骤二:软件安全要求阶段,规范化描述安全要求;步骤三:软件架构设计阶段,采用容错设计方法;步骤四:软件开发阶段,数据采集;步骤五:软件开发阶段,模型选取;步骤六:软件开发阶段,模型实现;步骤七:软件集成阶段,验证和测试。
2.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤一中,开发者确定安全要求是否可能通过程序化的方法实现以解决故障,进行评估以确定安全要求是否必须由机器学习组件执行,或是否可以使用程序化编程组件执行,如果可以使用程序化编程组件执行成立,安全要求可完全规范化描述,则应从安全功能规范出发使用传统编程方法实现软件功能;如果使用程序化编程组件执行安全要求不可完全规范化描述,则将软件组件拆分为程序化编程部分和机器学习部分;实际应用中,在一些情况下,通过加强对软件的安全要求,可以使软件完全规范化描述,如果此时仍然能够确保软件功能的正常执行,则应加强安全要求,使其完全规范化描述,并以程序化编程组件方法进行开发。
3.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤二中,在安全要求不可完全规范化描述的情况下,定义部分规范以描述安全要求,并最大程度地对软件的每个安全要求应进行规范化描述;对不可规范化描述的部分,需提供数据集以支持软件功能的开发,对数据集提出安全要求,并对此要求做出规范化描述;
软件的规范化描述具体包括如下要素:
a)软件功能的前置和后置条件;
b)等价性和不变性;
c)其他规范:概率限制、基于模式的限制和上下文限制等;
对数据集的安全要求和规范化描述具体包括:
a)训练和测试数据集应对软件组件功能的输入和输出确保充分的覆盖率和代表性;
b)利用部分规范对数据集提出要求,可通过确保数据符合规范来检查数据有效性,识别输入空间中罕见的、边界的大小、边界情况等;
c)利用部分规范选择更适合问题的机器学习模型;
d)部分规范的约束可用作机器学习中损失函数的一部分来进行学习;
e)模型训练后,可以根据部分规范进行验证,确保训练的模型输出符合规范。
4.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤三中,使用容错机制以确保机器学习组件的安全,以弥补因不能完全规范化描述安全要求导致的开发严谨性缺失,提供软件组件的错误检测和恢复机制,包括如下要素:
a)静态恢复机制;
b)适合的安全降级措施;
c)独立的并行冗余机制;
d)数据纠错码。
5.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤四中,收集满足规范要求的数据集,以支持机器学习组件的训练、验证和测试,具体步骤包括如下:
a)收集数据集,以支持机器学习组件的训练、验证和测试;
b)核实数据集,以表明其符合数据集要求规范;
c)对数据集中的不确定性应进行分析和量化,不确定性包括内在的数据噪声、由于训练和测试分布之间的差异而产生的不确定性;
d)使用数据增强策略来综合增加数据集,基于部分规范,可以合成满足足够条件(正面示例)和违反必要条件(反面示例)的数据,可使用规范不变量和等价变量从现有的示例中生成新的示例。
6.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤五中,选择模型类型以正确实现机器学习组件的功能,并考虑模型的可解释性,优先选择支持安全要求规范的模型。
7.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤六中,通过分析选取与机器学习组件输出因果相关的特征进行建模,在训练过程中确保模型满足安全要求规范描述,并评估训练过程是否充分,内容包括如下:
a)对实际运行环境操作和训练环境之间差异的控制;
b)对数据分布趋向性变化的处理;
c)损失函数中对安全要求和规范限制的表达;
d)损失函数的正规化。
8.根据权利要求1所述的机器学习算法应用于汽车软件开发功能安全的流程方法,其特征在于步骤七中,利用测试数据集和测试用例对软件进行验证和确认测试,通过迭代开发确保软件的功能安全,具体步骤包括如下:
a)确定机器学习组件可接受的最大错误率;
b)通过验证选择和细化模型的超参数,验证和测试程序的目标是将已知和已知未知示例的错误率降低到可接受的水平,如果需要,调整软件架构以降低残余故障率;
c)评估测试用例的完整性,证明没有功能的正确实施,确保测试的覆盖率,如果测试覆盖率不足,则应具体说明额外的试验案例或提供理由;
d)应对测试结果进行分析,以验证测试通过或失败的原因,确保测试通过是软件功能正确执行的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910170435.3A CN109933309B (zh) | 2019-03-06 | 2019-03-06 | 机器学习算法应用于汽车软件开发功能安全的流程方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910170435.3A CN109933309B (zh) | 2019-03-06 | 2019-03-06 | 机器学习算法应用于汽车软件开发功能安全的流程方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109933309A true CN109933309A (zh) | 2019-06-25 |
CN109933309B CN109933309B (zh) | 2024-07-16 |
Family
ID=66986521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910170435.3A Active CN109933309B (zh) | 2019-03-06 | 2019-03-06 | 机器学习算法应用于汽车软件开发功能安全的流程方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109933309B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377526A (zh) * | 2019-07-31 | 2019-10-25 | 赛汇检测(广州)有限公司 | 一种ai智能软件的测试方法 |
CN110673843A (zh) * | 2019-09-16 | 2020-01-10 | 上海交通大学 | 一种基于数据的软件模块行为状态机还原方法 |
CN112528299A (zh) * | 2020-12-04 | 2021-03-19 | 电子科技大学 | 一种工业应用场景下的深度神经网络模型安全保护方法 |
CN116541020A (zh) * | 2023-07-06 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 基于领域模型的代码生成方法、装置、设备、介质及产品 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136047A (zh) * | 2011-02-25 | 2011-07-27 | 天津大学 | 一种基于形式化及统一软件模型的软件可信工程方法 |
CN102169458A (zh) * | 2011-04-18 | 2011-08-31 | 华东师范大学 | 汽车电控部件的软件正确性验证系统及其验证方法 |
CN103383722A (zh) * | 2013-05-30 | 2013-11-06 | 北京航空航天大学 | 一种结合产品和过程的软件安全性举证开发方法 |
CN105303197A (zh) * | 2015-11-11 | 2016-02-03 | 江苏省邮电规划设计院有限责任公司 | 一种基于机器学习的车辆跟车安全自动评估方法 |
CN105893256A (zh) * | 2016-03-30 | 2016-08-24 | 西北工业大学 | 基于机器学习算法的软件故障定位方法 |
CN106528100A (zh) * | 2015-08-05 | 2017-03-22 | 通用电气公司 | 用于安全关键软件开发的基于模型的技术和过程的系统和方法 |
CN108881446A (zh) * | 2018-06-22 | 2018-11-23 | 深源恒际科技有限公司 | 一种基于深度学习的人工智能平台系统 |
US20180349114A1 (en) * | 2017-06-03 | 2018-12-06 | Apple Inc. | Integrating machine learning models into an interpreted software development environment |
US20180349103A1 (en) * | 2017-06-03 | 2018-12-06 | Apple Inc. | Integration of learning models into a software development system |
-
2019
- 2019-03-06 CN CN201910170435.3A patent/CN109933309B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136047A (zh) * | 2011-02-25 | 2011-07-27 | 天津大学 | 一种基于形式化及统一软件模型的软件可信工程方法 |
CN102169458A (zh) * | 2011-04-18 | 2011-08-31 | 华东师范大学 | 汽车电控部件的软件正确性验证系统及其验证方法 |
CN103383722A (zh) * | 2013-05-30 | 2013-11-06 | 北京航空航天大学 | 一种结合产品和过程的软件安全性举证开发方法 |
CN106528100A (zh) * | 2015-08-05 | 2017-03-22 | 通用电气公司 | 用于安全关键软件开发的基于模型的技术和过程的系统和方法 |
CN105303197A (zh) * | 2015-11-11 | 2016-02-03 | 江苏省邮电规划设计院有限责任公司 | 一种基于机器学习的车辆跟车安全自动评估方法 |
CN105893256A (zh) * | 2016-03-30 | 2016-08-24 | 西北工业大学 | 基于机器学习算法的软件故障定位方法 |
US20180349114A1 (en) * | 2017-06-03 | 2018-12-06 | Apple Inc. | Integrating machine learning models into an interpreted software development environment |
US20180349103A1 (en) * | 2017-06-03 | 2018-12-06 | Apple Inc. | Integration of learning models into a software development system |
CN108881446A (zh) * | 2018-06-22 | 2018-11-23 | 深源恒际科技有限公司 | 一种基于深度学习的人工智能平台系统 |
Non-Patent Citations (2)
Title |
---|
PATEL, K (PATEL, KAYUR) [1] ; FOGARTY, J (FOGARTY, JAMES) [1] ; LANDAY, JA (LANDAY, JAMES A.) [1] ; HARRISON, B (HARRISON, BEVERLY: "Investigating Statistical Machine Learning as a Tool for Software Development", 26TH ANNUAL CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, vol. 1, 1 January 2018 (2018-01-01), pages 667 - 676 * |
方昊: "基于机器学习的软件缺陷预测及系统开发", 中国优秀硕士论文电子期刊网, no. 2, 16 January 2018 (2018-01-16), pages 26 - 44 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377526A (zh) * | 2019-07-31 | 2019-10-25 | 赛汇检测(广州)有限公司 | 一种ai智能软件的测试方法 |
CN110673843A (zh) * | 2019-09-16 | 2020-01-10 | 上海交通大学 | 一种基于数据的软件模块行为状态机还原方法 |
CN110673843B (zh) * | 2019-09-16 | 2021-07-16 | 上海交通大学 | 一种基于数据的软件模块行为状态机还原方法 |
CN112528299A (zh) * | 2020-12-04 | 2021-03-19 | 电子科技大学 | 一种工业应用场景下的深度神经网络模型安全保护方法 |
CN112528299B (zh) * | 2020-12-04 | 2022-03-04 | 电子科技大学 | 一种工业应用场景下的深度神经网络模型安全保护方法 |
CN116541020A (zh) * | 2023-07-06 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 基于领域模型的代码生成方法、装置、设备、介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN109933309B (zh) | 2024-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933309A (zh) | 机器学习算法应用于汽车软件开发功能安全的流程方法 | |
Lou et al. | Testing of autonomous driving systems: where are we and where should we go? | |
Briand et al. | Testing the untestable: model testing of complex software-intensive systems | |
Rushby | Quality measures and assurance for ai (artificial intelligence) software | |
CN105893256A (zh) | 基于机器学习算法的软件故障定位方法 | |
Dias-Neto et al. | A picture from the model-based testing area: Concepts, techniques, and challenges | |
Taylor et al. | Verification and validation of neural networks: a sampling of research in progress | |
González et al. | Test data generation for model transformations combining partition and constraint analysis | |
Ghadhab et al. | Model-based safety analysis for vehicle guidance systems | |
Radlak et al. | Organization of machine learning based product development as per ISO 26262 and ISO/PAS 21448 | |
CN103970654B (zh) | 一种软件可靠性虚拟测试方法 | |
Sadri‐Moshkenani et al. | Survey on test case generation, selection and prioritization for cyber‐physical systems | |
Reiter et al. | Reliability assessment of safety-relevant automotive systems in a model-based design flow | |
US8751094B2 (en) | Method for validation of a graphically based executable control specification using model extraction | |
Märtin et al. | A methodology for model-based development and automated verification of software for aerospace systems | |
US7543274B2 (en) | System and method for deriving a process-based specification | |
Păsăreanu et al. | Assumption Generation for Learning-Enabled Autonomous Systems | |
Hiremath et al. | Towards automated metamorphic test identification for ocean system models | |
Aceituna | Survey of concerns in embedded systems requirements engineering | |
Frank et al. | The challenge of configuring model-based space mission planners | |
Olamide et al. | Formal verification and validation of DEVS simulation models | |
Zhu | Integrating software behavior into dynamic probabilistic risk assessment | |
Chauhan | Role of machine learning in software testing | |
Blanquart et al. | Software safety-a journey across domains and safety standards | |
Gudaparthi et al. | Reliability of convolutional neural networks: Failure metrics with metamorphic test cases |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |