CN111814717B - 人脸识别方法、装置及电子设备 - Google Patents

人脸识别方法、装置及电子设备 Download PDF

Info

Publication number
CN111814717B
CN111814717B CN202010689967.0A CN202010689967A CN111814717B CN 111814717 B CN111814717 B CN 111814717B CN 202010689967 A CN202010689967 A CN 202010689967A CN 111814717 B CN111814717 B CN 111814717B
Authority
CN
China
Prior art keywords
similarity
network
sample pair
boundary
vector
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
CN202010689967.0A
Other languages
English (en)
Other versions
CN111814717A (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 CN202010689967.0A priority Critical patent/CN111814717B/zh
Publication of CN111814717A publication Critical patent/CN111814717A/zh
Application granted granted Critical
Publication of CN111814717B publication Critical patent/CN111814717B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • 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
    • 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

Abstract

本申请公开了一种人脸识别方法、装置及电子设备,涉及人工智能技术领域。其中,该方法包括:获取人脸图像数据集;针对人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从样本对的两个人脸图像中提取的第一特征向量,基于获取的第一特征向量得到样本对的第一相似度;获取第二网络从样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到样本对的第二相似度;若第二相似度和第一相似度符合误识别条件,将样本对确定为边界样本对;根据边界样本对的第二相似度与第一相似度的损失值,调整第二网络的网络参数,并通过调整后的第二网络进行人脸识别。如此,可以使调整后的第二网络的识别准确度得到有效提高。

Description

人脸识别方法、装置及电子设备
技术领域
本申请涉及人工智能技术领域,更具体地,涉及一种人脸识别方法、装置及电子设备。
背景技术
随着人工智能(Artificial Intelligence,AI)技术的飞速发展,机器学习模型在人脸识别领域的应用越来越广泛。为了使得人脸识别的结果具有较高的精度,用于人脸识别的机器学习模型的结构通常比较复杂。而结构复杂的机器学习模型通常具有大量的模型参数,对硬件设备的存储空间、计算性能等提出了挑战。基于此,用于对原始模型进行压缩的算法研究越来越得到业界的重视。
一些场景中,机器学习模型的压缩算法主要通过知识蒸馏(knowledgeDistillation,KD)的框架来实现。比如,采用训练完成的复杂网络来指导待训练的轻量网络的训练,从而可以将复杂网络中的知识引入该轻量网络,从而使得训练后的轻量网络的工作性能逼近复杂网络。然而,通过上述方式训练得到的轻量网络对一些人脸图像的特征表达能力较差,导致对这些人脸图像的识别结果不够准确。
发明内容
本申请提出了一种人脸识别方法、装置及电子设备,可以提升模型对人脸图像的特征表达能力,从而提升模型对于人脸图像的识别结果的准确度。
一方面,本申请实施例提供了一种人脸识别方法,包括:获取人脸图像数据集;针对人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度;获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,第二网络的网络规模小于第一网络;若第二相似度和第一相似度符合误识别条件,则将所述样本对确定为边界样本对;根据边界样本对的第二相似度与第一相似度之间的损失值,调整第二网络的网络参数,并通过调整后的第二网络进行人脸识别。
另一方面,本申请实施例提供了一种人脸识别装置,包括:图像获取模块、第一相似度获取模块、第二相似度获取模块、确定模块、训练模块以及识别模块。其中,图像获取模块用于获取人脸图像数据集。第一相似度获取模块用于针对人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度。第二相似度获取模块用于获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络的网络规模小于所述第一网络。确定模块用于在所述第二相似度和所述第一相似度符合误识别条件的条件下,将所述样本对确定为边界样本对。训练模块用于根据所述边界样本对的第二相似度与第一相似度之间的损失值,调整所述第二网络的网络参数。识别模块用于通过调整后的第二网络进行人脸识别。
另一方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,其上存储有程序代码,所述程序代码可被处理器调用执行上述的方法。
本申请提供的方案,根据第一网络从样本对的两个人脸图像中分别提取的第一特征向量得到样本对的第一相似度,根据第二网络从样本对的两个人脸图像中分别提取的第二特征向量得到样本对的第二相似度,并将第二相似度和第一相似度符合误识别条件的样本对确定为边界样本对。如此,筛选出的边界样本对是容易被第二网络误识别的样本对。对应地,基于边界样本对的第二相似度与第一相似度的损失值来调整而网络的网络参数,可以重点提升第二网络对难以识别的边界样本对的特征表示能力和区分能力,使调整后的第二网络对边界样本对的识别准确度接近第一网络对边界样本对的识别准确度,而第一网络是规模较大的网络,其识别准确度较高,如此,调整后的第二网络的识别准确度也将得到一定提高。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种适用于本申请实施例的应用环境示意图。
图2示出了本申请一实施例提供的人脸识别方法的流程示意图。
图3示出了图2所示实施例中人脸识别方法的另一流程示意图。
图4示出了图2所示实施例中人脸识别方法的另一流程示意图。
图5示出了本申请另一实施例提供的人脸识别方法的流程示意图。
图6示出了本申请实施例提供的一个例子中的正边界样本对和负边界样本对的分布示意图。
图7示出了图5所示实施例中人脸识别方法的另一流程示意图。
图8示出了图7所示步骤S750的子步骤示意图。
图9示出了图5所示步骤S590的一种子步骤示意图。
图10示出了图5所示步骤S590的另一种子步骤示意图。
图11示出了本申请实施例提供的一种人脸识别装置的框图。
图12示出了本申请实施例提供的一种用于执行本申请实施例的人脸识别方法的电子设备的框图。
图13示出了本申请实施例提供的一种用于保存或携带实现本申请实施例的人脸识别方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
相关技术中,人脸识别模型的压缩通常采用基于知识蒸馏的压缩方法实现,即,采用一训练完成的网络来指导待训练网络的训练。其中,训练完成的网络通常具有复杂的结构和大量的网络参数(或,模型参数),而待训练网络相较于训练完成的网络,可以视为轻量级网络,其结构复杂度和网络参数数量均少于训练完成的网络。换句话说,待训练网络的网络规模小于训练完成的网络。其中,训练完成的网络可以称为教师网络,待训练网络可以称为学生网络。
通过教师网络指导学生网络的训练,可以将教师网络中的知识迁移到学生网络中,使规模较小的学生网络的性能接近规模较大的教师网络。
基于知识蒸馏的压缩方法可以有多种实现方式。一种方式中,可以在训练过程中使学生网络输出的分类概率尽可能接近教师网络输出的分类概率,换句话说,就是在训练过程中对齐学生网络和教师网络输出的分类概率。通常,学生网络输出的分类概率越接近教师网络输出的分类概率,学生网络的训练效果越好。然而,这种方式本质上是将人脸识别模型对人脸图像执行的人脸识别任务视为分类任务,但在实际应用中,人脸识别任务与分类任务存在较大差异,其更关注的是模型对人脸图像的特征表示,即,更关注的是特征提取层而非分类层。因此,采用这种方式训练得到的学生网络对人脸图像的特征表示往往不够准确。
另一种方式中,在训练过程中,可以使学生网络的最后一层的特征向量尽可能接近教师网络的中间层的特征向量,即,对齐学生网络的最后一层的特征向量与教师网络的中间层的特征向量,以提升学生网络的特征表示的准确度。这种方式可以改善前一方式存在的问题,但是其仅仅对特征表示进行对齐,而没有对基于特征表示得到的识别结果进行对齐,导致当学生网络与教师网络的网络参数差距过大时,采用这种方式训练学生网络的效果一般。比如,参数较小的学生网络采用直接对齐特征表示的方式难以使模型对人脸图像的区分能力得到提升,即,识别准确度不够高。
基于此,本申请提出了一种人脸识别方法、装置及电子设备,可以有效提升学生网络进行人脸识别的准确度。下面对该内容进行详细描述。
请参照图1,图1是一种适用于本申请实施例的应用环境示意图。在该应用环境中,服务器100可以通过网络与终端200通信连接。一种实施方式中,服务器100可以对待训练的人脸识别模型进行训练,终端200通过其中的客户端210可以登录服务器100,从而通过服务器100中的训练后的人脸识别模型,为用户提供人脸识别服务。可以理解,这里的客户端210可以是任意可以提供人脸识别服务的客户端,比如,一些具有刷脸支付功能的客户端。
另一种实施方式中,服务器100可以将训练后的人脸识别模型配置于终端200中,以使终端200基于配置的人脸识别模型为用户提供人脸识别服务。再一种实施方式中,终端200也可以自行对待训练的人脸识别模型进行训练,并基于训练后的人脸识别模型为用户提供人脸识别服务。
本申请实施例中,服务器100可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算、大数据和人工智能平台等基础云计算服务的云服务器。终端200可以是智能手机、平板电脑、笔记本电脑、个人计算机(Personal Computer,PC)、便携式穿戴设备、嵌入式设备等。这里的嵌入式设备例如可以是一些需要嵌入人脸识别程序的设备,例如支持脸部识别的门禁控制端,又如支持脸部识别的安防检测控制端等。
请参照图2,图2是本申请一实施例提供的一种人脸识别方法的流程示意图,该方法可以应用于电子设备,这里的电子设备可以是图1所示的服务器100或者终端200,本实施例对此没有限制。下面对该方法的步骤进行详细描述。
S210,获取人脸图像数据集。
其中,人脸图像数据集可以是一个训练数据集,其中包括多个人脸图像,所述多个人脸图像可以包括通过图像采集器件对真实人脸或人脸图像进行拍摄得到的图像,还可以包括从互联网(Internet)上抓取的人脸图像,本实施例对此没有限制。
S230,针对所述人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度。
其中,第一网络为已训练网络,即,一个训练完成的人脸识别模型,其可以用于指导S140中的第二网络的训练。可选地,第一网络可以采用卷积神经网络(ConvolutionalNeuralNetworks,CNN)实现。
本实施例中,人脸图像数据集中的任意两个人脸图像可以组成一个样本对,换句话说,一个样本对包括两个人脸图像,这两个人脸图像均属于人脸图像数据集。示例性地,假如人脸图像数据集Ω包括N(N≥2,N为整数)个人脸图像,所述N个人脸图像可以形成N2个样本对。每个样本对ij(i∈[1,N],j∈[1,N],i和j均为整数),其中包括的人脸图像分别为Ii和Ij。其中,可以通过第一网络分别从人脸图像Ii和Ij中提取特征向量,其中,第一网络从人脸图像Ii中提取的特征向量为第一特征向量F1i,第一网络从人脸图像Ij中提取的特征向量为第一特征向量F1j
值得说明的是,这里的第一特征向量可以是第一网络的隐含(hidden)层基于输入所述第一网络的人脸图像输出的特征图。隐含层是卷积神经网络中用于进行特征提取的结构。
当提取到第一特征向量F1i和F1j后,可以计算第一特征向量F1i和F1j的相似度,得到的相似度即为样本对ij的第一相似度。可选地,这里的第一相似度可以是余弦(cosine)相似度(又称余弦距离)、欧氏距离(EuclideanDistance,又称欧几里得距离)或者汉明距离等,本实施例对此没有限制。以第一相似度是余弦相似度为例,样本对ij的第一相似度可以通过如下表达式计算得到:
Figure BDA0002588975290000061
其中,S1-ij表示样本对ij的第一相似度,“|| ||2”表示L2范数。
S250,获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络的网络规模小于所述第一网络。
其中,第二网络为待训练网络,即,需要被训练的人脸识别模型,或者,尚未完成训练的人脸识别模型。第二网络也可以采用CNN实现,只是其结构比第一网络简单,比如,隐含层中设置的卷积层、池化层、全连接层的数量均比第一网络少,对应地,第二网络包括的网络参数也就比第一网络少。换句话说,第二网络的网络规模比第一网络小。由于第一网络可以用于指导第二网络的训练,因而,一些场景中,第一网络也可以称为教师(teacher)网络,第二网络也可以称为学生(student)网络。
本实施例中,S250的实现流程与S230类似。详细地,对于每个样本对ij,可以通过第二网络分别从样本对ij中的人脸图像Ii和Ij中提取特征向量,其中,第二网络从人脸图像Ii中提取的特征向量为第二特征向量F2i,第二网络从人脸图像Ij中提取的特征向量为第二特征向量F2j。这里的第二特征向量可以是第二网络的隐含层基于输入第二网络的人脸图像输出的特征图。
当提取到第二特征向量F2i和F2j之后,可以计算第二特征向量F2i和F2j之间的相似度,得到的相似度即为样本对ij的第二相似度。类似地,第二相似度也可以是余弦相似度、欧氏距离或汉明距离等。仍以第二相似度是余弦相似度为例,样本对ij的第二相似度可以通过如下表达式计算得到:
Figure BDA0002588975290000071
其中,S2-ij表示样本对ij的第二相似度。
可以理解,本实施例中,S250和S230没有执行顺序上的限制,两者可以按照一定顺序先后执行,也可以并行执行。
S270,若所述第二相似度和所述第一相似度符合误识别条件,则将所述样本对确定为边界样本对。
本实施例中,第一相似度和第二相似度为采用相同方式计算得到的相似度。比如,当第一相似度是余弦相似度时,第二相似度也是余弦相似度。又比如,当第一相似度是欧式距离时,第二相似度也是欧式距离。再比如,当第一相似度是汉明距离时,第二相似度也是汉明距离。
其中,误识别条件是针对样本对的第一相似度和第二相似度设置的条件关系式,当一个样本对的第一相似度和第二相似度满足该条件关系式时,表示第二网络对这个样本对中的人脸图像的特征表示能力和识别能力(或区分能力)较差,即对这个样本对中的人脸图像的识别准确度较差。如此,所确定的边界样本对是难以被第二网络准确识别的样本对。
S290,根据所述边界样本对的第二相似度与第一相似度之间的损失值,调整所述第二网络的网络参数。
本实施例中,可以采用特定的损失函数对所确定的各边界样本对的第二相似度和第一相似度进行计算,得到的函数值即为所述损失值。所述损失值也可以理解成基于第二网络得到的边界样本对的相似度与基于第一网络得到的边界样本对的相似度的分布距离。实施过程中,可以对第二网络的网络参数进行调整,以缩小所述特定的损失函数的函数值,即缩小损失值。
所述特定的损失函数可以有多种实现方式。一种实现方式中,在执行S290之前,本实施例提供的人脸识别方法还可以包括图3所示的步骤。
S281,获取第一向量与第二向量的范数的平方,所述第一向量是各所述边界样本对的第一相似度组成的向量,所述第二向量是各所述边界样本对的第二相似度组成的向量。
S282,将所述范数的平方确定为所述损失值。
详细地,所述损失值可以通过如下损失函数计算得到:
L1=||S1-S2||2, (3)
其中,S1为人脸图像数据集Ω中的各样本对的第一相似度S1-ij依次排列形成的向量,即第一向量;S2是人脸图像数据集Ω中的各样本对的第二相似度S2-ij依次排列形成的向量,即第二向量。||S1-S2||表示S1-S2的范数,对应地,||S1-S2||2表示S1-S2的范数的平方。L1即为损失值。
另一种实现方式中,在执行S290之前,本实施例提供的人脸识别方法还可以包括图4所示的步骤。
S283,获取第二平均值与第一平均值的差值的绝对值,其中,所述第一平均值为各所述边界样本对的第一相似度的平均值,所述第二平均值为各所述边界样本对的第二相似度的平均值。
S284,将获取的绝对值确定为损失值。
详细地,所述损失值可以通过如下损失函数计算得到:
L2=|avg(S1-ij)-avg(S2-ij)|, (4)
其中,avg(S1-ij)表示人脸图像数据集Ω中的各样本对的第一相似度S1-ij的平均值,即第一平均值。avg(S2-ij)表示人脸图像数据集Ω中的各样本对的第二相似度S2-ij的平均值,即第二平均值。L2即为损失值。可以理解,本实施例中,除了根据边界样本对的第二相似度与第一相似度的损失值来调整第二网络的网络参数之外,还可以一并根据其他损失值来调整第二网络的网络参数。在此情况下,第二网络的损失函数可以是上述的L1或L2与其他损失函数的和。
示例性地,人脸图像数据集中的人脸图像通常带有标签,标签表示的是人脸图像的真实类别。对应地,可以采用softmax损失函数(例如表示为L3)对第二网络基于人脸图像数据集中的人脸图像输出的预测类别与该人脸图像的真实类别进行计算。这里的L3可以是上文描述的其他损失函数。换句话说,第二网络可以采用L1+L3或者L2+L3作为损失函数。这里的L3仅为举例说明,并非用于限制本申请的范围。
实施过程中,电子设备可以按照图2所示的S230-S290进行多次迭代,直至第二网络满足优化条件,即可停止训练。该优化条件例如可以是达到预设的迭代次数,又如可以是损失函数的函数值收敛,或是损失函数的函数值不再减小等。
S2110,通过调整后的第二网络进行人脸识别。
上述的停止训练后得到的第二网络即为S290中的所述调整后的第二网络。电子设备可以通过所述调整后的第二网络提供人脸识别服务。
通过本实施例提供的方案,可以着重提升第二网络对难以识别的边界样本对的特征表示能力和区分能力,使调整后的第二网络对边界样本对中人脸图像的识别能力逐渐接近第一网络,而第一网络是规模较大的已训练网络,具有较高的识别准确度,因此,调整后的第二网络的识别准确度也比较高。
一些实施方式中,是在训练过程中对齐第二网络和第一网络对所有样本对的相似度,相较于这种方式,本实施例提供的方案可以针对性地提升第二网络对上述的边界样本对的特征表示能力和区分能力,考虑到第二网络对边界样本对之外的其他样本对的识别准确度本就不低,因此,通过针对性地提升第二网络对边界样本对的识别准确度,可以使第二网络的识别准确度从整体上得到提高。
请参照图5,图5是本申请一实施例提供的一种人脸识别方法流程示意图,该方法可以应用于电子设备,所述电子设备可以是图1所示的服务器100或者终端200。下面对该方法的步骤进行详细描述。
S510,获取人脸图像数据集,所述人脸图像数据集包括至少两个样本数据,每个样本数据包括具有身份标签的至少两个人脸图像,不同样本数据中的人脸图像具有不同的身份标签。
其中,身份标签可以是用于唯一地表示一个人的身份的标识符。本实施例中,人脸图像数据集可以是通过采样获得的,那么在采样过程中,可以针对多个人进行人脸图像的采集。详细地,针对每个人k,可以从至少两个角度采集其人脸图像,从而得到这个人的至少两个人脸图像,并为采集的至少两个人脸图像设置这个人的身份标签k。
如此,人脸图像数据集中将存在多个人的人脸图像,而其中每个人都具有至少两个人脸图像。这里,同一个人的所有人脸图像视为一个样本数据。
可以理解,本实施例中,可以获取多个人脸图像数据集,所述多个人脸图像数据集均可以用于第二网络的迭代训练。
S520,针对所述人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度。
本实施例中,S520的详细实现过程与前述实施例中的S230类似,可以参照前述实施例的相关描述。其中,以人脸图像数据集Ω为例,如果样本对ij包括的人脸图像Ii和Ij具有相同的身份标签,则样本对ij可以称为正样本对,对应地,正样本对的第一相似度可以称为第一正相似度。如果样本对ij包括的人脸图像Ii和Ij具有不同的身份标签,则样本对ij可以称为负样本对,对应地,负样本对的第一相似度可以称为第一负相似度。
S530,获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络的网络规模小于所述第一网络。
本实施例中,S530的详细实现过程与前述实施例中的S250类似,可以参照前述实施例的相关描述。其中,正样本对的第二相似度可以称为第二正相似度,负样本对的第二相似度可以称为第二负相似度。
S540,当所述样本对中的两个人脸图像具有相同的身份标签时,判断所述第二相似度是否小于所述第一相似度,以及判断所述第二相似度是否小于第一阈值。
S550,若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件,并将所述样本对确定为边界样本对。
本实施例中,对于正样本对,可以通过S540-S550来确定该正样本对是否是边界样本对。详细地,如果样本对ij是正样本对,其第二相似度和第一相似度的误识别条件可以是:
S2-ij<S1-ij,且S2-ij<S01, (5)
式(5)中,S2-ij表示正样本对ij的第二正相似度,S1-ij表示正样本对ij的第一正相似度。S01为第一阈值,其可以是0.55-0.7之间的任意值,可以凭经验灵活设置,比如可以设置为0.55或0.6。
当确定正样本对的第二相似度和第一相似度满足上述的误识别条件(5)时,可以确定正样本对是边界样本对。若正样本对的第二相似度和第一相似度不满足上述的误识别条件(5),则可以确定该正样本对不是边界样本对。本实施例中,被确定为边界样本对的正样本对可以称为正边界样本对。
S560,当所述样本对中的两个人脸图像具有不同的身份标签时,判断所述第二相似度是否大于所述第一相似度,以及判断所述第二相似度是否大于第二阈值。
S570,若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件,并将所述样本对确定为边界样本对。
本实施例中,如上所述的,当一个样本对中的两个人脸图像具有不同的身份标签时,表示这个样本对是负样本对。对于负样本对,可以通过S560-S570来确定该负样本对是否是边界样本对。详细地,以样本对ij是负样本对为例,其第二相似度和第一相似度的误识别条件可以是:
S2-ij>S1-ij,且S2-ij>S02, (6)
在式(6)中,S2-ij表示负样本对ij的第二负相似度,S1-ij表示负样本对ij的第一负相似度。S02为所述第二阈值,其可以是0.25-0.4之间的任意值,可以凭经验灵活设置,比如可以设置为0.35。
当确定负样本对的第二相似度和第一相似度满足误识别条件(6)时,可以确定该负样本对是边界样本对。若负样本对的第二相似度和第一相似度不满足误识别条件(6),则可以确定该负样本对不是边界样本对。本实施例中,被确定为边界样本对的符样本对可以称为负边界样本对。
本实施例中,以第一阈值是0.55、第二阈值是0.35为例,通过误识别条件(5)和(6)分别确定的边界样本对的分布区域如图6所示。
其中,曲线A1为通过第一网络得到的负样本对的第一负相似度的分布示意图。曲线A1上的点的横坐标表示基于第一网络提取的第一特征向量得到的一个第一负相似度,纵坐标表示具有该第一负相似度的负样本对的数量。曲线A2为通过第二网络得到的负样本对的第二负相似度的分布示意图。曲线A2上的点的横坐标表示基于第二网络提取的第二特征向量得到的一个第二负相似度,纵坐标表示具有该第二负相似度的负样本的数量。
基于条件式(6),可以确定负边界样本对的分布区域为阴影区域Se-1。详细地,在区域Se-1中,对于曲线A1上的点Pa1和曲线A2上的点Pa2,如果点Pa1的纵坐标与点Pa2的纵坐标相同,则有点Pa2的横坐标大于点Pa1的横坐标。并且,曲线A2上位于Se-1内的点的横坐标均大于0.35。
曲线B1为通过第一网络得到的正样本对的第一正相似度的分布示意图。曲线B1上的点的横坐标表示基于第一网络提取的第一特征向量得到的一个第一正相似度,纵坐标表示具有该第一正相似度的正样本对的数量。曲线B2为通过第二网络得到的正样本对的第二证相似度的分布示意图。曲线B2上的点的横坐标表示基于第二网络提取的第二特征向量得到的一个第二正相似度,纵坐标表示具有该第二正相似度的正样本对的数量。
基于条件式(5),可以确定正边界样本对的分布区域为阴影区域Se-2。详细地,在区域Se-2中,对于曲线B1上的点Pb1和曲线B2上的点Pb2,如果点Pb1的纵坐标与点Pb2的纵坐标相同,则有点Pb2的横坐标小于点Pb1的横坐标。并且,曲线B2上位于Se-2内的点的横坐标均小于0.55。
可以看出,所确定的边界样本对的第二相似度均不如第一相似度准确,并且处于0.35-0.55这一区间内。本实施例中,样本对的相似度可以理解成归一化后的概率值或置信度,即,样本对中的两个人脸图像相似的置信度。相似度处于0.35-0.55这一区间内的样本对,通常难以准确地确定该样本对中的人脸图像是否相似。因此,可以将这些样本对确定为边界样本对,从而可以在后续流程中,调整第二网络的网络参数,以使这些边界样本对的第二相似度尽可能地逼近第一相似度,从而提升第二网络对这些边界样本对的特征表示能力以及区分能力。
可选地,上述的S540-S570也可以替换成图7所示的步骤S740-S760。详细描述如下。
S740,当所述第二相似度大于或等于第二阈值,且小于或等于第一阈值时,将所述样本对确定为候选样本对。
S750,基于所述第一相似度和所述第二相似度,判断所述第一网络对所述候选样本对的识别准确度是否优于所述第二网络。
S760,若是,则确定所述候选样本对符合所述误识别条件,并将所述候选样本对确定为边界样本对。
基于上述分析,可以确定当某个样本对(如ij)的第二相似度处于0.5附近的区间时,比如上述的第一阈值和第二阈值所界定的区间时,表示第二网络难以准确地识别该样本对ij中的两个人脸图像,可以着重训练第二网络对该样本对ij中人脸图像的表征能力和识别能力。而对于第二网络的训练是以第一网络为参考的,因此,为了使第二网络的表征能力和识别能力得到提升,需要确保第一网络对于样本对ij的表征能力和识别能力是优于第一网络的。
基于此,可以将第二相似度处于[第二阈值,第一阈值]这一区间中的样本对确定为候选样本对,并判断第一网络对于每个候选样本对的识别准确度是否优于第二网络。详细地,S750可以通过图8所示的子步骤实现。
S751,判断所述候选样本对中的两个人脸图像的身份标签是否相同。若是,则执行S752;若否,则执行S753。
S752,在所述第一相似度大于所述第一阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络。
本实施例中,当候选样本对中的两个人脸图像具有相同的身份标签时,表示这两个人脸图像是同一个人的人脸图像,它们的真实相似度应该比较高。对应地,如果第一网络对于候选样本对的识别准确度优于第二网络,那么,基于第一网络得到的该候选样本对的第一相似度应该是大于基于第二网络得到的该候选样本对的第二相似度的。
S753,在所述第一相似度小于所述第二阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络。
类似地,当候选样本对中的两个人脸图像具有不同的身份标签时,表示这两个人脸图像不是同一个人的人脸图像,它们的真实相似度应该比较低。对应地,如果第一网络对于候选样本对的识别准确度优于第二网络,那么,基于第一网络得到的该候选样本对的第一相似度应该是小于基于第二网络得到的该候选样本对的第二相似度的。
请返回参照图5,在确定边界样本对之后,可以基于边界样本对训练第二网络,详细请参照下文对S580-S5100的描述。
S580,从各所述边界样本对中确定正边界样本对和负边界样本对,所述正边界样本对包括的两个人脸图像具有相同的身份标签,所述负边界样本对包括的两个人脸图像具有不同的身份标签。
本实施例的一种实施方式中,可以检测每个边界样本对中的两个人脸图像的身份标签是否相同,如果相同,则可以将该边界样本对确定为正边界样本对,如果不同,则可以将该边界样本对确定为负边界样本对。
另一种实施方式中,在获得所有样本对时,可以识别出每个样本对是正样本对还是负样本对,并可以为正样本对和负样本对打上不同的标签,比如,为正样本对添加第一标识符,为负样本对添加第二标识符。这里的第一标识符和第二标识符可以随意设置,只要两者可以区分开即可。比如,第一标识符可以是形如“positive”的字符串,第二标识符可以是形如“negative”的字符串。又比如,第一标识符可以是字符P,第二标识符可以是字符N。本实施例对此没有限制。
在确定各所述边界样本对之后,可以根据每个边界样本对所携带的标签来确定该边界样本对是正边界样本对还是负边界样本对。对应地,可以确定携带第一标识符的边界样本对是正边界样本对,携带第二标识符的边界样本对是负边界样本对。
S590,分别获取所述正边界样本对的第二相似度与第一相似度的第一损失值,以及所述负边界样本对的第二相似度与第一相似度的第二损失值,并将所述第一损失值与所述第二损失值之和确定为目标损失值。
本实施例中,可以分别基于正边界样本对和负边界样本对计算损失值,再在S5100中根据计算得到的两个损失值之和(即,目标损失值)调整第二网络的网络参数。如此,在训练过程中,可以分别缩小第二网络对正边界样本对的特征表示能力和区分能力,以及对负边界样本对的特征表示能力和区分能力。
可选地,S590可以有多种实现方式。一种实现方式中,S590可以包括如图9所示的步骤。
S591,分别获取第四向量与第三向量之差范数的平方,以及第六向量与第五向量之差的范数的平方,其中,所述第三向量是各所述正边界样本对的第一相似度组成的向量,所述第四向量是各所述正边界样本对的第二相似度组成的向量,所述第五向量是各所述负边界样本对的第一相似度组成的向量,所述第六向量是各所述负边界样本对的第二相似度组成的向量。
本实施例中,第一损失值可以通过如下表达式计算得到:
Lpos1=|S2-pos-S1-pos||2, (7)
其中,Lpos1可以表示正边界样本对的第二正相似度与第一正相似度之间的损失值,即第一损失值。S2-pos表示第四向量,其可以视为各正边界样本对的第二正相似度依次排列所形成的一维向量。S1-pos表示第三向量,其可以视为各正边界样本对的第一正相似度依次排列所形成的一维向量。第三向量和第四向量包含的元素数量可以相同。||S2-pos-S1-pos||表示S2-pos-S1-pos的L1范数,||S2-pos-S1-pos||2表示的是S2-pos-S1-pos的L1范数的平方。
类似地,第二损失值可以通过如下表达式计算得到:
Lneg1=||S2-neg-S1-neg||2, (8)
其中,Lneg1表示负边界样本对的第二负相似度与第一负相似度之间的损失值,即第二损失值。S2-neg表示第六向量,其可以视为各负边界样本对的第二负相似度依次排列而成的一维向量。S1-neg表示第五向量,其可以视为各负边界样本对的第一负相似度依次排列而成的一维向量。第五向量和第六向量的元素数量可以相同。
S592,将获取的两个范数的平方之和确定为目标损失值。
本实施例中,目标损失值L3可以通过如下表达式计算得到:
L3=Lpos1+Lneg, (9)
另一种实现方式中,S590可以包括如图10所示的步骤。详细描述如下。
S593,获取第三平均值与第四平均值的差值,获取第六平均值与第五平均值的差值,其中,所述第三平均值为各所述正边界样本对的第一相似度的平均值,所述第四平均值为各所述正边界样本对的第二相似度的平均值,所述第五平均值为各所述负边界样本对的第一相似度的平均值,所述第六平均值为各所述负边界样本对的第二相似度的平均值。
示例性地,第一损失值Lpos2可以通过如下表达式计算得到:
Lpos2=avg(S1-p)-avg(S2-pos), (10)
其中,avg(S1-pos)表示第三平均值,即S1-pos中各第一正相似度的平均值。avg(S2-pos)表示第四平均值,即S2-pos中各第二正相似度的平均值。值得说明的是,参照条件式(5),各正边界样本对的第一正相似度总是大于第二正相似度,因此,avg(S1-pos)也大于avg(S2-pos),对应地,式(10)中的Lpos2是一个正数。
第二损失值Lneg2可以通过如下表达式计算得到:
Lneg2=avg(S2-neg)-avg(S1-neg), (11)
其中,avg(S1-neg)表示第五平均值,即S1-neg中各第一负相似度的平均值。avg(S2-neg)表示第六平均值,即S2-neg中各第二负相似度的平均值。值得说明的是,参照条件式(6),各负边界样本对的第一负相似度总是小于第二负相似度,因此,avg(S1-neg)小于avg(S2-neg)。对应地,式(11)中的Lneg2是一个正数。
S594,将获取的两个差值之和确定为目标损失值。
详细地,目标损失值L4可以通过如下表达式计算得到:
L4=Lpos2+Lneg2, (12)
可以理解,上述的目标损失值的计算方式仅为举例说明,本实施例还可以通过其他方式来计算目标损失值。
与上述实施例类似的,除了目标损失值之外,电子设备还可以在训练过程中结合其他损失函数对第二网络的网络参数进行调整,本实施例对此没有限制。
S5100,根据所述目标损失值,调整所述第二网络的网络参数,并通过调整后的第二网络进行人脸识别。
本实施例中,S5100的详细实现过程与前述实施例中的S290和S2110类似,在此不再赘述。
通过本实施例提供的方案,可以从样本对中确定出难以被第二网络准确识别的边界样本对,并在训练过程中以这些边界样本对的第二相似度与第一相似度的损失值为依据对第二网络的网络参数进行调整,使得调整后的第二网络基于这些边界样本对得到的第二相似度逼近这些边界样本对的第一相似度。如此,第二网络对于难以识别的人脸图像的特征表示能力和区分能力都比较接近第一网络,即,第二网络的特征表示能力和区分能力得到了有效提升,从而可以具有更高的识别准确度。
并且,由于第二网络的规模较小,可以被配置于一些存储空间较小、计算资源较少的设备(如嵌入式设备、终端设备等)之中进行应用。换言之,通过本申请实施例提供的方案,可以使存储空间小、计算资源少的设备上部署的人脸识别模型的识别准确度得到提升。
示例性地,基于本实施例提供的方案得到的人脸识别模型(即,调整后的第二网络),其在多个测试集上的测试效果优于采用其他训练方式得到的人脸识别模型。如下表1所示,其中给出了在训练过程中对齐第二网络与第一网络的特征表示能力所得到的第二网络M1、在训练过程中对齐所有样本对的第一相似度与第二相似度所得到的第二网络M2,以及通过本实施例的得到人脸识别模型M3的测试数据,具体地,其中分别以三个开源人脸图像数据集LFW、CFP_FP以及IJB-C为测试集,示出了M1、M2和M3各自在测试集LFW上的准确率,在测试集CFP_FP上的准确率以及当误过率为1e-4(即,0.0001)时,在测试集IJB-C上的召回率。
表1
Figure BDA0002588975290000181
结合上表1可以看出,通过本实施例的方案得到的第二网络M3,其在测试集LFW上的准确率为99.67%,高于M1和M2在测试集LFW上的准确率。M3在测试集CFP_FP上的准确率为94.06%,也高于M1和M2。误过率一定的情况下,M3在测试集IJB-C上的召回率也高于M1和M2,这里的召回率可以理解为将正样本识别为正样本的概率,误过率则可以理解为将负样本识别为正样本的概率。可见,通过本实施例提供的方案得到的第二网络在各个测试集上的测试效果均优于M1和M2。
请参阅图11,其示出了本申请实施例提供的一种人脸识别装置的结构框图。该装置1100可以包括:图像获取模块1110、第一相似度获取模块1120、第二相似度获取模块1130、确定模块1140、训练模块1150以及识别模块1160。
其中,图像获取模块1110用于获取人脸图像数据集。
第一相似度获取模块1120用于针对所述人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度,所述第一网络为已训练网络。
第二相似度获取模块1130用于获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络为待训练网络,所述第二网络的网络规模小于所述第一网络。
确定模块1140用于在所述第二相似度和所述第一相似度符合误识别条件的条件下,将所述样本对确定为边界样本对。
训练模块1150用于根据所述边界样本对的第二相似度与第一相似度之间的损失值,调整所述第二网络的网络参数。
在此情况下,可选地,训练模块1150还可以用于:在根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,获取第一向量与第二向量的范数的平方,并将所述范数的平方确定为所述损失值,其中,所述第一向量是各所述边界样本对的第一相似度组成的向量,所述第二向量是各所述边界样本对的第二相似度组成的向量。
或者,训练模块1150还可以用于:在根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,获取第二平均值与第一平均值的差值的绝对值,并将获取的绝对值确定为所述损失值,其中,所述第一平均值为各所述边界样本对的第一相似度的平均值,所述第二平均值为各所述边界样本对的第二相似度的平均值。
识别模块1160通过调整后的第二网络进行人脸识别。
可选地,人脸图像数据集可以包括至少两个样本数据,每个样本数据包括具有相同身份标签的至少两个人脸图像,不同样本数据中的人脸图像具有不同的身份标签。在此情况下,确定模块1140还可以用于:
当所述样本对中的两个人脸图像具有相同的身份标签时,判断所述第二相似度是否小于所述第一相似度,以及判断所述第二相似度是否小于第一阈值;若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件。
可选地,第一阈值可以为0.55-0.7之间的任意值。
进一步地,确定模块1140还可以用于:当所述样本对中的两个人脸图像具有不同的身份标签时,判断所述第二相似度是否大于所述第一相似度,以及判断所述第二相似度是否大于第二阈值;若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件。
可选地,第二阈值可以为0.25-0.4之间的任意值。
可选地,确定模块1140也可以通过如下方式确定所述第一相似度和所述第二相似度是否符合所述误识别条件:当所述第二相似度大于或等于所述第二阈值,且小于或等于所述第一阈值时,将所述样本对确定为候选样本对;基于所述第一相似度和所述第二相似度,判断所述第一网络对所述候选样本对的识别准确度是否优于所述第二网络;若是,则确定所述候选样本对符合所述误识别条件。
可选地,所述确定模块1140基于所述第一相似度和所述第二相似度,判断所述第一网络对所述候选样本对的识别准确度是否优于所述第二网络的方式可以包括:
若所述候选样本对中的两个人脸图像的身份标签相同,则在所述第一相似度大于所述第一阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络;若所述样本对中的两个人脸图像的身份标签不同,则在所述第一相似度小于所述第二阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络。
在此情况下,训练模块1150还可以用于:
在根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,从各所述边界样本对中确定正边界样本对和负边界样本对,所述正边界样本对包括的两个人脸图像具有相同的身份标签,所述负边界样本对包括的两个人脸图像具有不同的身份标签;分别获取第四向量与第三向量之差的范数的平方,以及第六向量与第五向量之差的范数的平方,并将获取的两个范数的平方之和确定为所述损失值,其中,所述第三向量是各所述正边界样本对的第一相似度组成的向量,所述第四向量是各所述正边界样本对的第二相似度组成的向量,所述第五向量是各所述负边界样本对的第一相似度组成的向量,所述第六向量是各所述负边界样本对的第二相似度组成的向量。
或者,训练模块1150还可以用于:
在根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,从各所述边界样本对中确定正边界样本对和负边界样本对,所述正边界样本对包括的两个人脸图像具有相同的身份标签,所述负边界样本对包括的两个人脸图像具有不同的身份标签;获取第三平均值与第四平均值的差值,获取第六平均值与第五平均值的差值,并将获取的两个差值之和确定为所述损失值,其中,所述第三平均值为各所述正边界样本对的第一相似度的平均值,所述第四平均值为各所述正边界样本对的第二相似度的平均值,所述第五平均值为各所述负边界样本对的第一相似度的平均值,所述第六平均值为各所述负边界样本对的第二相似度的平均值。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图12,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备1200可以是图1所示的服务器100或者终端200。本申请中的电子设备1200可以包括一个或多个如下部件:处理器1210、存储器1220、以及一个或多个程序,其中一个或多个程序可以被存储在存储器1220中并被配置为由一个或多个处理器1210执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器1210可以包括一个或者多个处理核。处理器1210利用各种接口和线路连接整个电子设备1200内的各个部分,通过运行或执行存储在存储器1020内的指令、程序、代码集或指令集,以及调用存储在存储器1220内的数据,执行电子设备1000的各种功能和处理数据。可选地,处理器1010可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1210可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1210中,单独通过一块通信芯片进行实现。
存储器1220可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器1220可用于存储指令、程序、代码、代码集或指令集。存储器1220可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备1000在使用中所创建的数据(比如人脸图像数据集、相似度)等。
可以理解,图12所示结构仅为示例,电子设备1200还可以包括比图12所示更多、更少或完全不同的组件。本实施例对此没有限制。
请参考图13,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质1300中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质1300可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质1300包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质1300具有执行上述方法中的任何方法步骤的程序代码1310的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1310可以例如以适当形式进行压缩。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请上述实施例提供的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (11)

1.一种人脸识别方法,其特征在于,包括:
获取人脸图像数据集,所述人脸图像数据集包括至少两个样本数据,每个样本数据包括具有相同身份标签的至少两个人脸图像,不同样本数据中的人脸图像具有不同的身份标签;
针对所述人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度;
获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络的网络规模小于所述第一网络;
若所述第二相似度和所述第一相似度符合误识别条件,则将所述样本对确定为边界样本对,其中,当所述样本对中的两个人脸图像具有相同的身份标签时,判断所述第二相似度是否小于所述第一相似度,以及判断所述第二相似度是否小于第一阈值,若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件;
根据所述边界样本对的第二相似度与第一相似度之间的损失值,调整所述第二网络的网络参数,并通过调整后的第二网络进行人脸识别。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述样本对中的两个人脸图像具有不同的身份标签时,判断所述第二相似度是否大于所述第一相似度,以及判断所述第二相似度是否大于第二阈值;
若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第二相似度大于或等于第二阈值,且小于或等于第一阈值时,将所述样本对确定为候选样本对;
基于所述第一相似度和所述第二相似度,判断所述第一网络对所述候选样本对的识别准确度是否优于所述第二网络;
若是,则确定所述候选样本对符合所述误识别条件。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一相似度和所述第二相似度,判断所述第一网络对所述候选样本对的识别准确度是否优于所述第二网络,包括:
若所述候选样本对中的两个人脸图像的身份标签相同,则在所述第一相似度大于所述第一阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络;
若所述样本对中的两个人脸图像的身份标签不同,则在所述第一相似度小于所述第二阈值时,确定所述第一网络对所述候选样本对的识别准确度优于所述第二网络。
5.根据权利要求1-4中任意一项所述的方法,其特征在于,在所述根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,所述方法还包括:
获取第一向量与第二向量的范数的平方,并将所述范数的平方确定为所述损失值,其中,所述第一向量是各所述边界样本对的第一相似度组成的向量,所述第二向量是各所述边界样本对的第二相似度组成的向量。
6.根据权利要求1-4中任意一项所述的方法,其特征在于,在所述根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,所述方法还包括:
从各所述边界样本对中确定正边界样本对和负边界样本对,所述正边界样本对包括的两个人脸图像具有相同的身份标签,所述负边界样本对包括的两个人脸图像具有不同的身份标签;
分别获取第四向量与第三向量之差的范数的平方,以及第六向量与第五向量之差的范数的平方,并将获取的两个范数的平方之和确定为所述损失值,其中,所述第三向量是各所述正边界样本对的第一相似度组成的向量,所述第四向量是各所述正边界样本对的第二相似度组成的向量,所述第五向量是各所述负边界样本对的第一相似度组成的向量,所述第六向量是各所述负边界样本对的第二相似度组成的向量。
7.根据权利要求1-4中任意一项所述的方法,其特征在于,在所述根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,所述方法还包括:
获取第二平均值与第一平均值的差值的绝对值,并将获取的绝对值确定为所述损失值,其中,所述第一平均值为各所述边界样本对的第一相似度的平均值,所述第二平均值为各所述边界样本对的第二相似度的平均值。
8.根据权利要求1-4中任意一项所述的方法,其特征在于,在所述根据所述边界样本对的第一相似度和第二相似度之间的损失值,调整所述第二网络的网络参数之前,所述方法还包括:
从各所述边界样本对中确定正边界样本对和负边界样本对,所述正边界样本对包括的两个人脸图像具有相同的身份标签,所述负边界样本对包括的两个人脸图像具有不同的身份标签;
获取第三平均值与第四平均值的差值,获取第六平均值与第五平均值的差值,并将获取的两个差值之和确定为所述损失值,其中,所述第三平均值为各所述正边界样本对的第一相似度的平均值,所述第四平均值为各所述正边界样本对的第二相似度的平均值,所述第五平均值为各所述负边界样本对的第一相似度的平均值,所述第六平均值为各所述负边界样本对的第二相似度的平均值。
9.一种人脸识别装置,其特征在于,包括:
图像获取模块,用于获取人脸图像数据集,所述人脸图像数据集包括至少两个样本数据,每个样本数据包括具有相同身份标签的至少两个人脸图像,不同样本数据中的人脸图像具有不同的身份标签;
第一相似度获取模块,用于针对所述人脸图像数据集中每两个人脸图像组成的样本对,获取第一网络从所述样本对的两个人脸图像中分别提取的第一特征向量,基于获取的第一特征向量得到所述样本对的第一相似度;
第二相似度获取模块,用于获取第二网络从所述样本对的两个人脸图像中分别提取的第二特征向量,并基于获取的第二特征向量得到所述样本对的第二相似度,所述第二网络的网络规模小于所述第一网络;
确定模块,用于在所述第二相似度和所述第一相似度符合误识别条件的条件下,将所述样本对确定为边界样本对,其中,当所述样本对中的两个人脸图像具有相同的身份标签时,判断所述第二相似度是否小于所述第一相似度,以及判断所述第二相似度是否小于第一阈值,若判断结果均为是,则确定所述第一相似度和所述第二相似度符合所述误识别条件;
训练模块,用于根据所述边界样本对的第二相似度与第一相似度之间的损失值,调整所述第二网络的网络参数;
识别模块,用于通过调整后的第二网络进行人脸识别。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行权利要求1-8中任意一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-8中任意一项所述的方法。
CN202010689967.0A 2020-07-17 2020-07-17 人脸识别方法、装置及电子设备 Active CN111814717B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010689967.0A CN111814717B (zh) 2020-07-17 2020-07-17 人脸识别方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010689967.0A CN111814717B (zh) 2020-07-17 2020-07-17 人脸识别方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111814717A CN111814717A (zh) 2020-10-23
CN111814717B true CN111814717B (zh) 2022-09-27

Family

ID=72866564

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010689967.0A Active CN111814717B (zh) 2020-07-17 2020-07-17 人脸识别方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111814717B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112508130A (zh) * 2020-12-25 2021-03-16 商汤集团有限公司 聚类方法及装置、电子设备和存储介质
CN113505740B (zh) * 2021-07-27 2023-10-10 北京工商大学 基于迁移学习和卷积神经网络的面部识别方法
CN113723344A (zh) * 2021-09-08 2021-11-30 北京有竹居网络技术有限公司 视频的识别方法、装置、可读介质和电子设备
CN116563642B (zh) * 2023-05-30 2024-02-27 智慧眼科技股份有限公司 图像分类模型可信训练及图像分类方法、装置、设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800821A (zh) * 2019-01-31 2019-05-24 北京市商汤科技开发有限公司 训练神经网络的方法、图像处理方法、装置、设备和介质
CN110598603A (zh) * 2019-09-02 2019-12-20 深圳力维智联技术有限公司 人脸识别模型获取方法、装置、设备和介质
CN111178249A (zh) * 2019-12-27 2020-05-19 杭州艾芯智能科技有限公司 人脸比对的方法、装置、计算机设备及存储介质
CN111401406A (zh) * 2020-02-21 2020-07-10 华为技术有限公司 一种神经网络训练方法、视频帧处理方法以及相关设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509408B (zh) * 2017-02-27 2019-11-22 芋头科技(杭州)有限公司 一种句子相似度判断方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800821A (zh) * 2019-01-31 2019-05-24 北京市商汤科技开发有限公司 训练神经网络的方法、图像处理方法、装置、设备和介质
CN110598603A (zh) * 2019-09-02 2019-12-20 深圳力维智联技术有限公司 人脸识别模型获取方法、装置、设备和介质
CN111178249A (zh) * 2019-12-27 2020-05-19 杭州艾芯智能科技有限公司 人脸比对的方法、装置、计算机设备及存储介质
CN111401406A (zh) * 2020-02-21 2020-07-10 华为技术有限公司 一种神经网络训练方法、视频帧处理方法以及相关设备

Also Published As

Publication number Publication date
CN111814717A (zh) 2020-10-23

Similar Documents

Publication Publication Date Title
CN111814717B (zh) 人脸识别方法、装置及电子设备
WO2021203863A1 (zh) 基于人工智能的物体检测方法、装置、设备及存储介质
US10282530B2 (en) Verifying identity based on facial dynamics
WO2019119505A1 (zh) 人脸识别的方法和装置、计算机装置及存储介质
CN109145717B (zh) 一种在线学习的人脸识别方法
WO2022033150A1 (zh) 图像识别方法、装置、电子设备及存储介质
WO2019223102A1 (zh) 身份合法性的校验方法、装置、终端设备及介质
WO2021159769A1 (zh) 图像检索方法、装置、存储介质及设备
US11429809B2 (en) Image processing method, image processing device, and storage medium
US11126827B2 (en) Method and system for image identification
WO2022100337A1 (zh) 人脸图像质量评估方法、装置、计算机设备及存储介质
JP2022141931A (ja) 生体検出モデルのトレーニング方法及び装置、生体検出の方法及び装置、電子機器、記憶媒体、並びにコンピュータプログラム
CN112926654B (zh) 预标注模型训练、证件预标注方法、装置、设备及介质
CN113254654B (zh) 模型训练、文本识别方法、装置、设备和介质
CN112560710B (zh) 一种用于构建指静脉识别系统的方法及指静脉识别系统
CN114565807A (zh) 训练目标图像检索模型的方法和装置
CN112668482A (zh) 人脸识别训练方法、装置、计算机设备及存储介质
WO2022105118A1 (zh) 基于图像的健康状态识别方法、装置、设备及存储介质
CN110781724A (zh) 一种人脸识别神经网络、方法、装置、设备及存储介质
CN114067394A (zh) 人脸活体检测方法、装置、电子设备及存储介质
CN114519729A (zh) 图像配准质量评估模型训练方法、装置和计算机设备
CN111598144A (zh) 图像识别模型的训练方法和装置
CN111428679B (zh) 影像识别方法、装置和设备
CN117333926B (zh) 一种图片聚合方法、装置、电子设备及可读存储介质
CN112395979B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40031351

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant