CN111753761A - 模型生成方法、装置、电子设备及存储介质 - Google Patents
模型生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111753761A CN111753761A CN202010599287.XA CN202010599287A CN111753761A CN 111753761 A CN111753761 A CN 111753761A CN 202010599287 A CN202010599287 A CN 202010599287A CN 111753761 A CN111753761 A CN 111753761A
- Authority
- CN
- China
- Prior art keywords
- model
- activation function
- ith
- trained
- function
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000006870 function Effects 0.000 claims abstract description 298
- 230000004913 activation Effects 0.000 claims abstract description 185
- 238000013135 deep learning Methods 0.000 claims abstract description 10
- 238000011156 evaluation Methods 0.000 claims description 23
- 238000004821 distillation Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 19
- 238000012549 training Methods 0.000 claims description 14
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 239000000126 substance Substances 0.000 claims description 2
- 238000001514 detection method Methods 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 14
- 238000013139 quantization Methods 0.000 description 10
- 230000009466 transformation Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 241000692850 Sophora cassioides Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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/048—Activation functions
-
- 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/08—Learning methods
-
- 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/161—Detection; Localisation; Normalisation
- G06V40/165—Detection; Localisation; Normalisation using facial parts and geometric relationships
-
- 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/172—Classification, e.g. identification
Abstract
本申请公开了模型生成方法、装置、电子设备及存储介质,涉及人工智能中深度学习、云计算及计算机视觉领域,具体用于戴口罩人脸检测方面。具体实现方案为:获取第一模型;执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;其中,所述N次迭代操作中的第i次迭代操作包括:基于激活函数搜索空间以及第i个激活函数编码生成器确定第i个激活函数,基于所述第i个激活函数、以及所述第一模型,对第二模型进行第i次迭代操作;其中,所述第二模型的网络复杂度低于第一模型的网络复杂度;若迭代操作的次数达到预设的次数阈值N,则将所述第i次迭代操作中得到的第二模型的量化后的模型,作为所述目标模型。
Description
技术领域
本申请涉及计算机技术领域。本申请尤其涉及人工智能中深度学习、云计算及计算机视觉领域,具体用于戴口罩人脸检测方面。
背景技术
在相关技术中,人脸识别模型的用处十分广泛,然而,传统的人脸识别模型无法解决戴口罩场景的人脸识别,即使使用带口罩的数据训练模型,由于模型对于口罩场景缺乏针对性,模型对于戴口罩场景的人脸识别能力受限。而为了提升模型对于带口罩场景的人脸识别能力,需要较为复杂的模型结构,但是较为复杂的模型又很难满足实时带口罩人脸识别的需求。因此,如何使得模型的处理既满足实时性需求又满足一定的精度需求,就成为需要解决的问题。
发明内容
本公开提供了一种模型生成方法、装置、电子设备及存储介质。
根据本公开的一方面,提供了一种模型生成方法,包括:
获取第一模型;
执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述N次迭代操作中的第i次迭代操作包括:
基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;
基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;
若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
根据本公开的另一方面,提供了一种模型生成装置,包括:
获取模块,用于获取第一模型;
模型生成模块,用于执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述模型生成模块,具体用于在所述N次迭代操作中的第i次迭代操作中,基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
根据本公开的一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述方法。
根据本公开的一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行前述方法。
根据本申请的技术,可以基于第一模型对第二模型进行蒸馏,还可以基于多次迭代操作从激活函数搜索空间中搜索得到更优的激活函数进行第二模型的训练,从而可以得到精度足够高并且足够小的量化后的目标模型,进而由于该目标模型的能够满足精度以及足够小的要求,因此更加适用于需要实时处理的场景。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请实施例的模型生成方法流程示意图一;
图2是根据本申请实施例的模型生成方法流程示意图二;
图3是根据本申请实施例的模型生成装置组成结构示意图一;
图4是根据本申请实施例的模型生成装置组成结构示意图二;
图5是用来实现本申请实施例的模型生成方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本申请的第一实施例提供了一种模型生成方法,如图1所示,包括:
S101:获取第一模型;
S102:通过执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述N次迭代操作中的第i次迭代操作包括:
基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;
基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;
若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
本实施例提供的方案可以应用于电子设备中,比如,可以为服务器或终端设备中,这里不做限定。
S101中获取的第一模型,可以为预先完成训练的模型,在执行S101-S102的过程中,第一模型的参数均为固定参数,也就是作为教师模型,第一模型不再变化。第一模型可以为口罩人脸识别模型。
具体来说,训练好的第一模型,其输入可以为部分区域处于遮挡状态的人脸图像,其输出可以为识别结果,比如,具体识别出来为无遮挡状态的人脸图像,或者,可以为识别出来的目标人物的相关信息,可以为标签,用于表示目标人物的身份信息等等。
关于第一模型的训练,可以包括有:使用口罩数据训练第一模型得到收敛的第一模型。其中,口罩数据,可以包括:至少一组戴口罩的人脸图像及其对应的未戴口罩的人脸图像;或者,可以为至少一组戴口罩的人脸图像及其对应的标签信息(标签信息可以为人物的相关信息等等)。关于训练第一模型的方法,本实施例中不再进行赘述。
另外,在执行前述S101和S102之前,还需要准备好待训练的第二模型、激活函数搜索空间搜索空间、以及初始化的激活函数编码生成器。
比如,还可以包括:准备好待训练的第二模型;基于所述待训练的第二模型设计激活函数搜索空间;基于所述激活函数搜索空间设计激活函数编码生成器,并且初始化激活函数编码生成器。
这里,待训练的第二模型为网络复杂度低于第一模型(也就是教师模型)的模型。其中,网络复杂度低,可以为:网络的参数量、网络的计算量、网络的层数相对于教师模型更小。
待训练的第二模型可以为用于执行深度学习任务的神经网络模型的结构。在这里,深度学习任务可以是利用深度神经网络来完成的信息处理任务。在实践中,深度学习任务可以例如为:图像识别、语音合成、文本翻译、自然语言理解、图像处理、趋势预测、目标检测与跟踪,等等。本实施例中,主要针对图像识别的场景来预设第二模型。
激活函数搜索空间中可以包括有至少一种激活函数。
在深度卷积神经网络中,激活函数(activation function)起到的作用,类似于人类脑神经元的作用,激活的神经元通过激活函数把特征保留并映射出来,这是神经网络能解决非线性问题关键。因为线性模型的表达力不够,因此利用激活函数来加入非线性因素。
在一个例子中,可以采用线性整流函数(Rectified Linear Unit,ReLU)作为激活函数。采用ReLU激活函数,则每一层卷积输出都会经过ReLU的非线性变换。
在又一示例中,激活函数还可以可为Sigmoid函数(S型函数)、Tanh(双曲正切)函数、ReLU函数、PReLU函数、PELU函数、RReLU函数中的至少一种。
需要指出的是,激活函数可以分为多级,每级可以有不同的选项,比如其中一级可以包括有Tanh函数tanh(ln(exp(x))作为选项。当然,还可以为两级或者4级激活函数,本实施例中不进行穷举,只是提供一种优选的示例,激活函数搜索空间中可以包含有三级激活函数。
另外,激活函数搜索空间中可以包括多级激活函数,可以针对每一级激活函数进行标签设置,比如,每一级中包含10个激活函数,可以对每一个激活函数设置标签1~10;其他级中的激活函数类似的处理,这里不做穷举。
相应的,激活函数编码生成器可以用于生成激活函数编码,该编码可以用于表示所要获取的激活函数的相关信息,比如,可以用于表示所要获取的函数的标签。假设激活函数编码为9、1、4,那么可以理解为分别从激活函数搜索空间中搜索标签为9、1、4的三个激活函数。
另外,激活函数编码生成器还可以理解为需要满足的约束条件,该约束条件可以在每次迭代操作进行调整,满足该约束条件是为了能够得到使得第二模型处理所得到更优的性能评估结果。
初始化的激活函数编码生成器,可以为根据实际情况预设的能够解码得到某一组激活函数的激活函数编码生成器。本实施例中不对其进行限定。
针对S102来进行说明:所述N次迭代操作中的第i次迭代操作包括:
基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;
基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;
若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
另外,所述方法还可以包括:
若所述迭代操作的累计次数未达到预设的次数阈值N,则基于第i次迭代操作得到的第二模型的性能评估结果,对激活函数编码生成器进行更新,得到第i+1个激活函数编码生成器,执行第i+1次迭代操作。
也就是,在每次迭代操作中,都需要对使用本次迭代处理的激活函数的待训练的第二模型进行蒸馏处理;另外,每次迭代操作中,还包括有基于第一模型对使用本次迭代处理的激活函数的待训练的第二模型进行多次更新处理;即在一次迭代操作中,得到的第二模型为本次迭代操作得到的第二模型。
关于第i个激活函数,可以理解为是一个激活函数,当然还可以理解为一组激活函数。
首先针对如何调整或生成激活函数编码生成器,以及如何基于激活函数编码生成器生成本次迭代处理的激活函数进行说明:
针对所述i等于1时,所述第i个激活函数编码生成器为初始化的激活函数编码生成器。
也就是说,若为第1次处理,那么直接根据激活函数搜索空间以及初始化的激活函数编码生成器确定第1个激活函数。具体的,基于所述第1个激活函数编码生成器(初始化的激活函数编码生成器)生成激活函数编码;基于所述激活函数搜索空间对所述激活函数编码进行解码,得到第1个激活函数。
所述激活函数编码生成器可以用于生成编码;根据该编码可以从激活函数搜索空间包含的激活函数选取当前所要使用的激活函数。
针对i=1、且N大于2的情况下,基于所述第1个激活函数、以及所述第一模型,对所述第二模型进行第1次迭代操作之后,判断迭代操作的次数未达到预设的次数阈值N,则确定执行第2次迭代操作,也就是设置i=i+1,执行第2次迭代操作,重新执行前述处理。
针对所述i大于1时,所述方法还包括:基于第i-1次迭代操作得到的第二模型的性能评估结果,对激活函数编码生成器进行更新,得到第i个激活函数编码生成器。
也就是说,如果i大于1,则根据上一次迭代处理的结果,对激活函数编码生成器进行更新,得到本次迭代处理所要使用的激活函数编码生成器。
具体来说,对第二模型进行性能评估,可以为:使用评测集,对第二模型进行性能评估。相应的,得到基于第i-1次迭代操作得到的第二模型的性能评估结果。
其中,评测集可以包括样本数据与深度学习任务对应的标注信息,例如图像数据集包括图像样本和与目标识别任务对应的目标类别标注信息,等等,也就是评测集可以包括有至少一个戴口罩的人脸图像及其对应的标签(或对应的未戴口罩的人脸图像)。
对量化后的模型进行性能评估,可以为:将评测集中的戴口罩的人脸图像输入至量化后的模型,得到输出的识别结果;判断量化后的模型的输出的识别结果与评测集所对应的标签之间的相似度,将该相似度作为性能的评估结果。
举例来说,假设模型输出的识别结果与评测集中的标签之间的相似度为80%,那么评估结果可以为80%。
进而,可以将该评估结果直接作为奖励值(reward)对激活函数编码生成器进行更新。
需要指出的是,基于奖励值对激活函数编码生成器进行更新,可以理解为基于当前的奖励值更新激活函数编码生成器以能够从搜索空间中搜索到本次迭代操作所要使用的激活函数,以使得本迭代处理最终得到的模型的性能更优。上述激活函数编码生成器的处理可以理解为需要满足能够使得迭代操作最终得到的模型的性能更优的约束条件,换句话说,调整或更新激活函数编码生成器可以认为是对搜索激活函数的约束条件进行调整。
所述基于激活函数搜索空间以及第i个激活函数编码生成器确定第i个激活函数,包括:基于所述第i个激活函数编码生成器生成激活函数编码;基于所述激活函数搜索空间对所述激活函数编码进行解码,得到第i个激活函数。也就是说,所述激活函数编码生成器可以用于生成编码;根据激活函数搜索空间,对本次调整后的激活函数编码生成器所生成的编码进行解码,以确定本次迭代操作所要使用的激活函数。关于激活函数的说明与前述相同,不做重复说明。
基于前述,下面针对如何基于第i次迭代操作中的激活函数以及第一模型对第二模型进行训练进行说明:
基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型,包括:
采用训练数据,对所述第一模型以及所述使用第i个激活函数的待训练的第二模型进行前向传播,得到第一损失函数;
基于所述第一损失函数更新所述使用第i个激活函数的待训练的第二模型,直至针对使用第i个激活函数的待训练的第二模型的更新次数达到预设门限值,得到第二模型。
也就是在每一次迭代处理中,都会基于相同的一个激活函数对第二模型进行多次更新操作,每一次的更新操作都可以与上述相同。这里,所述更新操作,指的是更新参数的操作。
另外,还需要指出的是,每一次迭代操作,都可以为基于最初预设的第二模型使用本次迭代操作对应的激活函数进行后续的处理。
上述基于所述第一损失函数和/或第二损失函数更新所述第二模型,具体可以为基于所述第一损失函数和/或第二损失函数更新所述第二模型的参数;然后基于更新了参数后的第二模型,再次采用相同的第i个激活函数、第一模型对其进行下一次更新参数的处理,得到下一次更新参数后的第二模型,以此类推,直至更新第二模型参数的次数达到预设门限值为止,得到第i次迭代操作中训练后的第二模型。
预设门限值可以根据实际情况来设置,比如可以几百次甚至上千次。
训练数据可以为一个数据集,其中可以包括样本数据与深度学习任务对应的标注信息,例如图像数据集包括图像样本和与目标识别任务对应的目标类别标注信息,等等。
其中,所述第一损失函数包括:
表征所述第一模型和所述待训练的第二模型分别提取出的特征之间的差异的蒸馏损失函数;
和/或,
表征所述第一模型和所述待训练的第二模型分别对深度学习任务的执行结果之间的差异的任务损失函数。
蒸馏损失函数可以表征第二模型与第一模型的中间层的输出之间的差异。例如在分类任务中,软目标表示学生网络得到的类别概率与教师网络得到的类别概率之间的差异,可以例如采用二者的交叉熵表示。
举例来说,可以基于第二模型与第一模型的最后一个特征提取层(如最后一个卷积层或最后一个池化层)提取出的特征之间的差异构建上述蒸馏损失函数。或者,可以对第一模型的最后一个全连接层的输出和第二模型的最后一个全连接层的输出采用同一非线性函数(例如softmax、sigmoid等)进行非线性处理之后,计算二者的差异(例如计算表征二者之间差异的L2范数)作为蒸馏损失函数。
可选地,第一损失函数,可以仅包括上述蒸馏损失函数,基于蒸馏损失函数进行多次第一迭代处理,直至收敛或直至达到预设第一次数为止,得到第二模型。
又或者,第一损失函数可以仅包括用于表征第一模型以及待训练的第二模型对任务的执行结果之间的差异的任务损失函数。基于任务损失函数进行多次第一迭代处理,直至收敛或直至达到预设第一次数为止,得到第二模型。
上述蒸馏损失函数以及任务损失函数,可以在不同次迭代处理中分别适用,比如,第一次迭代处理中采用蒸馏损失函数进行处理;第二次迭代处理中采用任务损失函数进行处理。
再或者,可以对蒸馏损失函数和任务损失函数叠加(比如加权求和)作为第一损失函数。基于这种损失函数进行更新处理直至得到本次迭代处理的第二模型。
还有一种情况中,可以在不同次的迭代处理中分别使用蒸馏损失函数、任务损失函数、以及蒸馏损失函数和任务损失函数叠加的第一损失函数。举例来说,第一次迭代处理中采用蒸馏损失函数进行处理;第二次迭代处理中采用任务损失函数进行处理;第三次迭代处理中采用蒸馏损失函数和任务损失函数叠加进行处理。
当然,这里仅作为示例进行说明,实际处理中,可以根据实际情况设置(或配置)不同次迭代处理中具体采用的第一损失函数,这里不做穷举。
第二模型在蒸馏过程中不断更新参数,在第一损失函数的值收敛的一定的范围内,或者蒸馏过程中第二模型的累计迭代次数达到预设的最大第一次数时,可以停止更新,得到本次迭代处理中蒸馏后的第二模型。
基于以上处理,本实施例提供的一种示例中,还可以包括有每次迭代处理中对采用第i个激活函数的待训练的第二模型进行量化,并根据其量化损失函数进行参数更新的处理,具体的:
对所述采用第i个激活函数的待训练的第二模型进行量化,得到第二损失函数;
相应的,所述基于所述第一损失函数更新所述待训练的第二模型,还包括:
基于所述第一损失函数以及第二损失函数更新所述待训练的第二模型。
也就是说,这种示例中,对第二模型的参数更新处理,可以不仅仅基于前述第一损失函数,还可以进一步结合第二损失函数(也就是量化损失函数)进行参数更新。
举例来说,在每次针对第二模型进行参数更新的处理中均使用第一损失函数以及第二损失函数。这种情况中,在第i次迭代操作中可以包含有多次对第二模型的更新操作(或迭代训练),在每一次针对第二模型的更新操作(或迭代训练)中,可以使用上一次处理中得到的蒸馏损失函数、任务损失函数、量化损失函数中至少之一进行叠加进行第二模型的参数更新的处理。本实施例中不对其组合进行穷举。
这样,在一次迭代操作中(比如在第i次的迭代操作中),基于第一模型,对采用同一个激活函数的待训练的第二模型进行参数更新,直至更新次数达到预设门限值,得到本次迭代操作的使用该激活函数的第二模型。
或者,基于第一模型,对采用同一个激活函数的待训练的第二模型进行前向传输得到对应的损失函数,同时对采用同一个激活函数的待训练的第二模型进行量化得到对应的量化损失函数;基于这些损失函数对采用同一个激活函数的待训练的第二模型进行参数更新;直至更新次数达到预设门限值,得到本次迭代操作到的使用激活函数的第二模型。
进一步地,若迭代操作的累计次数未达到预设的次数阈值,则基于更新后的激活函数编码生成器执行下一次迭代操作(比如可以设置i=i+1,执行第i次迭代操作)。通过重复执行迭代操作,直到迭代操作的累计次数达到预设的次数阈值,或者,还可以为某一次迭代操作后第二模型的性能评估结果达到预设的收敛条件,则停止执行迭代操作,完成搜索,输出本次搜索的激活函数以及使用该激活函数的第二模型作为目标模型。
在一示例中,在输出目标模型的时候,所述将所述第二模型作为搜索得到的所述目标模型,还可以包括:
将所述第二模型进行量化,将量化后的第二模型作为搜索得到的所述目标模型。
也就是说,最终输出的目标模型,可以为迭代完成之后,搜索得到的激活函数,及使用该激活函数的第二模型的量化后的模型。
对第二模型进行量化,可以为参数量化。所述参数量化是压缩模型的重要手段。一般情况下,卷积神经网络模型的参数为不同长度的浮点数。可以通过浮点数定点化,将浮点数转换为定点数。
将浮点数量化为定点数的方法有很多种,如LOG对数变换、正弦函数变换、正切函数变换和线性量化变换等。例如,参数量化前,第二模型的参数为32位浮点数,通过参数量化,将第二模型的参数由32位浮点数转换为8-bit的定点数并存储,可以将第二模型压缩为原来大小的四分之一。
当然,还可以使用其他的量化策略对第二模型进行量化,只是本实施例中不进行穷举。
本申请通过上述方案,可以基于第一模型对第二模型进行蒸馏,还可以基于多次迭代操作从激活函数搜索空间中搜索得到更优的激活函数进行第二模型的训练,从而可以得到精度足够高并且足够小的目标模型。
本申请提供的目标模型适用于口罩人脸识别场景,这种场景中对于模型的精度需求特别高,使得疫情期间或者其他戴口罩等遮挡场景下,人脸识别模型同样具有速度较快并且识别结果精度较高的识别能力。
继续参考图2,其示出了本申请的模型生成方法应用于口罩人脸识别场景下的一个实施例的流程图,包括以下步骤:
S1、获取待训练的第二模型;也就是可以预先准备好待蒸馏/量化的口罩人脸识别模型
S2、基于待训练的第二模型,确定激活函数搜索空间;也就是基于的待训练的第二模型设计激活函数搜索空间(激活函数分为多级,每级可以有不同的选项如tanh(ln(exp(x)))为3级的激活函数。
S3、根据激活函数搜索空间,确定激活函数编码生成器;该激活函数编码生成器可以为基于激活函数搜索空间设计的;另外,还可以将该激活函数编码生成器称为口罩人脸识别模型激活函数编码生成器。
S4、初始化激活函数编码生成器。
S5、获取待训练的第一模型;该待训练的第一模型可以为预先准备好的精度足够高的教师模型,该教师模型是用于蒸馏搜索空间中的第二模型。
S6、使用口罩数据训练待训练的第一模型得到收敛的第一模型;该第一模型可以为教师模型,也就是教师口罩人脸识别模型。
S7、冻结第一模型的参数。
基于上述S5-S7完成教师模型(也就是第一模型)的训练,在后续的处理步骤中,第一模型的参数固定,不再改变。
另外,上述S1-S4可以按顺序处理,S5-7按顺序处理;但是,S1-S4的处理、与S5-S7的处理可以并行、或者,可以为先执行S5-S7,后执行S1-S4;又或者,可以先执行S1-S4,后执行S5-S7,本示例中不对其进行限定。
S8、根据激活函数编码生成器生成用于第二模型的激活函数编码。
S9、根据激活函数搜索空间将激活函数编码解码成激活函数;该激活函数也可以称为口罩人脸识别模型激活函数。
S10、使用口罩数据同时对第一模型和待训练的第二模型进行前向传播,提取特征并记录特征及损失函数a;该损失函数a可以为任务损失函数。这里,本步骤中待训练的第二模型为使用了S9中解码得到的激活函数的待训练的第二模型。
S11、计算待训练的第二模型提取的特征与第一模型提取的特征之间的距离得到损失函数b;其中,特征之间的距离可以用norm为单位来表示,比如l2 norm;损失函数b可以为蒸馏损失函数。
S12、对待训练的第二模型进行量化,得到损失函数c(可以称为量化损失函数,或称为第二损失函数)。该损失函数可以为采用与步骤S10相同的数据得到,这里不进行赘述。
需要指出的是,S12可以为可选步骤,也就是可以执行也可以不执行,又或者,可以为在某一次迭代处理中执行,在另一次迭代处理中不执行;再或者,可以为在某一次对第二模型的参数更新中执行,再另一次针对第二模型的参数更新的处理中不执行,均在本示例的保护范围内。
S13、更新待训练的第二模型的参数;
比如,若选择执行S12,则叠加损失函数a,b,c并更新S1中的待训练的第二模型的参数;若选择不执行S12,则叠加损失函数a,b并更新S1中的待训练的第二模型的参数。
S14、判断使用同一个激活函数的第二模型的参数的更新次数是否达预设门限值,若未达到,则返回S10,否则,执行S15。
S15、使用评测集评估使用S8中激活函数编码所解码得到的激活函数的第二模型的性能评估结果。
S16、将性能评估结果作为reward(奖励值)更新激活函数编码生成器。
S17、判断激活函数编码生成器迭代次数是否达到预设阈值,若未达到,则返回S8,否则,执行S18。
S18、输出搜索得到的模型/量化后目标模型。此时,搜索得到的模型表示使用搜索得到的激活函数的第二模型,将该第二模型作为目标模型;或者,对使用搜索得到的激活函数的第二模型进行量化,将量化后的第二模型作为目标模型。
在上述流程基础上,本申请提供的实施例还可以包括:
获取待识别人脸图像;其中,所述待识别人脸图像中的部分人脸区域处于遮挡状态;
基于所述目标模型以及所述待识别人脸图像,得到人脸图像的识别结果。
其中,部分人脸区域处于遮挡状态可以为人脸图像中嘴部区域被遮挡,具体的一种场景可以为图像中的人脸图像为戴口罩的人脸图像。
进而,基于目标模型,对输入的待识别人脸图像进行识别,最终得到对应的人脸图像作为识别结果。需要指出的是,最终得到的人脸识别结果中,人脸中不包含任何遮挡区域。
需要理解的是,本实施例提供的识别人脸图像的处理,可以与生成目标模型的处理在同一个设备中实现。又或者,在不同设备中实现,比如,在终端设备(比如个人电脑)或者服务器生成目标模型;在另一个终端设备(比如手机)中使用目标模型进行识别,那么这种情况下,还可以包括:手机从服务器(或另一个终端设备)中获取到目标模型,基于目标模型进行人脸识别。
综上,本申请提供的方案适用于图像识别处理方面,具体来说可用于任何需要对存在遮挡区域的人脸图像进行识别,尤其是戴口罩的人脸图像方面。
终端进行图像处理,尤其是进行人脸识别的场景中,仅需要在终端设置前述目标模型即可高效并准确的得到识别结果。
比如,一种场景中需要人脸识别进行手机解锁,那么仅需要设置本申请得到的运行速度较快的目标模型即可实现人脸解锁,而不需要设置较为复杂的模型在手机来执行人脸解锁。
本发明实施例还提供一种模型生成装置,如图3所示,包括:
获取模块31,用于获取第一模型;
模型生成模块32,用于执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述模型生成模块32,具体用于
在所述N次迭代操作中的第i次迭代操作中,基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
所述模型生成模块32,具体用于若所述迭代操作的累计次数未达到预设的次数阈值N,则基于第i次迭代操作得到的第二模型的性能评估结果,对激活函数编码生成器进行更新,得到第i+1个激活函数编码生成器,执行第i+1次迭代操作。
所述模型生成模块32,具体用于基于所述第i个激活函数编码生成器生成激活函数编码;基于激活函数搜索空间对所述激活函数编码进行解码,得到第i个激活函数。
所述模型生成模块32,具体用于采用训练数据,对所述第一模型以及所述使用第i个激活函数的待训练的第二模型进行前向传播,得到第一损失函数;基于所述第一损失函数更新所述使用第i个激活函数的待训练的第二模型,直至针对使用第i个激活函数的待训练的第二模型的更新次数达到预设门限值,得到第二模型。
所述模型生成模块32,用于对所述采用第i个激活函数的待训练的第二模型进行量化,得到第二损失函数;
以及,
基于所述第一损失函数以及第二损失函数更新所述待训练的第二模型。
所述第一损失函数包括:表征所述第一模型和所述待训练的第二模型分别提取出的特征之间的差异的蒸馏损失函数;
和/或,
表征所述第一模型和所述待训练的第二模型分别对深度学习任务的执行结果之间的差异的任务损失函数。
所述模型生成模块32,用于将所述第二模型进行量化,将量化后的第二模型作为搜索得到的所述目标模型。
如图4所示,所述装置还包括:
图像识别模块33,用于获取待识别人脸图像;其中,所述待识别人脸图像中的部分人脸区域处于遮挡状态;基于所述目标模型以及所述待识别人脸图像,得到人脸图像的识别结果。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图5所示,是根据本申请实施例的模型生成方法的电子设备的框图。该电子设备可以为前述部署设备或代理设备。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器801为例。
存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的模型生成方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的模型生成方法。
存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的模型生成方法对应的程序指令/模块。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的模型生成方法。
存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
模型生成方法的电子设备还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置803可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
根据本申请的技术,可以基于第一模型对第二模型进行蒸馏,还可以基于多次迭代操作从激活函数搜索空间中搜索得到更优的激活函数进行第二模型的训练,从而可以得到精度足够高并且足够小的量化后的目标模型,进而由于该目标模型的能够满足精度以及足够小的要求,因此更加适用于需要实时处理的场景。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (18)
1.一种模型生成方法,包括:
获取第一模型;
执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述N次迭代操作中的第i次迭代操作包括:
基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;
基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;
若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
2.根据权利要求1所述的方法,其中,所述方法还包括:
若所述迭代操作的累计次数未达到预设的次数阈值N,则基于第i次迭代操作得到的第二模型的性能评估结果,对激活函数编码生成器进行更新,得到第i+1个激活函数编码生成器,执行第i+1次迭代操作。
3.根据权利要求1所述的方法,其中,所述基于第i个激活函数编码生成器得到第i个激活函数,包括:
基于所述第i个激活函数编码生成器生成激活函数编码;
基于激活函数搜索空间对所述激活函数编码进行解码,得到第i个激活函数。
4.根据权利要求1所述的方法,其中,所述基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型,包括:
采用训练数据,对所述第一模型以及所述使用第i个激活函数的待训练的第二模型进行前向传播,得到第一损失函数;
基于所述第一损失函数更新所述使用第i个激活函数的待训练的第二模型,直至针对使用第i个激活函数的待训练的第二模型的更新次数达到预设门限值,得到第二模型。
5.根据权利要求4所述的方法,其中,所述方法还包括:
对所述采用第i个激活函数的待训练的第二模型进行量化,得到第二损失函数;
相应的,所述基于所述第一损失函数更新所述待训练的第二模型,还包括:
基于所述第一损失函数以及第二损失函数更新所述待训练的第二模型。
6.根据权利要求4所述的方法,其中,所述第一损失函数包括:表征所述第一模型和所述待训练的第二模型分别提取出的特征之间的差异的蒸馏损失函数;
和/或,
表征所述第一模型和所述待训练的第二模型分别对深度学习任务的执行结果之间的差异的任务损失函数。
7.根据权利要求1所述的方法,其中,所述将所述第二模型作为搜索得到的所述目标模型,还包括:
将所述第二模型进行量化,将量化后的第二模型作为搜索得到的所述目标模型。
8.根据权利要求1-7任一项所述的方法,其中,所述方法还包括:
获取待识别人脸图像;其中,所述待识别人脸图像中的部分人脸区域处于遮挡状态;
基于所述目标模型以及所述待识别人脸图像,得到人脸图像的识别结果。
9.一种模型生成装置,包括:
获取模块,用于获取第一模型;
模型生成模块,用于执行N次迭代操作搜索得到目标模型;其中,N为大于等于2的整数;
其中,所述模型生成模块,具体用于在所述N次迭代操作中的第i次迭代操作中,基于第i个激活函数编码生成器得到第i个激活函数;其中,i为大于等于1且小于等于N的整数;基于所述第一模型对使用第i个激活函数的待训练的第二模型进行蒸馏,得到第二模型;其中,所述待训练的第二模型的结构复杂度低于所述第一模型的结构复杂度;若所述迭代操作的累计次数达到预设的次数阈值N,则将所述第二模型作为搜索得到的所述目标模型。
10.根据权利要求9所述的装置,其中,所述模型生成模块,具体用于若所述迭代操作的累计次数未达到预设的次数阈值N,则基于第i次迭代操作得到的第二模型的性能评估结果,对激活函数编码生成器进行更新,得到第i+1个激活函数编码生成器,执行第i+1次迭代操作。
11.根据权利要求9所述的装置,其中,所述模型生成模块,具体用于基于所述第i个激活函数编码生成器生成激活函数编码;基于激活函数搜索空间对所述激活函数编码进行解码,得到第i个激活函数。
12.根据权利要求9所述的装置,其中,所述模型生成模块,具体用于采用训练数据,对所述第一模型以及所述使用第i个激活函数的待训练的第二模型进行前向传播,得到第一损失函数;基于所述第一损失函数更新所述使用第i个激活函数的待训练的第二模型,直至针对使用第i个激活函数的待训练的第二模型的更新次数达到预设门限值,得到第二模型。
13.根据权利要求12所述的装置,其中,所述模型生成模块,用于对所述采用第i个激活函数的待训练的第二模型进行量化,得到第二损失函数;
以及,
基于所述第一损失函数以及第二损失函数更新所述待训练的第二模型。
14.根据权利要求12所述的装置,其中,所述第一损失函数包括:表征所述第一模型和所述待训练的第二模型分别提取出的特征之间的差异的蒸馏损失函数;
和/或,
表征所述第一模型和所述待训练的第二模型分别对深度学习任务的执行结果之间的差异的任务损失函数。
15.根据权利要求9所述的装置,其中,所述模型生成模块,用于将所述第二模型进行量化,将量化后的第二模型作为搜索得到的所述目标模型。
16.根据权利要求9-15任一项所述的装置,其中,所述装置还包括:
图像识别模块,用于获取待识别人脸图像;其中,所述待识别人脸图像中的部分人脸区域处于遮挡状态;基于所述目标模型以及所述待识别人脸图像,得到人脸图像的识别结果。
17.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010599287.XA CN111753761B (zh) | 2020-06-28 | 2020-06-28 | 模型生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010599287.XA CN111753761B (zh) | 2020-06-28 | 2020-06-28 | 模型生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111753761A true CN111753761A (zh) | 2020-10-09 |
CN111753761B CN111753761B (zh) | 2024-04-09 |
Family
ID=72677843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010599287.XA Active CN111753761B (zh) | 2020-06-28 | 2020-06-28 | 模型生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111753761B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112507197A (zh) * | 2020-12-18 | 2021-03-16 | 北京百度网讯科技有限公司 | 模型搜索方法、装置、电子设备、存储介质和程序产品 |
CN113011494A (zh) * | 2021-03-18 | 2021-06-22 | 北京百度网讯科技有限公司 | 一种特征处理方法、装置、设备以及存储介质 |
CN113610232A (zh) * | 2021-09-28 | 2021-11-05 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN117077671A (zh) * | 2023-10-17 | 2023-11-17 | 北京青牛技术股份有限公司 | 一种交互数据生成方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108960080A (zh) * | 2018-06-14 | 2018-12-07 | 浙江工业大学 | 基于主动防御图像对抗攻击的人脸识别方法 |
CN110766142A (zh) * | 2019-10-30 | 2020-02-07 | 北京百度网讯科技有限公司 | 模型生成方法和装置 |
WO2020037937A1 (zh) * | 2018-08-20 | 2020-02-27 | 深圳壹账通智能科技有限公司 | 人脸识别的方法、装置、终端及计算机可读存储介质 |
CN111259738A (zh) * | 2020-01-08 | 2020-06-09 | 科大讯飞股份有限公司 | 人脸识别模型构建方法、人脸识别方法及相关装置 |
WO2020125236A1 (zh) * | 2018-12-17 | 2020-06-25 | 腾讯科技(深圳)有限公司 | 数据处理方法及装置、存储介质和电子装置 |
-
2020
- 2020-06-28 CN CN202010599287.XA patent/CN111753761B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108960080A (zh) * | 2018-06-14 | 2018-12-07 | 浙江工业大学 | 基于主动防御图像对抗攻击的人脸识别方法 |
WO2020037937A1 (zh) * | 2018-08-20 | 2020-02-27 | 深圳壹账通智能科技有限公司 | 人脸识别的方法、装置、终端及计算机可读存储介质 |
WO2020125236A1 (zh) * | 2018-12-17 | 2020-06-25 | 腾讯科技(深圳)有限公司 | 数据处理方法及装置、存储介质和电子装置 |
CN110766142A (zh) * | 2019-10-30 | 2020-02-07 | 北京百度网讯科技有限公司 | 模型生成方法和装置 |
CN111259738A (zh) * | 2020-01-08 | 2020-06-09 | 科大讯飞股份有限公司 | 人脸识别模型构建方法、人脸识别方法及相关装置 |
Non-Patent Citations (1)
Title |
---|
葛仕明;赵胜伟;刘文瑜;李晨钰;: "基于深度特征蒸馏的人脸识别", 北京交通大学学报, no. 06, 15 December 2017 (2017-12-15), pages 32 - 38 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112507197A (zh) * | 2020-12-18 | 2021-03-16 | 北京百度网讯科技有限公司 | 模型搜索方法、装置、电子设备、存储介质和程序产品 |
CN112507197B (zh) * | 2020-12-18 | 2024-01-19 | 北京百度网讯科技有限公司 | 模型搜索方法、装置、电子设备、存储介质和程序产品 |
CN113011494A (zh) * | 2021-03-18 | 2021-06-22 | 北京百度网讯科技有限公司 | 一种特征处理方法、装置、设备以及存储介质 |
CN113011494B (zh) * | 2021-03-18 | 2024-02-27 | 北京百度网讯科技有限公司 | 一种特征处理方法、装置、设备以及存储介质 |
CN113610232A (zh) * | 2021-09-28 | 2021-11-05 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN113610232B (zh) * | 2021-09-28 | 2022-02-22 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN117077671A (zh) * | 2023-10-17 | 2023-11-17 | 北京青牛技术股份有限公司 | 一种交互数据生成方法及系统 |
CN117077671B (zh) * | 2023-10-17 | 2024-01-05 | 北京青牛技术股份有限公司 | 一种交互数据生成方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111753761B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639710A (zh) | 图像识别模型训练方法、装置、设备以及存储介质 | |
CN111753761B (zh) | 模型生成方法、装置、电子设备及存储介质 | |
CN111737994B (zh) | 基于语言模型获取词向量的方法、装置、设备及存储介质 | |
CN113627135B (zh) | 一种招聘岗位描述文本的生成方法、装置、设备及介质 | |
CN111767833A (zh) | 模型生成方法、装置、电子设备及存储介质 | |
CN111737996B (zh) | 基于语言模型获取词向量的方法、装置、设备及存储介质 | |
CN112347769B (zh) | 实体识别模型的生成方法、装置、电子设备及存储介质 | |
KR102565673B1 (ko) | 시멘틱 표현 모델의 생성 방법, 장치, 전자 기기 및 저장 매체 | |
CN111582479B (zh) | 神经网络模型的蒸馏方法和装置 | |
CN111667056B (zh) | 用于搜索模型结构的方法和装置 | |
CN110795569B (zh) | 知识图谱的向量表示生成方法、装置及设备 | |
CN111737995A (zh) | 基于多种词向量训练语言模型的方法、装置、设备及介质 | |
CN111326251B (zh) | 一种问诊问题输出方法、装置以及电子设备 | |
CN111259671A (zh) | 文本实体的语义描述处理方法、装置及设备 | |
CN112580822B (zh) | 机器学习模型的对抗训练方法装置、电子设备和介质 | |
CN110717340B (zh) | 推荐方法、装置、电子设备及存储介质 | |
CN111241838B (zh) | 文本实体的语义关系处理方法、装置及设备 | |
US20220101642A1 (en) | Method for character recognition, electronic device, and storage medium | |
CN111079945A (zh) | 端到端模型的训练方法及装置 | |
CN111950293A (zh) | 语义表示模型的生成方法、装置、电子设备及存储介质 | |
CN111914994A (zh) | 多层感知机的生成方法、装置、电子设备及存储介质 | |
CN112561056A (zh) | 神经网络模型的训练方法、装置、电子设备和存储介质 | |
CN111753759A (zh) | 模型生成方法、装置、电子设备及存储介质 | |
CN111611808A (zh) | 用于生成自然语言模型的方法和装置 | |
CN110991183A (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 |