CN114117333B - 用于异常检测的对抗重构网络设计、训练方法及检测方法 - Google Patents

用于异常检测的对抗重构网络设计、训练方法及检测方法 Download PDF

Info

Publication number
CN114117333B
CN114117333B CN202210068973.3A CN202210068973A CN114117333B CN 114117333 B CN114117333 B CN 114117333B CN 202210068973 A CN202210068973 A CN 202210068973A CN 114117333 B CN114117333 B CN 114117333B
Authority
CN
China
Prior art keywords
network
training
reconstructed
real
discrimination
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
CN202210068973.3A
Other languages
English (en)
Other versions
CN114117333A (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.)
Nanhu Laboratory
Original Assignee
Nanhu Laboratory
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 Nanhu Laboratory filed Critical Nanhu Laboratory
Priority to CN202210068973.3A priority Critical patent/CN114117333B/zh
Publication of CN114117333A publication Critical patent/CN114117333A/zh
Application granted granted Critical
Publication of CN114117333B publication Critical patent/CN114117333B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • 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
    • 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
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种用于异常检测的对抗重构网络设计、训练方法及检测方法,尤其涉及一种用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法,包括重构网络损失函数和判别网络损失函数,所述的重构网络损失函数包括重构损失函数和重构对抗损失函数,所述的判别网络损失函数包括真实图像判别损失函数和判别对抗损失函数,所述的重构损失函数用于评估重构网络的重构性能,真实图像判别损失函数用于评估判别网络的判别性能,所述的重构对抗损失函数和判别对抗损失函数用于重构网络和判别网络对抗训练的交互。前述对抗重构网络损失函数涉及方法为多段式训练策略提供基础,使模型训练更稳定,克服对抗重构网络的对抗训练不稳定的问题,保证最终的重构网络能够高效复原正常样本,且判别网络对正常样本赋高分。

Description

用于异常检测的对抗重构网络设计、训练方法及检测方法
技术领域
本发明属于异常检测技术领域,尤其是涉及一种用于异常检测的对抗重构网络损失函数设计、训练方法及异常检测方法。
背景技术
异常检测是指利用计算机视觉技术,对工业生产中的环境异常、产品异常、行为异常等进行自动检测。环境异常如火灾烟雾检测,产品异常如各类工业产品表面缺陷检测,行为异常如工人穿戴(如安全帽、反光衣)是否符合规范等。
对抗生成网络(GAN)由生成网络和判别网络组成。生成网络以随机向量作为输入,输出生成的图像(不存在于原数据集中);判别网络以一张真实的图像和一张生成的图像作为输入,进行真假评判,输出对两者各自的判别分数。判别分数越高,图像为真实图像的概率越大。对抗生成网络的训练过程是通过生成网络和判别网络的互相博弈来进行的。判别网络和生成网络交替训练,判别网络的优化目标是给真实图像高分,给生成的图像低分,生成网络的优化目标是使判别网络尽可能地给生成的图像高分。
重构网络是指能够重构输入图像的神经网络,通常由编码器和解码器组成。重构网络与生成网络类似之处在于两者输出均为图像。区别在于生成网络的输入为随机向量,重构网络的输入为要重构的图像。如附图1所示,对抗重构网络是借鉴GAN对抗训练的思想,在重构网络基础上添加判别网络,目的是提高重构网络的性能,使重构网络重构的图像更接近输入图像。
目前较常用的异常检测的一类方案是基于特定目标的检测,以目标的存在与否作为判定异常的标准。张等人将YOLOv3网络应用于桥梁混凝土表面损伤异常检测,检测裂缝、凸起、剥落和裸露的钢筋等异常情况。此外,第二类方案基于对正常情况的学习进行异常检测,以异于正常情况为判定异常的标准。如,2017年,Schlegl等基于GAN提出AnoGAN,检测图像从图像空间到潜在空间的差异, 其异常分数由图像空间中的差异和判别网络最后一层特征图之间的差异计算;Soukup等采用变分自编码器网络在潜在空间中实现缺陷检测;2019年,Schlegl等针对之前AnoGAN的工作提出了改进f-AnoGAN, 其异常分数由编码器模块实现的图像样本重构损失和判别网络最后一层特征图之间的差异来计算。
利用对抗重构网络进行异常检测属于第二类方案。重构网络应用于异常检测时,训练集只包含正常类别图像,测试集同时包含正常类别和异常类别图像。重构网络进行异常检测的原理是:训练阶段仅使用正常样本训练重构网络。在推理阶段,若为正常样本,重构网络重构的图像与输入图像极其相似;若为异常样本,仅使用正常样本训练好的重构网络将无法精确地重构异常样本。通过重构误差的大小判定正常异常。相对于传统基于特定目标的检测,其具有诸多优点,例如训练样本容易获取,不针对特定目标,可迁移性强等。但是目前基于对抗重构网络的异常检测方法在技术上仍然不够完善,导致该技术从理论转为实用的效果不佳,如:1、对抗训练不稳定,难以保证重构网络和判别网络都收敛;2、对抗训练没有一个跟训练目标对应的停止准则,网络只能训练固定次数,或者说人工观察重构网络重构的图像质量,质量高的时候就终止训练,这样带来的问题是难以在合适的时候停止训练,也就无法在众多训练得到的模型中选出可靠的模型;3、在没有足够数据的情况下难以确定合适的正常异常阈值,即缺乏可靠的正常异常判定方法,因而只能在一个测试集上给出AUROC的指标,难以实用。
对此,中国专利也公开了一些利用对抗重构网络进行异常检测的方法,如一种对抗网络自编码器的卫星异常检测方法, CN109948117A。但是该方案仍然没有很好地解决前述这些问题,如该方案采用对抗重构网络,而此类网络的对抗训练存在训练不稳定的问题,该方案也没有提出解决该问题的手段;其次,该方案无法适时终止网络训练,无法保证所得模型的可靠性;此外,该方案虽然采用了非固定阈值,但是其阈值选取依赖近期历史数据构成的验证集,当验证集规模不足,不具备代表性时,阈值会有较大偏差,造成较多的假阳性或者假阴性。
发明内容
本发明的目的是针对上述问题,提供一种用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法、网络训练方法及异常检测方法。处理基于对抗重构网络的异常检测方法中,训练不稳定以及缺乏可靠的异常判定方法的问题,完善技术方案,提高其效率与落地性。
为达到上述目的,本发明采用了下列技术方案:
一种用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法,包括重构网络损失函数和判别网络损失函数,其特征在于,所述的重构网络损失函数包括重构损失函数和重构对抗损失函数,所述的判别网络损失函数包括真实图像判别损失函数和判别对抗损失函数,所述的重构损失函数用于评估重构网络的重构性能,真实图像判别损失函数用于评估判别网络的判别性能,所述的重构对抗损失函数和判别对抗损失函数用于重构网络和判别网络对抗训练的交互。
在上述的用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法中,所述的真实图像判别损失函数基于判别网络对真实图像的判别分数与真实图像的标签的差异计算;所述的重构损失函数基于真实图像和重构图像的平均相似度计算;
所述的判别对抗损失函数和重构对抗损失函数均基于重构图像的判别分数与标签0或1的差异计算,在判别对抗损失函数中,标签为0,即判别网络需要使重构图像的判别分数尽可能低;在重构对抗损失函数中,标签为1,即重构网络需要使重构图像的判别分数尽可能高。由此实现重构网络和判别网络的对抗训练。
在上述的用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法中,所述的判别网络损失函数包括:
err_d=err_d_real+err_d_fake,其中,
err_d_real为真实图像判别损失函数,err_d_fake为判别对抗损失函数:
err_d_real=BCE(pred_real, real_label)
err_d_fake=BCE(pred_fake, fake_label)
BCE表示交叉熵损失函数;
pred_real为判别网络对一个批次真实图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组;
pred_fake为判别网络对一个批次重构图像的判别分数;
fake_label表示重构图像的标签,即元素全部为0的数组。
在上述的用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法中,所述的重构网络损失函数包括:
err_g=err_g1+err_g2,其中,
err_g1为重构损失函数;err_g2为重构对抗损失函数;
err_g1= w1×(1-similarity(real,fake))
err_g2= w2×BCE(pred_fake, real_label)
w1为权重系数;w2为权重系数;BCE表示交叉熵损失函数;
式中real表示一个批次的真实图像,fake表示与real一一对应的一个批次重构图像。
similarity(real,fake) 表示求取一个批次内重构图像和对应真实图像的平均相似度;
pred_fake为判别网络对一个批次重构图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组。
一种用于异常检测的对抗重构网络训练方法,包括以下步骤:
S1.为对抗重构网络构建上述支持多段式训练的损失函数,同时为对抗重构网络权重参数和训练超参数赋初始值;
S2.对对抗重构网络进行包括重构网络和判别网络对抗训练、重构网络单独训练和判别网络单独训练的多段式训练。
在上述的用于异常检测的可支持多段式训练的对抗重构网络损失函数设计方法中,步骤S1中,为训练超参数和对抗重构网络参数赋初始值包括:
为各训练阶段赋最大epoch数,一个epoch表示遍历一次完整训练集;为各阶段训练计数器赋0;为重构网络和判别网络的权重赋初始值。
在上述的用于异常检测的对抗重构网络训练方法中,所述的多段式训练过程依次包括阶段1、阶段2、阶段3和阶段4四个阶段,且阶段1为重构网络和判别网络对抗训练,阶段2为判别网络单独训练,阶段3为重构网络单独训练,阶段4为判别网络单独训练。
在上述的用于异常检测的对抗重构网络训练方法中,步骤S2中,所述的多段式训练过程包括:
阶段1,重构网络和判别网络对抗训练,在每个epoch中分别训练一次重构网络和判别网络,k1值加1,直至similarity_mean>=g_th1或者k1==n1,若此时d_mean<d_th1,则进入阶段2,反之进入阶段3;
阶段2,判别网络单独训练,在每个epoch中,固定重构网络,训练判别网络, k2值加1,直至d_mean>=d_th1或者k2==n2,进入阶段3;
阶段3,重构网络单独训练,在每个epoch中,固定判别网络,训练重构网络, k3值加1,直至similarity_mean>=g_th2或者k3==n3,进入阶段4;
阶段4,判别网络单独训练,在每个epoch中,固定重构网络,训练判别网络, k4值加1,直至d_mean>=d_th1 或者k4==n4;
k1、k2、k3、k4分别为阶段1、2、3、4的训练计数器,初始值均为0;
n1、n2、n3、n4分别为阶段1、2、3、4的最大训练epoch数,最大训练epoch数可根据数据集大小自行设置;
similarity_mean表示训练集真实图像与重构图像的平均相似度;d_mean表示判别网络对训练集真实图像的平均判别分数;
g_th1、g_th2表示重构网络训练的两个门限值,g_th1<g_th2;d_th1表示判别网络训练的门限值。g_th1、g_th2和d_th1可根据实施例的图像相似度指标取值范围、判别网络输出取值范围等具体情况自行设置。
一种基于对抗重构网络的异常检测方法,使用经过上述方法训练的对抗重构网络进行异常检测,异常得分score计算方法为:
score=0.5×(similarity+d)
若score小于Th,则判定为异常类别,反之则为正常类别;
Th表示用于判定正常异常的阈值;
similarity表示真实图像与重构图像的相似度;
d表示判别网络对真实图像的判别分数。
在上述的基于对抗重构网络的异常检测方法中,所述的Th基于训练集异常得分的统计特性得到:
Th=0.5×[(similarity_mean-similarity_std)+(d_mean-d_std)]
similarity_mean和similarity_std分别表示训练集真实图像与重构图像的平均相似度和相似度标准差;
d_mean和d_std分别表示判别网络对训练集真实图像的平均判别分数和判别分数标准差。
本发明的优点在于:
1、本方案提出一种可支持多段式训练的对抗重构网络损失函数设计,为多段式训练策略提供基础,使模型训练更稳定,克服对抗重构网络的对抗训练不稳定的问题,保证最终的重构网络能够高效复原正常样本,且判别网络对正常样本赋高分;
2、采用多阶段训练方式,并在训练过程中使用训练集真实图像与重构图像的平均相似度衡量重构网络的图像重构能力;使用判别网络对训练集真实图像的平均判别分数衡量判别网络对真实图像的判别能力,使得训练适时停止,取得可靠的模型;
3、通过对训练集正常样本分布的统计,在异常样本缺乏的情况下也能够较好地确定阈值,完成从论文指标(测试集AUROC)走向实用化(判别正常异常)的最后一步。
附图说明
图1为本发明对抗重构网络框架图;
图2为本发明对抗重构网络的多段式训练流程图;
图3为本发明多段式训练方法和全程对抗训练方法在判别网络上的训练对比图;
图4为本发明多段式训练方法和全程对抗训练方法在重构网络上的训练对比图。
具体实施方式
下面结合附图对本方案进行进一步说明:
本发明提供了用于异常检测的对抗重构网络损失函数设计、训练方法及异常检测方法。重点在于提出了多段式训练策略,并设计了能够支持多段式训练的损失函数,同时在多段式训练中实现可靠模型选择,最后使用按照前述方式训练好的对抗重构网络进行异常判定,克服了目前对抗重构网络训练不稳定的问题,使对抗重构网络用于异常检测的技术从理论走向实用。本方案广泛适用于对抗重构网络这一类网络,不针对特定结构的重构网络和判别网络。如图1所示,对抗重构网络包括重构网络和判别网络,对抗重构网络损失函数设计包括重构网络损失函数设计和判别网络损失函数设计。为方便表述和依据惯例用法,实施例中以real表示输入重构网络的真实图像(原图像),fake表示与real一一对应的重构网络重构的图像(重构图像)。
设计支持多段式训练的损失函数:
使重构网络损失函数包括重构损失函数和重构对抗损失函数,判别网络损失函数包括真实图像判别损失函数和判别对抗损失函数,重构损失函数用于评估重构网络的重构性能,真实图像判别损失函数用于评估判别网络的判别性能,重构对抗损失函数和判别对抗损失函数用于重构网络和判别网络对抗训练的交互。
重构网络对异常检测的贡献,由其对正常样本的高还原能力体现,本方案以训练集real与fake的平均相似度度量其还原能力。判别网络对异常检测的贡献,由其对真实正常样本的高判别分数体现,本方案以训练集真实图像的平均判别分数度量其判别能力。
重构网络与判别网络通过fake相关联,因而,以判别网络对fake的判别分数与标签的差异作为两个网络的对抗交互损失函数。其中,对判别对抗损失函数而言,标签为0,即判别网络目标是给fake低分。对重构对抗损失函数而言,标签为1,即重构网络的目标是,令判别网络给fake高分,也就是使fake更接近real。由此实现判别网络和重构网络对抗训练的目的。具体地,判别网络损失函数包括:
err_d=err_d_real+err_d_fake,其中,err_d_real为真实图像判别损失函数,err_d_fake为判别对抗损失函数:
err_d_real=BCE(pred_real, real_label)
err_d_fake=BCE(pred_fake, fake_label)
BCE表示交叉熵损失函数;
pred_real为判别网络对一个批次真实图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组;
pred_fake为判别网络对一个批次重构图像的判别分数;
fake_label表示重构图像的标签,即元素全部为0的数组。
具体地,重构网络损失函数包括:
err_g=err_g1+err_g2
err_g1为重构损失函数;err_g2为重构对抗损失函数。
err_g1= w1×(1-similarity (real,fake))
err_g2= w2×BCE(pred_fake, real_label)
w1为权重系数,此处取10;w2为权重系数,此处取1,本领域技术人员也可根据需要将两个权重系数改为其他值;BCE表示交叉熵损失函数;
式中real表示一个批次的真实图像,fake表示与real一一对应的一个批次重构图像;
similarity(real,fake) 表示求取一个批次内重构图像和对应真实图像的平均相似度;相似度的度量指标可以是SSIM或者MSE等。
本实施例采用SSIM作为图像相似度的度量指标,为了衡量重构图像与输入图像的相似程度,设计基于图像结构相似度(Structural Similarity,SSIM)的损失函数err_g1,SSIM取值范围是 [0,1],越接近1,表明两幅图像越相似,即,err_g1= w1×(1-ssim(real,fake))。
ssim(real,fake) 表示求取一个批次内重构图像和对应真实图像的平均SSIM相似度;
pred_fake为判别网络对一个批次重构图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组。
多段式训练策略:
现有的对抗重构网络训练方法为全程对抗训练,存在训练不稳定的缺点,难以保证训练终止时重构网络和判别网络同时收敛,在对抗训练后期,易出现由于判别网络学习能力跟不上,而与重构网络相互干扰的问题。本方案公开的多段式训练策略能够在恰当的时刻停止对抗训练,并且在对抗训练的基础上引入重构网络和判别网络的单独训练,增强训练的稳定性,保证重构网络与判别网络同时训练良好,实现可靠模型选择。
具体地,如图2所示,本实施例的训练共分为四个阶段,本领域技术人员也可以在多段式训练策略的基本思路下增加或减少个别训练阶段后应用于对抗重构网络。训练采用小批次的方法,即每次从训练集中取出一个批次的数据(如批次大小可设为16)放入网络。设定阶段1、阶段2、阶段3、阶段4的最大训练epoch数分别为n1、n2、n3、n4,设置记录各阶段训练次数的计数器分别为k1、k2、k3、k4。各阶段达到训练目标,或者达到最大训练次数后终止训练。训练开始时,首先使用xavier方法(或者其他网络初始化方法)给网络权重赋初始值;令n1、n2、n3、n4分别为40、20、20、20;令k1、k2、k3、k4为0。
阶段1,重构网络和判别网络对抗训练。在每个epoch中分别训练一次重构网络和判别网络(本实施例为先训练重构网络,再训练判别网络)k1值加1,直至ssim_mean>=g_th1或者k1==n1;该阶段的核心目标是确保重构网络的重构能力, ssim_mean>=g_th1说明重构网络被较好训练,进入下一阶段。若此时d_mean<d_th1,则进入阶段2,反之进入阶段3;
阶段2,判别网络单独训练。在每个epoch中,固定重构网络,训练判别网络,k2值加1,直至d_mean>=d_th1或者k2==n2,进入阶段3;此阶段目标是确保判别网络对real的判别能力,即给real高分;
阶段3,重构网络单独训练。在每个epoch中,固定判别网络,训练重构网络, k3值加1,直至ssim_mean>=g_th2或者k3==n3,进入阶段4;此阶段的目的是利用阶段2得到的更优的判别网络或者阶段1已经足够优的判别网络,进一步促进重构网络的训练,当ssim_mean>=g_th2说明重构网络被训练地更好;
阶段4,判别网络单独训练。在每个epoch中,固定重构网络,训练判别网络, k4值加1,直至d_mean>=d_th1或者k4==n4,结束训练。此阶段的目的是使判别网络能够与阶段3得到的更优的重构网络同步。上述ssim_mean表示训练集真实图像与重构图像的平均SSIM相似度;d_mean表示判别网络对训练集真实图像的平均判别分数;
g_th1、g_th2表示重构网络训练的两个门限值,g_th1<g_th2,本实施例g_th1取0.89,g_th2取0.9;d_th1表示判别网络训练的门限值,本实施例取0.8。保存训练结束时的ssim_mean和d_mean,用于异常检测阶段的正常异常阈值的计算。
以上各阶段均设置最大训练epoch数,使各阶段不会无穷训练下去。应当注意的是,本发明是基于对正常情况的学习实现异常检测的方法,训练过程中的上述各阶段输入的均是正常样本。且本领域技术人员应当知道,固定判别网络/重构网络是指训练过程中不对其权重参数进行更新,每个阶段判别网络和重构网络均有参与。每个阶段中,均对重构网络输入正常样本的真实图像,对判别网络输入正常样本的真实图像和正常样本经重构网络重构的重构图像。
如图3和图4所示为本发明多段式训练方法与全程对抗训练方法的训练对比图。图3和图4分别描述了训练集d_mean和ssim_mean随epoch的变化。本实施例中,经过50个epoch的训练,多段式训练在阶段4由于达到了停止准则(ssim_mean>g_th2且d_mean>d_th1)而停止。对照实验采用全程对抗训练方法,训练固定的100个epoch。从图3可以观察到:在全程对抗训练方法中,由于对抗训练的不稳定性,d_mean振荡幅度很大,结束训练时的第100个epoch处未取得优质模型;从图4可以观察到:在全程对抗训练方法中,ssim_mean在训练后期仍有较大幅度振荡,若停止时机不当,则无法取得优质模型;多段式训练则在第50个epoch处适时停止训练,判别网络和重构网络同时取得优质模型。
使用经过前述方法训练的对抗重构网络进行异常检测:
对于每一个测试集样本(待检测样本),无论是正常还是异常类别,每个样本均有真实图像、重构网络重构图像和判别网络判别分数三项。计算真实图像和重构图像相似度,以ssim表示。由判别网络得到真实图像判别分数,以d表示,那么异常得分score计算方法为:
score=0.5×(ssim+d)
式中,ssim(范围是[0,1])和d(范围是[0,1])各占50%权重,得到的异常得分范围还是[0,1]。
根据异常得分判定样本正常或异常需要一个可靠的阈值,现有的阈值确定方法为根据验证集确定,当验证集规模不足或者验证集缺失时,判定方法就会失效。本方案基于训练集异常得分的统计特性来计算阈值Th:
Th=0.5×[(ssim_mean-ssim_std)+(d_mean-d_std)]
ssim_mean和ssim_std分别表示训练集真实图像与重构图像的平均SSIM相似度和相似度标准差;
d_mean和d_std分别表示判别网络对训练集真实图像的平均判别分数和判别分数标准差。
正常异常判定方法为:若score小于Th,判定为异常类别,反之则为正常类别。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
尽管本文较多地使用了对抗重构网络、重构网络、判别网络、对抗重构网络损失函数、重构网络损失函数、重构损失函数、重构对抗损失函数、判别网络损失函数、真实图像判别损失函数、判别对抗损失函数、真实图像、重构图像等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。

Claims (9)

1.一种用于异常检测的对抗重构网络训练方法,其特征在于,包括以下步骤:
S1.为对抗重构网络构建支持多段式训练的损失函数,同时为对抗重构网络权重参数和训练超参数赋初始值;
S2.对对抗重构网络进行包括重构网络和判别网络对抗训练、重构网络单独训练和判别网络单独训练的多段式训练;
且步骤S2中,所述的多段式训练过程包括:
阶段1,重构网络和判别网络对抗训练,在每个epoch中分别训练一次重构网络和判别网络,k1值加1,直至similarity_mean>=g_th1或者k1==n1,若此时d_mean<d_th1,则进入阶段2,反之进入阶段3,其中,一个epoch表示遍历一次完整训练集;
阶段2,判别网络单独训练,在每个epoch中,固定重构网络,训练判别网络, k2值加1,直至d_mean>=d_th1或者k2==n2,进入阶段3;
阶段3,重构网络单独训练,在每个epoch中,固定判别网络,训练重构网络, k3值加1,直至similarity_mean>=g_th2或者k3==n3,进入阶段4;
阶段4,判别网络单独训练,在每个epoch中,固定重构网络,训练判别网络, k4值加1,直至d_mean>=d_th1 或者k4==n4;
k1、k2、k3、k4分别为阶段1、2、3、4的训练计数器,初始值均为0;
n1、n2、n3、n4分别为阶段1、2、3、4的最大训练epoch数;
similarity_mean表示训练集真实图像与重构图像的平均相似度;d_mean表示判别网络对训练集真实图像的平均判别分数;
g_th1、g_th2表示重构网络训练的两个门限值,g_th1<g_th2;d_th1表示判别网络训练的门限值。
2.根据权利要求1所述的用于异常检测的对抗重构网络训练方法,其特征在于,步骤S1中所述的支持多段式训练的损失函数包括重构网络损失函数和判别网络损失函数,所述的重构网络损失函数包括重构损失函数和重构对抗损失函数,所述的判别网络损失函数包括真实图像判别损失函数和判别对抗损失函数,所述的重构损失函数用于评估重构网络的重构性能,真实图像判别损失函数用于评估判别网络的判别性能,所述的重构对抗损失函数和判别对抗损失函数用于重构网络和判别网络对抗训练的交互。
3.根据权利要求2所述的用于异常检测的对抗重构网络训练方法,其特征在于,
所述的真实图像判别损失函数基于判别网络对真实图像的判别分数与真实图像的标签的差异计算;
所述的重构损失函数基于真实图像和重构图像的平均相似度计算;
判别对抗损失函数和重构对抗损失函数均基于重构图像的判别分数与标签0或1的差异计算,且在重构对抗损失函数中,标签为1,在判别对抗损失函数中,标签为0。
4.根据权利要求3所述的用于异常检测的对抗重构网络训练方法,其特征在于,所述的判别网络损失函数包括:
err_d=err_d_real+err_d_fake,其中,
err_d_real为真实图像判别损失函数,err_d_fake为判别对抗损失函数:
err_d_real=BCE(pred_real, real_label)
err_d_fake=BCE(pred_fake, fake_label)
BCE表示交叉熵损失函数;
pred_real为判别网络对一个批次真实图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组;
pred_fake为判别网络对一个批次重构图像的判别分数;
fake_label表示重构图像的标签,即元素全部为0的数组。
5.根据权利要求4所述的用于异常检测的对抗重构网络训练方法,其特征在于,所述的重构网络损失函数包括:
err_g=err_g1+err_g2其中,
err_g1为重构损失函数;err_g2为重构对抗损失函数;
err_g1= w1×(1-similarity(real,fake))
err_g2= w2×BCE(pred_fake, real_label)
w1为权重系数;w2为权重系数;BCE表示交叉熵损失函数;
式中real表示一个批次的真实图像,fake表示与real一一对应的一个批次重构图像;
similarity (real,fake) 表示求取一个批次内重构图像和对应真实图像的平均相似度;
pred_fake为判别网络对一个批次重构图像的判别分数;
real_label表示真实图像的标签,即元素全部为1的数组。
6.根据权利要求1所述的用于异常检测的对抗重构网络训练方法,其特征在于,步骤S1中,为训练超参数和对抗重构网络参数赋初始值包括:
为各训练阶段赋最大epoch数;为各阶段训练计数器赋0;为重构网络和判别网络的权重赋初始值。
7.根据权利要求6所述的用于异常检测的对抗重构网络训练方法,其特征在于,所述的多段式训练过程依次包括阶段1、阶段2、阶段3和阶段4四个阶段,且阶段1为重构网络和判别网络对抗训练,阶段2为判别网络单独训练,阶段3为重构网络单独训练,阶段4为判别网络单独训练。
8.一种基于对抗重构网络的异常检测方法,其特征在于,使用经过权利要求1-7任意一项所述方法训练的对抗重构网络进行异常检测,异常得分score计算方法为:
score=0.5×(similarity+d)
若score小于Th,则判定为异常类别,反之则为正常类别;
Th表示用于判定正常异常的阈值;
similarity表示真实图像与重构图像的相似度;
d表示判别网络对真实图像的判别分数。
9.根据权利要求8所述的基于对抗重构网络的异常检测方法,其特征在于,所述的Th基于训练集异常得分的统计特性得到:
Th=0.5×[(similarity_mean-similarity_std)+(d_mean-d_std)]
similarity_mean和similarity_std分别表示训练集真实图像与重构图像的平均相似度和相似度标准差;
d_mean和d_std分别表示判别网络对训练集真实图像的平均判别分数和判别分数标准差。
CN202210068973.3A 2022-01-20 2022-01-20 用于异常检测的对抗重构网络设计、训练方法及检测方法 Active CN114117333B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210068973.3A CN114117333B (zh) 2022-01-20 2022-01-20 用于异常检测的对抗重构网络设计、训练方法及检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210068973.3A CN114117333B (zh) 2022-01-20 2022-01-20 用于异常检测的对抗重构网络设计、训练方法及检测方法

Publications (2)

Publication Number Publication Date
CN114117333A CN114117333A (zh) 2022-03-01
CN114117333B true CN114117333B (zh) 2022-05-17

Family

ID=80360969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210068973.3A Active CN114117333B (zh) 2022-01-20 2022-01-20 用于异常检测的对抗重构网络设计、训练方法及检测方法

Country Status (1)

Country Link
CN (1) CN114117333B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110570366A (zh) * 2019-08-16 2019-12-13 西安理工大学 基于双判别深度卷积生成式对抗网络的图像修复方法
WO2021169292A1 (zh) * 2020-02-24 2021-09-02 上海理工大学 生成对抗神经网络训练过程的对抗优化方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019208496B4 (de) * 2019-06-12 2024-01-25 Siemens Healthcare Gmbh Computerimplementierte Verfahren und Vorrichtungen zum Bereitstellen eines Differenzbilddatensatzes eines Untersuchungsvolumens und zum Bereitstellen einer trainierten Generatorfunktion
WO2021062133A1 (en) * 2019-09-25 2021-04-01 Siemens Gas And Power Gmbh & Co. Kg Unsupervised and weakly-supervised anomaly detection and localization in images
CN112541865A (zh) * 2020-10-15 2021-03-23 天津大学 基于生成对抗网络的水下图像增强方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110570366A (zh) * 2019-08-16 2019-12-13 西安理工大学 基于双判别深度卷积生成式对抗网络的图像修复方法
WO2021169292A1 (zh) * 2020-02-24 2021-09-02 上海理工大学 生成对抗神经网络训练过程的对抗优化方法

Also Published As

Publication number Publication date
CN114117333A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
CN110006645B (zh) 一种多源融合的高压断路器机械故障诊断方法
CN109000930B (zh) 一种基于堆叠去噪自编码器的涡轮发动机性能退化评估方法
CN108931387B (zh) 提供准确诊断决策的基于多传感器信号分析的故障诊断方法
CN110087207B (zh) 无线传感器网络缺失数据重建方法
CN114444013A (zh) 一种基于对抗博弈的配电网大数据修复方法
Jiang et al. A hybrid data-fusion system using modal data and probabilistic neural network for damage detection
CN113125095A (zh) 一种基于深度学习的万能式断路器触头系统剩余机械寿命预测方法
CN109597396B (zh) 一种基于大数据流及迁移学习的配变故障在线诊断方法
CN114234361A (zh) 一种基于双重降噪和模糊指标的中央空调传感器故障检测方法
CN109214356A (zh) 一种基于dcnn模型的风机传动系统故障智能诊断方法
CN104811991A (zh) 基于动态时间规整算法的无线链路质量预测方法
CN108846200B (zh) 一种基于迭代法的准静态桥梁影响线识别方法
CN107832789A (zh) 基于平均影响值数据变换的特征加权k近邻故障诊断方法
CN112579708A (zh) 一种基于改进局部路径的链路预测相似性指标方法
CN115983374A (zh) 基于优化sa-cacgan的电缆局放数据库样本扩充方法
CN114117333B (zh) 用于异常检测的对抗重构网络设计、训练方法及检测方法
Zhang Tactical decision system of table tennis match based on C4. 5 decision tree
CN117792788A (zh) 一种融合多头注意力机制和双向长短期记忆网络的pmu数据操纵攻击检测方法
CN102289718A (zh) 一种赤泥沉降过程泥层高度的软测量方法
CN112397202A (zh) 一种青少年儿童身高生长曲线的预测方法
CN116842358A (zh) 一种基于多尺度卷积和自适应特征融合的软测量建模方法
CN116224950A (zh) 面向无人生产线自组织重构的智能故障诊断方法和系统
CN115575127A (zh) 一种基于鲸鱼优化lssvm的轴承剩余寿命预测方法
CN112103911B (zh) 一种用于继电保护系统的隐藏故障判别方法及装置
WO2019232737A1 (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 314000 Building 29, Xianghu villa, Qixing street, Nanhu District, Jiaxing City, Zhejiang Province

Applicant after: Nanhu Laboratory

Address before: 314000 Building 29, Xianghu villa, Qixing street, Nanhu District, Huzhou City, Zhejiang Province

Applicant before: Nanhu Laboratory

GR01 Patent grant
GR01 Patent grant