CN110929644B - 基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 - Google Patents
基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 Download PDFInfo
- Publication number
- CN110929644B CN110929644B CN201911152335.4A CN201911152335A CN110929644B CN 110929644 B CN110929644 B CN 110929644B CN 201911152335 A CN201911152335 A CN 201911152335A CN 110929644 B CN110929644 B CN 110929644B
- Authority
- CN
- China
- Prior art keywords
- model
- combination
- models
- face recognition
- replacing
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质,可针对特定场景包括但不限于不同人种、不同年龄、不同性别、不同光照条件、不同角度和不同部署设备的人脸识别需求,不需要重新训练网络模型和特定的数据处理方式,只需要通过模型底库,由不同场景数据训练的不同输入尺寸的不同规模网络结构的模型建立,使用本发明创造的启发式算法来对模型进行选择、融合,得到的融合模型可在该场景下达到最优的人脸识别精度。
Description
技术领域
本发明涉及人脸识别技术领域,具体而言涉及一种基于启发式算法的多模型融合人脸识别方法与装置。
背景技术
现有人脸识别的主要过程包括人脸检测、人脸采集、数据预处理、通过神经网络模型输出特征体积与底库中的特征比对得出识别结果。
传统的人脸识别方式针对不同场景(包括但不限于不同人种、不同年龄、不同性别、不同光照条件、不同角度和不同部署设备),通常是通过对该场景的人脸数据进行采集,通过采集的人脸数据训练神经网络模型,训练好的神经网络模型一般用于单个场景的预测,在其他场景精度较低。
基于多模型融合的人脸识别方法是将多个神经网络模型融合在一起进行人脸特征的输出,有效克服了单一神经网络模型过拟合单一场景的问题,但多模型的选择过程一般为人工选择,选择结果无法做到最优。
发明内容
本发明目的在于提供一种基于启发式算法的多模型融合人脸识别方法与装置,使用启发式算法来对模型进行选择、融合,得到的融合模型可以在场景下达到最优的人脸识别精度。
为实现上述目的,本发明提出基于启发式算法的多模型融合人脸识别方法,包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
根据本发明的公开,还提出一种基于启发式算法的多模型融合人脸识别装置,包括:
用于预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d的模块;
用于从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求的模块,其中如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
用于对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S)的模块;
用于开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求的模块,其中如果满足要求,则进行模型组合的替换;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新模型选取和替换;
用于将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),并基于增强进行模型组合替换的模块,其中,ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
用于检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进行模型选择和替换,如果当前迭代次数X=0,则输出模型组合的模块;
用于结束迭代,输出选择的模型组合S的模块。
根据本发明的公开,还提出一种计算机系统,包括:
一个或多个处理器;
存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
根据本发明的公开,还提出一种存储软件的计算机可读取介质,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。
结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
图1是本发明的多模型融合人脸识别方法的流程示意图。
图2是本发明的模型丢弃放回机制的示意图。
图3是本发明的模型预测的流程示意图。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是应为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
结合图1-3所示,根据本发明的改进,提出一种基于启发式算法的多模型融合人脸识别方法,针对特定场景(包括但不限于不同人种、不同年龄、不同性别、不同光照条件、不同角度和不同部署设备)的人脸识别需求,不需要重新训练网络模型和特定的数据处理方式,只需要通过模型底库(由不同场景数据训练的不同输入尺寸的不同规模网络结构的模型建立),使用本发明创造的启发式算法来对模型进行选择、融合,得到的融合模型可以在该场景下达到最优的人脸识别精度。
模型底库由不同场景下训练的不同规模的神经网络模型组成,小规模网络包括MobileNet系列、ShuffleNet系列等,大规模网络包括ResNet系列、EfficientNet系列等,每个网络均使用不同场景下的数据集训练(包括不同年龄、性别、人种的人脸),每个保存的模型均使用不同的参数训练,同时每个模型以不同的输入尺寸训练,以提高模型底库的泛化能力。模型底库中模型保存的格式为pth格式,同时保存模型在当前测试集上的ROC曲线,保存每个模型在不同设备上的速度和体积,模型底库中的模型数量大于100个。
选择模块针对当前人脸识别的使用场景,使用启发式算法从模型底库中选择固定数量的模型,选择的模型融合后满足当前部署的硬件对速度和体积的要求,同时满足在当前场景下的人脸识别精度最高。
结合图1所示,作为本发明示例性实现的多模型融合的人脸识别算法包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
如此,我们可利用最后输出的模型组合进行人脸识别,提高在多场景下应用进行识别的精度。
优选地,在所述步骤3中,结合图3所示,模型融合的过程包括:
对于输入的一张人脸照片,按照融合模型内的各个模型的输入标准进行变换,然后输入各个模型获得每个模型的输出,即1*512维的特征值;
将每个模型输出的特征值进行特征连接,形成1*(n*512)维的特征向量,使用该特征向量与照片底库中的人脸特征向量分别计算余弦距离;
选择余弦距离最小的底库照片,作为人脸的识别结果进行输出。
结合图2,优选地,所述步骤6中,将替换下来的模型丢弃到模型备选库包括:
设置放回周期Y,Y=min(2,M/X),迭代次数X被放回周期Y整除,即每Y次迭代,选择冷却系数最小的模型,将其放回模型底库。
下面结合具体的示例进行更加具体的说明,
1、根据需求场景(具体识别人脸的硬件设备),确定需要融合的模型个数q,同时初始化启发式算法所需要的迭代次数X,初始温度T和温度系数d,由模型底库(包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型)中随机初始化q个模型,如果当前选出的q个模型组合后不能满足需求场景中部署的硬件设备(PC ARM AI芯片等)对速度和体积的需求,那么将重新初始化,直到满足条件为止;
2、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过该场景的测试集测试精度(具体见模型融合过程),在该测试集上获得的精度作为目标函数f(S)。
3、开始第一次替换,从模型底库中随机抽取一个新的模型M′,依次替换S中模型,直到新的组合满足当前场景硬件对速度和体积的要求,作为组合S′,如果满足要求,则进入步骤4,如果替换Q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤3。
4、此时用M′替换S中的一个模型,模型融合为S′,计算目标函数f(S′),计算目标函数增量ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S,ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给与冷却系数γ,冷却系数γ=模型被丢弃的次数。
5、一次替换结束,检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,丢弃替换下来的模型到模型备选库,并进入步骤3,如果当前迭代次数X=0,进入步骤6。
6、迭代结束,输出选择的模型组合S。
下面以幼儿园场景为例,对本发明的实施例的识别进行说明。
人脸识别的主要目标是幼儿园中儿童的人脸识别,模型底库中共有829个模型,其中小规模网络包括MobileNet系列、ShuffleNet系列等,大规模网络包括ResNet系列、EfficientNet系列等,每一类网络均有112*112和144*122两种输入尺寸训练的模型,同时每一类网络均有在不同场景下训练的网络模型(包括成人场景、外国人场景、暗光场景等),模型训练使用的数据集包括业内公开的MegaFace、LFW、MS-Celeb-1M等,以及公司内部的私有数据集。
基于该儿童识别场景,需要分别部署在移动端(个人手机)、Arm平台(人脸识别机),其中移动端要求融合模型速度小于120ms,体积小于20M,Arm平台要求融合模型速度小于240ms,体积小于60M。在满足条件的情况下,提高人脸识别精度,其中人脸识别精度由测试集获得,幼儿园场景的测试集包括112*112和144*122两种尺寸的共8000张人脸图片,测试集精度采用人脸识别领域通用的交叉验证方法获得。
人脸识别算法的参数设置如下:
移动端:模型个数3,迭代次数X=1000,初始温度T=100,温度系数d=0.95
Arm平台:模型个数4,迭代次数X=2000,初始温度T=100,温度系数d=0.98
下面是对比图表,验证平台为:GPU:RTX2080Ti,CPU为Intel Xeon Gold 6132。
同一组参数使用启发式算法分别搜索三次的结果取平均:
使用传统的穷举法搜索模型组合的结果:
对比结果显示:使用本发明的启发式算法搜索模型组合,启发式算法搜索时间约为穷举用时的1/100,通过多次搜索可以找到模型底库中在当前场景下精度最高的组合,大幅节约用时,并且使人脸识别模型在不同场景下实现了复用。因此,使用不断扩充的模型底库为一个新场景挑选融合模型,适用于新场景下的人脸识别快速部署,可显著缩短了人脸识别产品的生产周期。
结合图示,本发明的前述实施例还可以根据具体实施配置如下。
根据本发明的公开,还提出一种基于启发式算法的多模型融合人脸识别装置,包括:
用于预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d的模块;
用于从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求的模块,其中如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
用于对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S)的模块;
用于开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求的模块,其中如果满足要求,则进行模型组合的替换;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新模型选取和替换;
用于将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),并基于增强进行模型组合替换的模块,其中,ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
用于检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进行模型选择和替换,如果当前迭代次数X=0,则输出模型组合的模块;
用于结束迭代,输出选择的模型组合S的模块。
根据本发明的公开,还提出一种计算机系统,包括:
一个或多个处理器;
存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
根据本发明的公开,还提出一种存储软件的计算机可读取介质,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
Claims (9)
1.一种基于启发式算法的多模型融合人脸识别方法,其特征在于,包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
2.根据权利要求1所述的基于启发式算法的多模型融合人脸识别方法,其特征在于,所述步骤2中,所述的硬件需求包括硬件设备对速度和体积的需求。
3.根据权利要求1所述的基于启发式算法的多模型融合人脸识别方法,其特征在于,所述步骤3中,所述的模型融合包括:
对于输入的一张人脸照片,按照融合模型内的各个模型的输入标准进行变换,然后输入各个模型获得每个模型的输出,即1*512维的特征值;
将每个模型输出的特征值进行特征连接,形成1*(n*512)维的特征向量,使用该特征向量与照片底库中的人脸特征向量分别计算余弦距离;
选择余弦距离最小的底库照片,作为人脸的识别结果进行输出。
4.根据权利要求1所述的基于启发式算法的多模型融合人脸识别方法,其特征在于,所述步骤6中,将替换下来的模型丢弃到模型备选库包括:
设置放回周期Y,Y=min(2,M/X),迭代次数X被放回周期Y整除,即每Y次迭代,选择冷却系数最小的模型,将其放回模型底库。
5.一种基于启发式算法的多模型融合人脸识别装置,其特征在于,包括:
用于预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d的模块;
用于从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求的模块,其中如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
用于对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S)的模块;
用于开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求的模块,其中如果满足要求,则进行模型组合的替换;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新模型选取和替换;
用于将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),并基于增强进行模型组合替换的模块,其中,ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
用于检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进行模型选择和替换,如果当前迭代次数X=0,则输出模型组合的模块;
用于结束迭代,输出选择的模型组合S的模块。
6.一种计算机系统,其特征在于,包括:
一个或多个处理器;
存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
7.根据权利要求6所述的计算机系统,其特征在于,所述操作更加包含:
对于输入的一张人脸照片,按照融合模型内的各个模型的输入标准进行变换,然后输入各个模型获得每个模型的输出,即1*512维的特征值;
将每个模型输出的特征值进行特征连接,形成1*(n*512)维的特征向量,使用该特征向量与照片底库中的人脸特征向量分别计算余弦距离;
选择余弦距离最小的底库照片,作为人脸的识别结果进行输出。
8.根据权利要求6所述的计算机系统,其特征在于,所述操作更加包含:
设置放回周期Y,Y=min(2,M/X),迭代次数X被放回周期Y整除,即每Y次迭代,选择冷却系数最小的模型,将其放回模型底库。
9.一种存储软件的计算机可读取介质,其特征在于,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括:
步骤1、预设融合模型个数q,并初始化迭代次数X、初始温度T和温度系数d;
步骤2、从人脸识别模型底库中随机初始化q个模型,并判断q个模型是否满足设定的场景下部署设备的硬件需求,如果q个模型的组合不能满足需求,则重新初始化,直到满足需求条件为止;所述的人脸识别模型底库包括由不同场景的训练集、不同输入尺寸、不同的网络结构训练的M个神经网络模型;其中,M和q均为正整数,且M>>q;
步骤3、对于初始化后的q个模型,进行模型融合,融合后的组合为S,通过场景的测试集进行精度测试,在测试集上获得的精度作为目标函数f(S);
步骤4、开始第一次替换,从人脸识别模型底库中随机抽取一个新的模型M′,依次替换组合S中模型,直到新的组合满足当前设定场景下部署设备的硬件需求,如果满足要求,则进入步骤5;如果替换q中的任一个都不满足要求,则将M′丢弃到模型备选库,重新进行步骤4进行替换;
步骤5、将模型M′替换S中的一个模型,替换后的模型构成组合S′,通过场景的测试集计算确定目标函数f(S′),然后获得目标函数增量ΔE,ΔE=f(S′)-f(S),ΔE>0时,模型组合S′替换S;ΔE<0时,计算概率P=exp(ΔE/T),按照概率使用模型组合S′替换S,将替换下来的模型或者未替换成功的M′丢弃到模型备选库,并给予冷却系数γ,冷却系数γ=模型被丢弃的次数;
步骤6、检查迭代条件,如果当前迭代次数X>0,更新温度参数T=T×d,迭代次数X=X-1,将替换下来的模型丢弃到模型备选库,并进入步骤4,如果当前迭代次数X=0,进入步骤7;
步骤7、迭代结束,输出选择的模型组合S。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911152335.4A CN110929644B (zh) | 2019-11-22 | 2019-11-22 | 基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911152335.4A CN110929644B (zh) | 2019-11-22 | 2019-11-22 | 基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110929644A CN110929644A (zh) | 2020-03-27 |
CN110929644B true CN110929644B (zh) | 2020-06-26 |
Family
ID=69851573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911152335.4A Active CN110929644B (zh) | 2019-11-22 | 2019-11-22 | 基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110929644B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111814760B (zh) * | 2020-08-24 | 2021-06-01 | 湖南视觉伟业智能科技有限公司 | 人脸识别方法及系统 |
CN113892939A (zh) * | 2021-09-26 | 2022-01-07 | 燕山大学 | 一种基于多特征融合的人体静息状态下呼吸频率监测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005096213A1 (en) * | 2004-03-05 | 2005-10-13 | Thomson Licensing | Face recognition system and method |
CN102622604A (zh) * | 2012-02-14 | 2012-08-01 | 西安电子科技大学 | 一种基于可变形部件加权的多角度人脸检测方法 |
CN106778714A (zh) * | 2017-03-06 | 2017-05-31 | 西安电子科技大学 | 基于非线性特征和模型合并的lda人脸识别方法 |
CN107016377A (zh) * | 2017-04-16 | 2017-08-04 | 北京工业大学 | 基于sgasen算法的人脸识别优化方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101261677B (zh) * | 2007-10-18 | 2012-10-24 | 周春光 | 人脸的特征提取方法 |
US9183464B1 (en) * | 2014-07-24 | 2015-11-10 | National Taipei University Of Technology | Face annotation method and face annotation system |
CN107274029A (zh) * | 2017-06-23 | 2017-10-20 | 深圳市唯特视科技有限公司 | 一种利用动态场景内交互作用介质的未来预测方法 |
-
2019
- 2019-11-22 CN CN201911152335.4A patent/CN110929644B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005096213A1 (en) * | 2004-03-05 | 2005-10-13 | Thomson Licensing | Face recognition system and method |
CN102622604A (zh) * | 2012-02-14 | 2012-08-01 | 西安电子科技大学 | 一种基于可变形部件加权的多角度人脸检测方法 |
CN106778714A (zh) * | 2017-03-06 | 2017-05-31 | 西安电子科技大学 | 基于非线性特征和模型合并的lda人脸识别方法 |
CN107016377A (zh) * | 2017-04-16 | 2017-08-04 | 北京工业大学 | 基于sgasen算法的人脸识别优化方法 |
Non-Patent Citations (2)
Title |
---|
Multi-modal face parts fusion based on Gabor feature for face recognition;Xiang Yan et al.;《HIGH TECHNOLOGY LETTERS》;20090331;第15卷(第11期);第70-74页 * |
基于多特征融合的人脸识别研究;蔡淞 等;《计算机应用与软件》;20151231;第32卷(第12期);第140-144页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110929644A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112199375B (zh) | 跨模态的数据处理方法、装置、存储介质以及电子装置 | |
CN111858869B (zh) | 一种数据匹配方法、装置、电子设备和存储介质 | |
CN108491794B (zh) | 面部识别的方法和装置 | |
US20220351487A1 (en) | Image Description Method and Apparatus, Computing Device, and Storage Medium | |
CN108875487B (zh) | 行人重识别网络的训练及基于其的行人重识别 | |
CN109871821B (zh) | 自适应网络的行人重识别方法、装置、设备及存储介质 | |
CN109002784B (zh) | 街景识别方法和系统 | |
CN107423306B (zh) | 一种图像检索方法及装置 | |
CN110990533B (zh) | 确定查询文本所对应标准文本的方法及装置 | |
CN110929644B (zh) | 基于启发式算法的多模型融合人脸识别方法、装置、计算机系统与可读介质 | |
CN106294505B (zh) | 一种反馈答案的方法和装置 | |
CN110909817B (zh) | 分布式聚类方法及系统、处理器、电子设备及存储介质 | |
CN114494809A (zh) | 特征提取模型优化方法、装置及电子设备 | |
CN113743277A (zh) | 一种短视频分类方法及系统、设备和存储介质 | |
CN116628507B (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN116630749A (zh) | 工业设备故障检测方法、装置、设备以及存储介质 | |
CN108021918B (zh) | 文字识别方法及装置 | |
CN115931778A (zh) | 镜片的折射率检测设备及其方法 | |
CN114298182A (zh) | 资源召回方法、装置、设备及存储介质 | |
CN115358316A (zh) | 一种模型融合方法、装置、电子设备及存储介质 | |
CN111523308B (zh) | 中文分词的方法、装置及计算机设备 | |
CN114357219A (zh) | 一种面向移动端实例级图像检索方法及装置 | |
CN116684701B (zh) | 一种机顶盒节目搜索方法及系统 | |
CN113360484B (zh) | 数据纠偏方法、装置和计算机可读存储介质 | |
CN110795972A (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 | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: No.568 longmian Avenue, gaoxinyuan, Jiangning District, Nanjing City, Jiangsu Province, 211000 Patentee after: Xiaoshi Technology (Jiangsu) Co.,Ltd. Address before: No.568 longmian Avenue, gaoxinyuan, Jiangning District, Nanjing City, Jiangsu Province, 211000 Patentee before: NANJING ZHENSHI INTELLIGENT TECHNOLOGY Co.,Ltd. |