一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于神经网络的目标多分类检测方法、装置与流程

2022-03-01 22:49:16 来源:中国专利 TAG:


1.本发明涉及人工智能领域,特别地,涉及一种基于神经网络的目标多分类检测方法。


背景技术:

2.在机器学习和深度学习中,基于神经网络的目标多分类检测有着广泛的应用。在处理多分类问题中,神经网络最后的输出单元需要利用归一化指数函数(softmax函数)进行数值处理。
3.关于softmax函数的定义如下所示:
[0004][0005]
其中,vi是神经网络前级输出单元的输出,该输出表征了各个类别的特征,可以理解为类别特征值,i表示类别索引,总的类别个数为c。表示的softmax函数值,其是当前类别的指数与所有类别指数和的比值。softmax函数将多分类的输出数值转化为相对概率,以便更容易理解和比较。
[0006]
例如,一个多分类问题,c=4。神经网络模型最后输出层包含了四个输出值,分别是:
[0007][0008]
经过softmax处理后,数值转化为相对概率:
[0009][0010]
很明显,softmax的输出表征了不同类别之间的相对概率。可以清晰地看出,s3=0.8390,对应的概率最大,则更清晰地可以判断预测为第2类的可能性更大。softmax函数将连续数值转化成相对概率,更有利于理解。
[0011]
在计算机程序进行softmax函数运算的操作过程中,用于计算softmax函数值的softmax算子由于其包含指数操作,导致了复杂的计算量,在工程实现中,往往用查表的方式来计算指数操作,即便如此,计算量也不容小觑。特别是在检测网络和分割网络中,由于要对特征映射(feature map)上的特征点进行softmax操作,当feature map的尺寸很大时,softmax的计算时间是令人头疼的一个部分。
[0012]
比如在单镜头多目标(ssd)检测网络中,需要对预选框进行筛选,筛选的方法是对每个预选框的类别进行softmax计算(包含背景类),根据该预选框的某个目标类的概率进
行筛选。按照此种方法,则每一个预选框都需要进行softmax计算,而标准ssd网络中,预选框的个数上千个(标准网络有1917个),这样会带来比较大的计算量。
[0013]
softmax算子的较大计算量导致基于神经网络的目标多分类检测方法输出检测结果缓慢。


技术实现要素:

[0014]
本发明提供了一种基于神经网络的目标多分类检测方法,以提高目标多分类检测速度。
[0015]
本发明他提供的一种基于神经网络的目标多分类检测方法,所述神经网络对输入数据进行目标多分类检测,该方法包括,对于神经网络中待进行归一化函数操作的两个以上类别特征值,
[0016]
从所述类别特征值中,选取除期望类别之外的其余类别的最大类别特征值,其中,期望类别为期望不进行归一化函数操作的类别特征值的类别,
[0017]
计算最大类别特征值与具有期望类别的类别特征值之间的差值,
[0018]
比较所述差值与所述期望类别的门限值,当所述差值小于等于所述门限值时,放弃对所述具有期望类别的类别特征值进行归一化函数操作,
[0019]
否则,对所述具有期望类别的类别特征值进行归一化函数操作,将得到的操作结果作为当前检测结果;
[0020]
其中,所述门限值根据期望类别的置信度阈值确定。
[0021]
较佳地,所述根据期望类别的置信度阈值确定,包括,
[0022]
计算置信度阈值的自然对数,得到第一结果,
[0023]
计算第一数值与置信度阈值之差,与,类别总数与第一数值之差的乘积,计算该乘积的自然对数,得到第二结果,,
[0024]
计算第一结果与第二结果之差,得到门限值。
[0025]
较佳地,所述根据期望类别的置信度阈值确定,包括,
[0026]
计算置信度阈值的自然对数,得到门限值。
[0027]
较佳地,所述期望类别的数量为一个以上,每个期望类别的置信度阈值相同。
[0028]
较佳地,所述类别特征值为全连接层输出的回归结果,和/或卷积层输出的卷积结果。
[0029]
较佳地,所述输入数据为图像数据、文本数据、声音数据之一,所述期望类别为数据中的背景类。
[0030]
本发明还提供一种基于神经网络的目标多分类检测装置,其中,神经网络包括归一化函数计算模块,该装置还包括,
[0031]
选取模块,用于从神经网络中待进行归一化函数操作的两个以上类别特征值中,选取除期望类别之外的其余类别的最大类别特征值,其中,期望类别为期望不进行归一化函数计算的类别特征值的类别,
[0032]
计算模块,用于计算最大类别特征值与具有期望类别的类别特征值之间的差值,
[0033]
门限值确定模块,用于根据期望类别的置信度阈值确定期望类别的门限值,
[0034]
比较模块,用于比较所述差值与所述期望类别的门限值,当所述差值小于等于所
述门限值时,放弃对所述具有期望类别的类别特征值进行归一化函数操作,否则,将所述具有期望类别的类别特征值输入至归一化函数计算模块。
[0035]
较佳地,所述门限值确定模块包括,
[0036]
第一计算子模块,用于计算置信度阈值的自然对数,得到第一结果,
[0037]
第二计算子模块,用于计算第一数值与置信度阈值之差,与,类别总数与第一数值之差的乘积,计算该乘积的自然对数,得到第二结果,,
[0038]
第三计算子模块,用于计算第一结果与第二结果之差,得到门限值。
[0039]
较佳地,所述门限值确定模块包括,
[0040]
第一计算子模块,用于计算置信度阈值的自然对数,得到门限值。
[0041]
较佳地,所述期望类别的数量为一个以上,每个期望类别的置信度阈值相同;
[0042]
所述输入数据为图像数据、文本数据、声音数据之一,所述期望类别为数据中的背景类;
[0043]
所述类别特征值为全连接层输出的回归结果,和/或卷积层输出的卷积结果。
[0044]
本发明又提供一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现任一所述基于神经网络的目标多分类检测方法的步骤。
[0045]
本发明提供的基于神经网络的目标多分类检测方法,基于归一化函数的定义,通过不等式变化,探究到用于去除不需要进行归一化函数操作的类别特征值的门限值,利用该门限值可以对期望类别的类别特征值选择性地进行归一化函数的操作,有利于减少神经网络的计算量,加快检测的速度,减少检测过程中对算力的占用和要求,有利于推广和加速目标多分类的检测应用,提升目标多分类检测的检测性能。
附图说明
[0046]
图1为一种基于神经网络的目标多分类检测方法的一种流程示意图。
[0047]
图2为一种特征数据的示意图。
[0048]
图3为对特征数据中的特征点进行多分类检测时利用softmax算子对各特征点其类别特征值进行softmax操作的一种流程示意图。
[0049]
图4为特征矩阵中每个具有类别的特征点按照本技术所述检测方法区分进行softmax值计算和不进行softmax值计算的一种示意图。
[0050]
图5为基于神经网络模型对管道缺陷进行多分类检测的一种示意图。
[0051]
图6为本技术基于神经网络的目标多分类检测装置的一种示意图。
具体实施方式
[0052]
为了使本技术的目的、技术手段和优点更加清楚明白,以下结合附图对本技术做进一步详细说明。
[0053]
本技术提供的一种基于神经网络的目标多分类检测方法,对神经网络输出的待进行归一化函数操作的类别特征值,利用由置信度阈值所确定的门限值,挑选出其中不需要softmax计算的类别特征值,保留需要softmax计算的类别特征值,以减少参与softmax计算的数量,从而有利于提高神经网络的检测速度。
[0054]
参见图1所示,图1为一种基于神经网络的目标多分类检测方法的一种流程示意
图。该方法包括,
[0055]
步骤101,从神经网络输出的两个以上类别特征值中,选取除期望类别之外的其余类别的最大类别特征值,其中,期望类别为期望不进行归一化函数计算的类别特征值的类别,
[0056]
步骤102,计算最大类别特征值与具有期望类别的类别特征值之间的差值,
[0057]
步骤103,比较所述差值与所述期望类别的门限值,
[0058]
当所述差值小于等于所述门限值时,放弃对所述具有期望类别的类别特征值进行归一化函数操作,
[0059]
否则,对所述具有期望类别的类别特征值进行归一化函数操作,将得到的计算结果作为当前检测结果;
[0060]
其中,所述门限值根据期望类别的置信度阈值确定。
[0061]
以下对门限值的由来进行说明。
[0062]
假设目标类别一共n类,以全连接层(通常为神经网络模型中的最后一个全连接层)输出的回归结果(logit)为例,回归结果为x0,x1,

,x
n-1
,在softmax计算中,其中,背景类的索引(index)为0,即,类别0,置信度阈值为t,其中,0≤t《1,则目标为背景类的概率s0为:
[0063][0064]
若此概率超过了差值:1-t,则代表其他类(正样本)的概率不可能大于t,则该类目标也就无需进行softmax函数值计算。
[0065]
进一步地,如果将上述概率公式中的xi替换成最大值x
max
,即x
max
=max(x1,x2...,x
n-1
),若x0求出的概率仍然超过了差值1-t,则该背景类也就更无需参与后面的计算了,即:
[0066][0067]
其中,
[0068][0069]
对式(1)两边同时求倒数,则有:
[0070][0071]
恒等变形为:
[0072][0073]
对式(2)求自然对数,有:
[0074]
x
max-x0≤ln t-ln((1-t)(n-1))
[0075]
由于对于一基于神经网络的目标多分类检测来说,检测到的类别总类n为定值,故而上述不等式右边为常数。
[0076]
基于上述的推导过程,推而广之,可以得到,对于神经网络模型中全连接层的任意
一输出xi,如果满足:
[0077]
x
max-xi≤ln t-ln((1-t)(n-1))
ꢀꢀ
(3)
[0078]
则该输出xi必定是类别i;
[0079]
当该输出xi不满足上述不等式时,并不能说明该输出一定不是类别i,只是必须通过softmax的计算来明确其类别。
[0080]
这样,不限于背景类,对于其他类别,都可以在进行softmax操作之前先把不进行softmax操作的期望类别挑选出来,从而保留下来真正需要计算softmax值的类别特征值,然后只对保留下来的类别特征值进行softmax计算。
[0081]
由于上述不等式计算只需求出类别特征值中的最大值x
max
,另外加上简单的减法操作,和常数的比较大小操作,所以其计算量远远小于softmax计算。
[0082]
鉴于式3中,ln((1-ti)(n-1))为正数,则式3作为一种变形,也可以是:
[0083]
x
max-xi≤ln t
ꢀꢀ
(4)
[0084]
所应理解的是,上述式3和式4中,类别特征值不限于神经网络中的全连接层输出的回归结果,也可以是神经网络中卷积层输出的卷积结果,例如,在ssd检测网络中,类别特征值为卷积层输出的卷积结果。
[0085]
为便于理解本技术,以下以对特征点进行类别检测的softmax操作为例来进行说明,所应理解的是,本技术不限于此,其他需要进行softmax操作的情形也可适用。
[0086]
参见图2所示,图2为一种特征数据的示意图。b为批尺寸(batch size),h为特征矩阵的高度,w为特征矩阵的宽度,特征矩阵中的一特征数据为特征点,这样,该特征数据共有b
×w×
h个特征点。该特征数据例如可以是图像特征数据。
[0087]
为便于理解本技术,以下以特征点的多分类检测为例来说明。
[0088]
参见图3所示,图3为对特征数据中的特征点进行多分类检测时利用softmax算子对各特征点的类别特征值进行softmax操作的一种流程示意图。
[0089]
假设基于神经网络的目标多分类检测的类别总类为n个,期望对其中任一类别i(即,期望类别i)的类别特征值判定是否可以不进行softmax值计算;
[0090]
该方法包括,
[0091]
步骤301,从所有特征点的类别特征值中,选取除期望类别i之外的其余期望类别中的最大类别特征值,
[0092]
步骤302,根据类别总类、期望类别i对应的置信度阈值,计算期望类别i的门限值,
[0093]
方式之一,按照式3来计算期望类别i的门限值,即:
[0094]
计算置信度阈值的自然对数,得到第一结果,
[0095]
计算第一数值与置信度阈值之差,与,类别总数与第一数值之差的乘积,计算该乘积的自然对数,得到第二结果,其中,第一数值取值为1,
[0096]
计算第一结果与第二结果之差,得到门限值。
[0097]
方式之二,也可以按照式4来计算期望类别的门限值,即,计算置信度阈值的自然对数,得到门限值,这样,只需根据期望类别i对应的置信度阈值来计算。
[0098]
由于方式一所得到的门限值小于方式二所得到的门限值,故而,方式一所保留类别特征值的数量多于方式二所保留类别特征值的数量,这样,方式一的检测速度会慢于方式二的检测速度,但方式一的检测准确性优于方式二的检测准确性。
[0099]
步骤303,计算最大类别特征值与具有期望类别i的特征点的类别特征值的差值,
[0100]
步骤304,比较步骤303所述的差值和门限值,
[0101]
如果差值小于等于门限值,则判定该特征点必定为期望类别,标记该特征点为不进行softmax值计算的特征点,返回步骤303,以判定下一个具有期望类别i的特征点的类别特征值,直至所有具有期望类别i的特征点都进行了判定,
[0102]
否则,标记为进行softmax值计算的特征点,返回步骤303,以判定下一个具有期望类别i的特征点的类别特征值,直至所有具有期望类别i的特征点都进行了判定。
[0103]
步骤305,对标记为进行softmax值计算的特征点进行softmax操作,得到计算结果作为当前检测结果。
[0104]
所应理解的是,期望类别的数量可以多个,每个期望类别的置信度阈值可以相同,也可以不同;当每个期望类别的置信度阈值不相同时,式3或式4中的置信度阈值t取值为多个期望类别的置信度阈值中的最小值,用数学式表达为:
[0105]
t=min(ti),其中,i>1
[0106]
所应理解的是,不仅限于基于神经网络的多分类目标检测本身,在对基于神经网络的多分类目标检测模型的样本训练过程,对于待进行softmax操作的类别特征点也可利用由置信度阈值所确定的门限值,挑选出其中不需要softmax计算的类别特征值输出值,保留需要softmax计算的类别特征值输出值,以减少参与softmax计算的数据数量,从而有利于提高神经网络的训练速度。
[0107]
为便于理解,参见图4所示,图4为特征矩阵中每个具有类别的特征点按照本技术所述检测方法区分进行softmax值计算和不进行softmax值计算的一种示意图。其中,左图为全连接层输出的未进行区分的特征点,图中,网格表示特征点,网格中的填充图案表示特征点的类别,共有三种类别,利用本技术的技术方案,对两类特征点(填充有斜线的网格、填充色为白色的网格)进行筛选,右图中,标记有五星的网格表示该特征点不用参与softmax值计算。
[0108]
在实际工程中,在置信度阈值较大时,以及实际正样本物体较少时,本技术的多分类检测的检测速度得到明显的提升,这是因为这时大量的特征点都为背景类,即正样本概率小于置信度阈值。
[0109]
为便于理解本技术,以下以管道缺陷为目标的检测为例来进行说明。
[0110]
近些年来,随着市政基础设施的发展,地下管道承担的压力进一步加剧。地下管道建设作为城市建设过程中一项非常重要的基础任务,影响着城市正常运行的稳定性,及时检修管网系统,是保证城市基础设置建设稳定性的重要保障。
[0111]
根据行业标准,地下管道缺陷类别共有17种,包括暗接、变形、错接、残墙、穿入、腐蚀、浮渣、结垢、起伏、树根、脱节、脱落、障碍物、错口、沉积、渗漏以及破裂。
[0112]
目前,针对地下管道缺陷检测采用最多的是先通过机器人下井拍摄视频数据,再将获取的海量信息通过人力筛选并定位缺陷,最后生成相关报告。利用基于神经网络模型的目标多分类检测,能够大大减少人力。
[0113]
参见图5所示,图5为基于神经网络模型对管道缺陷进行多分类检测的一种示意图。假设对b帧图像数据进行检测,该图像数据通过骨干网络对所采集的图像数据进行特征提取,得到特征数据,特征数据输入至训练后的神经网络模型,该神经网络模型包括,一个
全局平均池化(global average pooling)以及三个全连接层组成,图中,b为图像特征的数量,h为特征矩阵的高度,w为特征矩阵的宽度。
[0114]
为了提高检测速度,全连接层输出的回归结果进行softmax值计算时:
[0115]
从全连接层输出的回归结果中,即类别特征值中,选取除期望类别之外的其余类别的最大类别特征值,其中,期望类别为期望不进行归一化函数计算的类别特征值的类别,
[0116]
计算最大类别特征值与具有期望类别的类别特征值之间的差值,
[0117]
比较所述差值与所述期望类别的门限值,当所述差值小于等于所述门限值时,放弃对所述具有期望类别的类别特征值进行归一化函数计算,
[0118]
否则,对所述具有期望类别的类别特征值进行归一化函数计算,得到当前全连接层的检测结果,其中,所述门限值根据期望类别的置信度阈值确定。
[0119]
在最后一个全连接层中,得到每帧图像数据检测结果为17类的概率。
[0120]
根据最大概率值所对应的类别,可确定该帧图像中管道缺陷的类别。
[0121]
采用本技术对管道缺陷进行多分类检测的方法,在进行softmax值计算时,能够滤除掉图像数据中大量背景类特征点,大大提升了检测的速度,降低了检测过程中算力要求,有利于根据每种缺陷类别进行管道维护和维修,加速了管道维护速度。
[0122]
所应理解的是,本技术不限于管道缺陷检测,其它目标的检测也可以适用,包括文本数据的目标多分类检测、声音数据的目标多分类检测等等。例如,
[0123]
当基于神经网络的目标多分类检测模型的输入数据为文本数据时,该模型可用于对文本数据进行目标多分类检测,比如,对于文本数据为内容信息的数据,可检测出包含有时间、地点、人物、事件等多种分类结果,
[0124]
当基于神经网络的目标多分类检测模型的输入数据为声音数据时,该模型可用于对声音数据进行目标多分类检测,比如,对于声音数据为不同频段、不同幅值的电信号,可检测出机器声、人声、背景噪声、动物发出声音等多种分类结果。
[0125]
参见图6所示,图6为本技术基于神经网络的目标多分类检测装置的一种示意图,该装置包括,神经网络,所述神经网络中包括有归一化函数计算模块,
[0126]
选取模块,用于从神经网络待进行归一化函数计算的至少一个全连接层和/或卷积层其输出的类别特征值中,选取除期望类别之外的其余类别的最大类别特征值,其中,期望类别为期望不进行归一化函数计算的类别特征值的类别,
[0127]
计算模块,用于计算最大类别特征值与具有期望类别的类别特征值之间的差值,
[0128]
门限值确定模块,用于根据期望类别的置信度阈值确定期望类别的门限值,
[0129]
比较模块,用于比较所述差值与所述期望类别的门限值,当所述差值小于等于所述门限值时,放弃对所述具有期望类别的类别特征值进行归一化函数计算,否则,将所述具有期望类别的类别特征值输出到归一化函数计算模块。
[0130]
所述门限值确定模块包括,
[0131]
第一计算子模块,用于计算置信度阈值的自然对数,得到第一结果,
[0132]
第二计算子模块,用于计算第一数值与置信度阈值之差,与,类别总数与第一数值之差的乘积,计算该乘积的自然对数,得到第二结果,其中,第一数值取值为1,
[0133]
第三计算子模块,用于计算第一结果与第二结果之差,得到门限值。
[0134]
或者,
[0135]
所述门限值确定模块包括,
[0136]
第一计算子模块,用于计算置信度阈值的自然对数,得到门限值。
[0137]
对于装置/网络侧设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0138]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0139]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献