多分支卷积结构、神经网络模型及其确定方法、确定装置与流程

未命名 08-13 阅读:120 评论:0


1.本公开涉及但不限于机器学习领域,更具体地,涉及一种多分支卷积结构、神经网络模型及其确定方法、确定装置。


背景技术:

2.深度学习可以自动学习出有用的特征,脱离了对特征工程的依赖,在图像、语音等任务上取得了超越其他算法的结果。这种成功很大程度上得益于新的神经网络,例如卷积神经网络(convolutional neural networks,简称cnn)模型的出现,如残差(resnet)网络模型、inception网络模型、densenet网络模型等等。卷积层是卷积神经网络模型中最常用的算子。但目前模型的性能仍有提升的空间。


技术实现要素:

3.以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
4.本公开一实施例提供了一种神经网络模型确定方法,包括:
5.获取训练阶段使用的第一神经网络模型,所述第一神经网络模型中包括多分支的卷积结构,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同;
6.对所述第一神经网络模型进行训练的过程中,对所述第一卷积单元的参数进行更新,所述第二卷积单元的参数保持不变;
7.训练完成后,基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,得到推断阶段使用的第二神经网络模型。
8.本公开一实施例还提供了一种神经网络模型确定装置,包括处理器以及存储有计算机程序的存储器,其中,所述处理器执行所述计算机程序时,能够实现如本公开任一实施例所述的神经网络模型确定方法。
9.本公开上述实施例的神经网络模型确定方法和装置可以保持分支的表达能力,进而提高神经网络模型的性能。
10.本公开一实施例还提供了一种多分支的卷积结构,所述卷积结构包括多个分支,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同。
11.本公开一实施例还提供了一种用于训练的神经网络模型,包括多个卷积结构,所述多个卷积结构中的部分或全部采用如本公开任一实施例所述的多分支的卷积结构。
12.本公开上述实施例的神经网络模型可用于训练,提升分支之间学习到的特征多样性,同时保持分支表达能力。
13.本公开一实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序可存储在非瞬态计算机可读存储介质上,所述计算机程序被处理器执行时,能够实现如
本公开任一实施例所述的神经网络模型确定方法。
14.本公开一实施例还提供了一种非瞬态计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序时被处理器执行时,能够实现如本公开任一实施例所述的神经网络模型确定方法。
15.在阅读并理解了附图和详细描述后,可以明白其他方面。
附图说明
16.附图用来提供对本公开实施例的理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。
17.图1是一种多分支的卷积结构的示意图;
18.图2是本公开一实施例神经网络模型确定方法的流程图;
19.图3是本公开一实施例多分支的卷积结构的示意图;
20.图4a是本公开一实施例包括多分支的卷积结构和relu算子的网络结构的示意图;
21.图4b是将图4a中多分支的卷积结构合并成单个卷积单元后的网络结构的示意图;
22.图5a是本公开一实施例resnet网络模型的局部网络结构的示意图,其中包括本公开实施例的多分支的卷积结构;
23.图5b是将图5a中的多分支的卷积结构合并成单个卷积单元后得到的局部网络结构的示意图;
24.图6是本公开一实施例神经网络结构确定装置的示意图。
具体实施方式
25.本公开描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本公开所描述的实施例包含的范围内可以有更多的实施例和实现方案。
26.本公开的描述中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本公开中被描述为“示例性的”或者“例如”的任何实施例不应被解释为比其他实施例更优选或更具优势。本文中的“和/或”是对关联对象的关联关系的一种描述,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。“多个”是指两个或多于两个。另外,为了便于清楚描述本公开实施例的技术方案,使用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
27.在描述具有代表性的示例性实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本公开实施例的精神和范围内。
28.为了在不损失多分支卷积中分支的多样性并且保持其分支的表达能力,本公开一实施例提供了一种神经网络模型确定方法,如图2所示,包括以下步骤:
29.步骤110,获取训练阶段使用的第一神经网络模型;
30.所述第一神经网络模型中包括多分支的卷积结构,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同。
31.训练阶段使用的第一神经网络模型可以是人工创建的,也可以是通过神经网络结构搜索方法搜索得到,或者一部分结构是人工创建的,另一部分结构是通过神经网络结构搜索方法搜索得到。
32.步骤120,对所述第一神经网络模型进行训练的过程中,对所述第一卷积单元的参数进行更新,所述第二卷积单元的参数保持不变;
33.步骤130,训练后,基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,得到测试阶段使用的第二神经网络模型。
34.本实施例的多分支卷积在训练阶段拓展单个卷积为多分支卷积,在测试阶段合并多分支卷积,通过合并大量的微结构到不同的卷积结构,同时维持原始的宏观结构,在不改变原有模型结构的情况下提高模型的性能。
35.图1所示是另一种多分支的卷积结构,该卷积结构包括四个分支,其中第一个分支包括依次连接1
×
1conv算子和bn算子;第二个分支包括依次连接的1
×
1conv算子、bn算子、k
×
k conv算子和bn算子;第三个分支包括依次连接的1
×
1conv算子、bn算子、avg算子和bn算子;第四个分支包括k
×
k conv算子和bn算子。其中,k≥2,“conv”表示卷积,bn表示批量归一化(batch normalization),“avg”表示平均池化。在该多分支的卷积上,还可以使用其他的算子,例如,1
×
k conv算子、k
×
1conv算子,等等。每个分支的输入均相同,是该卷积结构的输入(input),所有分支的输出相加后,得到该卷积结构的输出(output)。这种多分支的卷积结构为了增加各分支之间学到的特征多样性,在不同的分支中使用了不同类型的算子,如avg算子等,但是,经研究发现,使用不同类型的算子也降低了神经网络模型的表达能力,在一些场合下会造成神经网络模型性能的衰减。
36.本公开上述实施例的神经网络模型确定方法,对训练模型中的卷积结构作了修改,在分支中的第一卷积单元前增加了用于增加分支多样性的第二卷积单元,这些第二卷积单元的参数至少部分不同。训练时只更新第一卷积单元中的参数如权重参数和/或偏置参数,训练后基于第一卷积单元合并多个分支得到后续阶段(例如测试阶段和部署阶段)使用的模型。具有不同参数的第二卷积单元的加入可以提升分支之间学习到的特征的多样性,同时该多分支的卷积结构并没有增加其他类型的算子,因而可以保持分支的表达能力,进而提高神经网络模型的性能。
37.在本公开一示例性的实施例中,分支中的第二卷积单元设置在上游,其输出作为第一卷积单元的输入。请参见图3所示的多分支的卷积结构,图中每一分支中的第一组k
×
k conv算子和bn算子构成第二卷积单元,(图中表示为k
×
k conv-bn),每一个分支中的第二组k
×
k conv算子和bn算子构成了第一卷积单元。也就是说,本实施例中,多个分支中的第二卷积单元的输入为卷积结构的输入,多个分支中的第一卷积单元的输出相加后,得到卷积结构的输出。
38.在本公开一示例性的实施例中,请参见图3所示的多分支的卷积结构,第一卷积单元、第二卷积单元均包括一个k
×
k conv算子和一个bn算子。但在其他实施例中,也可以是其中的一个卷积单元包括一个k
×
k conv算子和一个bn算子,而另一个包括一个k
×
k卷积算子等;其中,k≥2,例如k=3或4或5,k
×
k表示卷积算子的卷积核大小。
39.本实施例的在一个示例中,第二卷积单元中的k
×
k卷积算子的权重参数和/或偏置参数是随机生成的。在本实施例的另一示例中,第二卷积单元中的k
×
k卷积算子的权重参数和/或偏置参数也可以采用不同的参数初始化方法生成。
40.神经网络中的参数是基于梯度下降法进行优化的,通过一步步迭代,求得最小的损失函数和最优的模型权重。网络训练之前会给权重参数和/或偏置参数赋一个初始值。对于深度学习而言,合适的参数初始值会影响模型的收敛。本实施例不同的参数初始化方法可以从以下初始化方法中任意选择:
41.预训练(pre-training)初始化,即先在大规模数据集上预训练得到一个较好的参数;然后将该参数作为模型在新任务上的初始化参数(fine-tuning)。预训练初始化能够提升模型的泛化能力,加速训练。
42.全零初始化,即将权重初始化为0。
43.随机初始化,随机初始化如果初始化值太大会出现饱和,进而在一些激活函数上导致梯度弥散;如果初始值太小也会导致梯度弥散;为了得到合适的初始化值,可以选择合适的激活函数和在bn约束下进行训练。
44.xavier初始化,又分为xavier均匀分布初始化,xavier高斯分布初始化。
45.he初始化,he初始化在xavier初始化的基础上,假设每层网络有一半的神经元被关闭,于是其分布的方差也会变小。经过验证发现当对初始化值缩小一半时效果最好,故he初始化可以认为是xavier初始/2的结果。考虑了relu对输出数据分布的影响,使得输入和输出数据方差一致。
46.由于卷积操作具有齐次性和加法性,多分支的卷积结构可以合并。以图1所示的多分支卷积结构为例,该多分支卷积结构中的1
×
1conv算子和bn算子可以无损地转换为一个conv算子、k
×
k conv算子和bn算子也可以无损地转换为一个conv算子,而avg算子也可以无损地转换为一个conv算子。此外,两个并联的k
×
k conv算子也可以转换为一个k
×
k conv算子。通过这些转换,可以使得图1所示的多分支的卷积结构合并成单个的conv算子,而且这种合并是无损的。
47.在本公开一示例性的实施例中,第一卷积单元包括一个k
×
k卷积算子和一个bn算子,一个卷积结构的多个分支可以用以下方式合并:将该多个分支中的第二卷积单元均去除;将该多个分支中的第一卷积单元的k
×
kconv算子和bn算子分别合并,得到多个并联的中间卷积算子;及,将多个并联的中间卷积算子合并成单个卷积算子,即得到本实施例的单个卷积单元。本实施例中,中间卷积算子仍然是一个k
×
k conv算子,可以多次应用将两个并联的k
×
k conv算子转换为一个k
×
k conv算子的方法,将2个以上的中间卷积算子合并成一个k
×
k conv算子。这些合并均是无损的。本实施例合并后得到的单个卷积单元包括一个k
×
k conv算子,参见图4b。
48.在本公开另一示例性的实施例中,第一卷积单元包括一个k
×
k卷积算子和一个bn算子,对一个卷积结构的多个分支可以用另一种方式合并:将该卷积结构的多个分支中的
第二卷积单元均去除;将该卷积结构的m-1个分支中的第一卷积单元的k
×
k conv算子和bn算子分别合并,得到m-1个并联的中间卷积算子;将m-1个并联的中间卷积算子和未合并的一个分支中的k
×
k conv算子合并成单个卷积算子,该单个卷积算子和未合并的一个分支中的bn算子构成本实施例的单个卷积单元。本实施例中的卷积结构合并成的单个卷积单元包括一k
×
k conv算子和一bn算子,参见图5b。上述m是卷积结构分支的数量,例如m=2,3或4。
49.本实施例在合并时先指定一个主分支,不对主分支的k
×
k conv算子和bn算子进行合并,而对其他分支的k
×
k conv算子和bn算子合并,其他分支合并得到的多个中间conv算子再和该主分支的k
×
k conv算子合并而保留该主分支的bn算子,从而得到包括k
×
k conv算子和bn算子的合并后的结构。当然,该方法得到的k
×
k conv算子和bn算子的合并后的结构也可以进一步合并为一个k
×
k conv算子。
50.在本公开一示例性的实施例中,第一神经网络模型和第二神经网络模型为卷积神经网络模型,例如,resnet网络模型、inception网络模型或densenet网络模型。但本公开不局限于此,对其他类型的神经网络模型中,只要包括卷积层,均可以采用本公开实施例的方式构建多分支的网络结构,并进行训练和合并。应当说明的是,在一个神经网络模型中包括多个卷积结构时,并不要求所有的卷积结构都要采用本公开实施例的多分支的卷积结构(参见图3),可以一部分采用本公开实施例的多分支的卷积结构,其他卷积结构可以是图1所示的多分支的卷积结构,或者其他类型的多分支的卷积结构,也可以就是单分支的卷积结构,如依次连接k
×
k conv算子和bn算子。
51.在本公开一示例性的实施例中,网络模型均包括的多个卷积结构的分支数量n可以相同或者不同,一般来说,2≤n≤4,以平衡模型的复杂性、训练时间以及模型的性能提升。但本公开不局限于此,例如n也可以等于5,等于6或者其他更大的值。
52.对神经网络模型的训练,在神经网络模型要执行的任务不同时,训练的方式也各不相同。例如在有监督的机器学习中,可以将采集的样本训练集输入神经网络模型,将神经网络模型的输出与目标数据相比较,通过损失函数计算得到训练的损失,再根据训练的损失通过梯度下降等算法对神经网络模型中的参数例如conv算子的权重参数和偏置参数进行优化,优化的目标是减少损失,以使神经网络模型的输出与目标数据趋同。在训练时也可以冻结部分算子的参数,例如本实施例是将增加的第二卷积单元的参数冻结,训练时不进行更新,以减少训练时间。而且,在合并时并没有使用第二卷积单元,对第二卷积单元的参数进行的更新,也无法被使用到后续测试阶段和部分阶段的模型中去。但第二卷积单元的存在,由于其权重参数、偏置参数可以随机生成或用不同方式生成,不同分支各不相同,因而可以增加卷积结构各分支的多样性,以训练得到更好的模型。
53.本公开一示例性的实施例中,可以对第二神经网络模型进行测试,也可以说是验证,如果通过,则可以将第二神经网络确定为部署阶段使用的神经网络模型。这里的测试或验证可以采用测试样本集进行。以第二神经网络模型用于目标识别为例,测试是否通过可以根据第二神经网络模型的识别精度来确定,如果识别精度大于某一个预设的阈值,则认为已经达到了精度要求,测试通过,否则测试不通过。测试不通过时,可以继续采用训练样本集对第一神经网络模型进行训练,或者采用不同的初始化参数,修改局部的网络结构,再次进行训练和测试。这里部署第二神经网络是指第二神经网络已经训练好,可以用于执行
实际的任务,例如图像分类、目的识别等等。
54.本公开一实施例还提供了一种神经网络模型确定装置,如图6所示,包括,该装置中设置有处理器60和存储器50,存储器50中存储有计算机程序,处理器60执行计算机程序时可以实现如本公开任一实施例的神经网络模型确定方法。
55.本实施例中的处理器60可以是通用处理器,例如可以是中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器,或者该处理器也可以是任何常规的处理器等等。本公开上述实施例的神经网络模型确定装置使用相互连接的第一卷积单元和第二卷积单元作为分支的结构,第二卷积单元的参数至少部分不同,在训练过程中只对第一卷积单元的参数进行更新,可以提升分支之间学习到的特征多样性,同时保持分支表达能力,提高神经网络模型的性能。
56.本实施例中的存储器50可以包括ram、rom、eeprom、cd-rom,或者其它光盘存储装置、磁盘存储装置,或者其它磁性存储装置、快闪存储器,或者可以指令或数据结构的形式存储所需要的程序代码且可由计算机存取的任何其它介质。
57.本公开一实施例还提供了一种多分支的卷积结构,卷积结构包括多个分支,卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同。
58.在本公开一示例性的实施例中,多个分支中的第二卷积单元的输入为卷积结构的输入,多个分支中的第一卷积单元的输出相加后,得到卷积结构的输出。
59.图3所示是上述卷积结构的一个示例,如图所示,该卷积结构包括4个分支,也可以是3个分支、2个分支、5个分支或者更多分支。每一个分支中的第一组k
×
k conv算子和bn算子构成了第二卷积单元,其中的k
×
kconv算子和bn算子在图中虽然画在了一个框中,但只是为了表述时方便区分,依然是表示依次连接的k
×
k conv算子和bn算子。该第二卷积单元中的k
×
k conv算子的权重参数和/或偏置参数是随机生成的,或者是采用不同的参数初始化方法生成的,k≥2。每一个分支中的第二组k
×
k conv算子和bn算子构成了第一卷积单元。图中的“input”采用了一个方框表示,但并不代表此处要设置一个算子,输入信号到第二卷积单元的表示方式也可以与图1相同。如图所示,这4个分支的第一卷积单元的输出相加到得到卷积结构的输出即output。
60.本实施例还提供了一种用于训练的神经网络模型(对应于神经网络模型确定方法中的第一神经网络模型),包括多个卷积结构,其中部分或全部卷积结构采用本公开任一实施例所述的多分支的卷积结构。
61.在实际构建训练用的神经网络模型时,可以先构建出每个卷积结构中的第一卷积单元,然后在卷积结构的每个分支的输入和第一卷积单元之间增加一个第二卷积单元。该第二卷积单元中的k
×
k conv算子的通道数、卷积核大小、步长、填充等可以与第一卷积单元中的k
×
k conv算子相同或部分相同,但本公开不局限于此。第二卷积单元中k
×
k conv算子的权重参数和/或偏置参数可以随机化生成,或者采用不同的初始化参数的方法生成,因此增加的该k
×
k conv算子和bn算子也可以称为增加一个随机卷积层和bn层。通过这种
随机卷积层的设置,可以增加多分支卷积中分支的多样性。同时并没有引入其他类型的算子,因而不会降低模型的表达能力,造成模型性能的衰减。由于增加的这两层参数在训练中不更新,其他层的参数在训练中正常更新。因而也不会过于增大训练时的复杂度和训练的时间。
62.在本公开一示例性的实施例中,多分支的卷积结构的输出可以连接一个非线性算子,如图4a所示,图中是以relu算子为例,relu算子,也称为修正线性单元(rectified linear units,简称relu)算子,是神经网络中常用的激活函数。relu算子对输入元素序列逐元素执行的操作是:对每一个元素x,如果x大于0,则输出x;如果x小于或等于0,则输出0。但本公开不局限于此,此处的非线性算子也可以是其他的激活函数如sigmoid函数,或者是其他类型的非线性算子。对图4a所示的卷积网络合并后得到的网络结构如图4b所示,即多分支的卷积结构合并成一个k
×
k conv算子,k
×
kconv算子的输出再连接一个relu算子。即在图4b所示的示例中,是将多分支的卷积结构合并成一个k
×
k conv算子。
63.在图5a中示出了一种训练用的resnet网络模型的局部网络结构,在该局部结构中包括4个多分支的卷积结构,每一个卷积结构包括4个分支,对应于图3中的具体结构。每一个卷积结构连接一个非线性算子(以relu函数为例)。其中,第一个卷积结构10的输入与第二个卷积结构20的输出相加,再经过relu函数后作为第三个卷积结构输入,而第三个卷积结构30的输入与第四个卷积结构40的输出相加,这是resnet网络的结构特点。对该训练用的resnet网络模型进行训练后,将每一个多分支的卷积结构合并成一个卷积单元,合并的卷积单元均包括一个k
×
k conv算子和一个bn算子,如图5b所示,合并后得到测试用的resnet网络模型,该测试用的resnet网络模型在测试通过后,即可在部署阶段执行实际的任务如图像分类、目标识别等等。在另一实施例中,该bn算子在训练用的resnet网络模型中也可以设置在多分支的卷积结构和非线性算子之间,这样在合并时,将每一个多分支的卷积结构合并成一个k
×
k conv算子即可,设置在卷积结构之后的bn算子仍然保留,也可以得到图5b的网络模型。本公开实施例的多分支的卷积结构以及神经网络模型的确定方法也可以用于其他形式的神经网络模型,例如inception网络模型、densenet网络模型等等。这里不再赘述。
64.本公开实施例的神经网络模型具有本公开实施例提出的多分支的卷积结构,使得本公开实施例的神经网络模型可用于训练,可以在不损失多分支卷积中分支的多样性的同时,保持其分支的表达能力。
65.在imagenet图像分类任务中,以resnet50模型作为参照(baseline),resnet50模型最好的准确率(top1 accuracy)是76.40%,而使用本公开神经网络模型确定方法训练得到的resnet模型的top1 accuracy可以达到77.73%。
66.在基于coco数据集的目标检测任务(object detection)中,以resnet-18版本的目标检测网络centernet模型为参照(baseline),centernet模型的平均正确率(ap)为29.83,而使用本公开神经网络模型确定方法训练得到的模型centernet模型的ap为31.64。
67.在基于cityscapes数据集的图像分类任务中,以resnet-18版本的pspnet模型为参照,pspnet模型的top1 accuracy是70.18%,而使用本公开神经网络模型确定方法训练得到的pspnet模型的top1 accuracy可以达到72.24%。
68.本公开上述实施例通过随机卷积层,使得多分支卷积结构中的分支的多样性得到
了提升,并且此种方式不需要改变在分支内进行特征学习的算子(kx k conv),从而增加了模型性能。
69.本公开一实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法实施例所提供的神经网络模型确定方法,该方法包括:获取训练阶段使用的第一神经网络模型,所述第一神经网络模型中包括多分支的卷积结构,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同;对所述第一神经网络模型进行训练的过程中,对所述第一卷积单元的参数进行更新,所述第二卷积单元的参数保持不变;训练后,基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,得到测试阶段使用的第二神经网络模型。
70.在上述任意一个或多个示例性实施例中,所描述的功能可以硬件、软件、固件或其任一组合来实施。如果以软件实施,那么功能可作为一个或多个指令或代码存储在计算机可读介质上或经由计算机可读介质传输,且由基于硬件的处理单元执行。计算机可读介质可包含对应于例如数据存储介质等有形介质的计算机可读存储介质,或包含促进计算机程序例如根据通信协议从一处传送到另一处的任何介质的通信介质。以此方式,计算机可读介质通常可对应于非暂时性的有形计算机可读存储介质或例如信号或载波等通信介质。数据存储介质可为可由一个或多个计算机或者一个或多个处理器存取以检索用于实施本公开中描述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可包含计算机可读介质。
71.举例来说且并非限制,此类计算机可读存储介质可包括ram、rom、eeprom、cd-rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来以指令或数据结构的形式存储所要程序代码且可由计算机存取的任何其它介质。而且,还可以将任何连接称作计算机可读介质举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(dsl)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输指令,则同轴电缆、光纤电缆、双纹线、dsl或例如红外线、无线电及微波等无线技术包含于介质的定义中。然而应了解,计算机可读存储介质和数据存储介质不包含连接、载波、信号或其它瞬时(瞬态)介质,而是针对非瞬时有形存储介质。如本文中所使用,磁盘及光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软磁盘或蓝光光盘等,其中磁盘通常以磁性方式再生数据,而光盘使用激光以光学方式再生数据。上文的组合也应包含在计算机可读介质的范围内。
72.可由例如一个或多个数字信号理器(dsp)、通用微处理器、专用集成电路(asic)现场可编程逻辑阵列(fpga)或其它等效集成或离散逻辑电路等一个或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文描述的功能性可提供于经配置以用于编码和解码的专用硬件和/或软件模块内,或并入在组合式编解码器中。并且,可将所述技术完全实施于一个或多个电路或逻辑元件中。
73.本公开实施例的技术方案可在广泛的多种装置或设备中实施,包含无线手机、集成电路(ic)或一组ic(例如,芯片组)。本公开实施例中描各种组件、模块或单元以强调经配
置以执行所描述的技术的装置的功能方面,但不一定需要通过不同硬件单元来实现。而是,如上所述,各种单元可在编解码器硬件单元中组合或由互操作硬件单元(包含如上所述的一个或多个处理器)的集合结合合适软件和/或固件来提供。

技术特征:
1.一种神经网络模型确定方法,包括:获取训练阶段使用的第一神经网络模型,所述第一神经网络模型中包括多分支的卷积结构,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同;对所述第一神经网络模型进行训练的过程中,对所述第一卷积单元的参数进行更新,所述第二卷积单元的参数保持不变;训练后,基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,得到测试阶段使用的第二神经网络模型。2.如权利要求1所述的方法,其特征在于:所述多个分支中的第二卷积单元的输入为所述卷积结构的输入,所述多个分支中的第一卷积单元的输出相加后,得到所述卷积结构的输出。3.如权利要求1所述的方法,其特征在于:所述第一卷积单元包括一个k
×
k卷积算子,或者包括一个k
×
k卷积算子和一个批量归一化bn算子;所述第二卷积单元包括一个k
×
k卷积算子,或者包括一个k
×
k卷积算子和一个bn算子,其中,k≥2。4.如权利要求3所述的方法,其特征在于:所述第二卷积单元中的k
×
k卷积算子的权重参数和/或偏置参数是随机生成的;或者,所述第二卷积单元中的k
×
k卷积算子的权重参数和/或偏置参数是采用不同的参数初始化方法生成的。5.如权利要求1所述的方法,其特征在于:所述卷积结构合并成的单个卷积单元包括一个k
×
k卷积算子,或者包括一个k
×
k卷积算子和一个bn算子。6.如权利要求1所述的方法,其特征在于:所述第一卷积单元包括一个k
×
k卷积算子和一个bn算子,所述基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,包括:将所述卷积结构的多个分支中的第二卷积单元均去除;将所述卷积结构的多个分支中的第一卷积单元的k
×
k卷积算子和bn算子分别合并,得到多个并联的中间卷积算子;将所述多个并联的中间卷积算子合并成单个卷积算子,所述单个卷积算子构成所述单个卷积单元。7.如权利要求1所述的方法,其特征在于:所述第一卷积单元包括一个k
×
k卷积算子和一个bn算子,所述基于所述卷积结构中的第一卷积单元将所述卷积结构合并成单个卷积单元,包括:将所述卷积结构的多个分支中的第二卷积单元均去除;将所述卷积结构的m-1个分支中的第一卷积单元的k
×
k卷积算子和bn算子分别合并,得到m-1个并联的中间卷积算子,m为所述卷积结构中的分支的数量;将所述m-1个并联的中间卷积算子和所述卷积结构未合并的一个分支中的k
×
k卷积算子合并成单个卷积算子,所述单个卷积算子和所述卷积结构未合并的一个分支中的bn算子
构成所述单个卷积单元。8.如权利要求1所述的方法,其特征在于:所述第一神经网络模型包括多个所述卷积结构,多个所述卷积结构的分支数量n相同或不同,所述第一卷积单元和第二卷积单元的通道数、卷积核大小、步长和填充中的至少部分相同,其中,2≤n≤4。9.如权利要求1至8中任一所述的方法,其特征在于:所述方法还包括:对所述第二神经网络模型进行测试,测试通过后,将所述第二神经网络确定为部署阶段使用的神经网络模型。10.一种多分支的卷积结构,其特征在于,所述卷积结构包括多个分支,所述卷积结构的多个分支均包括相互连接的第一卷积单元和第二卷积单元,不同分支中的第二卷积单元的至少部分参数不同。11.如权利要求10所述的卷积结构,其特征在于:所述多个分支中的第二卷积单元的输入为所述卷积结构的输入,所述多个分支中的第一卷积单元的输出相加后,得到所述卷积结构的输出;所述第一卷积单元和第二卷符号单元均包括一个k
×
k卷积算子和一个批量归一化bn算子,所述第二卷积单元中的k
×
k卷积算子的权重参数和/或偏置参数是随机生成的,或者是采用不同的参数初始化方法生成的,k≥2。12.一种用于训练的神经网络模型,包括多个卷积结构,其特征在于,所述多个卷积结构中的部分或全部采用如权利要求10或11所述的多分支的卷积结构。13.一种神经网络模型确定装置,其特征在于,包括处理器以及存储有计算机程序的存储器,其中,所述处理器执行所述计算机程序时,能够实现如权利要求1至9中任一所述的神经网络模型确定方法。14.一种计算机程序产品,包括计算机程序,所述计算机程序可存储在非瞬态计算机可读存储介质上,其特征在于,所述计算机程序被处理器执行时,能够实现如权利要求1至9中任一所述的神经网络模型确定方法。15.一种非瞬态计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序时被处理器执行时,能够实现如权利要求1至9中任一所述的神经网络模型确定方法。

技术总结
一种多分支卷积结构、神经网络模型及其确定方法、确定装置,在所述卷积结构的多个分支的第一卷积单元前中增加不同的第二卷积单元,在训练时只对其中的第一卷积单元进行训练,训练后将第二卷积单元去除,基于第一卷积单元将所述卷积结构合并成单个卷积单元,在神经网络模型中可以有多个这样的卷积结构,本公开实施例可以提升分支之间学习到的特征多样性,同时保持分支表达能力。保持分支表达能力。保持分支表达能力。


技术研发人员:祝毅晨 区志财 唐剑
受保护的技术使用者:美的集团股份有限公司
技术研发日:2022.01.27
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐