模型运行性能评估方法、性能评估模型的训练方法及装置与流程
本公开涉及人工智能领域,特别是涉及一种模型运行性能评估方法、性能评估模型的训练方法及装置。
背景技术:
1、对于ai(artificial intelligence,人工智能)模型在不同运行环境中的运行性能进行评估,通常需要预测ai模型在待评估运行环境上的运行性能,从而指导待评估运行环境对应的硬件选型或进行部署规划。
2、在进行相应的性能评估时依赖于以下两种方式,其一为基于待评估运行环境的参数进行理论峰值性能估算,其二为基于底层硬件架构细节进行指令级或微架构级仿真以获取性能数据。
3、然而,上述两种方式均需要依赖于待评估运行环境对应的硬件架构细节,在实际应用场景中,硬件架构细节可能处于未确定阶段或处于保密的状态,导致难以进行性能评估或性能评估结果可靠度较低。
技术实现思路
1、本公开实施例提供了一种模型运行性能评估方法、性能评估模型的训练方法及装置,它可以在运行环境细节(例如硬件架构细节)缺失的情况下,实现对人工智能模型在待评估运行环境上部署性能的准确评估。
2、根据本公开的一方面,提供了一种模型运行性能评估方法,包括:获取目标模型及待评估运行环境中运行的配置参数;将所述配置参数输入性能评估模型,其中,所述性能评估模型包括多个依次连接的性能建模层以及补偿层,各所述性能建模层分别对应所述目标模型运行过程中依次执行的多个逻辑处理模块,所述多个性能建模层按照对应逻辑处理模块的执行顺序依次连接;将所述配置参数输入所述多个性能建模层进行逐级特征处理,其中,将前一性能建模层输出的中间特征向量输入后一性能建模层,直至得到末级性能建模层输出的中间特征向量;将所述末级性能建模层输出的中间特征向量输入所述补偿层,对所述多个性能建模层逐级特征处理产生的累计误差进行补偿,得到所述目标模型在所述待评估运行环境中的性能评估结果。
3、可选地,所述配置参数包括公共配置参数以及分别与各所述性能建模层对应的层级配置参数;将所述配置参数输入所述多个性能建模层进行逐级特征处理,包括:对所述公共配置参数进行特征处理,得到公共特征向量;对与起始性能建模层对应的层级配置参数进行特征处理,得到起始层配置特征向量;根据所述公共特征向量和所述起始层配置特征向量,确定所述起始性能建模层的输入特征向量;将所述起始性能建模层的输入特征向量输入所述起始性能建模层进行特征变换,得到所述起始性能建模层输出的中间特征向量。
4、可选地,所述将所述配置参数输入所述多个性能建模层进行逐级特征处理,还包括:对于所述起始性能建模层之后的当前性能建模层,从所述配置参数中确定与所述当前性能建模层对应的层级配置参数;对与所述当前性能建模层对应的层级配置参数进行特征处理,得到当前层配置特征向量;根据前一性能建模层输出的中间特征向量和所述当前层配置特征向量,确定所述当前性能建模层的输入特征向量;将所述当前性能建模层的输入特征向量输入所述当前性能建模层进行特征变换,得到所述当前性能建模层输出的中间特征向量;依次对所述起始性能建模层之后的各性能建模层执行上述处理,直至得到所述末级性能建模层输出的中间特征向量。
5、可选地,所述将所述配置参数输入所述多个性能建模层进行逐级特征处理,还包括:分别对各性能建模层输出的中间特征向量进行性能映射,得到各性能建模层对应的局部性能评估结果;其中,各所述局部性能评估结果分别表征对应逻辑处理模块在所述待评估运行环境中的运行性能。
6、可选地,所述对所述公共配置参数进行特征处理,得到公共特征向量,包括:从所述公共配置参数中确定数值型公共配置参数和分类型公共配置参数;对所述数值型公共配置参数进行归一化处理,并将归一化处理后的数值型公共配置参数进行特征映射,得到公共数值特征向量;对所述分类型公共配置参数进行离散值编码处理,并对离散值编码处理后的分类型公共配置参数进行嵌入处理,得到公共类别特征向量;将所述公共数值特征向量和所述公共类别特征向量进行拼接,得到所述公共特征向量。
7、可选地,所述对与所述当前性能建模层对应的层级配置参数进行特征处理,包括:从所述层级配置参数中确定数值型层级配置参数和分类型层级配置参数;对所述数值型层级配置参数进行归一化处理,并将归一化处理后的数值型层级配置参数进行特征映射,得到层级数值特征向量;对所述分类型层级配置参数进行离散值编码处理,并对离散值编码处理后的分类型层级配置参数进行嵌入处理,得到层级类别特征向量;将所述层级数值特征向量和所述层级类别特征向量进行拼接,得到所述当前层配置特征向量;将所述前一性能建模层输出的中间特征向量和所述当前层配置特征向量进行拼接,得到所述当前性能建模层的输入特征向量。
8、根据本公开的一方面,提供了一种性能评估模型的训练方法。待训练的初始性能评估模型包括多个依次连接的性能建模层以及补偿层,各所述性能建模层分别对应目标模型运行过程中依次执行的多个逻辑处理模块,所述多个性能建模层按照对应逻辑处理模块的执行顺序依次连接;所述方法包括:获取所述目标模型在样本运行环境中运行的样本配置参数、所述目标模型对应的端到端性能标签以及各所述逻辑处理模块分别对应的局部性能标签;将所述样本配置参数输入所述多个性能建模层进行逐级特征处理,分别得到各所述性能建模层对应的预测局部性能评估结果,并得到末级性能建模层输出的中间特征向量;将所述末级性能建模层输出的中间特征向量输入所述补偿层,对所述多个性能建模层逐级特征处理产生的累计误差进行补偿,得到预测端到端性能评估结果;针对各所述性能建模层,根据该性能建模层对应的预测局部性能评估结果和该性能建模层对应的逻辑处理模块的局部性能标签,确定对应的局部预测损失;根据所述预测端到端性能评估结果和所述端到端性能标签,确定端到端预测损失;根据各所述局部预测损失和所述端到端预测损失确定联合预测损失,并根据所述联合预测损失更新所述初始性能评估模型的模型参数,直至满足训练停止条件,得到所述性能评估模型。
9、可选地,所述获取所述目标模型对应的端到端性能标签以及各所述逻辑处理模块分别对应的局部性能标签,包括:将所述目标模型部署于所述样本运行环境中运行,测量所述目标模型完成预设运行任务时的端到端性能,得到端到端性能实测值;根据所述端到端性能实测值确定所述端到端性能标签;分别将与各所述性能建模层对应的逻辑处理模块部署于所述样本运行环境中运行,测量各所述逻辑处理模块完成对应处理任务时的局部性能,得到各所述逻辑处理模块分别对应的局部性能实测值;根据各所述局部性能实测值,分别确定各所述逻辑处理模块对应的局部性能标签。
10、可选地,所述将所述样本配置参数输入所述多个性能建模层进行逐级特征处理,包括:从所述样本配置参数中确定样本公共配置参数以及分别与各所述性能建模层对应的样本层级配置参数;对所述样本公共配置参数进行特征处理,得到样本公共特征向量;对与起始性能建模层对应的样本层级配置参数进行特征处理,得到样本起始层配置特征向量;根据所述样本公共特征向量和所述样本起始层配置特征向量,确定所述起始性能建模层的样本输入特征向量;将所述样本输入特征向量输入所述起始性能建模层进行特征变换,得到所述起始性能建模层输出的中间特征向量;对于所述起始性能建模层之后的当前性能建模层,对与所述当前性能建模层对应的样本层级配置参数进行特征处理,得到当前层样本配置特征向量;根据前一性能建模层输出的中间特征向量和所述当前层样本配置特征向量,确定所述当前性能建模层的样本输入特征向量;将所述当前性能建模层的样本输入特征向量输入所述当前性能建模层进行特征变换,得到所述当前性能建模层输出的中间特征向量,并依次进行上述特征处理,直至得到所述末级性能建模层输出的中间特征向量。
11、可选地,所述根据各所述局部预测损失和所述端到端预测损失确定联合预测损失,包括:分别计算各所述预测局部性能评估结果与对应局部性能标签之间的对数均方误差,得到各所述局部预测损失;计算所述预测端到端性能评估结果与所述端到端性能标签之间的对数均方误差,得到所述端到端预测损失;分别确定各所述局部预测损失以及所述端到端预测损失对应的权重;对加权后的各所述局部预测损失和所述端到端预测损失进行求和,得到所述联合预测损失。
12、可选地,所述根据所述联合预测损失更新所述初始性能评估模型的模型参数,包括:对所述联合预测损失进行反向传播,得到所述多个性能建模层以及所述补偿层对应的模型参数梯度;其中,各所述局部预测损失至少参与对应性能建模层的模型参数梯度计算,所述端到端预测损失参与所述多个性能建模层以及所述补偿层的模型参数梯度计算;根据所述模型参数梯度更新所述多个性能建模层以及所述补偿层的模型参数。
13、可选地,所述根据所述模型参数梯度更新所述多个性能建模层以及所述补偿层的模型参数,包括:采用优化器根据所述模型参数梯度更新所述初始性能评估模型的模型参数;利用更新后的模型参数重新得到各所述预测局部性能评估结果以及所述预测端到端性能评估结果,并重新确定所述联合预测损失;在重新确定的联合预测损失不满足所述训练停止条件的情况下,重复更新所述模型参数,直至所述联合预测损失满足所述训练停止条件。
14、可选地,所述测量所述目标模型完成预设运行任务时的端到端性能,得到端到端性能实测值,包括:将所述目标模型部署于所述样本运行环境中运行,测量所述目标模型从所述预设运行任务开始至所述预设运行任务完成所消耗的运行时间,得到端到端延迟实测值,并将所述端到端延迟实测值作为所述端到端性能实测值;所述测量各所述逻辑处理模块完成对应处理任务时的局部性能,得到各所述逻辑处理模块分别对应的局部性能实测值,包括:分别将与各所述性能建模层对应的逻辑处理模块部署于所述样本运行环境中运行,测量各所述逻辑处理模块完成对应处理任务所消耗的运行时间,得到各所述逻辑处理模块分别对应的局部延迟实测值,并将各所述局部延迟实测值分别作为对应的局部性能实测值。
15、根据本公开的一方面,提供一种模型运行性能评估装置,包括:获取模块,用于获取目标模型及待评估运行环境中运行的配置参数;处理模块,用于将所述配置参数输入性能评估模型,其中,所述性能评估模型包括多个依次连接的性能建模层以及补偿层,各所述性能建模层分别对应所述目标模型运行过程中依次执行的多个逻辑处理模块,所述多个性能建模层按照对应逻辑处理模块的执行顺序依次连接;所述处理模块,还用于将所述配置参数输入所述多个性能建模层进行逐级特征处理,其中,将前一性能建模层输出的中间特征向量输入后一性能建模层,直至得到末级性能建模层输出的中间特征向量;补偿模块,用于将所述末级性能建模层输出的中间特征向量输入所述补偿层,对所述多个性能建模层逐级特征处理产生的累计误差进行补偿,得到所述目标模型在所述待评估运行环境中的性能评估结果。
16、根据本公开的一方面,提供一种性能评估模型的训练装置,待训练的初始性能评估模型包括多个依次连接的性能建模层以及补偿层,各所述性能建模层分别对应目标模型运行过程中依次执行的多个逻辑处理模块,所述多个性能建模层按照对应逻辑处理模块的执行顺序依次连接;所述装置包括:样本获取模块,用于获取所述目标模型在样本运行环境中运行的样本配置参数、所述目标模型对应的端到端性能标签以及各所述逻辑处理模块分别对应的局部性能标签;训练模块,用于将所述样本配置参数输入所述多个性能建模层进行逐级特征处理,分别得到各所述性能建模层对应的预测局部性能评估结果,并得到末级性能建模层输出的中间特征向量;所述训练模块,还用于将所述末级性能建模层输出的中间特征向量输入所述补偿层,对所述多个性能建模层逐级特征处理产生的累计误差进行补偿,得到预测端到端性能评估结果;所述训练模块,还用于针对各所述性能建模层,根据该性能建模层对应的预测局部性能评估结果和该性能建模层对应的逻辑处理模块的局部性能标签,确定对应的局部预测损失;所述训练模块,还用于根据所述预测端到端性能评估结果和所述端到端性能标签,确定端到端预测损失;所述训练模块,还用于根据各所述局部预测损失和所述端到端预测损失确定联合预测损失,并根据所述联合预测损失更新所述初始性能评估模型的模型参数,直至满足训练停止条件,得到所述性能评估模型。
17、根据本公开的一方面,提出一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器运行时实现如上所述的模型运行性能评估方法,或者性能评估模型的训练方法。
18、根据本公开的一方面,提出一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器运行,以实现如上所述的模型运行性能评估方法,或者性能评估模型的训练方法。
19、本公开提出一种模型运行性能评估方法、性能评估模型的训练方法及装置,方法包括:获取目标模型及待评估运行环境中运行的配置参数;将所述配置参数输入性能评估模型,其中,所述性能评估模型包括多个依次连接的性能建模层以及补偿层,各所述性能建模层分别对应所述目标模型运行过程中依次执行的多个逻辑处理模块,所述多个性能建模层按照对应逻辑处理模块的执行顺序依次连接;将所述配置参数输入所述多个性能建模层进行逐级特征处理,其中,将前一性能建模层输出的中间特征向量输入后一性能建模层,直至得到末级性能建模层输出的中间特征向量;将所述末级性能建模层输出的中间特征向量输入所述补偿层,对所述多个性能建模层逐级特征处理产生的累计误差进行补偿,得到所述目标模型在所述待评估运行环境中的性能评估结果。本公开通过对目标模型内部逻辑处理模块的结构化分解以及配置参数的分层特征注入,在运行环境细节不确定或不可知的情况下独立完成运行性能评估。同时借助补偿层对级联传递中的累积偏差进行有效校正,从而显著提升端到端性能评估在复杂计算流程下的预测精度,兼顾了评估方案的实操可行性与结果可靠性。
20、进一步地,通过对公共配置参数和起始性能建模层的层级配置参数进行差异化特征提取与融合,使起始层的输入特征既能承载全局运行环境的共性影响,又能体现起始模块的个性配置,从而确保级联处理的初始特征表达更为完整准确,为后续逐级传递提供高质量的数据基础。
21、进一步地,通过将前一性能建模层输出的中间特征向量与当前层的层级配置特征进行融合,能够实现上游计算状态与资源占用信息的顺畅传递,确保每一后续层级均能感知前序模块的累积影响,从而精准捕捉运行过程中的数据依赖与资源竞争效应,增强模型对动态变化环境的自适应能力。
22、进一步地,通过对各性能建模层输出的中间特征向量分别进行独立的性能映射,能够获取每个逻辑处理模块对应的局部性能评估结果,从而在提供整体预测的同时实现细粒度的性能评估,便于用户进行针对性的模块级调优。
23、进一步地,通过对数值型公共配置参数进行归一化与特征映射,并对分类型公共配置参数进行离散编码与嵌入处理,再将两类特征向量拼接融合,有效解决了异构配置数据难以统一表征的问题,提升了全局环境特征表达的泛化能力与表征精度。
24、进一步地,通过对层级配置参数中的数值型与分类型特征分别进行规范化编码与嵌入处理,并将其与上一层输出的中间特征向量进行拼接,既保证了层级局部配置信息的完整保真,又确保了上游上下文特征有效传递,有利于增强当前性能建模层输入特征的判别力与预测准确性。
25、本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com