神经网络的训练和人脸识别方法及装置、设备、存储介质与流程

文档序号:14796918发布日期:2018-06-29 19:25阅读:151来源:国知局

本发明涉及计算机视觉技术领域,尤其是一种神经网络的训练和人脸识别方法及装置、电子设备、计算机存储介质。



背景技术:

近年来,由于深度神经网络的发展,深度神经网络已被广泛应用于各类识别任务中。对于一般的物体、场景或动作识别任务,其测试样例的类别都是包含在训练集中的,因此,神经网络提取出的不同类别的特征只需能在特征空间可分即可。而人脸识别任务具有一定的特殊性,由于收集全世界所有人的脸部图片用于网络训练在客观上是无法实现的,因此,实际存在大量测试样例不在训练集合中的情况,人脸识别仍然是计算机视觉领域中难度最高的识别任务之一。



技术实现要素:

本发明实施例提供一种神经网络的训练和人脸识别技术。

本发明实施例提供的一种神经网络的训练方法,包括:

通过神经网络对样本图像进行处理,获得所述样本图像的分类结果;所述样本图像标注有类别标签,所述神经网络包括至少一个卷积层和两个全连接层;

对所述分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;所述优化处理包括归一化处理和/或角度处理;

基于所述损失函数值训练所述神经网络。

在基于本发明上述方法的另一个实施例中,所述神经网络包括至少一个卷积层和至少两个全连接层;

所述通过神经网络对样本图像进行处理,获得所述样本图像的分类结果,包括:

将样本图像输入所述神经网络,通过各所述卷积层对样本图像执行卷积计算,通过所述神经网络的第一个全连接层输出特征向量,通过所述神经网络的最后一个全连接层输出分类结果。

在基于本发明上述方法的另一个实施例中,还包括:

基于所述最后一个全连接层中权重值获取所述最后一个全连接层的权值向量;

对所述特征向量与所述权值向量执行点积操作,输出所述特征向量与所述权值向量的点积。

在基于本发明上述方法的另一个实施例中,所述优化处理包括归一化处理;

对所述获得的分类结果执行优化处理,包括:

将所述特征向量的模值归一化为特征常数,将所述权值向量的模值归一化为权值常数;

通过计算所述特征常数与权值常数和夹角余弦值的乘积,获得所述特征向量与所述权值向量的点积;所述夹角为所述特征向量与所述权值向量之间的夹角。

在基于本发明上述方法的另一个实施例中,所述优化处理包括角度处理;

对所述获得的分类结果执行优化处理,包括:

将夹角角度与角度裕量相乘获得新角度;所述夹角为所述特征向量与所述权值向量之间的夹角,所述角度裕量为常数;

通过计算所述特征向量的模值与所述权值向量的模值和新角度余弦值的乘积,获得所述特征向量与所述权值向量的点积。

在基于本发明上述方法的另一个实施例中,所述优化处理包括归一化处理和角度处理;

对所述获得的分类结果执行优化处理,包括:

将所述特征向量的模值归一化为特征常数,将所述权值向量的模值归一化为权值常数,并将夹角角度与角度裕量相乘获得新角度;所述夹角为所述特征向量与所述权值向量之间的夹角,所述角度裕量为常数;

通过计算所述特征常数与权值常数和新角度余弦值的乘积,获得所述特征向量与所述权值向量的点积。

在基于本发明上述方法的另一个实施例中,所述基于优化处理后的分类结果和已知的类别标签计算损失函数值,包括:

基于所述特征常数与权值常数和新角度余弦值的乘积,及已知的类别标签,通过所述损失函数公式计算得到损失函数值。

在基于本发明上述方法的另一个实施例中,所述特征常数和所述权值常数的乘积为大于1的常数。

在基于本发明上述方法的另一个实施例中,所述特征常数和所述权值常数均为1。

在基于本发明上述方法的另一个实施例中,所述角度裕量为大于1的常数。

在基于本发明上述方法的另一个实施例中,基于所述损失函数值训练所述神经网络,包括:

响应于所述损失函数的收敛速度大于或等于预设值,根据获得的损失函数值,通过反向梯度算法调整所述神经网络中的参数,相应于所述神经网络对应的损失函数的收敛速度大于或等于预设值,返回执行所述通过调整参数的神经网络对样本图像进行处理的操作。

在基于本发明上述方法的另一个实施例中,基于所述损失函数值训练所述神经网络,包括:

响应于所述损失函数计算损失函数值的次数小于预设值,根据获得损失函数值,通过反向梯度算法调整所述神经网络中的参数,并对所述损失函数计算损失函数值的次数加1;

响应于所述损失函数计算损失函数值的次数小于预设值,返回执行所述通过调整参数的神经网络对样本图像进行处理的操作。

本发明实施例的另一个方面,还提供了一种人脸识别方法,包括:

通过神经网络对图像进行处理,输出所述图像中人脸的特征和/或识别结果;所述神经网络基于如上所述方法训练获得。

本发明实施例的另一个方面,还提供了神经网络的训练装置,包括:

分类单元,用于通过神经网络对样本图像进行处理,获得所述样本图像的分类结果;所述样本图像标注有类别标签;

优化单元,用于对所述分类结果执行优化处理;所述优化处理包括归一化处理和/或角度处理;

损失计算单元,用于基于优化处理后的分类结果和已知的类别标签计算损失函数值;

训练单元,用于基于所述损失函数值训练所述神经网络。

在基于本发明上述装置的另一个实施例中,所述神经网络包括至少一个卷积层和至少两个全连接层;

所述分类单元,具体用于将样本图像输入所述神经网络,通过各所述卷积层对样本图像执行卷积计算,通过所述神经网络的第一个全连接层输出特征向量,通过所述神经网络的最后一个全连接层输出分类结果。

在基于本发明上述装置的另一个实施例中,还包括:

权值获取单元,用于基于所述最后一个全连接层中权重值获取所述最后一个全连接层的权值向量;

点积计算单元,用于对所述特征向量与所述权值向量执行点积操作,输出所述特征向量与所述权值向量的点积。

在基于本发明上述装置的另一个实施例中,所述优化处理包括归一化处理;

所述优化单元,具体用于将所述特征向量的模值归一化为特征常数,将所述权值向量的模值归一化为权值常数;

所述点积计算单元,具体用于通过计算所述特征常数与权值常数和夹角余弦值的乘积,获得所述特征向量与所述权值向量的点积;所述夹角为所述特征向量与所述权值向量之间的夹角。

在基于本发明上述装置的另一个实施例中,所述优化处理包括角度处理;

所述优化单元,具体用于将夹角角度与角度裕量相乘获得新角度;所述夹角为所述特征向量与所述权值向量之间的夹角,所述角度裕量为常数;

所述点积计算单元,具体用于通过计算所述特征向量的模值与所述权值向量的模值和新角度余弦值的乘积,获得所述特征向量与所述权值向量的点积。

在基于本发明上述装置的另一个实施例中,所述优化处理包括归一化处理和角度处理;

所述优化单元,具体用于将所述特征向量的模值归一化为特征常数,将所述权值向量的模值归一化为权值常数,并将夹角角度与角度裕量相乘获得新角度;所述夹角为所述特征向量与所述权值向量之间的夹角,所述角度裕量为常数;

所述点积计算单元,具体用于通过计算所述特征常数与权值常数和新角度余弦值的乘积,获得所述特征向量与所述权值向量的点积。

在基于本发明上述装置的另一个实施例中,所述损失计算单元,具体用于基于所述特征常数与权值常数和新角度余弦值的乘积,及已知的类别标签,通过所述损失函数公式计算得到损失函数值。

在基于本发明上述装置的另一个实施例中,所述特征常数和所述权值常数的乘积为大于1的常数。

在基于本发明上述装置的另一个实施例中,所述特征常数和所述权值常数均为1。

在基于本发明上述装置的另一个实施例中,所述角度裕量为大于1的常数。

在基于本发明上述装置的另一个实施例中,所述训练单元,具体用于响应于所述损失函数的收敛速度大于或等于预设值,根据获得的损失函数值,通过反向梯度算法调整所述神经网络中的参数,相应于所述神经网络对应的损失函数的收敛速度大于或等于预设值,返回执行所述通过调整参数的神经网络对样本图像进行处理的操作。

在基于本发明上述装置的另一个实施例中,所述训练单元,具体用于响应于所述损失函数计算损失函数值的次数小于预设值,根据获得损失函数值,通过反向梯度算法调整所述神经网络中的参数,并对所述损失函数计算损失函数值的次数加1;

响应于所述损失函数计算损失函数值的次数小于预设值,返回执行所述通过调整参数的神经网络对样本图像进行处理的操作。

根据本发明实施例的一个方面,提供的一种人脸识别装置,包括:

处理单元,通过神经网络对图像进行处理;所述神经网络基于如上任一所述神经网络的训练方法训练获得;

结果输出单元,用于输出所述图像中人脸的特征和/或识别结果。

根据本发明实施例的一个方面,提供的一种电子设备,包括处理器,所述处理器包括如上所述的神经网络的训练装置或如上所述的人脸识别装置。

根据本发明实施例的一个方面,提供的一种电子设备,包括:存储器,用于存储可执行指令;

以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成如上所述神经网络的训练方法或如上所述的人脸识别方法的操作。

根据本发明实施例的一个方面,提供的一种计算机存储介质,用于存储计算机可读取的指令,所述指令被执行时执行如上所述神经网络的训练方法或如上所述的人脸识别方法的操作。

基于本发明上述实施例提供的一种神经网络的训练方法及装置、电子设备、计算机存储介质,通过神经网络对样本图像进行处理,获得样本图像的分类结果,对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;由于执行了优化处理,一方面减小了分类结果对损失函数值的影响,实现快速计算损失函数;另一方面使损失函数值能下降到合理水平,不会遭遇损失函数收敛过慢的问题;通过该损失函数值训练的神经网络能够提取出更加紧致的特征。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:

图1为本发明神经网络的训练方法一个实施例的流程图。

图2为本发明神经网络的训练装置一个实施例的结构示意图。

图3为用来实现本申请实施例的终端设备或服务器的电子设备的结构示意图。

具体实施方式

现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

对于人脸识别,在无法收集所有测试样例的情况下,希望网络提取的训练集的特征在特征空间不仅可分,还要更加紧致而占据尽量少的特征空间,从而给集合外的测试样例留下空间,避免特征之间的重合导致的错误判别。

因此,基于深度神经网络的人脸识别算法的关键,在于学习到更加紧致的人脸特征:让网络提取出的同一个人的不同图片的特征在特征空间的距离尽可能近,即类内方差小;而让不同的人的特征在特征空间的距离尽可能远,即类间方差大。不论是基于分类的算法,还是直接训练特征的度量学习方法,本质目的都是获得更加紧致的特征。

图1为本发明神经网络的训练方法一个实施例的流程图。如图1所示,该实施例方法包括:

步骤101,通过神经网络对样本图像进行处理,获得样本图像的分类结果。

其中,样本图像标注有类别标签。

步骤102,对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;优化处理包括归一化处理和/或角度处理。

为了得到更紧致的特征,需要对分类结果进行优化处理,基于优化处理后的分类结果能够获得更利于训练的损失函数值,基于该损失函数值训练得到的神经网络能得到更紧致的人脸特征。

步骤103,基于损失函数值训练神经网络。

基于本发明上述实施例提供的一种神经网络的训练方法,通过神经网络对样本图像进行处理,获得样本图像的分类结果,对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;由于执行了优化处理,一方面减小了分类结果对损失函数值的影响,实现快速计算损失函数;另一方面使损失函数值能下降到合理水平,不会遭遇损失函数收敛过慢的问题;通过该损失函数值训练的神经网络能更快的提取特征。

在本发明神经网络的训练方法上述实施例的一个具体示例中,神经网络包括至少一个卷积层和两个全连接层,操作101包括:

将样本图像输入神经网络,通过各卷积层对样本图像执行卷积计算,通过神经网络的第一个全连接层输出特征向量,通过神经网络的最后一个全连接层输出分类结果。

本实施例中,该神经网络为用于人脸识别的神经网络,通常包括至少一个卷积层和至少两个全连接层,通过卷积层执行卷积计算,通过各卷积层分别获得不同层次的人脸特征,基于第一个全连接层输出针对整体人脸的特征向量,基于最后一个全连接层获得人脸图像的分类结果。

在本发明神经网络的训练方法上述实施例的一个具体示例中,还包括:

基于最后一个全连接层中权重值获取最后一个全连接层的权值向量;

对特征向量与权值向量执行点积操作,输出特征向量与权值向量的点积。

本实施例中,通过获取最后一个全连接层中的权重值,得到对应该全连接层的权值向量,该权值向量用于后续计算损失函数值;在计算损失函数值时,需要用到特征向量和该权值向量的点积,在实际应用中,可以通过改进的最后一个全连接层直接输出特征向量和权值向量的点积。

本发明神经网络的训练方法的另一个实施例,在上述各实施例的基础上,优化处理包括归一化处理;

对获得的分类结果执行优化处理,包括:

将特征向量的模值归一化为特征常数,将权值向量的模值归一化为权值常数;

通过计算特征常数与权值常数和夹角余弦值的乘积,获得特征向量与权值向量的点积;夹角为特征向量与权值向量之间的夹角。

本实施例中,特征向量的模值和权值向量的模值是一个可能为任何格式的任意数值,为了减少特征向量的模值和权值向量的模值在损失函数值计算中的影响,将特征向量的模值归一化为一个特征常数,特征常数的取值可以为1或大于1,将权值向量的模值归一化为一个权值常数,权值常数的取值可以为1或小于1;当特征常数和权值常数的取值不为1时,需要保证特征常数与权值常数的乘积大于1;

通过计算特征常数与权值常数和夹角余弦值的乘积,获得特征向量与权值向量的点积的计算公式如公式(1)所示:

其中,wj为权值向量,fi为网络对第i张图片提取出的特征向量,为权值向量与特征向量之间的夹角;为权值向量和特征向量的点积。

普通的分类网络损失函数公式如公式(2)所示:

其中,Lsoftmax为损失函数值,byi和bj为偏移向量,在本发明中对该值不做研究,可将其设置为0,为权值向量与特征向量之间的夹角;为权值向量和特征向量的点积。此时,将公式(1)带入公式(2)即可得到以下公式(3):

公式(3)为现有技术中常用的计算损失函数的公式,当将其中的权值向量和特征向量分别进行归一化为权重常数和特征常数时,当权重常数和特征常数时,损失函数的公式变换为如公式(4)所示:

此时,损失函数值只与特征向量和权值向量的夹角或余弦相似度相关;应用公式(4)计算损失函数值时,将更快,但还会存在其他一些问题,当权重常数和特征常数取值为1时,将出现网络优化问题,因为归一化会导致损失函数值有一个很高的下界,损失函数值将无法下降,无法获取性能较好的神经网络,因此,本实施例提出了将权重常数和特征常数的乘积为大于1的常数,其中设置特征常数大于1,权值常数小于1,通过改进的归一化操作,解决了优化问题,损失函数值能够下降到合理的水平。

本发明神经网络的训练方法的又一个实施例,在上述各实施例的基础上,优化处理包括角度处理;

对获得的分类结果执行优化处理,包括:

将夹角角度与角度裕量相乘获得新角度;夹角为特征向量与权值向量之间的夹角,角度裕量为常数;

通过计算特征向量的模值与权值向量的模值和新角度余弦值的乘积,获得特征向量与权值向量的点积。

本实施例中,通过将夹角角度与角度裕量相乘,此时基于余弦值的判断就需要更加严格,因此增大了训练的难度,使同一类的特征向量在特征空间中更紧致。

本发明神经网络的训练方法的还一个实施例,在上述各实施例的基础上,优化处理包括归一化处理和角度处理;

对获得的分类结果执行优化处理,包括:

将特征向量的模值归一化为特征常数,将权值向量的模值归一化为权值常数,并将夹角角度与角度裕量相乘获得新角度;夹角为特征向量与权值向量之间的夹角,角度裕量为常数;

通过计算特征常数与权值常数和新角度余弦值的乘积,获得特征向量与权值向量的点积。

在本实施例中,通过将归一化和引入角度裕量相结合,对损失函数实现了最优化,由上述实施例可知,通过归一化得到的损失函数的公式(4)中体现出损失函数值只与特征向量和权值向量的夹角或余弦相似度相关,此时,分类器将cosθ1>cosθ2的情况判断为类别1,反之判断为类别2,cosθ1>cosθ2体现的是特征与各类别的权重向量的余弦相似度。和哪个类别更像,就会被判断为哪类;此时再将角度裕量m引入分类损失函数中,损失函数的公式如公式(5)所示:

此时,必须要满足cos(mθ1)>cosθ2,才会将类别判别为1,即增大了训练的难度,使同一类的特征向量在特征空间更加紧致,角度更加接近于该类别对应的权重向量的方向;而此时,将将权重常数和特征常数取值为大于1的常数时,将达到最佳训练效果,既解决了优化问题,同时解决了特征紧致的问题。

在本发明神经网络的训练方法上述实施例的一个具体示例中,操作102包括:

基于特征常数与权值常数和新角度余弦值的乘积,及已知的类别标签,通过损失函数公式计算得到损失函数值。

本实施例中,计算损失函数值的过程可以之间带入公式(5)进行计算,还可以是对公式(5)中加入特征常数和权值常数的公式进行计算损失函数值。

在本发明神经网络的训练方法上述实施例的一个具体示例中,角度裕量为大于1的常数。

本实施例中,由余弦计算的特性决定,如有要使满足cos(mθ1)>cosθ2的难度大于cosθ1>cosθ2,此时需要角度裕量m>1,因此,本实施例中限定角度裕量为大于1的常数。

在本发明神经网络的训练方法上述实施例的一个具体示例中,操作103包括:

响应于损失函数的收敛速度大于或等于预设值,根据获得的损失函数值,通过反向梯度算法调整神经网络中的参数;

响应于神经网络对应的损失函数的收敛速度大于或等于预设值,返回执行所述通过调整参数的神经网络对样本图像进行处理的操作。

本实施例通过损失函数的收敛速度判断神经网络的训练程度,当神经网络对应的损失函数的收敛速度小于预设值时,得到训练好的神经网络。

在本发明神经网络的训练方法上述实施例的一个具体示例中,操作103包括:

响应于损失函数计算损失函数值的次数小于预设值,根据获得损失函数值,通过反向梯度算法调整神经网络中的参数,并对损失函数计算损失函数值的次数加1;

响应于损失函数计算损失函数值的次数小于预设值,返回执行通过调整参数的神经网络对样本图像进行处理的操作。

本实施例通过计算损失函数的次数判断神经网络的训练程度,当计算损失函数的次数达到预设值时,得到训练好的神经网络。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

图2为本发明神经网络的训练装置一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图2所示,该实施例的装置包括:

分类单元21,用于通过神经网络对样本图像进行处理,获得样本图像的分类结果。

其中,样本图像标注有类别标签。

优化单元22,用于对分类结果执行优化处理;优化处理包括归一化处理和/或角度处理。

为了得到更紧致的特征,需要对分类结果进行优化处理,基于优化处理后的分类结果能够获得更利于训练的损失函数值,基于该损失函数值训练得到的神经网络能得到更紧致的人脸特征。

损失计算单元23,用于基于优化处理后的分类结果和已知的类别标签计算损失函数值。

训练单元24,用于基于损失函数值训练神经网络。

基于本发明上述实施例提供的一种神经网络的训练装置,通过神经网络对样本图像进行处理,获得样本图像的分类结果,对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;由于执行了优化处理,一方面减小了分类结果对损失函数值的影响,实现快速计算损失函数;另一方面使损失函数值能下降到合理水平,不会遭遇损失函数收敛过慢的问题;通过该损失函数值训练的神经网络能更快的提取特征。

在本发明神经网络的训练装置上述实施例的一个具体示例中,神经网络包括至少一个卷积层和至少两个全连接层;

分类单元,具体用于将样本图像输入神经网络,通过各卷积层对样本图像执行卷积计算,通过神经网络的第一个全连接层输出特征向量,通过神经网络的最后一个全连接层输出分类结果。

在本发明神经网络的训练装置上述实施例的一个具体示例中,还包括:

权值获取单元,用于基于最后一个全连接层中权重值获取最后一个全连接层的权值向量;

点积计算单元,用于对特征向量与权值向量执行点积操作,输出特征向量与所述权值向量的点积。

本发明神经网络的训练装置的另一个实施例,在上述各实施例的基础上,优化处理包括归一化处理;

优化单元,具体用于将特征向量的模值归一化为特征常数,将权值向量的模值归一化为权值常数;

点积计算单元,具体用于通过计算特征常数与权值常数和夹角余弦值的乘积,获得特征向量与权值向量的点积;夹角为特征向量与权值向量之间的夹角。

本实施例中,特征向量的模值和权值向量的模值是一个可能为任何格式的任意数值,为了减少特征向量的模值和权值向量的模值在损失函数值计算中的影响,将特征向量的模值归一化为一个特征常数,特征常数的取值可以为1或大于1,将权值向量的模值归一化为一个权值常数,权值常数的取值可以为1或小于1;当特征常数和权值常数的取值不为1时,需要保证特征常数与权值常数的乘积大于1。

本发明神经网络的训练装置的又一个实施例,在上述各实施例的基础上,优化处理包括角度处理;

优化单元,具体用于将夹角角度与角度裕量相乘获得新角度;夹角为特征向量与权值向量之间的夹角,角度裕量为常数;

点积计算单元,具体用于通过计算特征向量的模值与权值向量的模值和新角度余弦值的乘积,获得特征向量与权值向量的点积。

本实施例中,通过将夹角角度与角度裕量相乘,此时基于余弦值的判断就需要更加严格,因此增大了训练的难度,使同一类的特征向量在特征空间中更紧致。

本发明神经网络的训练方法的还一个实施例,在上述各实施例的基础上,优化处理包括归一化处理和角度处理;

优化单元,具体用于将特征向量的模值归一化为特征常数,将权值向量的模值归一化为权值常数,并将夹角角度与角度裕量相乘获得新角度;夹角为特征向量与权值向量之间的夹角,角度裕量为常数;

点积计算单元,具体用于通过计算特征常数与权值常数和新角度余弦值的乘积,获得特征向量与权值向量的点积。

在本实施例中,通过将归一化和引入角度裕量相结合,对损失函数实现了最优化,由上述实施例可知,通过归一化得到的损失函数的公式(4)中体现出损失函数值只与特征向量和权值向量的夹角或余弦相似度相关,此时,分类器将cosθ1>cosθ2的情况判断为类别1,反之判断为类别2,cosθ1>cosθ2体现的是特征与各类别的权重向量的余弦相似度。和哪个类别更像,就会被判断为哪类;此时再将角度裕量m引入分类损失函数中,损失函数的公式如公式(5)所示:

此时,必须要满足cos(mθ1)>cosθ2,才会将类别判别为1,即增大了训练的难度,使同一类的特征向量在特征空间更加紧致,角度更加接近于该类别对应的权重向量的方向;而此时,将将权重常数和特征常数取值为大于1的常数时,将达到最佳训练效果,既解决了优化问题,同时解决了特征紧致的问题。

在本发明神经网络的训练装置上述实施例的一个具体示例中,损失计算单元,具体用于基于特征常数与权值常数和新角度余弦值的乘积,及已知的类别标签,通过损失函数公式计算得到损失函数值。

在本发明神经网络的训练装置上述实施例的一个具体示例中,特征常数和权值常数的乘积为大于1的常数。

在本发明神经网络的训练装置上述实施例的一个具体示例中,特征常数和权值常数均为1。

在本发明神经网络的训练装置上述实施例的一个具体示例中,角度裕量为大于1的常数。

在本发明神经网络的训练装置上述实施例的一个具体示例中,训练单元,具体用于响应于损失函数的收敛速度大于或等于预设值,根据获得的损失函数值,通过反向梯度算法调整神经网络中的参数,相应于神经网络对应的损失函数的收敛速度大于或等于预设值,返回执行通过调整参数的神经网络对样本图像进行处理的操作。

在本发明神经网络的训练装置上述实施例的一个具体示例中,训练单元,具体用于响应于损失函数计算损失函数值的次数小于预设值,根据获得损失函数值,通过反向梯度算法调整神经网络中的参数,并对损失函数计算损失函数值的次数加1;

响应于损失函数计算损失函数值的次数小于预设值,返回执行通过调整参数的神经网络对样本图像进行处理的操作。

本发明实施例的另一方面,还提供了一种人脸识别方法,包括:

通过神经网络对图像进行处理,输出图像中人脸的特征和/或识别结果;该神经网络基于本发明神经网络的训练方法上述任一实施例训练获得。

在深度神经网络中使用归一化特征人脸算法,无需修改传统的分类网络的框架。只需在网络的第一个全连接层输出人脸特征后将其归一化到指定常数,并将第二个全连接层中的权值向量归一化到,并在两向量做点积时,按前述公式加入角度裕量,最终训练分类器即可。

而在测试时,只需将网络输出的人脸特征提取出来,并与给定其他人脸特征做比对,即计算欧式距离或余弦相似度即可。经测试证明,本实施例提供的人脸识别方法可在现有公开数据集上实现最好的效果,证明了该方法的有效性和优越性。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

本发明人脸识别装置的一个实施例。该实施例的装置,包括:

处理单元,通过神经网络对图像进行处理;该神经网络基于本发明上述任一实施例的神经网络的训练方法训练获得;

结果输出单元,用于输出图像中人脸的特征和/或识别结果。

在深度卷积神经网络帧使用归一化特征人脸算法,无需修改传统的分类网络的框架。只需在网络的第一个全连接层输出人脸特征后将其归一化到指定常数,并将第二个全连接层中的权值向量归一化到,并在两向量做点积时,按前述公式加入角度裕量,最终训练分类器即可。

根据本发明实施例的一个方面,提供的一种电子设备,包括处理器,处理器包括本发明上述任一实施例所述的神经网络的训练装置或人脸识别装置。

根据本发明实施例的一个方面,提供的一种电子设备,包括:存储器,用于存储可执行指令;

以及处理器,用于与存储器通信以执行可执行指令从而完成本发明神经网络的训练方法或人脸识别方法上述任一实施例的操作。

根据本发明实施例的一个方面,提供的一种计算机存储介质,用于存储计算机可读取的指令,所述指令被执行时执行本发明神经网络的训练方法或人脸识别方法上述任一实施例的操作。

本发明实施例还提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图3,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备300的结构示意图:如图3所示,计算机系统300包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)301,和/或一个或多个图像处理器(GPU)313等,处理器可以根据存储在只读存储器(ROM)302中的可执行指令或者从存储部分308加载到随机访问存储器(RAM)303中的可执行指令而执行各种适当的动作和处理。通信部312可包括但不限于网卡,所述网卡可包括但不限于IB(Infiniband)网卡,

处理器可与只读存储器302和/或随机访问存储器330中通信以执行可执行指令,通过总线304与通信部312相连、并经通信部312与其他目标设备通信,从而完成本申请实施例提供的任一项方法对应的操作,例如,通过神经网络对样本图像进行处理,获得样本图像的分类结果;对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;优化处理包括归一化处理和/或角度处理;基于损失函数值训练神经网络。

此外,在RAM 303中,还可存储有装置操作所需的各种程序和数据。CPU301、ROM302以及RAM303通过总线304彼此相连。在有RAM303的情况下,ROM302为可选模块。RAM303存储可执行指令,或在运行时向ROM302中写入可执行指令,可执行指令使处理器301执行上述通信方法对应的操作。输入/输出(I/O)接口305也连接至总线304。通信部312可以集成设置,也可以设置为具有多个子模块(例如多个IB网卡),并在总线链接上。

以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。

需要说明的,如图3所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图3的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本发明公开的保护范围。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请实施例提供的方法步骤对应的指令,例如,通过神经网络对样本图像进行处理,获得样本图像的分类结果;对分类结果执行优化处理,基于优化处理后的分类结果和已知的类别标签计算损失函数值;优化处理包括归一化处理和/或角度处理;基于损失函数值训练神经网络。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。在该计算机程序被中央处理单元(CPU)301执行时,执行本申请的方法中限定的上述功能。

可能以许多方式来实现本发明的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。

本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1