缺陷检测模型训练方法、装置、设备及存储介质制造方法及图纸

技术编号:30447957 阅读:23 留言:0更新日期:2021-10-24 18:41
本发明专利技术公开了一种缺陷检测模型训练方法、装置、设备及存储介质,所述方法包括:获取本机训练图片和基准模型参数;将待训练缺陷检测模型的模型参数配置为基准模型参数后,采用本机训练图片对待训练缺陷检测模型进行本地迭代训练得到本机梯度值;将本机梯度值发送给服务节点,供服务节点对各计算节点发送的梯度值进行平均,采用总梯度值更新基准模型参数,将更新后的基准模型参数发给各计算节点供各计算节点作为下次本地训练所需的基准模型参数;当检测到待训练缺陷检测模型收敛时,将收敛后的待训练缺陷检测模型作为目标缺陷检测模型。本发明专利技术实现了在单机有限计算能力和内存限制的情况下,增加训练数据的数据量,提高模型精度。提高模型精度。提高模型精度。

【技术实现步骤摘要】
缺陷检测模型训练方法、装置、设备及存储介质


[0001]本专利技术涉及人工智能
,尤其涉及一种缺陷检测模型训练方法、装置、设备及存储介质。

技术介绍

[0002]目前,基于深度学习的缺陷检测已经应用于金属固件、布匹丝织物、建筑裂纹、钢筋裂纹等多个领域,并取得了不错的成果。为了使得模型收敛且达到较好的泛化效果,基于深度学习的缺陷检测模型训练需要的数据量非常大,使得在多轮训练时数据读取成为非常耗时的部分。并且为使得深度网络表达的特征更丰富,在设计时会使得网络结构越深、越复杂。较大的训练数据量和模型结构对设备计算力和内存要求较高,反之,设备的计算力和内存的限制会导致训练得到的缺陷检测模型的模型精度不高。

技术实现思路

[0003]本专利技术的主要目的在于提供一种缺陷检测模型训练方法、装置、设备及存储介质,旨在解决设备的计算力和内存的限制会导致训练得到的缺陷检测模型的模型精度不高的技术问题。
[0004]为实现上述目的,本专利技术提供一种缺陷检测模型训练方法,所述方法应用于分布式集群中的各计算节点,各所述计算节点部署有相同的待训练缺陷检测模型,所述方法包括以下步骤:从所述分布式集群中的分布式文件系统获取本次本地训练所需的本机训练图片,以及从所述分布式集群中的服务节点获取本次本地训练所需的所述待训练缺陷检测模型的基准模型参数;将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值;将所述本机梯度值发送给所述服务节点,以供所述服务节点在接收到各所述计算节点发送的梯度值后进行平均得到总梯度值,并采用所述总梯度值更新所述基准模型参数,将更新后的基准模型参数分发给各所述计算节点以供各所述计算节点采用更新后的基准模型参数作为下次本地训练所需的基准模型参数;在各次本地训练过程中,当检测到本机的所述待训练缺陷检测模型收敛时,将收敛后的待训练缺陷检测模型作为目标缺陷检测模型,以基于所述目标缺陷检测模型进行图片缺陷检测。
[0005]可选地,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤包括:将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,检测
本机的所述待训练缺陷检测模型是否进入预收敛状态;若确定本机的所述待训练缺陷检测模型已进入所述预收敛状态,则在上一次本地训练时本地迭代训练的轮数基础上加上第一预设轮数,得到目标轮数,其中,第一次本地训练时本地迭代训练的轮数设置为1;采用所述本机训练图片对本机的所述待训练缺陷检测模型进行所述目标轮数的本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值。
[0006]可选地,所述检测本机的所述待训练缺陷检测模型是否进入预收敛状态的步骤包括:检测本机的所述待训练缺陷检测模型在最近第二预设轮数的历史本地迭代训练中的梯度变化值是否均小于预设值,其中,所述梯度变化值是指当轮本地迭代训练时计算得到的梯度值相比于上一轮本地迭代训练时计算得到的梯度值的变化值;若均小于所述预设值,则确定本机的所述待训练缺陷检测模型已进入预收敛状态;若不是均小于所述预设值,则确定本机的所述待训练缺陷检测模型未进入所述预收敛状态。
[0007]可选地,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤之后,还包括:获取当前本机的通信带宽,根据所述通信带宽和所述本机梯度值的数据量大小计算得到本次本地训练梯度回传服务节点的预计通信时长;获取预先记录的本机单次本地训练的训练时长,并计算所述预计通信时长相对于所述训练时长的时长比例;若所述时长比例大于第一预设比例,则丢弃所述本机梯度值;若所述时长比例不大于所述第一预设比例,则执行所述将所述本机梯度值发送给所述服务节点的步骤。
[0008]可选地,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤包括:将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数;将所述本机训练图片输入本机的所述待训练缺陷检测模型的特征提取层进行特征提取得到特征图;将所述特征图输入本机的所述待训练缺陷检测模型的SSD检测器得到所述本机训练图片中缺陷区域的缺陷分类得分和缺陷位置坐标;根据所述缺陷分类得分和所述缺陷位置坐标计算得到所述待训练缺陷检测模型的损失函数相对于本机的所述待训练缺陷检测模型中当前模型参数的当前梯度值,以完成本次本地训练的一轮本地迭代训练;检测本次本地训练已进行的本地迭代训练的轮数是否达到第三预设轮数;若达到,则将所述当前梯度值作为本机梯度值;
若未达到,则根据所述当前梯度值更新本机的所述待训练缺陷检测模型中的模型参数,再返回执行所述将所述本机训练图片输入本机的所述待训练缺陷检测模型的特征提取层进行特征提取得到特征图的步骤。
[0009]可选地,所述从所述分布式集群中的分布式文件系统获取本次本地训练所需的本机训练图片的步骤包括:从所述分布式集群中的分布式文件系统获取本次本地训练所需的本机训练图片,其中,所述分布式文件系统从总训练图片集中选取本次本地训练中各所述计算节点分别对应的单机训练图片集,将各所述单机训练图片集对应分发给各所述计算节点,两两所述计算节点对应的所述单机训练图片集之间存在交集且交并比不小于第二预设比例。
[0010]可选地,所述在各次本地训练过程中,当检测到本机的所述待训练缺陷检测模型收敛时,将收敛后的待训练缺陷检测模型作为目标缺陷检测模型的步骤之后,还包括:获取待检测缺陷的目标图片;将所述目标图片输入所述目标缺陷检测模型进行缺陷检测,得到所述目标图片中的缺陷类别和缺陷位置;对所述目标图片中的所述缺陷位置进行标记后,将所述目标图片和所述缺陷类别进行输出展示。
[0011]为实现上述目的,本专利技术还提供一种缺陷检测模型训练装置,所述装置部署于分布式集群中的各计算节点,各所述计算节点部署有相同的待训练缺陷检测模型,所述装置包括:获取模块,用于从所述分布式集群中的分布式文件系统获取本次本地训练所需的本机训练图片,以及从所述分布式集群中的服务节点获取本次本地训练所需的所述待训练缺陷检测模型的基准模型参数;训练模块,用于将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值;发送模块,用于将所述本机梯度值发送给所述服务节点,以供所述服务节点在接收到各所述计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缺陷检测模型训练方法,其特征在于,所述方法应用于分布式集群中的各计算节点,各所述计算节点部署有相同的待训练缺陷检测模型,所述方法包括以下步骤:从所述分布式集群中的分布式文件系统获取本次本地训练所需的本机训练图片,以及从所述分布式集群中的服务节点获取本次本地训练所需的所述待训练缺陷检测模型的基准模型参数;将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值;将所述本机梯度值发送给所述服务节点,以供所述服务节点在接收到各所述计算节点发送的梯度值后进行平均得到总梯度值,并采用所述总梯度值更新所述基准模型参数,将更新后的基准模型参数分发给各所述计算节点以供各所述计算节点采用更新后的基准模型参数作为下次本地训练所需的基准模型参数;在各次本地训练过程中,当检测到本机的所述待训练缺陷检测模型收敛时,将收敛后的待训练缺陷检测模型作为目标缺陷检测模型,以基于所述目标缺陷检测模型进行图片缺陷检测。2.如权利要求1所述的缺陷检测模型训练方法,其特征在于,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤包括:将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,检测本机的所述待训练缺陷检测模型是否进入预收敛状态;若确定本机的所述待训练缺陷检测模型已进入所述预收敛状态,则在上一次本地训练时本地迭代训练的轮数基础上加上第一预设轮数,得到目标轮数,其中,第一次本地训练时本地迭代训练的轮数设置为1;采用所述本机训练图片对本机的所述待训练缺陷检测模型进行所述目标轮数的本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值。3.如权利要求2所述的缺陷检测模型训练方法,其特征在于,所述检测本机的所述待训练缺陷检测模型是否进入预收敛状态的步骤包括:检测本机的所述待训练缺陷检测模型在最近第二预设轮数的历史本地迭代训练中的梯度变化值是否均小于预设值,其中,所述梯度变化值是指当轮本地迭代训练时计算得到的梯度值相比于上一轮本地迭代训练时计算得到的梯度值的变化值;若均小于所述预设值,则确定本机的所述待训练缺陷检测模型已进入预收敛状态;若不是均小于所述预设值,则确定本机的所述待训练缺陷检测模型未进入所述预收敛状态。4.如权利要求1所述的缺陷检测模型训练方法,其特征在于,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤之后,还包括:获取当前本机的通信带宽,根据所述通信带宽和所述本机梯度值的数据量大小计算得
到本次本地训练梯度回传服务节点的预计通信时长;获取预先记录的本机单次本地训练的训练时长,并计算所述预计通信时长相对于所述训练时长的时长比例;若所述时长比例大于第一预设比例,则丢弃所述本机梯度值;若所述时长比例不大于所述第一预设比例,则执行所述将所述本机梯度值发送给所述服务节点的步骤。5.如权利要求1所述的缺陷检测模型训练方法,其特征在于,所述将本机的所述待训练缺陷检测模型的模型参数配置为所述基准模型参数后,采用所述本机训练图片对本机的所述待训练缺陷检测模型进行至少一轮本地迭代训练,得到本机的所述待训练缺陷检测模型中各模型参数的本机梯度值的步骤...

【专利技术属性】
技术研发人员:钱程浩黄雪峰熊海飞
申请(专利权)人:深圳市信润富联数字科技有限公司
类型:发明
国别省市:

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

1