CN110263707B - 图像识别方法、装置、计算机设备以及存储介质 - Google Patents
图像识别方法、装置、计算机设备以及存储介质 Download PDFInfo
- Publication number
- CN110263707B CN110263707B CN201910531711.4A CN201910531711A CN110263707B CN 110263707 B CN110263707 B CN 110263707B CN 201910531711 A CN201910531711 A CN 201910531711A CN 110263707 B CN110263707 B CN 110263707B
- Authority
- CN
- China
- Prior art keywords
- training
- neural network
- convolutional neural
- deep convolutional
- layer
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请具体涉及一种图像识别方法、装置、计算机设备和存储介质。方法包括:通过获取待识别图像,并将待识别图像输入训练完成的深度卷积神经网络;其中深度卷积神经网络通过在卷积层进行数据并行,而在全连阶层进行模型并行的训练方案训练获得。本申请图像识别方法通过在深度卷积神经网络的训练过程中,通过在卷积层采取数据并行,在全连接层进行模型并行的训练方法,通过多重并行训练缩短有效地缩短了深度卷积神经网络的训练周期,进而整体提高了图像识别过程的处理效率。
Description
技术领域
本申请涉及深度学习领域,特别是涉及一种图像识别方法、装置、计算机设备以及存储介质。
背景技术
图像识别,是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对像的技术。目前可以通过VGG系列的深度卷积神经网络来实现图像识别。VGG(Visual Geometry Group)是牛津大学工程科学系的视觉几何组提出的针对大规模图像识别的算法,其名字VGG也来自研究团队的组名Visual Geometry Group。该算法在2014年的ImageNet挑战赛中获得了定位 (localisation)第一和分类(classification)第二的名次。现代的卷积神经网络通常都包含卷积层和全连接层。深度卷积神经网络中有大量的矩阵运算,适合使用GPU(Graphics Processing Unit,图形处理器)来加速。
因为VGG系列深度卷积神经网络有11-19不等的权重层,导致使用VGG 系列深度卷积神经网络的相关应用的开发时间变长,从而影响图像识别过程的处理效率。
发明内容
基于此,有必要针对上述技术问题,提供一种可以提高VGG系列深度卷积神经网络训练效率,进而提高图像识别处理效率的图像识别方法、装置、计算机设备以及存储介质。
一种图像识别方法,所述方法包括:
获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
在其中一个实施例中,所述对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练包括:
对当前训练数据进行卷积层前向传播训练,获取所述当前训练数据对应的最终卷积活动结果;
根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度;
根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
在其中一个实施例中,所述根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度包括:
依次对所述各训练器对应的所述最终卷积活动结果进行交叉传播处理,根据交叉传播后的所述最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;
根据所述当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取所述当前训练器对应的反向传播梯度。
在其中一个实施例中,所述根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络包括:
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;
同步所述各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
在其中一个实施例中,所述同步所述各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络包括:
控制各训练器将对应的权重矩阵发送至除自身外各训练器;
控制各训练器根据训练器数目以及所述权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
一种图像识别装置,所述装置包括:
图像获取模块,用于获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
结果输出模块,用于获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
在其中一个实施例中,还包括传播训练模块,用于:
对当前训练数据进行卷积层前向传播训练,获取所述当前训练数据对应的最终卷积活动结果;
根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度;
根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
在其中一个实施例中,所述传播训练模块还用于:
依次对所述各训练器对应的所述最终卷积活动结果进行交叉传播处理,根据交叉传播后的所述最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;
根据所述当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取所述当前训练器对应的反向传播梯度。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
上述图像识别方法、装置、计算机设备以及存储介质,通过获取待识别图像,将待识别图像输入已训练的深度卷积神经网络;获取待识别图像对应的图像识别结果;深度卷积神经网络的训练过程包括:获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。本申请图像识别方法通过在深度卷积神经网络的训练过程中,通过在卷积层采取数据并行,在全连接层进行模型并行的训练方法,通过多重并行训练缩短有效地缩短了深度卷积神经网络的训练周期,进而整体提高了图像识别过程的处理效率。
附图说明
图1为一个实施例中图像识别方法的应用环境图;
图2为一个实施例中图像识别方法的流程示意图;
图3为一个实施例中图2的步骤S140的子流程示意图;
图4为一个实施例中图2的步骤S160的子流程示意图;
图5为一个实施例中图像识别装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的图像识别方法,可以应用于如图1所示的应用环境中,其中,终端102通过网络与图像识别服务器104进行通信,图像识别服务器104可以接收终端102发送的待识别图像;而后通过图像识别服务器内的已训练的深度卷积神经网络识别待识别图像,并将识别结果反馈至终端。终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑。同时图像识别服务器104还用于对深度卷积神经网络进行训练,训练过程包括获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。其中各训练器可以通过CPU(Central Processing Unit,中央处理器)或者GPU(Graphics ProcessingUnit,图形处理器) 来实现。
如图2所示,在其中一个实施例中,本申请的图像识别方法,通过图像识别服务器实现,图像识别方法具体包括以下步骤:
S200、获取待识别图像,将待识别图像输入已训练的深度卷积神经网络。
S400,获取待识别图像对应的图像识别结果。
图像识别的过程就类似于分类的过程,待识别图像是指用户输入的未知分类的图像,而已训练的深度卷积神经网络则是用于对该待识别图像进行分类,获得对应的分类结果,即图像识别结果。
而将待识别图像输入已训练的深度卷积神经网络之前,还包括对深度卷积神经网络的训练过程,这一过程具体包括:
S120,获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层。
训练数据是指用于对初始深度卷积神经网络进行图像识别训练的数据,具体可以为一些训练图片,初始深度卷积神经网络具体是指VGG系列的深度卷积神经网络以及类似网络结构的深度卷积神经网络,其中VGG系列的深度卷积神经网络是指VGG的A、A-LRN、B、C、D、E六种不同配置的网络,类似网络结构的深度卷积神经网络是指权重层仅由卷积层和全连接层组成的深度卷积神经网络。首先获取预先建立的初始深度卷积神经网络,该初始深度卷积神经网络已进行对应的权重初始化。在其中一个实施例中,初始深度卷积神经网络为 VGG深度卷积神经网络的E配置,网络中所有的激活函数使用ReLU激活函数;网络中所有卷积核的大小设置为3x3;空间填充设置为1个像素点;空间池化采用的是五个最大池化层,这些池化层紧跟在一些卷积层后面(不是所有的卷积层后都会接最大池化),最大池化采取2x2像素窗口,步长为2;一系列卷积层后接了3个全连接层:头两层每层都有4096个通道,第三层执行1000个ILSVRC 分类,因此有1000个通道;最后一层是soft-max层。卷积层的宽度从开始第一层的64通道,然后每经过一个max-pooling层后,增加2倍,直到到达512通道。而该VGG深度卷积神经网络E配置的权重初始化如下:从以0为均值,10^(-2) 为方差的正态分布中采样权重;偏置量初始化为0。
S140,将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器。
训练器是用于对通过初始卷积神经网络进行训练的CPU或者GPU。分批输入是指根据预设的批大小将训练数据输入各个训练器,来对初始神经网络进行训练。
S160,对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练。
首先可以将获得的训练数据输入各个训练器,进行卷积层的前向传播训练,这部分输入各个训练器的训练数据不相同,通过不同的训练器来训练不同的训练数据,即对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练。而后通过各个训练器对初始深度卷积神经网络的卷积层训练结果,来对全连接层的各个部分进行并行训练,即深度卷积神经网络的全连接层进行模型并行的前向传播训练。在对卷积层以及全连阶层的前向传播训练完成后,可以通过各训练器在前向传播的基础上,计算反向传播过程中全连接层各部分的权重梯度,而后在卷积层传递权重梯度,进行数据并行的反向传播训练。
S180,根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
最后根据各个训练进程对所有训练数据训练完成后最后获得权重矩阵来对深度卷积神经网络的权重进行更新,获得可以用于识别图像的已训练的深度卷积神经网络。
上述图像识别方法,通过获取待识别图像,将待识别图像输入已训练的深度卷积神经网络;获取待识别图像对应的图像识别结果;深度卷积神经网络的训练过程包括:获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。本申请图像识别方法通过在深度卷积神经网络的训练过程中,通过在卷积层采取数据并行,在全连接层进行模型并行的训练方法,通过多重并行训练缩短有效地缩短了深度卷积神经网络的训练周期,进而整体提高了图像识别过程的处理效率。
如图3所示,在其中一个实施例中,S160包括:
S161,对当前训练数据进行卷积层前向传播训练,获取当前训练数据对应的最终卷积活动结果。
S163,根据最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取各训练器对应的反向传播梯度。
S165,根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
各个训练器计算当前批次上的训练数据的所有卷积活动,接下来计算全连接层的活动,所有训练器切换到模型并行。首先,每个训练器各获取当前批次的训练数据,而后将该批次训练数据对应的最终卷积活动结果,其中,最终卷积活动结果是指最后一个阶段的卷积层的活动。然后,每个训练器开始在包括自身最终卷积活动结果以及其他所有最终卷积活动结果之上,进行全连接层的正向传播和反向传播,获得各个训练器对应的反向传播梯度,而后在卷积层的最后一层根据各个训练器对应的反向传播梯度进行卷积层的反向传播。通过多个训练器进行并行的传播训练可以更加有效率地获提高训练效率。
在其中一个实施例中,S163包括:
依次对各训练器对应的最终卷积活动结果进行交叉传播处理,根据交叉传播后的最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果。
根据当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取当前训练器对应的反向传播梯度。
各个训练器开始依次在包括自身最终卷积活动结果以及其他所有最终卷积活动结果之上,计算全连接活动,获取当前训练器对应的全连接活动结果,而后通过反向传播根据全连接活动结果来进行全连接层的反向传播训练,更新全连接层的梯度,直至将该反向传播梯度传播至卷积层的最后一层,而后切换至下一个训练器重新开始依次在包括自身最终卷积活动结果以及其他所有最终卷积活动结果之上,计算全连接活动。这个步骤重复的次数具体与训练器的数目相等,对于有4个训练器同时训练的实施例,需要重复4次。这样在经过不断的前向和反向的训练之后,各训练器可以传播所有的梯度穿越整个卷积层。
在其中一个实施例中,根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重的步骤之后包括:
将下一批的训练数据重新作为当前训练数据,将更新后的初始深度卷积神经网络的权重重新作为当前初始深度卷积神经网络的权重,返回将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器的步骤。
在当前批次的训练数据训练完成后,可以输入下一批次的训练数据进行训练,进行训练,并根据训练的结果再次更新深度卷积神经网络的权重。可以通过多次训练来提高深度卷积神经网络的可靠性。
如图4所示,在其中一个实施例中,S180包括:
S181,根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;
S183,同步各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
其中一个实施例中,该步骤具体包括控制各训练器将对应的权重矩阵发送至除自身外各训练器;控制各训练器根据训练器数目以及权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
在反向传播完成之后,即可根据反向传播的最终结果来更新初始深度卷积神经网络的初始权重,获得可用于图像识别的预设神经网络。而这个过程需要同步各个训练器的卷积层和池化层权重,例如对于包含K个训练器的实施例,每个训练器发送自己计算的权重矩阵给其他所有训练器,各个训练器被指定去同步第1/K个权重矩阵;且每个训练器累计从其他各个其他训练器传来的相应的第1/K个权重的梯度矩阵。
在其中一个实施例中,图像识别方法包括:获取待识别图像,将待识别图像输入已训练的深度卷积神经网络;获取待识别图像对应的图像识别结果;其中已训练的深度卷积神经网络的训练过程包括:获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;对当前训练数据进行卷积层前向传播训练,获取当前训练数据对应的最终卷积活动结果;依次对各训练器对应的最终卷积活动结果进行交叉传播处理,根据交叉传播后的最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;根据当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取当前训练器对应的反向传播梯度。根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;控制各训练器将对应的权重矩阵发送至除自身外各训练器;控制各训练器根据训练器数目以及权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图5所示,本申请还包括一种图像识别装置,装置包括:
图像获取模块,用于获取待识别图像,将待识别图像输入已训练的已训练的深度卷积神经网络;
结果输出模块,用于获取待识别图像对应的图像识别结果;
已训练的已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;
将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;
对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
在其中一个实施例中,还包括传播训练模块,用于对当前训练数据进行卷积层前向传播训练,获取当前训练数据对应的最终卷积活动结果;根据最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取各训练器对应的反向传播梯度;根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
在其中一个实施例中,传播训练模块还用于依次对各训练器对应的最终卷积活动结果进行交叉传播处理,根据交叉传播后的最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;根据当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取当前训练器对应的反向传播梯度。
在其中一个实施例中,还包括权重更新模块,权重更新模块用于根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;同步各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
在其中一个实施例中,权重更新模块用于控制各训练器将对应的权重矩阵发送至除自身外各训练器;控制各训练器根据训练器数目以及权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
关于图像识别装置的具体限定可以参见上文中对于图像识别方法的限定,在此不再赘述。上述图像识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像识别方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待识别图像,将待识别图像输入已训练的深度卷积神经网络;
获取待识别图像对应的图像识别结果;
已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;
将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;
对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对当前训练数据进行卷积层前向传播训练,获取当前训练数据对应的最终卷积活动结果;根据最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取各训练器对应的反向传播梯度;根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:依次对各训练器对应的最终卷积活动结果进行交叉传播处理,根据交叉传播后的最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;根据当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取当前训练器对应的反向传播梯度。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;同步各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:控制各训练器将对应的权重矩阵发送至除自身外各训练器;控制各训练器根据训练器数目以及权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待识别图像,将待识别图像输入已训练的深度卷积神经网络;
获取待识别图像对应的图像识别结果;
已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,初始深度卷积神经网络包括卷积层以及全连接层;
将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器;
对初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对当前训练数据进行卷积层前向传播训练,获取当前训练数据对应的最终卷积活动结果;根据最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取各训练器对应的反向传播梯度;根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:依次对各训练器对应的最终卷积活动结果进行交叉传播处理,根据交叉传播后的最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;根据当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取当前训练器对应的反向传播梯度。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据对深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;同步各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:控制各训练器将对应的权重矩阵发送至除自身外各训练器;控制各训练器根据训练器数目以及权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程 ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限, RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步 DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM (ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus) 直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种图像识别方法,所述方法包括:
获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器,所述输入各个训练器的训练数据为不相同的训练数据;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络;
所述对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练包括:
对当前训练数据进行卷积层前向传播训练,获取所述当前训练数据对应的最终卷积活动结果;
根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度;
根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练;
所述根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度包括:
依次对所述各训练器对应的所述最终卷积活动结果进行交叉传播处理,根据交叉传播后的所述最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;
根据所述当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取所述当前训练器对应的反向传播梯度。
2.根据权利要求1所述的方法,其特征在于,所述根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重之后,还包括:
将下一批的训练数据重新作为当前训练数据,将更新后的初始深度卷积神经网络的权重重新作为当前初始深度卷积神经网络的权重,返回所述将训练数据分批并行输入初始深度卷积神经网络对应的多个训练器的步骤。
3.根据权利要求1所述的方法,其特征在于,所述训练器为CPU或者GPU。
4.根据权利要求1所述的方法,其特征在于,所述根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络包括:
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;
同步所述各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
5.根据权利要求4所述的方法,其特征在于,所述同步所述各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络包括:
控制各训练器将对应的权重矩阵发送至除自身外各训练器;
控制各训练器根据训练器数目以及所述权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
6.一种图像识别装置,其特征在于,所述装置包括:
图像获取模块,用于获取待识别图像,将所述待识别图像输入已训练的深度卷积神经网络;
结果输出模块,用于获取所述待识别图像对应的图像识别结果;
所述已训练的深度卷积神经网络的训练过程包括:
获取训练数据以及初始深度卷积神经网络,所述初始深度卷积神经网络包括卷积层以及全连接层;
将所述训练数据分批并行输入所述初始深度卷积神经网络对应的多个训练器,所述输入各个训练器的训练数据为不相同的训练数据;
对所述初始深度卷积神经网络的卷积层进行数据并行的前向传播训练,对所述深度卷积神经网络的全连接层进行模型并行的前向传播训练以及反向传播训练,对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练;
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,更新所述初始深度卷积神经网络的权重,获取已训练的深度卷积神经网络;
传播训练模块,用于:对当前训练数据进行卷积层前向传播训练,获取所述当前训练数据对应的最终卷积活动结果;根据所述最终卷积活动结果进行模型并行的前向传播训练以及反向传播训练,获取所述各训练器对应的反向传播梯度;根据处理后训练器中携带的所有反向传播梯度进行卷积层反向传播训练;
所述传播训练模块还用于:依次对所述各训练器对应的所述最终卷积活动结果进行交叉传播处理,根据交叉传播后的所述最终卷积活动结果进行模型并行的全连接层前向传播训练,获取当前训练器对应的全连接活动结果;根据所述当前训练器对应的全连接活动结果进行全连接层反向传播训练,获取所述当前训练器对应的反向传播梯度。
7.根据权利要求6所述的装置,其特征在于,还包括权重更新模块,用于:
根据所述对所述深度卷积神经网络的卷积层进行数据并行的反向传播训练的训练结果,获取各预设训练单元对应的权重矩阵;
同步所述各预设训练单元对应的权重矩阵,获取已训练的深度卷积神经网络。
8.根据权利要求7所述的装置,其特征在于,所述权重更新模块还用于:
控制各训练器将对应的权重矩阵发送至除自身外各训练器;
控制各训练器根据训练器数目以及所述权重矩阵对自身权重矩阵进行更新,获取已训练的深度卷积神经网络。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910531711.4A CN110263707B (zh) | 2019-06-19 | 2019-06-19 | 图像识别方法、装置、计算机设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910531711.4A CN110263707B (zh) | 2019-06-19 | 2019-06-19 | 图像识别方法、装置、计算机设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110263707A CN110263707A (zh) | 2019-09-20 |
CN110263707B true CN110263707B (zh) | 2021-09-10 |
Family
ID=67919398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910531711.4A Active CN110263707B (zh) | 2019-06-19 | 2019-06-19 | 图像识别方法、装置、计算机设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110263707B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111882028B (zh) * | 2020-06-08 | 2022-04-19 | 北京大学深圳研究生院 | 用于卷积神经网络的卷积运算装置 |
WO2022267036A1 (zh) * | 2021-06-25 | 2022-12-29 | 华为技术有限公司 | 神经网络模型训练方法和装置、数据处理方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108256575A (zh) * | 2018-01-17 | 2018-07-06 | 广东顺德工业设计研究院(广东顺德创新设计研究院) | 图像识别方法、装置、计算机设备和存储介质 |
-
2019
- 2019-06-19 CN CN201910531711.4A patent/CN110263707B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108256575A (zh) * | 2018-01-17 | 2018-07-06 | 广东顺德工业设计研究院(广东顺德创新设计研究院) | 图像识别方法、装置、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
One weird trick for parallelizing convolutional neural networks;Alex Krizhevsky;《arXiv:1404.5997v2》;20140426;第1-7页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110263707A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018068421A1 (zh) | 一种神经网络的优化方法及装置 | |
CN107292352B (zh) | 基于卷积神经网络的图像分类方法和装置 | |
CN111414353A (zh) | 智能化的缺失数据填充方法、装置及计算机可读存储介质 | |
CN110263707B (zh) | 图像识别方法、装置、计算机设备以及存储介质 | |
CN110824587B (zh) | 图像预测方法、装置、计算机设备和存储介质 | |
CN108830782B (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN111383741B (zh) | 医学成像模型的建立方法、装置、设备及存储介质 | |
WO2020252911A1 (zh) | 失踪人脸识别方法、装置、计算机设备和存储介质 | |
EP3754503A1 (en) | Allocation system, method and apparatus for machine learning, and computer device | |
CN111062324A (zh) | 人脸检测方法、装置、计算机设备和存储介质 | |
CN109919312B (zh) | 卷积神经网络的运算方法、装置及dpu | |
CN112183295A (zh) | 行人重识别方法、装置、计算机设备及存储介质 | |
CN112529176A (zh) | 一种加速脉冲神经网络的训练方法、终端及存储介质 | |
CN111784818A (zh) | 生成三维人体模型的方法、装置及计算机可读存储介质 | |
CN114078195A (zh) | 分类模型的训练方法、超参数的搜索方法以及装置 | |
CN113192175A (zh) | 模型训练方法、装置、计算机设备和可读存储介质 | |
CN110796652B (zh) | 图像处理方法、计算机设备和存储介质 | |
CN110472588B (zh) | 锚点框确定方法、装置、计算机设备和存储介质 | |
CN116882469B (zh) | 用于情感识别的脉冲神经网络部署方法、装置及设备 | |
CN110929779B (zh) | 重建神经元质量检测方法、有序点云分类方法及装置 | |
CN114638823B (zh) | 基于注意力机制序列模型的全切片图像分类方法及装置 | |
WO2023122896A1 (zh) | 一种数据处理方法和装置 | |
WO2021238734A1 (zh) | 一种神经网络的训练方法及相关设备 | |
CN114429030A (zh) | 一种动态环境下的可靠性预计方法及系统 | |
CN113642592A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |