CN108846340B - 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备 - Google Patents

人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN108846340B
CN108846340B CN201810566938.8A CN201810566938A CN108846340B CN 108846340 B CN108846340 B CN 108846340B CN 201810566938 A CN201810566938 A CN 201810566938A CN 108846340 B CN108846340 B CN 108846340B
Authority
CN
China
Prior art keywords
classification model
loss
training
hypersphere
face image
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
Application number
CN201810566938.8A
Other languages
English (en)
Other versions
CN108846340A (zh
Inventor
李安平
李绍欣
陈超
沈鹏程
李季檩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810566938.8A priority Critical patent/CN108846340B/zh
Publication of CN108846340A publication Critical patent/CN108846340A/zh
Priority to PCT/CN2019/085462 priority patent/WO2019233226A1/zh
Priority to US16/927,812 priority patent/US11335124B2/en
Application granted granted Critical
Publication of CN108846340B publication Critical patent/CN108846340B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及一种人脸识别及分类模型训练方法、装置、计算机可读存储介质和计算机设备,分类模型训练方法包括:将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量;将多维特征向量投影至超球体特征空间,得到投影特征;将投影特征输入分类模型的全连接层和分类器,得到训练样本的输出结果;调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降;根据训练样本的输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失;根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。该方法避免出现训练过程中,损失长时间不下降的问题,提高了分类模型的训练效率。

Description

人脸识别方法、装置及分类模型训练方法、装置、存储介质和 计算机设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种人脸识别方法、装置、计算机可读存储介质和计算机设备,及分类模型训练方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着人工智能技术的发展,人脸识别的应用范围越来越广,例如考勤,解锁等。人脸识别可以认为是分类问题,可基于分类模型实现。分类模型用于解决机器学习中的分类问题,其采用深度学习训练所得到的神经网络结构。分类问题是用于将事物打上一个标签,通常结果为离散值。例如判断一幅图片上的动物是一只猫还是一只狗。分类模型的作用是将输入数据,例如图像或语音等,提取特征,并将该特征与类别特征进行比较,达到分类的目的。
分类模型通过大量标记的训练样本,训练神经网络结构的参数得到。分类模型训练过程中,若分类模型的损失符合预期时,则停止训练。分类模型的损失反应了预测结果的准确度,当预测结果的准确率高时,分类模型的损失小。
然而在实际应用过程中,分类模型的损失通常一开始下降的非常快,但当训练到一定阶段时,分类模型的损失可能长时间不变化,这就导致分类模型的训练效率低。
发明内容
基于此,有必要针对训练效率低的技术问题,提供一种人脸识别方法、装置、计算机可读存储介质和计算机设备,及分类模型训练方法、装置、计算机可读存储介质和计算机设备。
一种人脸识别方法,包括:
获取待识别人脸图像;
将所述人脸图像输入分类模型,通过所述分类模型得到所述待识别人脸图像的识别结果;
其中,通过将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;将所述多维特征向量投影至超球体特征空间,得到投影特征;将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到分类模型。
一种分类模型训练方法,包括:
将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;
将所述多维特征向量投影至超球体特征空间,得到投影特征;
将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;
调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;
根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
一种人脸识别装置,包括:
图像获取模块,用于获取待识别人脸图像;
预测模块,用于将所述人脸图像输入分类模型,通过所述分类模型得到所述待识别人脸图像的识别结果;输入模块,用于将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;
投影模块,用于将所述多维特征向量投影至超球体特征空间,得到投影特征;
输出模块,用于将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;
调整模块,用于调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;
损失模块,用于根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
迭代模块,用于根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到所述分类模块。
一种分类模型训练模块,包括:
输入模块,用于将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;
投影模块,用于将所述多维特征向量投影至超球体特征空间,得到投影特征;
输出模块,用于将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;
调整模块,用于调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;
损失模块,用于根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
迭代模块,用于根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述方法的步骤。
上述的人脸识别方法、装置计算机可读存储介质和计算机设备,及分类模型训练方法、装置、计算机可读存储介质和计算机设备,根据所述训练样本的输出结果,调整所述分类模型的损失相关参数,在传统的softmax loss的基础上,考虑了其它的损失相关参数,并结合softmaxs loss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失长时间不下降的问题,从而提高了分类模型的训练效率。
附图说明
图1为一个实施例中分类模型训练方法的应用环境示意图;
图2为一个实施例中分类模型训练方法的流程图;
图3为另一个实施例中分类模型训练方法的流程图;
图4为与图3所示的流程图对应的时序图;
图5为三种方式下模型评估数据集上的分类精度变化曲线示意图;
图6为一个实施例的人脸识别装置的结构框图;
图7为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请的分类模型训练方法,基于神经网络深度学习海量数据,学习有用的特征,达到准确分类的目的。分类模型用于解决机器学习中的分类问题,分类问题是用于将事物打上一个标签,通常结果为离散值。例如判断一幅图片上的动物是一只猫还是一只狗。分类模型的作用是将输入数据,例如图像或语音等,提取特征,并将该特征与各类别特征进行比较,达到分类的目的。分类模型的应用场景可以为图像识别、语音识别或人脸识别等。一个实施例的分类模型训练方法的应用场景示意图如图1所示,包括服务器101和终端设备102。服务器101和终端设备102网络连接。
其中服务器101包括分类模型训练模块和预测模块。其中分类模型训练模块执行一种分类模型训练方法,得到分类模型。预测模块接收终端设备102输入的待分类数据,得到分类结果。基于分类模型的具体应用场景,终端设备可以为电子设备,例如智能家居设备、移动终端或考勤设备等。终端设备102基于终端设备具体的应用,采集语音信号或图像信息发送至服务器101,由服务器101进行分类,得到分类结果。服务器101将分类结果发送至终端设备102。终端设备102基于具体应用场景,根据分类结果可执行家居设备唤醒、考勤等相关指令。
在一个实施例中,提供一种分类模型训练方法,如图2所示,包括以下步骤:
S202,将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量。
本实施例中的分类模型基于神经网络建立,具体地,可采用卷积神经网络(CNN),例如,谷歌公司的Inception-Resnet卷积神经网络框架,又例如densenet和dual-pathnetworks等卷积神经网络框架。分类模型包括卷积层,池化层和激活函数层,通过卷积、池化和激活等操作,提取输入数据的多维特征向量。其中,每个参与训练的样本经过上述处理后会抽象为一个1×nd维的特征向量nd表示特征维数。
分类模型的训练,具体是向网络输入足够多的样本,通过一定算法调整分类模型的结构,使分类模型的输出与预期值相符。本实施中的训练样本是分类模型训练所需样本数据,可以为带标注的图像、声音或文本等等。
S204,将多维特征向量投影至超球体特征空间,得到投影特征。
具体地,将多维特征向量投影至超球体特征空间,得到投影特征,通过在超球体特征空间进行分类。超球体特征空间相对于传统的高维特征空间,具有更好的特征映射和特征分类的效果。本实施例中,超球体半径R可以为固定经验值,也可以为一个在训练过程中,根据训练数据确定的调优值,则投影特征为超球体半径与多维特征向量的乘积。
S206,将投影特征输入分类模型的全连接层,得到分类模型对训练样本的输出结果。
全连接层的作用是将投影特征进行整合,根据全连接层的输入(即投影特征向量)和全连接层的参数,获取样本的高层含义,即全局特征向量,之后用于分类。全连接层(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。
分类器即分类模型的softmax层,softmax的输入是T*1的向量,输出也是T*1的向量,这个向量的每个值表示这个样本属于每个类的概率。即softmax层的输出结果为该样本属于各个类的概率。
S208,调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失的下降。
具体地,损失相关参数是指与分类模型当次训练的损失相关的参数,损失相关参数用于使在当次训练过程中的分类模型的损失下降。传统的分类模型的损失根据输出结果和训练样本的实际类别计算得到,即softmax loss。分类模型的softmax loss与预测的分类结果是否正确有关,预测结果的准确度超高,则损失越小,预测结果的准确度越低,则损失越大。通常,基于神经网络建立的分类模型的训练目标,就是使分类模型的损失下降。本实施例的损失相关参数可以为类别之间的间隔,超球体空间半径等等。
S210,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失。
传统的分类模型的损失根据输出结和训练样本的实际类别计算得到,即softmaxloss。而本申请在传统的softmaxt loss的基础上,考虑了其它的损失相关参数,并结合softmaxs loss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失(Loss)长时间不下降的问题,从而提高了分类模型的训练效率。
S212,根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
反向传播的过程即根据损失调节分类模型的神经网络的参数的过程。本申请的根据损失进行反向传播优化分类模型的方法可采用传统的反向传播方法进行。在更新分类模型的相关参数后,基于优化的分类模型继续进行训练,直到达到训练停止条件,得到最终的分类模型的相关参数。训练停止条件可以是损失稳定且达到设定值,也可以是训练迭代次数到达设定的迭代次数等等。
上述的分类模型训练方法,根据训练样本的输出结果,调整分类模型的损失相关参数,在传统的softmaxloss的基础上,考虑了其它的损失相关参数,并结合softmaxs loss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失长时间不下降的问题,从而提高了分类模型的训练效率。
在另一个实施例中,分类模型的训练方法还包括超球体半径调整的步骤。具体的,该步骤包括:获取根据上次训练分类模型的损失计算得到的分类模型的变化量;根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径。调整分类模型的损失相关参数的步骤,包括:根据当次训练的超球体特征空间的半径计算超球体半径损失。
传统的方法,将多维特征向量投影至一个固定半径的超球体投影空间,而超球体半径R的大小选择没有给出合理的方法,都是根据经验固定一个值。在实际中,超球体半径R的大小依赖于训练数据,在不同的训练数据上超球体半径R的取值波动较大,且不同的超球体半径R对训练结果影响也很大。因此手动选择一个固定值,给调参带来很大不便,也很难调出一个最优超球体半径R值,这直接影响到训练效果。
本申请中,根据上次分类模型的损失,自适应学习当次超球体半径R,并计算超球体半径损失。具体地,分类模型的变化量根据上一次分类模型的损失计算得到。上次分类模型的输出结果中,将概率最大的类别作为预测类别,根据预测类别与实际类别可确定预测结果的准确度,预测结果越准确,则分类模型的损失越小,分类模型的变化量越小,预测结果越偏离,则分类模型的损失越大,分类模型的变化量越大。其中,变化量具体为上一次训练反向传播时,根据损失计算得到各参数的变化量,即Δ量。
根据变化量和上一次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径。变化量能够表示参数变化量,当变化量变大时,表示参数的调节幅度变大,此时将特征向量投影至固定半径的超球体特征空间,各特征之间的距离密集,不利于特征分类。本申请通过根据变化量自适应学习超球体半径,调节了特征空间的大小,使得特征在超球体特征空间投影的更分散,促进特征更好的分类,降低当次训练的分类模型的损失。
进一步地,将多维特征向量投影至超球体特征空间,得到投影特征,包括:根据当次训练的超球体特征空间的半径,将多维特征向量投影至超球体特征空间,得到投影特征。
具体地,根据超球体特征空间的半径进行投影的方式,包括:
其中,为投影特征,/>为多维特征向量,R为当次训练的超球体特征空间的半径。
进一步地,超球体半径损失为分类模型损失的一部分,本申请通过引入超球体半径损失,对学习到的超球体半径R进行约束,能够引导超球体半径R不要学得过大或过小。具体地,超球体半径损失R loss的计算方法为:
LR=(R-Rmin)2
其中,R为当次训练学习到的超球体半径,Rmin为经验值,具体表示希望学到的R值不要小于经验值。
进一步地,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失包括:根据输出结果和训练样本的实际类别计算第一损失值;根据第一损失值和超球体半径损失,计算得到分类模型的损失。
其中,第一损失值即根据训练样本的输出结果和训练样本的实际所属计算计算的softmax loss,根据softmax loss和超球体半径损失R loss得到分类模型的损失。在具体的实施方式中,可引入超球体半径损失的权重系数,控制超球体半径损失在整个分类模型的损失中的所占的比重。
具体地,计算分类模型的损失的方式为:
L=Ls1+λLR
其中,L为分类模型的损失,Ls1为第一损失值,即softmax loss,LR为超球体半径损失R loss,λ为控制超球体半径损失在分类模型中占的比重的权重系数。
上述的分类模型训练方法,根据上次训练的分类模型的损失计算变化量,根据变化量和上次训练的超球体半径得到本次训练的超球体半径,即本次训练的超球体半径是学习得到的,并对学习到的超球体半径采用超球体半径损失约束,防止超球体半径学得过大或过小,。该方法有效解决了超球体半径的手动设置的问题,减少了调参难度,增强了训练的通用性,并且也提升了训练效果。
在另一个实施例中,损失相关参数包括边界值,具体为训练样本与对应类别的边界值。其中,边界值即类间距离。当边界值较小时,说明相邻两个类别相似,不利于特征分类。
传统的在计算样本softmax loss时,强行加入一个固定边界(margin)值,希望通过该值来增加训练难度,使训练得到的特征映射更好,但是实际中,在训练刚开始,模型的分类效果非常不好,如果直接加入一个固定边界值会使训练loss非常大,会导致训练不收敛,给开始时的训练增加了难度。
本实施例中,根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本的边界值。
如前面的,训练样本的输出结果为该样本属于各个类的概率。概率具体可通过训练样本的投影特征向量与全连接层各类的参数的夹角确定,即,概率为训练样本的投影特征与全连接层各类的参数的余弦相似度。训练样本的投影特征向量与全连接层各类的参数的夹角越小,训练样本与该类别的特征的余弦相似度越大,训练样本属于该类别的概率越大;训练样本的投影特征向量与全连接层各类的参数的夹角越大,训练样本属于该类别的概率越小。
一般在训练刚开始期间,通过加入较小的边界值,而当分类效果较好时,一般在训练后期,通过加入较大的边界值,这种在不同时期自适应调节边界值保证了网络在训练后期学到更好映射的特征,同时又大大降低了训练开始时的训练难度。
以人脸识别为例,理想的人脸识别希望达到类内距离缩小,边界值扩大的效果,以实现精确的人脸识别。
softmax损失学习到的特征呈角度分布,说明欧式距离损失和softmax损失相容度不好,本申请中提出了角度距离。具体地,mi为第i个样本与某一类别的边界值。根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本的边界值,具体为,当训练样本与各类别的全连接层参数的余弦相似度大于或等于0时,根据所述训练样本与对应类别的全连接层参数的余弦相似度确定训练样本与该类别的边界值。
其计算方式如下:
其中,θi和/>两向量间的夹角,表示输出结果中第i个样本与第i个类别的余弦相似度,/>为第i个样本的投影特征,yi为某个第i个类别,/>为全连接层参数矩阵第yi列的参数。
通过上式,当投影特征与各类别矩阵参数的余弦相似度小于0时,表示特征分类效果好,此时可对边界值不做调整。当投影特征与各类别矩阵参数的余弦相似度大于或等于0时,表示特征分类效果不佳,根据余弦相似度调整边界值。
即本申请中的根据当前样本的分类效果自动调节边界值,保证在分类效果不好时,加入小的边界值,这种自适应边界值的选取既保证了网络在训练后期学到更好映射的特征,同时又大大降低了训练开始时的训练难度。
在另一个实施例中,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失,包括:根据输出结果、训练样本的实际类别及训练样本与对应类别的边界值,计算分类模型的损失。
具体地,分类模型的损失计算方式为:
其中,n为当次训练的样本个数,为第i个样本的投影特征,/>为全连接层参数矩阵第yi列的参数,R为超球体半径,θi为/>和/>两向量间的夹角,表示输出结果中第i个样本与第i个类别的余弦相似度,mi为第i个样本的边界值。
上述的分类模型训练方法,根据当前样本的分类效果自动调节边界值,保证在分类效果不好时,加入小的边界值,这种自适应边界值的选取既保证了网络在训练后期学到更好映射的特征,同时又大大降低了训练开始时的训练难度。
传统的方法对网络最后层的输出特征进行L2规范化,然后将规范化的特征再投影到一个半径为R的超球体投影空间上,但是这个超球体半径R的大小选择没有给出合理的方法,都是根据经验固定一个值,但是实际中,超球体半径的大小依赖于训练数据,在不同的训练数据上超球体半径的取值波动较大,且不同的超球体半径对训练结果影响也很大,因此手动选择一个固定值,给调参带来很大不便,也很难调出一个最优超球体半径,这直接影响到训练效果。同时,在计算样本softmax loss时,强行加入一个固定边界值,希望通过该值来增加训练难度,使训练得到的特征映射更好,但是实际中,在训练刚开始,模型的分类效果非常不好,如果直接加入一个固定边界(margin)值会使训练loss非常大,会导致训练不收敛,给开始时的训练增加了难度。
本实施例中,针对上面两个问题,提出损失相关参数包括超球体半径损失和边界值。其中边界值为训练样本与对应类别的边界值。
如图3和图4所示,分类模型训练方法包括以下步骤:
S302,将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量。
本实施例中的分类模型基于神经网络建立,具体地,可采用卷积神经网络(CNN),例如,谷歌公司的Inception-Resnet的卷积神经网络框架,又例如densenet和dual-pathnetworks等卷积神经网络框架。分类模型包括卷积层,池化层和激活函数层,通过卷积、池化和激活等操作,提取输入数据的多维特征向量。其中,每个参与训练的样本经过上述处理后会抽象为一个1×nd维的特征向量nd表示特征维数。
分类模型的训练,具体是向网络输入足够多的样本,通过一定算法调整分类模型的结构,使分类模型的输出与预期值相符。本实施中的训练样本是分类模型训练所需样本数据,可以为带标注的图像、声音或文本等等。
S304,将多维特征向量进行L2规范化,得到规范化的多维特征向量。
具体地,基于L2范数对多维特征向量约束,得到规范化的多维特征向量。L2规范化的目的在于使样本的多维特征单位化。具体地,计算规范化的多给特征向量的方式包括:
其中,表示规范化后的多维特征向量,f为多维特征向量,||f||2为特征向量f的L2范数。
S306,获取根据上次训练分类模型的损失计算得到的分类模型的变化量,根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径。
具体地,在每次进行投影前,根据上次训练时分类模型的损失自适应学习超球体半径。
具体地,分类模型的变化量根据上次分类模型的损失计算得到。上次分类模型的输出结果中,将概率最大的类别作为预测类别,根据预测类别与实际类别可确定预测结果的准确度,预测结果越准确,则分类模型的损失越小,分类模型的变化量越小,预测结果越偏离,则分类模型的损失越大,分类模型的变化量越大。其中,变化量具体为上一次训练反向传播时,根据损失计算得到各参数的变化量,即Δ量。
根据变化量和上一次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径。变化量能够表示参数变化量,当变化量变大时,表示参数的调节幅度变大,此时将特征向量投影至固定半径的超球体特征空间,各特征之间的距离密集,不利于特征分类。本申请通过根据变化量自适应学习超球体半径,调节了特征空间的大小,使得特征在超球体特征空间投影的更分散,促进特征更好的分类,降低当次训练的分类模型的损失。
S308,根据当次训练的超球体特征空间的半径,将多维特征向量投影至超球体特征空间,得到投影特征。
具体地,根据超球体特征空间的半径进行投影的方式,包括:
其中,为投影特征,/>为L2规范化的多维特征向量,R为当次训练的超球体特征空间的半径。
S310,对分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
为了保证训练优化集中于对向量角度的优化,本发明中对特征输入下一层的全连接层参数也进行了L2规范化,规范化公式如下:
其中,为规范化后的全连接层参数矩阵第j列的参数,Wj为全连接层参数矩阵第j列参数,||Wj||2为Wj的L2范数。
S312,将投影特征输入分类模型的全连接层,得到分类模型对训练样本的输出结果。
全连接层的作用是将投影特征进行整合,根据全连接层的输入(即投影特征向量)和全连接层的参数,获取样本的高层含义,即全局特征向量,之后用于分类。全连接层(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。
分类器即分类模型的softmax层,softmax的输入是T*1的向量,输出也是T*1的向量,这个向量的每个值表示这个样本属于每个类的概率。即softmax层的输出结果为该样本属于各个类的概率。
投影后的特征与规范化后的全连接层参数相乘得到样本的分类结果响应,具体实现公式如下:
其中,ofc为全连接层的输出,为投影特征,/>为规范化的全连接层参数矩阵。
S314,调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降。
损失相关参数包括超球体半径损失和边界值。
超球体半径损失为分类模型损失的一部分,本申请通过引入超球体半径损失,对学习到的超球体半径R值进行约束,能够引导超球体半径R值不要学得过大或过小。根据当次训练的超球体特征空间的半径计算超球体半径损失,具体地,超球体半径损失R loss的计算方法为:
LR=(R-Rmin)2
其中,R为当前学习到的超球体半径,Rmin为经验值,具体表示希望学到的R值不要小于经验值。
具体地,根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本与对应类别的边界值。
如前面的,训练样本的输出结果为该样本属于各个类的概率。概率具体可通过训练样本的投影特征向量与全连接层各类的参数的夹角确定,即,概率为训练样本的投影特征与全连接层各类的参数的余弦相似度。训练样本的投影特征向量与全连接层各类的参数的夹角越小,训练样本与该类别的特征的余弦相似度越大,训练样本属于该类别的概率越大;训练样本的投影特征向量与全连接层各类的参数的夹角越大,训练样本属于该类别的概率越小。
一般在训练刚开始期间,通过加入较小的边界值,而当分类效果较好时,一般在训练后期,通过加入较大的边界值,这种在不同时期自适应调节边界值保证了网络在训练后期学到更好映射的特征,同时又大大降低了训练开始时的训练难度。
以人脸识别为例,理想的人脸识别希望达到类内距离缩小,边界值扩大的效果,以实现精确的人脸识别。
softmax损失学习到的特征呈角度分布,说明欧式距离损失和softmax损失相容度不好,本申请中提出了角度距离。具体地,mi为第i个样本与某一类别的边界值。根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本的边界值,具体为,当训练样本与各类别的全连接层参数的余弦相似度大于或等于0时,根据所述训练样本与对应类别的全连接层参数的余弦相似度确定训练样本与该类别的边界值。
其计算方式如下:
其中,θi和/>两向量间的夹角,表示输出结果中第i个样本与第i个类别的余弦相似度,/>为第i个样本的投影特征,yi为某个第i个类别,/>为全连接层参数矩阵第yi列的参数。
通过上式,当投影特征与各类别矩阵参数的余弦相似度小于0时,表示特征分类效果好,此时可对边界值不做调整。当投影特征与各类别矩阵参数的余弦相似度大于或等于0时,表示特征分类效果不佳,根据余弦相似度调整边界值。
S316,根据训练样本的输出结果、训练样本的实际类别和边界值,计算得到第一损失值;根据第一损失值和超球体半径损失,得到分类模型的损失。
其中,第一损失值即softmaxs loss,本实施例中softmax loss考虑了边界值,即第一损失值根据训练样本的输出结果、训练样本的实际类别和边界值计算得到,具体地,第一损失值的计算方式包括:
其中,n为当次训练的样本个数,为第i个样本的投影特征,/>为全连接层参数矩阵第yi列的参数,R为超球体半径,θi为/>和/>两向量间的夹角,表示输出结果中第i个样本与第i个类别的余弦相似度,mi为第i个样本的边界值。
分类模型的损失计算方式为:
L=Ls+λLR
其中,L为训练模型的损失,Ls为自适应第一损失值,LR为超球体半径损失,λ为控制超球体半径R loss在整个训练模型的损失中占的比重,在一个实施例中,取λ=0.001。
S318,根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
本实施例中,超球体的半径由网络自身学习得到,并对学习到的超球体半径进行约束,防止R值学得过大或过小,有效解决了超球体半径的手动设置,减少了调参难度,增强了训练的通用性,并且也提升了训练效果;在对softmax loss加入margin时,根据当前样本的分类效果自动调节边界值,保证在分类效果不好时,加入小的边界值,这种自适应边界的选取既保证了网络在训练后期学到更好映射的特征,同时又大大降低了训练开始时的训练难度。
在一个实施例中,利用分类模型的训练方法训练用于人脸识别的分类模型,训练的过程包括以下步骤:
S1,将带标记的人脸图像输入至基于神经网络建立的分类模型,得到所述人脸图像的多维特征向量。
S2,将所述多维特征向量投影至超球体特征空间,得到投影特征。
S3,将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果。
S4,调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降。
S5,根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失。
S6,根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到用于人脸识别的分类模型。
基于得到的分类模型,进行人脸识别,具体地,获取待识别的人脸图像,将待识别的人脸图像输入分类模型,通过分类模型得到待识别人脸图像的识别结果。
下面,以分类模型应用于人脸识别为例,分别采用三种方式对人脸识别模型进行训练,以对本申请的分类模型训练方法的效果进行说明。第一种方式为:固定超球体半径R为30和不加入自适应边界值(margin)的方法,第二种方式为学习超球体半径R和不加入自适应(margin)的方法;第三种方式为学习超球体半径R和加入自适应(margin)的方法。
图5为在三种方式下模型评估数据集上的分类精度变化曲线,通过图5,可以看出,第三种方式的效果最好。
表1为实际业务数据中测试结果,实际业务数据集中包含了1:1实验数据和1:N实验数据,这两种实验分别对应人脸核身业务和人脸识别业务。
表1.实际业务评估集信息
表2.1:1人脸对比实验结果
表3.1:N人脸识别实验结果
表中far(false acceptance rate)代表错误接受率,Top1代表首次命中率。从表中的对比结果可以看出,无论是1:1人脸对比试验还是1:N人脸识别实验,方法3在相同的far值下正确通过率最高。
以上实验结果充分证明了本申请中所提的分类模型训练方法在人脸识别领域非常大的效果,有效提高人脸识别效果,能广泛用于公共安全、金融、电子政务等很多与人脸识别技术相关的产品中。
在另一个实施例中,提供一种人脸识别训练装置,如图6所示,包括:
图像获取模块602,用于获取待识别人脸图像。
预测模块604,用于将所述人脸图像输入分类模型,通过所述分类模型得到所述待识别人脸图像的识别结果。
输入模块606,用于将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量。
投影模块608,用于将多维特征向量投影至超球体特征空间,得到投影特征。
输出模块610,用于将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果。
调整模块612,用于调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降。
损失模块614,用于根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失。
迭代模块616,用于根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
上述的人脸识别装置,根据所述训练样本的输出结果,调整所述分类模型的损失相关参数,在传统的softmax loss的基础上,考虑了其它的损失相关参数,并结合softmaxsloss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失长时间不下降的问题,从而提高了分类模型的训练效率。
在另一个实施例中,人脸识别装置还包括:超球体半径调整模块,用于根据上次训练所述分类模型的损失计算得到的所述分类模型的变化量;根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径;
损失相关参数包括超球体半径损失,调整模块,用于根据当次训练的超球体特征空间的半径计算超球体半径损失。
在另一个实施列中,所述损失相关参数还包括边界值,所述调整模块,还用于根据所述训练样本的输出结果所确定的所述训练样本与各类别的余弦相似度,调整所述训练样本与对应类别的边界值。
在另一个实施例中,投影模块,用于根据当次训练的超球体特征空间的半径,将所述多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施例中,损失模块,用于根据所述输出结果、所述训练样本的实际类别和所述边界值,计算得到第一损失值;根据所述第一损失值和所述超球体半径损失,得到所述分类模型的损失。
在另一个实施例中,损失模块,用于根据所述输出结果和所述训练样本的实际类别计算第一损失值;根据所述第一损失值和所述超球体半径损失,计算得到所述分类模型的损失。
在另一个实施列中,损失模块,用于根据所述输出结果、所述训练样本的实际类别及所述边界值,计算所述分类模型的损失。
在另一个实施例中,人脸识别装置还包括第一规范化模块,用于将所述多维特征向量进行L2规范化,得到规范化的多维特征向量;投影模块,用于将规范化的多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施例中,人脸识别装置还包括第二规范化模块,用于对所述分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
一种分类模型训练装置,包括:
输入模块,用于将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;
投影模块,用于将所述多维特征向量投影至超球体特征空间,得到投影特征;
输出模块,用于将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;
调整模块,用于调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;
损失模块,用于根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
迭代模块,用于根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到所述分类模块。
图7示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是服务器。如图7所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现分类模型训练方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行分类模型训练方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的分类模型训练装置可以实现为一种计算机程序的形式,计算机程序可在如图7所示的计算机设备上运行。计算机设备的存储器中可存储组成该分类模型训练装置的各个程序模块,比如,图6所示的输入模块、投影模块和输出模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的分类模型训练方法中的步骤。
例如,图7所示的计算机设备可以通过如图6所示的分类模型训练装置中的输入模块执行将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量的步骤。计算机设备可通过投影模块执行将所述多维特征向量投影至超球体特征空间,得到投影特征的步骤。计算机设备可通过输出模块执行将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果的步骤。
一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下的步骤:
将训练样本输入至基于神经网络建立的分类模型,得到所述训练样本的多维特征向量;
将所述多维特征向量投影至超球体特征空间,得到投影特征;
将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述训练样本的输出结果;
调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降;
根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
在另一个实施例中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
根据上次训练所述分类模型的损失计算得到的所述分类模型的变化量;
根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径;
所述损失相关参数包括所述超球体半径损失,所述调整所述分类模型的损失相关参数,包括:
根据当次训练的超球体特征空间的半径计算超球体半径损失。
在另一个实施例中,所述损失相关参数还包括边界值;所述调整所述分类模型的损失相关参数还包括:
根据所述训练样本的输出结果所确定的所述训练样本与各类别的余弦相似度,调整所述训练样本与对应类别的边界值。
在另一个实施例中,所述损失相关参数包括边界值;所述根据所述训练样本的输出结果,调整所述分类模型的损失相关参数还包括:根据所述训练样本的输出结果所确定的所述训练样本与各类别的余弦相似度,调整所述训练样本与对应类别的边界值。
在另一个实施例中,所述将所述多维特征向量投影至超球体特征空间,得到投影特征,包括:根据当次训练的超球体特征空间的半径,将所述多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施例中,根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失,包括:
根据所述输出结果、所述训练样本的实际类别和所述边界值,计算得到第一损失值;
根据所述第一损失值和所述超球体半径损失,得到所述分类模型的损失。
在另一个实施例中,所述根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失,包括:
根据所述输出结果和所述训练样本的实际类别计算第一损失值;
根据所述第一损失值和所述超球体半径损失,计算得到所述分类模型的损失。
在另一个实施例中,所述根据所述输出结果、所述训练样本的实际类别及调整的所述损失相关参数,计算所述分类模型的损失,包括:
根据所述输出结果、所述训练样本的实际类别及所述边界值,计算所述分类模型的损失。
在另一个实施例中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
将所述多维特征向量进行L2规范化,得到规范化的多维特征向量;
所述将所述多维特征向量投影至超球体特征空间,得到投影特征,包括:将规范化的多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施列中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
对所述分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下的步骤:
获取待识别人脸图像;
将人脸图像输入分类模型,通过分类模型得到待识别人脸图像的识别结果;
其中,通过将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量;将多维特征向量投影至超球体特征空间,得到投影特征;将投影特征输入分类模型的全连接层,得到分类模型对训练样本的输出结果;调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降;根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失;根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到分类模型。
上述的计算机可读存储介质,根据训练样本的输出结果,调整分类模型的损失相关参数,在传统的softmax loss的基础上,考虑了其它的损失相关参数,并结合softmaxsloss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失长时间不下降的问题,从而提高了分类模型的训练效率。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量;
将多维特征向量投影至超球体特征空间,得到投影特征;
将投影特征输入分类模型的全连接层,得到分类模型对训练样本的输出结果;
调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降;
根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失;
根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件。
在另一个实施例中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
根据上次训练分类模型的损失计算得到的分类模型的变化量;
根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径;
损失相关参数包括超球体半径损失,调整分类模型的损失相关参数,包括:
根据当次训练的超球体特征空间的半径计算超球体半径损失。
在另一个实施例中,损失相关参数还包括边界值;调整分类模型的损失相关参数还包括:
根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本与对应类别的边界值。
在另一个实施例中,损失相关参数包括边界值;根据训练样本的输出结果,调整分类模型的损失相关参数还包括:根据训练样本的输出结果所确定的训练样本与各类别的余弦相似度,调整训练样本与对应类别的边界值。
在另一个实施例中,将多维特征向量投影至超球体特征空间,得到投影特征,包括:根据当次训练的超球体特征空间的半径,将多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施例中,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失,包括:
根据输出结果、训练样本的实际类别和边界值,计算得到第一损失值;
根据第一损失值和超球体半径损失,得到分类模型的损失。
在另一个实施例中,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失,包括:
根据输出结果和训练样本的实际类别计算第一损失值;
根据第一损失值和超球体半径损失,计算得到分类模型的损失。
在另一个实施例中,根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失,包括:
根据输出结果、训练样本的实际类别及边界值,计算分类模型的损失。
在另一个实施例中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
将多维特征向量进行L2规范化,得到规范化的多维特征向量;
将多维特征向量投影至超球体特征空间,得到投影特征,包括:将规范化的多维特征向量投影至超球体特征空间,得到投影特征。
在另一个实施列中,计算机程序被处理器执行时,使得处理器执行以下的步骤:
对分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
获取待识别人脸图像;
将人脸图像输入分类模型,通过分类模型得到待识别人脸图像的识别结果;
其中,通过将训练样本输入至基于神经网络建立的分类模型,得到训练样本的多维特征向量;将多维特征向量投影至超球体特征空间,得到投影特征;将投影特征输入分类模型的全连接层,得到分类模型对训练样本的输出结果;调整分类模型的损失相关参数;损失相关参数用于使分类模型的损失下降;根据输出结果、训练样本的实际类别及调整的损失相关参数,计算分类模型的损失;根据损失进行反向传播优化分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到分类模型。
上述的计算机设备,根据所述训练样本的输出结果,调整所述分类模型的损失相关参数,在传统的softmax loss的基础上,考虑了其它的损失相关参数,并结合softmaxsloss和损失相关参数,计算分类模型的损失。由于损失相关参数的作用在于使分类模型的损失下降,因而本申请的方法得到的分类模型的损失在训练过程中是不断下降的,避免出现训练过程中,损失长时间不下降的问题,从而提高了分类模型的训练效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (16)

1.一种人脸识别方法,包括:
获取待识别人脸图像;
将所述人脸图像输入分类模型,通过所述分类模型得到所述待识别人脸图像的识别结果;
其中,通过将带标记的人脸图像输入至基于神经网络建立的分类模型,得到所述带标记的人脸图像的多维特征向量;将所述带标记的人脸图像的多维特征向量投影至超球体特征空间,得到投影特征;将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述带标记的人脸图像的输出结果;根据所述带标记的人脸图像的输出结果所确定的所述带标记的人脸图像与各类别的余弦相似度,当所述带标记的人脸图像与各类别的余弦相似度大于或等于0时,调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降,所述损失相关参数包括所述带标记的人脸图像与对应类别的边界值;根据所述输出结果、所述带标记的人脸图像的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到所述分类模型。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据上次训练所述分类模型的损失计算得到的所述分类模型的变化量;
根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径;
所述损失相关参数包括所述超球体半径损失,所述调整所述分类模型的损失相关参数,包括:
根据当次训练的超球体特征空间的半径计算超球体半径损失。
3.根据权利要求2所述的方法,其特征在于,所述将所述多维特征向量投影至超球体特征空间,得到投影特征,包括:根据当次训练的超球体特征空间的半径,将所述多维特征向量投影至超球体特征空间,得到投影特征。
4.根据权利要求2所述的方法,其特征在于,根据所述输出结果、所述带标记的人脸图像的实际类别及调整的所述损失相关参数,计算所述分类模型的损失,包括:
根据所述输出结果、所述带标记的人脸图像的实际类别和所述边界值,计算得到第一损失值;
根据所述第一损失值和所述超球体半径损失,得到所述分类模型的损失。
5.根据权利要求1所述的方法,其特征在于,所述根据所述输出结果、所述带标记的人脸图像的实际类别及调整的所述损失相关参数,计算所述分类模型的损失,包括:
根据所述输出结果、所述带标记的人脸图像的实际类别及所述边界值,计算所述分类模型的损失。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述将所述多维特征向量投影至超球体特征空间,得到投影特征之前,还包括:
将所述多维特征向量进行L2规范化,得到规范化的多维特征向量;
所述将所述多维特征向量投影至超球体特征空间,得到投影特征,包括:将规范化的多维特征向量投影至超球体特征空间,得到投影特征。
7.根据权利要求1或6所述的方法,其特征在于,在将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述带标记的人脸图像的输出结果之前,还包括:
对所述分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
8.一种人脸识别装置,包括:
图像获取模块,用于获取待识别人脸图像;
预测模块,用于将所述人脸图像输入分类模型,通过所述分类模型得到所述待识别人脸图像的识别结果;
输入模块,用于将带标记的人脸图像输入至基于神经网络建立的分类模型,得到所述带标记的人脸图像的多维特征向量;
投影模块,用于将所述多维特征向量投影至超球体特征空间,得到投影特征;
输出模块,用于将所述投影特征输入所述分类模型的全连接层,得到所述分类模型对所述带标记的人脸图像的输出结果;
调整模块,用于根据所述带标记的人脸图像的输出结果所确定的所述带标记的人脸图像与各类别的余弦相似度,当所述带标记的人脸图像与各类别的余弦相似度大于或等于0时,调整所述分类模型的损失相关参数;所述损失相关参数用于使所述分类模型的损失下降,所述损失相关参数包括所述带标记的人脸图像与对应类别的边界值;
损失模块,用于根据所述输出结果、所述带标记的人脸图像的实际类别及调整的所述损失相关参数,计算所述分类模型的损失;
迭代模块,用于根据所述损失进行反向传播优化所述分类模型,并基于优化的分类模型进行训练直到达到训练停止条件,得到所述分类模型。
9.根据权利要求8所述的装置,其特征在于,所述人脸识别装置还包括:
超球体半径调整模块,用于根据上次训练所述分类模型的损失计算得到的所述分类模型的变化量;根据变化量和上次训练所采用的超球体特征空间的半径,计算当次训练的超球体特征空间的半径;
所述调整模块,还用于根据当次训练的超球体特征空间的半径计算超球体半径损失。
10.根据权利要求9所述的装置,其特征在于,所述投影模块还用于:
根据当次训练的超球体特征空间的半径,将所述多维特征向量投影至超球体特征空间,得到投影特征。
11.根据权利要求9所述的装置,其特征在于,所述损失模块还用于:
根据所述输出结果、所述带标记的人脸图像的实际类别和所述边界值,计算得到第一损失值;根据所述第一损失值和所述超球体半径损失,得到所述分类模型的损失。
12.根据权利要求8所述的装置,其特征在于,所述损失模块还用于:
根据所述输出结果、所述带标记的人脸图像的实际类别及所述边界值,计算所述分类模型的损失。
13.根据权利要求8所述的装置,其特征在于,所述人脸识别装置还包括:
第一规范化模块,用于将所述多维特征向量进行L2规范化,得到规范化的多维特征向量;所述将所述多维特征向量投影至超球体特征空间,得到投影特征,包括:将规范化的多维特征向量投影至超球体特征空间,得到投影特征。
14.根据权利要求13所述的装置,其特征在于,所述人脸识别装置还包括:
第二规范化模块,用于对所述分类模型的全连接层参数进行L2规范化,得到规范化后的全连接层参数。
15.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
16.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
CN201810566938.8A 2018-06-05 2018-06-05 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备 Active CN108846340B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810566938.8A CN108846340B (zh) 2018-06-05 2018-06-05 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备
PCT/CN2019/085462 WO2019233226A1 (zh) 2018-06-05 2019-05-05 人脸识别方法、分类模型训练方法、装置、存储介质和计算机设备
US16/927,812 US11335124B2 (en) 2018-06-05 2020-07-13 Face recognition method and apparatus, classification model training method and apparatus, storage medium and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810566938.8A CN108846340B (zh) 2018-06-05 2018-06-05 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN108846340A CN108846340A (zh) 2018-11-20
CN108846340B true CN108846340B (zh) 2023-07-25

Family

ID=64210632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810566938.8A Active CN108846340B (zh) 2018-06-05 2018-06-05 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备

Country Status (3)

Country Link
US (1) US11335124B2 (zh)
CN (1) CN108846340B (zh)
WO (1) WO2019233226A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108846340B (zh) * 2018-06-05 2023-07-25 腾讯科技(深圳)有限公司 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备
KR20210069467A (ko) * 2019-12-03 2021-06-11 삼성전자주식회사 뉴럴 네트워크의 학습 방법 및 장치와 뉴럴 네트워크를 이용한 인증 방법 및 장치
CN111428553B (zh) * 2019-12-31 2022-07-15 深圳数联天下智能科技有限公司 人脸色素斑识别方法、装置、计算机设备和存储介质
CN111428552B (zh) * 2019-12-31 2022-07-15 深圳数联天下智能科技有限公司 黑眼圈识别方法、装置、计算机设备和存储介质
CN111242222B (zh) * 2020-01-14 2023-12-19 北京迈格威科技有限公司 分类模型的训练方法、图像处理方法及装置
CN111126577A (zh) * 2020-03-30 2020-05-08 北京精诊医疗科技有限公司 一种针对不均衡样本的损失函数设计方法
CN112101542A (zh) * 2020-07-24 2020-12-18 北京沃东天骏信息技术有限公司 机器学习模型的训练方法、装置、人脸的识别方法和装置
CN112597823A (zh) * 2020-12-07 2021-04-02 深延科技(北京)有限公司 注意力识别方法、装置、电子设备及存储介质
CN113111953B (zh) * 2021-04-20 2022-08-26 深圳吉祥星科技股份有限公司 一种投影画质处理装置
CN113191489B (zh) * 2021-04-30 2023-04-18 华为技术有限公司 二值神经网络模型的训练方法、图像处理方法和装置
CN113553577B (zh) * 2021-06-01 2023-03-24 中国人民解放军战略支援部队信息工程大学 基于超球面变分自动编码器的未知用户恶意行为检测方法及系统
CN117391646B (zh) * 2023-12-11 2024-03-22 深圳市伊登软件有限公司 一种协同创新管理系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103679160A (zh) * 2014-01-03 2014-03-26 苏州大学 一种人脸识别方法和装置
CN104463211A (zh) * 2014-12-08 2015-03-25 天津大学 基于最大球心距的支持向量描述方法
WO2018054283A1 (zh) * 2016-09-23 2018-03-29 北京眼神科技有限公司 人脸模型的训练方法和装置、人脸认证方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120314916A1 (en) * 2011-06-13 2012-12-13 Reagan Inventions, Llc Identifying and tagging objects within a digital image
KR102094723B1 (ko) * 2012-07-17 2020-04-14 삼성전자주식회사 견고한 얼굴 표정 인식을 위한 특징 기술자
CN106203331B (zh) * 2016-07-08 2019-05-17 苏州平江历史街区保护整治有限责任公司 一种基于卷积神经网络的人群密度估算方法
CN106548210B (zh) * 2016-10-31 2021-02-05 腾讯科技(深圳)有限公司 基于机器学习模型训练的信贷用户分类方法及装置
CN107563279B (zh) * 2017-07-22 2020-12-22 复旦大学 针对人体属性分类的自适应权重调整的模型训练方法
CN108846340B (zh) * 2018-06-05 2023-07-25 腾讯科技(深圳)有限公司 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103679160A (zh) * 2014-01-03 2014-03-26 苏州大学 一种人脸识别方法和装置
CN104463211A (zh) * 2014-12-08 2015-03-25 天津大学 基于最大球心距的支持向量描述方法
WO2018054283A1 (zh) * 2016-09-23 2018-03-29 北京眼神科技有限公司 人脸模型的训练方法和装置、人脸认证方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于超球体多类支持向量数据描述的医学图像分类新方法;谢国城等;《计算机应用》(第11期);第3300-3304页 *

Also Published As

Publication number Publication date
CN108846340A (zh) 2018-11-20
US11335124B2 (en) 2022-05-17
US20200342214A1 (en) 2020-10-29
WO2019233226A1 (zh) 2019-12-12

Similar Documents

Publication Publication Date Title
CN108846340B (zh) 人脸识别方法、装置及分类模型训练方法、装置、存储介质和计算机设备
CN111950329B (zh) 目标检测及模型训练方法、装置、计算机设备和存储介质
CN111950656B (zh) 图像识别模型生成方法、装置、计算机设备和存储介质
CN110555526B (zh) 神经网络模型训练方法、图像识别方法和装置
CN109886343B (zh) 图像分类方法及装置、设备、存储介质
CN114419672A (zh) 基于一致性学习的跨场景持续学习的行人再识别方法及装置
CN113868366B (zh) 一种面向流数据的在线跨模态检索方法与系统
WO2021139448A1 (zh) 基于多个源模型修正新模型的方法、装置以及计算机设备
CN110765286A (zh) 跨媒体检索方法、装置、计算机设备和存储介质
CN116415170A (zh) 基于预训练语言模型的提示学习小样本分类方法、系统、设备及介质
Tang et al. Borderline knock adaptation based on online updated surrogate models
CN115392594A (zh) 一种基于神经网络和特征筛选的用电负荷模型训练方法
CN113344792B (zh) 一种图像生成方法、装置及电子设备
CN115374278A (zh) 文本处理模型蒸馏方法、装置、计算机设备及介质
Lebedev et al. Impostor networks for fast fine-grained recognition
CN114861671A (zh) 模型训练方法、装置、计算机设备及存储介质
CN105205497A (zh) 一种基于局部pca白化的图像表示方法和处理装置
CN117932337A (zh) 一种基于嵌入式平台训练神经网络的方法及装置
US20240161245A1 (en) Image optimization
KR102418887B1 (ko) 음성 인식을 위한 음향 모델 학습 장치 및 그 학습 방법
CN117056721A (zh) 模型参数的调整方法、装置、模型预测方法、设备及介质
CN111368861B (zh) 在图像物体检测过程中确定子部件顺序的方法和装置
CN112347893B (zh) 用于视频行为识别的模型训练方法、装置和计算机设备
CN113011555B (zh) 一种数据处理方法、装置、设备及存储介质
US20240203106A1 (en) Feature extraction model processing

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