一种模型训练方法以及相关设备与流程

文档序号:36405817发布日期:2023-12-16 13:01阅读:53来源:国知局
一种模型训练方法以及相关设备与流程

本技术涉及人工智能领域,尤其涉及一种模型训练方法以及相关设备。


背景技术:

1、电子设计自动化(electronic design automation,eda)技术的应用,使大规模集成电路的设计成为现实,集成电路工艺进入纳米技术时代。然而,随着集成电路技术的发展,电路越来越复杂,每个芯片上的晶体管数量越来越多,而eda设计工具的创新已经减慢了速度,时常不能够满足设计需要,因此越来越多人开始借助机器学习来完成电子系统的相关设计。

2、利用机器学习完成电子系统的设计需要先对机器学习模型进行训练,以使模型精度满足要求。目前采用的方法是根据实际电子系统产生多组电路参数,对每组电路参数进行eda仿真,每组电路参数与对应的仿真结果组成一组数据,多组数据构成数据集,使用数据集训练机器学习模型。数据集中,有的数据对提升模型精度的效果好,有些数据则对提升模型精度不太有帮助,对提升模型精度效果好的数据称为边缘数据。一个数据集中边缘数据越多,对模型的训练效果越好,模型的精度越高。

3、但是,在产生电路参数时,很难直接判定产生的一组电路参数是否属于边缘数据,也没办法指定生成边缘数据对应的参数。因此,产生的数据质量不能保证,往往花了很长时间仿真得到的一个数据集中边缘数据的占比很小,导致模型的训练效率很低。


技术实现思路

1、本技术提供了一种模型训练方法以及相关设备,在借助机器学习模型设计电子系统时,可以有效提升机器学习模型的训练效率。

2、本技术第一方面提供一种模型训练方法,可以应用于模型训练设备。该方法包括:模型训练设备获取带有标签的第一电子系统参数;模型训练设备基于第一电子系统参数训练第一模型,得到训练好的第一模型,第一模型用于设计电子系统;模型训练设备基于第一电子系统参数获取第一目标参数,第一目标参数为该训练好的第一模型未学习过的参数;在第一目标参数满足预设条件的情况下,模型训练设备基于第一目标参数优化该训练好的第一模型,得到第二模型。

3、在第一方面中,第一电子系统参数根据待设计的电子系统随机产生,第一电子系统参数可以是电压、电流、电阻等电路参数,也可以是环境温度等参数。第一电子系统参数的标签可以是将第一电子系统参数输入eda软件进行仿真得到,也可以是根据第一电子系统参数进行实验得到,标签可以是直流工作点分析结果、失真分析结果、噪声分析结果、傅里叶分析结果等。模型训练设备使用第一电子系统参数以及对应的标签训练第一模型,训练好的第一模型可以根据给定的电子系统参数输出预测的结果,根据预测的结果可以对待设计的电子系统进行优化调整。需要说明的是,模型训练设备可以只使用少量的第一电子系统参数训练第一模型。

4、模型训练设备除了使用第一电子系统参数训练第一模型外,还会对第一电子系统参数进行处理,得到第一模型未学习过的第一目标参数,未学习过的第一目标参数是指用于训练第一模型的第一电子系统参数中没有类似的参数。模型未学习过的参数更有可能是边缘数据。模型训练设备获取第一目标参数后,判断第一目标参数是否为边缘数据。具体的,模型训练设备可以预设条件,当第一目标参数满足预设条件时,认为第一目标参数是边缘数据。模型训练设备再获取第一目标参数的标签,并使用第一目标参数以及对应的标签对训练好的第一模型继续进行训练,得到精度更高的第二模型。模型训练设备会根据对第一目标参数的判断结果调整获取第一目标参数的方法。

5、本技术第一方面中,模型训练设备可以针对性的获取对提升模型精度效果好的边缘数据,并使用边缘数据作为训练样本对模型进行训练,从而有效提高了模型的训练效率。

6、在第一方面的一种可能的实现方式中,上述步骤:模型训练设备基于第一电子系统参数获取第一目标参数,包括:模型训练设备通过双深度q值网络(double deep q-network,ddqn)对第一电子系统参数进行处理,得到第一目标参数。

7、ddqn包括当前值网络以及目标值网络,当前值网络可以是深度神经网络,目标值网络在开始时根据当前值网络复制得到。ddqn中状态为一组第一电子系统参数,一个动作表示对第一电子系统参数的一次更新,环境根据动作会给出相应的奖励(或者惩罚)。经验池会将当前状态、动作、奖励、根据该动作更新得到的下一时刻状态(即对第一电子系统参数进行更新后的参数)作为一组数据存储起来。当前值网络先从经验池中随机提取出一组数据,通过q函数计算该组数据中当前状态(即当前第一电子系统参数)的最大q值,隔一定步数后目标值网络更新参数为下一时刻状态(即对第一电子系统参数更新后的参数),通过目标q函数计算最大目标q值。更新参数所隔的步数可以是根据专家经验进行设置。再通过ddqn误差函数比较最大q值与最大目标q值,当前值网络根据比较的结果通过梯度下降算法调整当前状态,得到第一模型未学习过的第一目标参数,第一目标参数不带标签。该种可能的实现方式中,限定了获取第一目标参数的方法,提升了方案的可实现性。

8、在第一方面的一种可能的实现方式中,第一模型包括两个深度神经网络(deepneural networks,dnn);上述步骤:在第一目标参数满足预设条件的情况下,模型训练设备基于第一目标参数优化该训练好的第一模型,得到第二模型之前,该方法还包括:模型训练设备通过两个深度神经网络分别预测第一目标参数的标签,得到第一标签和第二标签;若第一标签与第二标签的差值的绝对值大于预设的阈值,则模型训练设备判断第一目标参数满足预设条件。

9、第一模型包括两个深度神经网络,其中,两个深度神经网络结构相同、部分超参数不同。模型训练设备使用带有便签的第一电子系统参数训练第一模型,也就是会训练这两个深度神经网络。训练后的两个深度神经网络可以对第一目标参数的标签进行预测,分别得到第一标签和第二标签。对于已掌握的参数类型,两个深度神经网络的预测结果差别较小。通过两个深度神经网络预测的结果可以判断第一目标参数是否为边缘数据。具体的,模型训练设备可以预设判断第一目标参数是边缘数据的条件,例如,预设一个阈值,当第一标签和第二标签的差值的绝对值大于预设的阈值时,认为第一目标参数满足条件,是边缘数据。因为当第一标签和第二标签的差值较大时,说明第一模型对该第一目标参数的预测效果较差,因此该第一目标参数用于训练第一模型时,对于提升第一模型的精度效果较好,即第一目标参数为边缘数据。预设的阈值可以根据实际设计需要以及专家经验进行设定,阈值越大,越难筛选出边缘数据,而筛选出来的数据对模型精度的提升效果也越好。该种可能的实现方式中,对判断第一目标参数是否为边缘数据的方法进行了说明,提升了方案的可实现性。

10、在第一方面的一种可能的实现方式中,上述步骤:模型训练设备基于第一目标参数优化该训练好的第一模型,得到第二模型之后,该方法还包括:模型训练设备基于第一目标参数获取第二目标参数,第二目标参数为第二模型未学习过的参数;在第二目标参数满足预设条件的情况下,模型训练设备基于第二目标参数优化第二模型,得到第三模型。

11、若第二模型的精度不满足设计要求,则模型训练设备继续对第一目标参数进行处理,得到第二模型未学习过的第二目标参数。当第二目标参数满足预设条件时,模型训练设备继续使用第二目标参数训练第二模型,得到精度更高的第三模型。可以理解的是,当第三模型的精度不满足设计要求时,模型训练设备会继续对第二目标参数进行处理,并使用得到的且满足预设条件的参数训练第三模型,直至模型精度满足设计要求。该种可能的实现方式中,模型训练设备可以继续获取模型未学习过的参数,并对模型继续进行训练,从而可以提升模型的精度。

12、在第一方面的一种可能的实现方式中,上述步骤:模型训练设备基于第一目标参数获取第二目标参数,包括:模型训练设备通过双深度q值网络对第一目标参数进行处理,得到第二目标参数。

13、ddqn包括当前值网络以及目标值网络,当前值网络可以是深度神经网络,目标值网络在开始时根据当前值网络复制得到。ddqn中状态为一组第一目标参数,一个动作表示对第一目标参数的一次更新,环境根据动作会给出相应的奖励(或者惩罚)。经验池会将当前状态、动作、奖励、根据该动作更新得到的下一时刻状态(即对第一目标参数进行更新后的参数)作为一组数据存储起来。当前值网络先从经验池中随机提取出一组数据,通过q函数计算该组数据中当前状态(即当前第一目标参数)的最大q值,隔一定步数后目标值网络更新参数为下一时刻状态(即对第一目标参数进行更新后的参数),通过目标q函数计算最大目标q值。更新参数所隔的步数可以是根据专家经验进行设置。再通过ddqn误差函数比较最大q值与最大目标q值,当前值网络根据比较的结果通过梯度下降算法调整当前状态,得到第二模型未学习过的第二目标参数,第二目标参数不带标签。该种可能的实现方式中,限定了获取第二目标参数的方法,提升了方案的可实现性。

14、在第一方面的一种可能的实现方式中,第二模型包括两个经优化后的深度神经网络;上述步骤:在第二目标参数满足预设条件的情况下,模型训练设备基于第二目标参数优化第二模型,得到第三模型之前,该方法还包括:模型训练设备通过两个经优化后的深度神经网络分别预测第二目标参数的标签,得到第三标签和第四标签;若第三标签与第四标签的差值的绝对值大于预设的阈值,则模型训练设备判断第二目标参数满足预设条件。

15、第二模型为经过优化后的第一模型,第二模型中包括两个经优化后的深度神经网络,两个深度神经网络结构相同、部分超参数不同。经优化后的两个深度神经网络可以对第二目标参数的标签进行预测,分别得到第三标签和第四标签。对于已掌握的参数类型,两个深度神经网络的预测结果差别较小。通过两个深度神经网络预测的结果可以判断第二目标参数是否为边缘数据。具体的,模型训练设备可以预设判断第二目标参数是边缘数据的条件,例如,预设一个阈值,当第三标签和第四标签的差值的绝对值大于预设的阈值时,认为第二目标参数满足条件,是边缘数据。因为当第三标签和第四标签的差值较大时,说明第二模型对该第二目标参数的预测效果较差,因此该第二目标参数用于训练第二模型时,对于提升第二模型的精度效果较好,即第二目标参数为边缘数据。预设的阈值可以根据实际设计需要以及专家经验进行设定,阈值越大,越难筛选出边缘数据,而筛选出来的数据对模型精度的提升效果也越好。该种可能的实现方式中,对判断第二目标参数是否为边缘数据的方法进行了说明,提升了方案的可实现性。

16、在第一方面的一种可能的实现方式中,模型训练设备获取带有标签的第一电子系统参数之后,模型训练方法还包括:模型训练设备基于带有标签的第一电子系统参数获取带有标签的第二电子系统参数,其中,第二电子系统参数为与第一电子系统参数类似的参数;模型训练设备基于第一电子系统参数训练第一模型,包括:模型训练设备基于第一电子系统参数以及第二电子系统参数训练第一模型。

17、通过eda软件仿真或者实验测量得到第一电子系统参数的标签需要耗费的时间较长。模型训练设备可以对带标签的第一电子系统参数进行处理,得到更多的与第一电子系统参数类似的带有标签的第二电子系统参数,带便签的第二电子系统参数可以用来训练第一模型。因此,一开始只需获取少量带标签的第一电子系统参数,有效节省了获取电子系统参数标签的时间。

18、在第一方面的一种可能的实现方式中,上述步骤:模型训练设备基于第一电子系统参数获取第二电子系统参数,包括:模型训练设备通过自编码器对第一电子系统参数添加噪声,得到第三电子系统参数;模型训练设备通过生成对抗网络对第三电子系统参数进行微调,得到第四电子系统参数;模型训练设备对第四电子系统参数进行均值方差归一化与反归一化运算,得到第二电子系统参数。

19、其中,自编码器(auto-encoder)包括编码器(encoder)和译码器(decoder),模型训练设备先通过编码器对第一电子系统参数进行编码,降低第一电子系统参数的维度,再对降低维度后的第一电子系统参数添加噪声,具体的,添加的噪声是随机生成的,且噪声相对第一电子系统参数各维度的参数较小。模型训练设备通过译码器对添加噪声后的第一电子系统参数进行译码和维度还原,得到带标签的第三电子系统参数。由于添加的噪声是随机生成且大小较小,因此生成的第三电子系统参数与第一电子系统参数相似。通过添加不同的噪声,即可实现根据一组带标签的第一电子系统参数产生多组类似的带标签的第三电子系统参数。

20、但是,添加噪声后产生的第三电子系统参数与标签的映射关系,与真实数据相比存在差异。此时模型训练设备再通过生成对抗网络(generative adversarial network,gan)对第三电子系统参数以及标签进行微调,从而生成与真实数据更接近的数据。具体的,生成对抗网络包括生成器(generator,g)和判别器(discriminator,d)。生成器不断地对第三电子系统参数以及标签进行调整,判别器则不断地判断调整后的数据是否符合真实数据分布,当判别器无法判断生成器调整后的数据是来自于真实数据还是由生成器生成时,即得到了与真实数据更接近的第四电子系统参数以及对应的标签。

21、经生成对抗网络调整后得到的第四电子系统参数以及标签更为接近真实数据,但是第四电子系统参数的标签与第四电子系统参数对应的真实标签(即通过eda软件仿真或者实验测量得到的标签)相比存在线性偏差。模型训练设备再对第四电子系统参数以及标签进行均值方差归一化与反归一化运算,从而尽可能的消除与真实标签的线性偏差,最终得到第二电子系统参数以及标签。该种可能的实现方式中,限定了模型训练设备获取第二电子系统参数以及相应标签的方法,提升了方案的可实现性。

22、本技术第二方面提供一种模型训练设备,包括获取单元、训练单元以及优化单元。获取单元,用于获取带有标签的第一电子系统参数;训练单元,用于基于第一电子系统参数训练第一模型,得到训练好的第一模型,第一模型用于设计电子系统;获取单元,还用于基于第一电子系统参数获取第一目标参数,第一目标参数为训练好的第一模型未学习过的参数;优化单元,用于在第一目标参数满足预设条件的情况下,基于第一目标参数优化训练好的第一模型,得到第二模型。

23、在第二方面的一种可能的实现方式中,获取单元具体用于通过双深度q值网络对第一电子系统参数进行处理,得到第一目标参数。

24、在第二方面的一种可能的实现方式中,第一模型包括两个深度神经网络;模型训练设备还包括预测单元和判断单元,预测单元用于通过两个深度神经网络分别预测第一目标参数的标签,得到第一标签和第二标签;判断单元用于当第一标签与第二标签的差值的绝对值大于预设的阈值时,判断第一目标参数满足预设条件。

25、在第二方面的一种可能的实现方式中,获取单元还用于基于第一目标参数获取第二目标参数,第二目标参数为第二模型未学习过的参数;优化单元还用于在第二目标参数满足预设条件的情况下,基于第二目标参数优化第二模型,得到第三模型。

26、在第二方面的一种可能的实现方式中,获取单元具体用于通过双深度q值网络对第一目标参数进行处理,得到第二目标参数。

27、在第二方面的一种可能的实现方式中,第二模型包括两个经优化后的深度神经网络;预测单元还用于通过两个经优化后的深度神经网络分别预测第二目标参数的标签,得到第三标签和第四标签;判断单元还用于当第三标签与第四标签的差值的绝对值大于预设的阈值时,判断第二目标参数满足预设条件。

28、在第二方面的一种可能的实现方式中,获取单元还用于基于带有标签的第一电子系统参数获取带有标签的第二电子系统参数,第二电子系统参数为与第一电子系统参数类似的参数;训练单元具体用于基于第一电子系统参数以及第二电子系统参数训练第一模型。

29、在第二方面的一种可能的实现方式中,获取单元具体用于通过自编码器对带标签的第一电子系统参数添加噪声,得到带标签的第三电子系统参数;通过生成对抗网络对带标签的第三电子系统参数进行微调,得到带标签的第四电子系统参数;对带标签的第四电子系统参数进行均值方差归一化与反归一化运算,得到带标签的第二电子系统参数。

30、本技术第三方面提供一种模型训练设备,包括处理器和存储器。所述存储器用于存储指令,所述处理器用于获取所述存储器存储的指令,以执行第一方面或者第一方面的任意一种可能的实现方式中所述的方法。

31、本技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质包括指令,当所述指令在计算机上运行时,使得计算机执行第一方面或者第一方面的任意一种可能的实现方式中所述的方法。

32、本技术第五方面提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行第一方面或者第一方面的任意一种可能的实现方式中所述的方法。

33、本技术第六方面提供一种芯片系统,所述芯片系统包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行第一方面或者第一方面的任意一种可能的实现方式中所述的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1