伪造人像检测模型的训练方法

文档序号:31014436发布日期:2022-08-05 18:08阅读:64来源:国知局
伪造人像检测模型的训练方法

1.本公开涉及人工智能领域,更具体地,涉及一种伪造人像检测模型的训练方法。


背景技术:

2.相关技术中的伪造人像检测方法通常针对于构成伪造人像的特殊特征进行检测,通过基于大量样本建立检测模型,可以实现对具有特定特征的伪造人像的识别。但是,随着伪造人像生成技术的发展,不同生成技术会基于不同的特征进行增添、删除或替换,从而生成不同类别的伪造人像,导致现有的检测模型难以对其他类别的伪造人像进行精准识别。
3.在实现本公开的过程中发现,相关技术的伪造人像检测方法需要使用大量的样本数据训练检测模型,且对于未见类别的伪造人像的识别能力较差。


技术实现要素:

4.有鉴于此,本公开提供了一种伪造人像检测模型的训练方法。该方法包括:获第一人像样本集,其中,上述第一人像样本集包括支撑集和查询集;对于每一个任务,从上述支撑集中选取对应于上述任务的多个样本作为支撑子集,从上述查询集中选取对应于上述任务的多个样本作为查询子集;将上述支撑子集输入第一初始网络模型中,计算得到第一过程参数;将上述查询子集输入以上述第一过程参数为模型参数的第二初始网络模型中,计算得到第二过程参数;基于多个上述任务中每个上述任务对应的上述第二过程参数,调整上述第一初始网络模型的模型参数;以及使用上述第二人像样本集及样本标签训练调整模型参数后的第一初始网络模型,得到伪造人像检测模型。
5.根据本公开的实施例,上述将上述支撑子集输入上述第一初始网络模型中,计算得到第一过程参数包括:通过公式1计算得到上述第一过程参数:
[0006][0007]
式中,i表示第i个任务;θ
′i表示上述第一过程参数;θ表示上述第一初始网络模型的模型参数;α表示学习率;l表示二元交叉熵损失函数;f
θ
表示以θ为模型参数的上述第一初始网络模型输入上述支撑子集后的输出;表示上述支撑子集。
[0008]
根据本公开的实施例,上述将上述查询子集输入以上述第一过程参数为模型参数的第二初始网络模型中,计算得到第二过程参数包括:通过公式2计算得到上述第二过程参数:
[0009][0010]
式中,θi表示上述第二过程参数;fθ
′i表示以θ
′i为模型参数的上述第二初始网络模型输入上述查询子集后的输出;表示上述查询子集。
[0011]
根据本公开的实施例,上述基于多个上述任务中每个上述任务对应的上述第二过程参数,调整上述第一初始网络模型的模型参数包括:通过公式3更新上述第一初始网络模
型的模型参数:
[0012][0013]
式中,k表示上述多个任务的数量;β表示训练的步长。
[0014]
根据本公开的实施例,在使用第二人像样本集及样本标签训练调整模型参数后的第一初始网络模型之前,使用人像测试集评估调整模型参数后的第一初始网络模型,得到评估结果。
[0015]
根据本公开的实施例,上述使用人像测试集评估调整模型参数后的第一初始网络模型,得到评估结果包括:将上述人像测试集输入上述调整模型参数后的第一初始网络模型中,得到第一检测向量;基于上述人像测试集的标签映射得到的二值向量和上述第一检测向量计算训练误差;在上述训练误差大于预设值的情况下,得到未收敛的评估结果;以及在上述训练误差小于或等于预设值的情况下,得到已收敛的评估结果。
[0016]
根据本公开的实施例,在上述评估结果为已收敛的情况下,使用第二人像样本集及样本标签训练上述调整模型参数后的第一初始网络模型;以及在上述评估结果为未收敛的情况下,继续使用上述第一人像样本集训练上述调整模型参数后的第一初始网络模型。
[0017]
根据本公开的实施例,上述第二人像样本集中伪造人像样本类别的数目少于上述第一人像样本集中伪造人像样本类别的数目;上述第一人像样本集中伪造人像样本的类别与上述人像测试集中伪造人像样本的类别相同,与上述第二人像样本集中伪造人像样本的类别不同。
[0018]
根据本公开的实施例,将待检测人像输入上述伪造人像检测模型中,得到上述待检测人像的真伪检测结果。
[0019]
根据本公开的实施例,在进行训练或检测前,将上述第一人像样本集中的样本或上述第二人像样本集中的样本或上述待检测人像裁剪成相同大小。
[0020]
根据本公开的实施例,通过将初始网络模型在第一人像样本集上进行预训练,再在第二人像样本集上进行微调,实现了基于元学习的伪造人像检测模型的训练,训练得到的模型对于未见类的伪造人像具有更好的检测效果。在预训练过程中,通过使用多步更新的方法,避免了深层网络在训练时易陷入局部最优的问题,至少部分地克服了深层网络易过拟合的技术问题,同时减少了每步更新的参数量,提高了运行效率。
附图说明
[0021]
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0022]
图1示意性示出了根据本公开实施例的伪造人像检测模型的训练方法的流程图;
[0023]
图2示意性示出了根据本公开实施例的伪造人像检测模型的训练流程的示意图。
具体实施方式
[0024]
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细
节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
[0025]
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0026]
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
[0027]
在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。在使用类似于“a、b或c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b或c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。
[0028]
相关技术中,伪造检测需要使用容量大、结构复杂的模型,例如resnet18等,但是元学习中所用的网络结构是极为简单的,容量不足,如果直接使用maml(model-agnostic meta learning)算法进行模型参数的更新,会造成较为严重的过拟合。
[0029]
因此,本公开的实施例提供了一种伪造人像检测模型的训练方法。该方法包括:获第一人像样本集,其中,第一人像样本集包括支撑集和查询集;对于每一个任务,从支撑集中选取对应于任务的多个样本作为支撑子集,从查询集中选取对应于任务的多个样本作为查询子集;将支撑子集输入第一初始网络模型中,计算得到第一过程参数;将查询子集输入以第一过程参数为模型参数的第二初始网络模型中,计算得到第二过程参数;基于多个任务中每个任务对应的第二过程参数,调整第一初始网络模型的模型参数;以及使用第二人像样本集及样本标签训练调整模型参数后的第一初始网络模型,得到伪造人像检测模型。
[0030]
图1示意性示出了根据本公开实施例的伪造人像检测模型的训练方法的流程图。
[0031]
如图1所示,该方法包括操作s110~s160。
[0032]
在操作s110,获取第一人像样本集。
[0033]
根据本公开的实施例,第一人像样本集中的训练样本对应于多个任务。将第一人像样本按比例进行分割,可以得到支撑集和查询集,分割比例是可以调节的超参。
[0034]
在操作s120,对于每一个任务,从支撑集中选取对应于任务的多个样本作为支撑子集,从查询集中选取对应于任务的多个样本作为查询子集。
[0035]
根据本公开的实施例,每一个任务对应第一人像样本集中的多个训练样本,按照这些训练样本在第一人像样本集中的归属,可以划分为支撑子集和查询子集。
[0036]
在操作s130,将支撑子集输入第一初始网络模型中,计算得到第一过程参数。
[0037]
在操作s140,将查询子集输入以第一过程参数为模型参数的第二初始网络模型中,计算得到第二过程参数。
[0038]
根据本公开的实施例,第二初始网络模型和第一初始网络模型的区别仅在于模型
参数,两者具有相同的网络结构。
[0039]
在操作s150,基于多个任务中每个任务对应的第二过程参数,调整第一初始网络模型的模型参数。
[0040]
根据本公开的实施例,在每一轮训练迭代过程中,首先会从第一样本集中的所有任务中选取多个任务进行训练,每一个任务训练完成后会得到一个第二过程参数,最后结合这些任务对应的多个第二过程参数计算得到模型参数的变化量,基于模型参数的变化量。调整第一初始网络模型的模型参数。
[0041]
根据本公开的实施例,操作s110~s150实现了基于元学习的伪造人像检测模型的预训练。
[0042]
在操作s160,使用第二人像样本集及样本标签训练调整模型参数后的第一初始网络模型,得到伪造人像检测模型。
[0043]
根据本公开的实施例,完成预训练的伪造人像检测模型可以在少量其他任务的样本集中进行微调,以增强模型的泛化能力。
[0044]
根据本公开的实施例,通过将初始网络模型在第一人像样本集上进行预训练,再在第二人像样本集上进行微调,实现了基于元学习的伪造人像检测模型的训练,训练得到的模型对于未见类的伪造人像具有更好的检测效果。在预训练过程中,通过使用多步更新的方法,避免了深层网络在训练时易陷入局部最优的问题,至少部分地克服了深层网络易过拟合的技术问题,同时减少了每步更新的参数量,提高了运行效率。
[0045]
图2示意性示出了根据本公开实施例的伪造人像检测模型的训练流程的示意图。
[0046]
如图2所示,本公开实施例的伪造人像检测模型的训练流程包括基于多种类少量伪造人像样本上的预训练和基于少量未见类伪造人像样本的模型微调,训练过程如下:
[0047]
第一步,使用多种类少量伪造人像样本作为训练集,对检测模型进行预训练。根据本公开的实施例,训练集d
train
可以表示为:
[0048][0049]
在式中,表示支撑集;表示查询集。设置检测模型的模型参数为θ。
[0050]
在预训练的每一次迭代中,从训练集对应的任务集中选取k个任务,将这k个任务对应的样本作为第一人像样本集。对于第i个任务,从支撑集中取ms个样本构成该任务的支撑子集从查询集中取mq个样本构成该任务的查询子集
[0051]
根据本公开的实施例,将支撑子集输入检测模型中,通过公式2可以计算得到第一过程参数:
[0052][0053]
在式中,i表示第i个任务;θi表示第一过程参数;α表示学习率;l表示二元交叉熵损失函数;f
θ
表示以θ为模型参数的检测模型输入支撑子集后的输出。
[0054]
根据本公开的实施例,将查询子集输入以第一过程参数为模型参数的检测模型中,通过公式3可以计算得到第二过程参数:
[0055][0056]
式中,θi表示第二过程参数;表示以θi为模型参数的检测模型输入查询子集后的输出。
[0057]
根据本公开的实施例,得到全部k个任务对应的第二过程参数后,可以通过公式4计算得到模型参数的更新值,并调整检测模型的模型参数:
[0058][0059]
式中,β表示训练的步长。
[0060]
根据本公开的实施例,分步更新模型参数的训练方式能够使检测模型充分学习不同类别伪造人像间的差异,从而具有较好的伪造检测泛化性能。
[0061]
根据本公开的实施例,在完成每一次迭代后,统计已训练次数,当已训练次数达到预先设置的训练轮次时,结束预训练。在已训练次数小于预先设置的训练轮次时,使用人像测试集对调整模型参数后的检测模型进行评估,并根据评估结果选择继续进行迭代或者结束训练。
[0062]
根据本公开的实施例,评估过程包括:将人像测试集输入调整模型参数后的检测模型中,得到第一检测向量;基于人像测试集的标签映射得到的二值向量和第一检测向量计算训练误差;在训练误差大于预设值的情况下,得到未收敛的评估结果;以及在训练误差小于或等于预设值的情况下,得到已收敛的评估结果。
[0063]
根据本公开的实施例,训练误差可以包括均方根误差,或者可以使用损失函数计算得到训练误差。
[0064]
根据本公开的实施例,在评估结果为已收敛的情况下,结束对检测模型的预训练;以及在评估结果为未收敛的情况下,继续进行迭代训练,选择新的第一人像样本集训练调整模型参数后的检测模型。
[0065]
第二步,使用少量未见类伪造人像样本作为第二人像样本集,对经过预训练的检测模型进行微调,得到伪造人像检测模型。
[0066]
根据本公开的实施例,可以使用有监督或无监督的方法对经过预训练的检测模型进行再次的训练,训练时设置较少的训练轮次或学习率。
[0067]
根据本公开的实施例,第二人像样本集与训练集相比,具有不同的伪造人像的类别,且每种类别对应的样本数量也较少。
[0068]
根据本公开的实施例,伪造人像检测模型的模型参数由θ更新为θ
ft
。在检测过程过程中,输入待检测人像x,伪造人像检测模型根据输入人像输出其检测结果表示为:
[0069][0070]
根据本公开的实施例,在进行训练或检测前,将第一人像样本集中的样本或第二人像样本集中的样本或待检测人像裁剪成相同大小。
[0071]
根据本公开的实施例,训练得到的伪造人像检测模型具有较好的检测能力,和相
关技术例如mesonet相比,其性能提高约3%。
[0072]
本公开实施例的方法只有少量样本的情况下也能够进行充分训练,而且对于未见类伪造人像有着较好的泛化能力,并且能够通过端到端训练,不需要额外的训练过程。
[0073]
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1