一种基于可微分神经架构搜索的表面缺陷检测方法技术

技术编号:39660492 阅读:14 留言:0更新日期:2023-12-11 18:22
本发明专利技术公开了一种基于可微分神经架构搜索的表面缺陷检测方法,方法包括:集合若干个神经网络架构基础组件得到搜索空间

【技术实现步骤摘要】
一种基于可微分神经架构搜索的表面缺陷检测方法


[0001]本专利技术涉及机器视觉中表面缺陷检测领域,并特别涉及一种基于可微分神经架构搜索的表面缺陷检测方法


技术介绍

[0002]表面缺陷检测是机器视觉领域中非常重要的一项研究内容,它是利用机器视觉设备获取图像来判断采集图像中是否存在缺陷从而代替人工肉眼检测的技术

近年来,随着以卷积神经网络为代表的深度学习模型在诸多计算机视觉领域成功应用,许多基于深度学习的缺陷检测方法也广泛应用于各种工业场景中

因此,基于深度学习的表面缺陷检测方法有着非常广阔的市场应用前景,并已经成为机器视觉领域的研究热点

[0003]神经网络架构搜索是深度学习的一个分支
,
用于降低人工设计网络架构的试错成本
,
自动化地搜索性能更优的网络架构,搜索空间

搜索策略

性能评估策略是神经网络架构搜索技术最重要的三个方向
,
其中
,
搜索空间定义了网络架构的基本单元或者操作方式
,
而搜索策略则定义了从搜索空间中搜索一个完整的子架构的具体实现方法
,
最后评价策略负责对搜索到的子架构的最终表现进行打分
,
并将得分结果返回给搜索策略
,
指导其进行下一步的搜索过程

神经网络架构搜索技术具有十分广阔的应用价值与研究意义
,
近年来得到了研究人员的广泛关注
,
并取得了一定的研究进展

[0004]围绕着如何提高搜索效率和如何找到更好的结构,神经网络架构搜索可划分为强化学习类

进化算法类和可微分类三种方法

由于需要对每种结构进行重训练
,
前两类方法要求极其巨大的搜索资源
,
因此当下主流的搜索算法是可微分类算法

可微分方法需要用权重共享机制对搜索空间的所有结构进行集成,然后基于梯度优化权重和结构参数
,
最后通过结构参数选择结构

[0005]基于梯度优化是近几年来用于解决
NAS
问题的主流方法,其原理旨在通过把一个离散的搜索目标空间变成一个连续的搜索目标空间,使得目标函数可微,这样就可以通过梯度优化来对网络进行搜索训练
。Google
的学者提出了
DARTS
方法,首次将梯度优化算法用于解决
NAS
问题,通过基于
cell
的搜索空间,搜索可重复的
block
中的
cell
,然后自由的迭代形成完整的网络结构

[0006]在目前基于深度学习的表面缺陷检测领域中,网络结构设计成为了关键问题,面对不同的缺陷检测场景,需要不同的网络结构,这些网络结构都是人工设计的,从模型包含多少层到每一层的详细结构都是一个漫长设计和调参的过程

这种网络很难说是最优的,只能说这些手工设计的网络在当前缺陷检测数据集上大致满足需求

类似于传统手工设计的缺陷检测特征,相比于卷积神经网络自身学到的特征,其缺陷分类效果逊色很多

同时,表面缺陷检测中关于小样本的难题也依赖合理的网络结构设计,通过设计合理的网络结构可以在很大程度上减少样本的需求


技术实现思路

[0007]本专利技术的目的在于克服现有技术的不足,提供一种基于可微分神经网络结构搜索的表面缺陷检测方法,使用可微分神经网络结构搜索技术完成了表面缺陷检测中关键模型的搜索,解决了训练样本短缺的问题,并且有着更强的特征学习能力,可以更好的适用于不同的缺陷检测场景

[0008]本专利技术的目的是通过以下技术方案来实现的:
[0009]一种基于神经网络结构搜索技术的表面缺陷检测方法,包括以下步骤:
[0010]步骤一:通过集合若干个神经网络架构基础组件得到搜索空间
,
将该搜索空间中所有神经网络架构基础组件通过权重共享生成超网络

[0011]步骤二:构建表面缺陷数据集,使用缺陷数据集对步骤一中的超网络进行训练,采取梯度下降的方法,联合优化架构参数和网络内部权重从超网络中生成最优的子网络架构
cell。
[0012]步骤三:将步骤二中搜索出来的最优子网络架构
cell
堆叠成网络,使用缺陷数据集对其进行训练和评估测试

如果模型的性能不如预期,则需要对搜索空间和搜索算法进行调整,并再次进行搜索

最后,使用该模型完成具体场景的表面缺陷检测任务

[0012]具体的,所述步骤一具体包括以下子步骤:
[0013]步骤
11
:待搜索的神经网络架构基础组件包括神经网络节点间的拓扑结构和神经网络节点之间的操作集合

[0014]步骤
12
:将搜索空间中所有神经网络架构基础组件通过权值共享生成超网络:在传统的方法中,为了在候选操作集中寻找最好的操作,都是使用强化学习或者演化算法等启发式算法取某个操作,也就是说这种选择是非此即彼的离散操作

这样就导致庞大的计算量

离散的操作不好求导,因此引入连续松弛概念以达到权值共享的效果使得搜索空间可微,从而可以使用梯度下降的方法进行搜索

[0015]具体的,所述步骤
11
包括以下步骤:
[0016]步骤
111
:神经网络节点间的拓扑结构:最终的网络结构由搜索出的两类不同的
cell(Normal cell

Reduction cell)
按照一定的顺序堆叠而成

每个
cell
都是包含了7个节点的有向无环图,每个节点表示卷积网络中的特征图
x
(i)
,
每条边
e
(i,j)
代表将特征图
x
(i)
变换到特征图
x
(j)
的操作
O
(i,j)
,
如下所示:
x
(j)


i

j
O
(i,j)
(x
(i)
)
七个节点中有两个输入节点
(
来自之前的
cell
的输出
)
,一个输出节点,和四个中间节点,输出节点由四个中间节点进行通道连接而成,如附图
(3)
所示

[0017]步骤
112
:神经网络节点间的操作指在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于可微分神经架构搜索的表面缺陷检测方法,其特征在于,包括以下步骤:步骤一:通过集合若干个神经网络架构基础组件得到搜索空间
,
将该搜索空间中所有神经网络架构基础组件通过权重共享生成超网络;步骤二:构建表面缺陷数据集,使用缺陷数据集对步骤一中的超网络进行训练,采取梯度下降的方法,联合优化架构参数和网络内部权重从超网络中生成最优的子网络架构
cell
;步骤三:将步骤二中搜索出来的最优子网络架构
cell
堆叠成网络,使用缺陷数据集对其进行训练和评估测试

如果模型的性能不如预期,则需要对搜索空间和搜索算法进行调整,并再次进行搜索

最后,使用该模型完成具体场景的表面缺陷检测任务
。2.
根据权利要求1所述的一种基于可微分神经架构搜索的表面缺陷检测方法,其特征在于,所述步骤一具体包括以下子步骤:步骤
11
:待搜索的神经网络架构基础组件包括神经网络节点间的拓扑结构和神经网络节点之间的操作集合

步骤
12
:将搜索空间中所有神经网络架构基础组件通过权值共享生成超网络;在传统的方法中,为了在候选操作集
O
中寻找最好的操作,都是使用强化学习或者演化算法等启发式算法取某个操作,也就是说这种选择是非此即彼的离散操作,这样就导致庞大的计算量,离散的操作不好求导,因此引入连续松弛概念以达到权值共享的效果使得搜索空间可微,从而可以使用梯度下降的方法进行搜索
。3.
根据权利要求2所述的一种基于可微分神经架构搜索的表面缺陷检测方法,其特征在于,所述步骤
11
具体包括以下子步骤:步骤
111
:神经网络节点间的拓扑结构:最终的网络结构由搜索出的两类不同的
cell(Normal cell

Reductioncell)
按照一定的顺序堆叠而成

每个
cell
都是包含了7个节点的有向无环图,每个节点表示卷积网络中的特征图
x
(i)
,
每条边
e
(i,j)
代表将特征图
x
(i)
变换到特征图
x
(j)
的操作
O
(i,j)
,
如下所示:
x
(j)


i<j
O
(i,j)
(x
(i)
)
七个节点中有两个输入节点
(
来自之前的
cell
的输出
)
,一个输出节点,和四个中间节点,输出节点由四个中间节点进行通道连接而成;步骤
112
:神经网络节点间的操作指在神经网络中连接不同层之间的计算操作,其目的是将输入数据从一个层传递到下一个层,进而完成对输入数据的特征提取和预测任务;常见的神经网络操作包括卷积

池化

全连接

激活函数等
。4.
根据权利要求2所述的一种基于可微分神经架构搜索的表面缺陷检测方法,其特征在于,所述步骤
12
具体包括以下子步骤:步骤
121
:具体地,实际上在搜索过程中,候选操作集的每个操作都会处理每个节点的特征图,之后,再对所有操作得到的结果加权求和,即其中的含义为:第
i
个特征图到第
j
个特征图之间的操作
O
(i,j)
的权重,即之后需要搜索的架构参数,例如,若某个操作的权重那么就可以认为对于整个网络结构完全不
需要这个操作;步骤
122
:为了保证所有节点的输出大致稳定,对每两个节点之间的架构参数
(
即操作的权重
)
进行
Softmax
操作,即由此可见,如果每个操作的权重确定,那么最终的网络架构也随之确定
(
选择最大权重的操作
)
,因此可以称
α
为网络结构本身
。5.
根据权利要求1所述的一种基于可微分神经架构搜索的表面缺陷检测方法,其特征在于,所述步骤二具体包括以下子步骤:步骤
21
:构建表面缺陷数据集;步骤
22
:使用缺陷...

【专利技术属性】
技术研发人员:陈少淼雷志文彭诚权赵心怡王洋
申请(专利权)人:湖南科技大学
类型:发明
国别省市:

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

1