CN111079905A - 卷积神经网络处理方法、装置和电子系统 - Google Patents
卷积神经网络处理方法、装置和电子系统 Download PDFInfo
- Publication number
- CN111079905A CN111079905A CN201911389067.8A CN201911389067A CN111079905A CN 111079905 A CN111079905 A CN 111079905A CN 201911389067 A CN201911389067 A CN 201911389067A CN 111079905 A CN111079905 A CN 111079905A
- Authority
- CN
- China
- Prior art keywords
- neural network
- convolutional neural
- parameters
- convolutional
- kernel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种卷积神经网络处理方法、装置和电子系统;其中,该方法包括:对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数;对第二卷积神经网络进行训练;对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同。该方式中,对第一卷积神经网络的卷积核进行了扩展得到第二卷积神经网络,可以提升网络训练过程中网络的表达能力;基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,可以减少网络的训练时间;将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构,在提升网络精度的同时不会影响网络运行的速度。
Description
技术领域
本发明涉及卷积神经网络技术领域,尤其是涉及一种卷积神经网络处理方法、装置和电子系统。
背景技术
卷积神经网络正在飞速发展和应用,为了追求高性能,卷积神经网络模型的深度和复杂度越来越大,然而在真实的应用场景如移动设备或嵌入式设备上,如此大而复杂的卷积神经模型难以应用。
相关技术中,受限于内存不足以及实时性的要求,实际场景中只能使用轻量级卷积神经网络。但是,由于轻量级卷积神经网络的参数量和计算量相比普通卷积神经网络大幅度下降,轻量级卷积神经网络的表达能力不足,在使用过程中轻量级卷积神经网络的性能比较差。
发明内容
有鉴于此,本发明的目的在于提供一种卷积神经网络处理方法、装置和电子系统,以提升卷积神经网络的性能。
第一方面,本发明实施例提供了一种卷积神经网络处理方法,上述方法中的第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,第一卷积核的输入通道数量与目标卷积核的输入通道数量相同,第二卷积核的输出通道数量与目标卷积核的输出通道数量相同;上述方法包括:对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数;对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调;对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同;将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
在本发明较佳的实施例中,第一卷积核和第二卷积核之间设置有一个中间特征层;第二卷积核的输入通道数量与第一卷积核的输出通道数量相同。
在本发明较佳的实施例中,上述基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数的步骤,包括:获取训练后的第一卷积神经网络的参数;参数包括权重参数和第一类参数;第一类参数包括第一卷积神经网络的偏置参数和第一卷积神经网络的批量归一化层中的参数;基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数;将训练后的第一卷积神经网络的第一类参数的值赋值到第二卷积神经网络中与第一类参数对应的第二类参数;第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数。
在本发明较佳的实施例中,上述基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数的步骤,包括:将训练后的第一卷积神经网络的权重参数转化为二维矩阵,并对二维矩阵进行奇异值分解;基于奇异值分解后的矩阵,以及第一卷积核的输出通道数量与目标卷积核的输出通道数量的比值确定第二卷积神经网络的权重参数。
在本发明较佳的实施例中,在上述基于奇异值分解后的矩阵,以及第一卷积核的输出通道数量与目标卷积核的输出通道数量的比值确定第二卷积神经网络的权重参数的步骤之后,基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数的步骤,包括:为第二卷积神经网络的权重参数添加预设的高斯噪声。
在本发明较佳的实施例中,上述对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同的步骤,包括:将训练后的第二卷积神经网络中的第一卷积核和第二卷积核合并为第三卷积核;其中,第三卷积核为转换后的第二卷积神经网络的卷积核;基于训练后的第一卷积核的参数和第二卷积核的参数,确定转换后的第二卷积神经网络的参数。
在本发明较佳的实施例中,上述基于训练后的第一卷积核的参数和第二卷积核的参数,确定转换后的第二卷积神经网络的参数的步骤,包括:获取训练后的第一卷积核的参数和第二卷积核的参数;第一卷积核的参数和第二卷积核的参数均包括权重参数和第二类参数;第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数;将训练后的第二卷积神经网络的第二类参数的值赋值到转换后的第二卷积神经网络中与第二类参数对应的第三类参数,第三类参数包括转换后的第二卷积神经网络的偏置参数和转换后的第二卷积神经网络的批量归一化层中的参数。
在本发明较佳的实施例中,上述基于训练后的第一卷积核的权重参数和第二卷积核的权重参数,确定第三卷积核的权重参数的步骤,包括:将第一卷积核的权重参数转化第一二维矩阵,将第二卷积核的权重参数转化为第二二维矩阵;将第二二维矩阵与第一二维矩阵相乘,得到第三卷积核对应的第三二维矩阵;将第三二维矩阵转化为第三卷积核的权重参数。
第二方面,本发明实施例还提供一种卷积神经网络处理装置,上述装置中的第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,第一卷积核的输入通道数量与目标卷积核的输入通道数量相同,第二卷积核的输出通道数量与目标卷积核的输出通道数量相同;上述装置包括:第二卷积神经网络参数初始化模块,用于对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数;第二卷积神经网络参数微调模块,用于对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调;第二卷积神经网络结构转换模块,用于对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同;图像识别结果输出模块,用于将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
第三方面,本发明实施例还提供一种电子系统,电子系统包括:图像采集设备、处理设备和存储装置;图像采集设备,用于获取图像;存储装置上存储有计算机程序,计算机程序在被处理设备运行时执行如上述卷积神经网络处理方法。
第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理设备运行时执行如上述卷积神经网络处理方法的步骤。
本发明实施例带来了以下有益效果:
本发明实施例提供了一种卷积神经网络处理方法、装置和电子系统,将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后,作为第二卷积神经网络,第二卷积神经网络的参数基于训练后的第一卷积神经网络的参数初始化,对第二卷积神经网络的参数微调后,将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构。
该方式中,对第一卷积神经网络的卷积核进行了扩展得到第二卷积神经网络,可以提升网络训练过程中网络的表达能力;基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,可以减少网络的训练时间;将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构,在提升网络精度的同时不会影响网络运行的速度。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种电子系统的结构示意图;
图2为本发明实施例提供的一种第一卷积神经网络的典型卷积结构示意图;
图3为本发明实施例提供的一种第二卷积神经网络的典型卷积结构示意图;
图4为本发明实施例提供的一种卷积神经网络处理方法的流程图;
图5为本发明实施例提供的另一种卷积神经网络处理方法的流程图;
图6为本发明实施例提供的另一种卷积神经网络处理方法的流程图;
图7为本发明实施例提供的一种卷积神经网络处理装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提升卷积神经网络的性能,本发明实施例提供了一种卷积神经网络处理方法、装置和电子系统,该技术可以应用于服务器、计算机、相机、手机、平板电脑、车辆中控设备等多种设备中,该技术可采用相应的软件和硬件实现,以下对本发明实施例进行详细介绍。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种卷积神经网络处理方法进行详细介绍。
实施例一:
首先,参照图1来描述用于实现本发明实施例的卷积神经网络处理方法、装置和电子系统的示例电子系统100。
如图1所示的一种电子系统的结构示意图,电子系统100包括一个或多个处理设备102、一个或多个存储装置104、输入装置106、输出装置108以及一个或多个图像采集设备110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子系统100的组件和结构只是示例性的,而非限制性的,根据需要,电子系统也可以具有其他组件和结构。
处理设备102可以为智能终端,或者是包含中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对电子系统100中的其它组件的数据进行处理,还可以控制电子系统100中的其它组件以执行目标对象统计的功能。
存储装置104可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理设备102可以运行程序指令,以实现下文的本发明实施例中(由处理设备实现)的客户端功能以及/或者其它期望的功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如应用程序使用和/或产生的各种数据等。
输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
图像采集设备110可以采集预览视频帧或图片数据(如图像),并且将采集到的预览视频帧或图像数据存储在存储装置104中以供其它组件使用。
示例性地,用于实现根据本发明实施例的卷积神经网络处理方法、装置和电子系统中的各器件可以集成设置,也可以分散设置,诸如将处理设备102、存储装置104、输入装置106和输出装置108集成设置于一体,而将图像采集设备110设置于可以采集到图片的指定位置。当上述电子系统中的各器件集成设置时,该电子系统可以被实现为诸如相机、智能手机、平板电脑、计算机、车载终端等智能终端。
实施例二:
本实施例提供了一种卷积神经网络处理方法,该方法对传统的卷积神经网络进行了改进,在本实施例中,第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,第一卷积核的输入通道数量与目标卷积核的输入通道数量相同,第二卷积核的输出通道数量与目标卷积核的输出通道数量相同。
参见图2所示的一种第一卷积神经网络的典型卷积结构示意图和图3所示的一种第二卷积神经网络的典型卷积结构示意图,如图2所示,对于一个输入特征层,目标卷积核可以记为W,W的形状为M×N×K×K,其中M,N分别是该卷积结构输出通道数量和输入通道数量,K是卷积核空间尺寸,图2中的N未示出,M=2。图3中,将目标卷积核W扩展为第一卷积核W1和第二卷积核W2,W1的形状为M'×N×K×K,W2的形状为M×M'×1×1,也就是说,第一卷积核的输入通道数量为N,与目标卷积核的输入通道数量相同;第二卷积核的输出通道数量为M=2,目标卷积核的输出通道数量相同。可以看出,第二卷积神经网络是将第一卷积神经网络的目标卷积核扩展得来的,扩展后的第二卷积神经网络可以提升训练过程中网络的表达能力。
另外,第二卷积神经网络的第一卷积核和第二卷积核之间,还有一个中间特征层,第二卷积核的输入通道数量为M'=4,与第一卷积核的输出通道数量相同。
需要说明的是,图2和图3均为典型卷积结构示意图,对于有跨步(stride)的卷积结构,空洞卷积结构(dilated convolution),组卷积结构(group convolution),深度可分离卷积结构(depthwise convolution),反卷积结构(transposed convolution)等其他结构,同样可以采用相同的方法扩展。
基于上述描述,如图4所示的一种卷积神经网络处理方法的流程图,该卷积神经网络处理方法包括如下步骤:
步骤S402,对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数。
因为第二卷积神经网络与第一卷积神经网络相比扩展了卷积核,增加了参数量,如果直接对第二卷积神经网络进行训练,会花费更多的训练时间。因此,本实施例基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,在初始化第二卷积神经网络的参数的基础上进行训练。
其中,训练是指向卷积神经网络输入足够多的样本,通过一定算法调整卷积神经网络的参数,使卷积神经网络的输出与预期值相符。其中,卷积神经网络的参数包括权重参数W、偏置b,批量归一化层中的参数\mu,\sigma,\gamma,\beta等;训练的主要目的是调整权重参数W。
在完成第一卷积神经网络进行训练后,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数。其中,初始化是指通过对训练后的第一卷积神经网络的参数进行运算,得到第二卷积神经网络的参数的初始值,第二卷积神经网络在得到初始值的基础上进行训练,可以大幅度节约训练时间。
步骤S404,对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调。
第二卷积神经网络在参数初始化的基础上进行训练,这里训练的目的是对第二卷积神经网络的参数进行微调。因为,初始化的第二卷积神经网络的参数已经基本满足的损失值收敛的条件,只需要通过少量训练以对参数进行微调,使损失值收敛。
步骤S406,对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同。
训练后的第二卷积神经网络与第一卷积神经网络相比,虽然网络的表达能力更强,网络精度更高;然而,第二卷积神经网络的参数量要大于第一卷积神经网络,导致网络运行的速度较低。因此,需要将训练后的第二卷积神经网络转换为与第一卷积神经网络相同的结构,保证参数量相同,在提升网络精度的同时不会影响网络运行的速度。
其中,结构转换是指将第二卷积神经网络转换为与第一卷积神经网络的结构相同的结构,即合并后的第二卷积神经网络的卷积核的个数要与第一卷积神经网络的卷积核的个数相同。这样就可以保证合并后的第二卷积神经网络的参数量与第一卷积神经网络的参数量相同,在提升网络精度的同时不会影响网络运行的速度。
步骤S408,将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
待测图像为需要通过卷积神经网络进行图像识别的图像,将待测图像输入到转换后的第二卷积神经网络中,就可以得到待测图像对应的图像识别结果。需要说明的是,转换后的第二卷积神经网络中的处理可以是图像分类、图像分割、目标检测等,相应的图像识别结果为分类结果、图像分割结果、目标检测结果等。
本发明实施例提供的一种卷积神经网络处理方法,将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后,作为第二卷积神经网络,第二卷积神经网络的参数基于训练后的第一卷积神经网络的参数初始化,对第二卷积神经网络的参数微调后,将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构。
该方式中,对第一卷积神经网络的卷积核进行了扩展得到第二卷积神经网络,可以提升网络训练过程中网络的表达能力;基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,可以减少网络的训练时间;将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构,可以在提升网络精度的同时不会影响网络运行的速度。
实施例三:
本实施例提供了另一种卷积神经网络处理方法,该方法在上述实施例的基础上实现;本实施例重点描述基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数的步骤。如图5所示的另一种卷积神经网络处理方法的流程图,本实施例中的卷积神经网络处理方法包括如下步骤:
步骤S502,对第一卷积神经网络进行训练,获取训练后的第一卷积神经网络的参数;上述参数包括权重参数和第一类参数;第一类参数包括第一卷积神经网络的偏置参数和第一卷积神经网络的批量归一化层中的参数。
对训练后的第一卷积神经网络的参数进行分类,卷积神经网络的参数包括权重参数W、偏置b,批量归一化层中的参数\mu,\sigma,\gamma,\beta等。将除第一卷积神经网络的权重参数以外的其他参数作为第一卷积神经网络的第一类参数,第一卷积神经网络的第一类参数包括第一卷积神经网络的偏置参数和第一卷积神经网络的批量归一化层中的参数。
步骤S504,基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数。
对于不同类别的第一卷积神经网络的参数,采用不同的方法确定对应的第二卷积神经网络的参数。对于权重参数,因为第二卷积网络具有两个卷积核,每个卷积核都有对应的权重参数,因此可以对训练后的第一卷积神经网络的权重参数进行变换,得到第二卷积网络中第一卷积核和第二卷积核的权重参数。
对训练后的第一卷积神经网络的权重参数进行变换的过程可以通过步骤A1-步骤A2执行:
步骤A1,将训练后的第一卷积神经网络的权重参数转化为二维矩阵,并对二维矩阵进行奇异值分解。
以图2所示的第一卷积神经网络和图3所示的第二卷积神经网络为例,第一卷积神经网络的目标卷积核W的形状为M×N×K×K,其中N未示出,M=2;第一卷积核W1的形状为M'×N×K×K,第二卷积核W2的形状为M×M'×1×1。我们的目标是将W中的权重参数,转换为W1与W2的权重参数。
首先,将W转化为M×(N×K×K)的二维矩阵,并对该二维矩阵进行奇异值分解:W=USVT,其中其中,二维矩阵里面的每个元素不再是单一的数,而是一个个有序实数对,在几何上则对应二维平面上的点,由这样的元素构成的矩阵就是二维矩阵。
步骤A2,基于奇异值分解后的矩阵,以及第一卷积核的输出通道数量与目标卷积核的输出通道数量的比值确定第二卷积神经网络的权重参数。
确定第一卷积核的输出通道数量M’目标卷积核的输出通道数量M的比值,可以M′=2nM,也就是比值为2n,如果n=1,则令P=US1/2,Q=S1/2V,可以得到:最后令并将其转化成大小为2M×(N×K×K)的四维张量,张量是指有大小和多个方向的量;并将其转为成大小为M×2M×1×1的四维张量。这样就可以即用大小为2M×(N×K×K)的四维张量W1和大小为M×2M×1×1的四维张量W2相乘,得到W。这里的W1和W2就是第一卷积核和第二卷积核的权重参数。如果n为大于1的整数,仅需将P和Q分别在两个维度上重复多倍即可。
该方式中,通过奇异值分解的方式将第一卷积神经网络的权重参数转化的二维矩阵转化为两个矩阵相乘的形式,上述两个矩阵即为第一卷积核的权重参数和第二卷积核的权重参数转化后的矩阵。因此,基于训练后的第一卷积神经网络的权重参数,可以化第二卷积神经网络的权重参数,以节约训练第二卷积神经网络的时间。
在完成了确定第二卷积神经网络的权重参数的步骤之后,基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数的步骤,还包括:为第二卷积神经网络的权重参数添加预设的高斯噪声。高斯噪声是指概率密度函数服从高斯分布(即正态分布)的一类噪声,为了打破梯度反传的对称性,需要对权重加上高斯噪声。如果不加高斯噪声,在微调过程中计算得到的梯度对于扩展后的卷积核是一样的,有效参数量没有改变,达不到训练的目的。
步骤S506,将训练后的第一卷积神经网络的第一类参数的值赋值到第二卷积神经网络中与第一类参数对应的第二类参数;上述第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数。
对于除了权重参数以外的第一类参数,只需要将第一卷积神经网络的第一类参数的值赋值到第二卷积神经网络中的第二类参数即可。在这里的赋值,是指将第一卷积网络的偏置参数写入第二卷积神经网络中的偏置参数,将第一卷积网络的批量归一化层中的参数写入第二卷积神经网络中的批量归一化层中的参数。
步骤S508,对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调。
在初始化第二卷积神经网络中的权重参数和第二类参数的基础上,对第二卷积神经网络进行训练,以对第二卷积神经网络权重参数和第二类参数进行微调,微调是指较小学习率网络,即微调用于网络训练的时间较少,可以节约训练网络的时间。
相对于直接训练扩展后的网络来说,在经过参数初始化后,扩展后的网络和扩展前的网络计算结果几乎一致,表示扩展后的网络已经是接近收敛的状态了,在这个基础上再进行微调训练能保证网络很快到达收敛状态。
步骤S510,对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同。
步骤S512,将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
该方式中,将训练后的第一卷积神经网络的参数分为权重参数和第一类参数,通过第一卷积神经网络的权重参数初始化第二卷积神经网络的权重参数,将第一卷积神经网络的第一类参数直接赋值到第二卷积神经网络的第二类参数中。因此,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,以节约训练第二卷积神经网络的时间。
实施例四:
本实施例提供了另一种卷积神经网络处理方法,该方法在上述实施例的基础上实现;本实施例重点描述对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同的步骤。如图6所示的另一种卷积神经网络处理方法的流程图,本实施例中的卷积神经网络处理方法包括如下步骤:
步骤S602,对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数。
步骤S604,对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调。
步骤S606,将训练后的第二卷积神经网络中的第一卷积核和第二卷积核合并为第三卷积核;其中,第三卷积核为转换后的第二卷积神经网络的卷积核。
对训练后的第二卷积神经网络进行结构转换的目的是实现卷积核的合并,即将第一卷积核和第二卷积核合并为第三卷积核。也就是说,对于图3中的第二卷积神经网络,需要在结构上将图中的两个卷积核合二为一,并且去除中间特征层。
步骤S608,基于训练后的第一卷积核的参数和第二卷积核的参数,确定转换后的第二卷积神经网络的参数。
对于转换后的第二卷积神经网络的参数,需要基于训练后的第一卷积核的参数和第二卷积核的参数确定,还是分为权重参数和除了权重参数以外的第三类参数分类确定,具体通过步骤B1-步骤B3执行:
步骤B1,获取训练后的第一卷积核的参数和第二卷积核的参数;第一卷积核的参数和第二卷积核的参数均包括权重参数和第二类参数;第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数。
首先获取训练后的第一卷积核的参数和第二卷积核的参数,并将获取的参数分为权重参数和第二类参数,并且分别基于第一卷积核的权重参数和第二卷积核的权重参数确定第三卷积核的权重参数;基于第一卷积核的第二类参数和第二卷积核的第二类参数确定第三卷积核的第三类参数。
步骤B2,基于训练后的第一卷积核的权重参数和第二卷积核的权重参数,确定第三卷积核的权重参数。
对于第三卷积核的权重参数,可以通过对第一卷积核的权重参数变换的二维矩阵和对第二卷积核的权重参数变换的二维矩阵进行运算确定,具体来说,通过步骤C1-步骤C3执行:
步骤C1,将第一卷积核的权重参数转化第一二维矩阵,将第二卷积核的权重参数转化为第二二维矩阵。
步骤C2,将第二二维矩阵与第一二维矩阵相乘,得到第三卷积核对应的第三二维矩阵。
步骤C3,将第三二维矩阵转化为第三卷积核的权重参数。
将第三二维矩阵W转化为大小为M×N×k×k的四维张量作为第三卷积核的权重参数。该方式中,通过将第一卷积核的权重参数转化的第一二维矩阵和第二卷积核的权重参数转化的第二二维矩阵相乘,得到第三卷积核对应的第三二维矩阵,将第三二维矩阵转化为第三卷积核的权重参数。
步骤B3,将训练后的第二卷积神经网络的第二类参数的值赋值到转换后的第二卷积神经网络中与第二类参数对应的第三类参数,第三类参数包括转换后的第二卷积神经网络的偏置参数和转换后的第二卷积神经网络的批量归一化层中的参数。
对于除了权重参数之外的第三类参数,则可以直接将第二卷积网络的第二类参数的值赋予转换后的第二卷积神经网络的第三类参数即可。该方式中,将训练后的第一卷积核的参数和第二卷积核的参数分为权重参数和第二类参数,基于训练后的第一卷积核的权重参数和第二卷积核的权重参数,确定第三卷积核的权重参数;直接将训练后的训练后的第二卷积神经网络的第二类参数的值赋值到转换后的第二卷积神经网络的第三类参数,以确定转换后的第二卷积神经网络的参数。
步骤S610,将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
本发明实施例提供的上述方法,首先将卷积核和通道数量较少的第一卷积神经网络扩展为卷积核和通道数量较多的第二卷积神经网络,可以提升网络训练过程中网络的表达能力。
本发明实施例提供的上述方法,为了防止由于扩展后的第二卷积神经网络的参数量增加而导致训练时间大幅度增加,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,初始化第二卷积神经网络的参数,并对初始化参数后的第二卷积神经网络的参数进行微调,初始化后的第二卷积神经网络已经是接近收敛的状态了,在此基础上进行微调,只需要花很少的时间第二卷积神经网络就可以完成训练,可以节约训练第二卷积神经网络的时间。
本发明实施例提供的上述方法,对训练后的第二卷积神经网络进行结构转换,转换后的卷积神经网络与第一卷积神经网络的结构相同,因此计算量和参数量没有发生变化,网络的运行速度不变,因此在提升网络精度的同时不会影响网络运行的速度。
实施例五:
对应于上述方法实施例,参见图7所示的一种卷积神经网络处理装置的结构示意图,该装置中的第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,第一卷积核的输入通道数量与目标卷积核的输入通道数量相同,第二卷积核的输出通道数量与目标卷积核的输出通道数量相同。基于上述描述,该装置包括:
第二卷积神经网络参数初始化模块71,用于对第一卷积神经网络进行训练,基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数;
第二卷积神经网络参数微调模块72,用于对第二卷积神经网络进行训练,以对第二卷积神经网络的参数进行微调;
第二卷积神经网络结构转换模块73,用于对训练后的第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与第一卷积神经网络的结构相同;
图像识别结果输出模块74,用于将待测图像输入转换后的第二卷积神经网络进行处理,得到图像识别结果。
进一步地,上述第一卷积核和上述第二卷积核之间设置有一个中间特征层;第二卷积核的输入通道数量与第一卷积核的输出通道数量相同。
进一步地,上述第二卷积神经网络参数初始化模块,用于:获取训练后的第一卷积神经网络的参数;参数包括权重参数和第一类参数;第一类参数包括第一卷积神经网络的偏置参数和第一卷积神经网络的批量归一化层中的参数;基于训练后的第一卷积神经网络的权重参数,初始化第二卷积神经网络的权重参数;将训练后的第一卷积神经网络的第一类参数的值赋值到第二卷积神经网络中与第一类参数对应的第二类参数;第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数。
进一步地,上述第二卷积神经网络参数初始化模块,用于:将训练后的第一卷积神经网络的权重参数转化为二维矩阵,并对二维矩阵进行奇异值分解;基于奇异值分解后的矩阵,以及第一卷积核的输出通道数量与目标卷积核的输出通道数量的比值确定第二卷积神经网络的权重参数。
进一步地,上述第二卷积神经网络参数初始化模块,用于:为第二卷积神经网络的权重参数添加预设的高斯噪声。
进一步地,上述第二卷积神经网络结构转换模块,用于:将训练后的第二卷积神经网络中的第一卷积核和第二卷积核合并为第三卷积核;其中,第三卷积核为转换后的第二卷积神经网络的卷积核;基于训练后的第一卷积核的参数和第二卷积核的参数,确定转换后的第二卷积神经网络的参数。
进一步地,上述第二卷积神经网络结构转换模块,用于:获取训练后的第一卷积核的参数和第二卷积核的参数;第一卷积核的参数和第二卷积核的参数均包括权重参数和第二类参数;第二类参数包括第二卷积神经网络的偏置参数和第二卷积神经网络的批量归一化层中的参数;基于训练后的第一卷积核的权重参数和第二卷积核的权重参数,确定第三卷积核的权重参数;将训练后的第二卷积神经网络的第二类参数的值赋值到转换后的第二卷积神经网络中与第二类参数对应的第三类参数,第三类参数包括转换后的第二卷积神经网络的偏置参数和转换后的第二卷积神经网络的批量归一化层中的参数。
进一步地,上述第二卷积神经网络结构转换模块,用于:将第一卷积核的权重参数转化第一二维矩阵,将第二卷积核的权重参数转化为第二二维矩阵;将第二二维矩阵与第一二维矩阵相乘,得到第三卷积核对应的第三二维矩阵;将第三二维矩阵转化为第三卷积核的权重参数。
本发明实施例提供了一种卷积神经网络处理装置,将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后,作为第二卷积神经网络,第二卷积神经网络的参数基于训练后的第一卷积神经网络的参数初始化,对第二卷积神经网络的参数微调后,将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构。
该方式中,对第一卷积神经网络的卷积核进行了扩展得到第二卷积神经网络,可以提升网络训练过程中网络的表达能力;基于训练后的第一卷积神经网络的参数初始化第二卷积神经网络的参数,可以减少网络的训练时间;将第二卷积神经网络的结构转换为第一卷积神经网络的相同结构,在提升网络精度的同时不会影响网络运行的速度。
实施例六:
本发明实施例提供了一种电子系统,该电子系统包括:图像采集设备、处理设备和存储装置;图像采集设备,用于获取图像;存储装置上存储有计算机程序,计算机程序在被处理设备运行时执行如上述卷积神经网络处理方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理设备运行时执行如卷积神经网络处理方法的步骤。
本发明实施例所提供的卷积神经网络处理方法、装置和电子系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种卷积神经网络处理方法,其特征在于,所述方法中的第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,所述第一卷积核的输入通道数量与所述目标卷积核的输入通道数量相同,所述第二卷积核的输出通道数量与所述目标卷积核的输出通道数量相同;所述方法包括:
对所述第一卷积神经网络进行训练,基于训练后的所述第一卷积神经网络的参数初始化所述第二卷积神经网络的参数;
对所述第二卷积神经网络进行训练,以对所述第二卷积神经网络的参数进行微调;
对训练后的所述第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与所述第一卷积神经网络的结构相同;
将待测图像输入转换后的所述第二卷积神经网络进行处理,得到图像识别结果。
2.根据权利要求1所述的方法,其特征在于,所述第一卷积核和所述第二卷积核之间设置有一个中间特征层;所述第二卷积核的输入通道数量与所述第一卷积核的输出通道数量相同。
3.根据权利要求1所述的方法,其特征在于,基于训练后的所述第一卷积神经网络的参数初始化所述第二卷积神经网络的参数的步骤,包括:
获取训练后的所述第一卷积神经网络的参数;所述参数包括权重参数和第一类参数;所述第一类参数包括所述第一卷积神经网络的偏置参数和所述第一卷积神经网络的批量归一化层中的参数;
基于训练后的所述第一卷积神经网络的权重参数,初始化所述第二卷积神经网络的权重参数;
将训练后的所述第一卷积神经网络的所述第一类参数的值赋值到所述第二卷积神经网络中与所述第一类参数对应的第二类参数;所述第二类参数包括所述第二卷积神经网络的偏置参数和所述第二卷积神经网络的批量归一化层中的参数。
4.根据权利要求3所述的方法,其特征在于,基于训练后的所述第一卷积神经网络的权重参数,初始化所述第二卷积神经网络的权重参数的步骤,包括:
将训练后的所述第一卷积神经网络的权重参数转化为二维矩阵,并对所述二维矩阵进行奇异值分解;
基于奇异值分解后的矩阵,以及所述第一卷积核的输出通道数量与所述目标卷积核的输出通道数量的比值确定所述第二卷积神经网络的权重参数。
5.根据权利要求4所述的方法,其特征在于,在基于奇异值分解后的矩阵,以及所述第一卷积核的输出通道数量与所述目标卷积核的输出通道数量的比值确定所述第二卷积神经网络的权重参数的步骤之后,基于训练后的所述第一卷积神经网络的权重参数,初始化所述第二卷积神经网络的权重参数的步骤,还包括:
为所述第二卷积神经网络的权重参数添加预设的高斯噪声。
6.根据权利要求1所述的方法,其特征在于,对训练后的所述第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与所述第一卷积神经网络的结构相同的步骤,包括:
将训练后的所述第二卷积神经网络中的第一卷积核和第二卷积核合并为第三卷积核;其中,第三卷积核为转换后的所述第二卷积神经网络的卷积核;
基于训练后的所述第一卷积核的参数和所述第二卷积核的参数,确定转换后的所述第二卷积神经网络的参数。
7.根据权利要求6所述的方法,其特征在于,基于训练后的所述第一卷积核的参数和所述第二卷积核的参数,确定转换后的所述第二卷积神经网络的参数的步骤,包括:
获取训练后的所述第一卷积核的参数和所述第二卷积核的参数;所述第一卷积核的参数和所述第二卷积核的参数均包括权重参数和第二类参数;所述第二类参数包括所述第二卷积神经网络的偏置参数和所述第二卷积神经网络的批量归一化层中的参数;
基于训练后的所述第一卷积核的权重参数和所述第二卷积核的权重参数,确定所述第三卷积核的权重参数;
将训练后的所述第二卷积神经网络的所述第二类参数的值赋值到转换后的所述第二卷积神经网络中与所述第二类参数对应的第三类参数,第三类参数包括转换后的所述第二卷积神经网络的偏置参数和转换后的所述第二卷积神经网络的批量归一化层中的参数。
8.根据权利要求7所述的方法,其特征在于,基于训练后的所述第一卷积核的权重参数和所述第二卷积核的权重参数,确定所述第三卷积核的权重参数的步骤,包括:
将所述第一卷积核的权重参数转化第一二维矩阵,将所述第二卷积核的权重参数转化为第二二维矩阵;
将所述第二二维矩阵与所述第一二维矩阵相乘,得到所述第三卷积核对应的第三二维矩阵;
将所述第三二维矩阵转化为所述第三卷积核的权重参数。
9.一种卷积神经网络处理装置,其特征在于,所述装置中的第二卷积神经网络为将第一卷积神经网络中的目标卷积核扩展为第一卷积核和第二卷积核后的网络,其中,所述第一卷积核的输入通道数量与所述目标卷积核的输入通道数量相同,所述第二卷积核的输出通道数量与所述目标卷积核的输出通道数量相同;所述装置包括:
第二卷积神经网络参数初始化模块,用于对所述第一卷积神经网络进行训练,基于训练后的所述第一卷积神经网络的参数初始化所述第二卷积神经网络的参数;
第二卷积神经网络参数微调模块,用于对所述第二卷积神经网络进行训练,以对所述第二卷积神经网络的参数进行微调;
第二卷积神经网络结构转换模块,用于对训练后的所述第二卷积神经网络进行结构转换,以使转换后的第二卷积神经网络的结构与所述第一卷积神经网络的结构相同;
图像识别结果输出模块,用于将待测图像输入转换后的所述第二卷积神经网络进行处理,得到图像识别结果。
10.一种电子系统,其特征在于,所述电子系统包括:图像采集设备、处理设备和存储装置;
所述图像采集设备,用于获取图像;
所述存储装置上存储有计算机程序,所述计算机程序在被所述处理设备运行时执行如权利要求1至8任一项所述的卷积神经网络处理方法。
11.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理设备运行时执行如权利要求1至8任一项所述的卷积神经网络处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911389067.8A CN111079905A (zh) | 2019-12-27 | 2019-12-27 | 卷积神经网络处理方法、装置和电子系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911389067.8A CN111079905A (zh) | 2019-12-27 | 2019-12-27 | 卷积神经网络处理方法、装置和电子系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111079905A true CN111079905A (zh) | 2020-04-28 |
Family
ID=70319533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911389067.8A Pending CN111079905A (zh) | 2019-12-27 | 2019-12-27 | 卷积神经网络处理方法、装置和电子系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111079905A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114156567A (zh) * | 2021-11-19 | 2022-03-08 | 同济大学 | 一种基于机器学习的动力电池热管理系统 |
CN114239814A (zh) * | 2022-02-25 | 2022-03-25 | 杭州研极微电子有限公司 | 用于图像处理的卷积神经网络模型的训练方法 |
-
2019
- 2019-12-27 CN CN201911389067.8A patent/CN111079905A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114156567A (zh) * | 2021-11-19 | 2022-03-08 | 同济大学 | 一种基于机器学习的动力电池热管理系统 |
CN114156567B (zh) * | 2021-11-19 | 2024-03-26 | 同济大学 | 一种基于机器学习的动力电池热管理系统 |
CN114239814A (zh) * | 2022-02-25 | 2022-03-25 | 杭州研极微电子有限公司 | 用于图像处理的卷积神经网络模型的训练方法 |
CN114239814B (zh) * | 2022-02-25 | 2022-07-08 | 杭州研极微电子有限公司 | 用于图像处理的卷积神经网络模型的训练方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108710847B (zh) | 场景识别方法、装置及电子设备 | |
US20220222776A1 (en) | Multi-Stage Multi-Reference Bootstrapping for Video Super-Resolution | |
CN112308200B (zh) | 神经网络的搜索方法及装置 | |
US20230081645A1 (en) | Detecting forged facial images using frequency domain information and local correlation | |
CN109829506B (zh) | 图像处理方法、装置、电子设备和计算机存储介质 | |
CN109214337B (zh) | 一种人群统计方法、装置、设备及计算机可读存储介质 | |
CN107273978B (zh) | 一种三模型博弈的产生式对抗网络模型的建立方法及装置 | |
CN112236779A (zh) | 基于卷积神经网络的图像处理方法和图像处理装置 | |
US20240062530A1 (en) | Deep perceptual image enhancement | |
CN111340866B (zh) | 深度图像生成方法、装置及存储介质 | |
US9275309B2 (en) | System and method for rapid face recognition | |
US9773192B2 (en) | Fast template-based tracking | |
CN112639828A (zh) | 数据处理的方法、训练神经网络模型的方法及设备 | |
CN109063776B (zh) | 图像再识别网络训练方法、装置和图像再识别方法及装置 | |
CN112750085A (zh) | 图像恢复方法和图像恢复设备 | |
CN112131943A (zh) | 一种基于双重注意力模型的视频行为识别方法及系统 | |
US20140126808A1 (en) | Recursive conditional means image denoising | |
Liu et al. | Collabar: Edge-assisted collaborative image recognition for mobile augmented reality | |
CN112328715A (zh) | 视觉定位方法及相关模型的训练方法及相关装置、设备 | |
CN111079905A (zh) | 卷积神经网络处理方法、装置和电子系统 | |
CN111382791B (zh) | 深度学习任务处理方法、图像识别任务处理方法和装置 | |
CN112381707A (zh) | 图像生成方法、装置、设备以及存储介质 | |
CN114330565A (zh) | 一种人脸识别方法及装置 | |
CN111814534A (zh) | 视觉任务的处理方法、装置和电子系统 | |
CN109871814B (zh) | 年龄的估计方法、装置、电子设备和计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200428 |
|
RJ01 | Rejection of invention patent application after publication |