处理异常检测的装置及方法
文献发布时间:2023-06-19 12:07:15
【技术领域】
本发明相关于一种用于多媒体系统的装置及方法,尤指一种处理异常检测的装置及方法。
【背景技术】
异常检测旨在区分正常数据及异常数据(例如不正常样本),以解决分布不匹配问题(distribution mismatch problem)。异常检测已被应用来解决几个应用领域的问题,例如生物医学影像、影片监控及自动光学检测(automated optical inspection,AOI)等。用于异常检测的各种方法被提出以分离正常数据及异常数据。然而,正常数据及异常数据的复杂背景或内容变种(content variants)减少这些方法的效能。因此,用来处理异常检测且改善效能的方法仍是亟待解决的问题。
【发明内容】
本发明提供了一种方法及其装置,用来处理异常检测,以解决上述问题。
一种计算装置,用来处理异常检测(anomaly detection),包含有:一编码器,用来接收一输入影像,以根据该输入影像及该编码器的至少一第一参数,产生包含有一语意潜在向量(semantic latent vector)及一视觉外观潜在向量(visual appearance latentvector)的一第一潜在向量;以及一训练模块,耦接于该编码器,用来接收该输入影像及该第一潜在向量,以根据该输入影像、该第一潜在向量及一损失函数,更新该至少一第一参数。
【附图说明】
图1为本发明实施例一计算装置的示意图。
图2为本发明实施例一训练模块的示意图。
图3为本发明实施例一鉴别器模块的示意图。
图4为本发明实施例一实验结果的比较表。
图5为本发明实施例一流程的流程图。
【具体实施方式】
图1为本发明实施例一计算装置10的示意图。计算装置10包含有编码器100及训练模块110。详细来说,编码器100接收输入影像,以及根据输入影像及编码器100的至少一参数,产生第一潜在向量(latent vector)(例如潜在码(latent code)或潜在表示(latentrepresentation)),其中第一潜在向量包含有语意潜在向量(semantic latent vector)(例如语意潜在码)及视觉外观潜在向量(visual appearance latent vector)(例如视觉外观潜在码)。训练模块110耦接于编码器100,以及接收输入影像及第一潜在向量。根据输入影像、第一潜在向量及损失函数,训练模块110更新编码器100的至少一第一参数。
根据用来区分(例如识别)正常数据及异常数据(例如不正常样本或不正常数据)的方式,用于异常检测的方法可被划分为两种类型。藉由L1范数(L1-norm)函数或L2范数(L2-norm)函数,自我表示方法(self-representation methods)被设计用来测量(例如评估或计算)输入(例如输入影像)及输出(例如重建影像)间的重建误差,以区分输入是否为一异常(anomaly)(例如异常值(outlier)、异常(out of distribution)或新颖(novelty))。举例来说,高重建误差代表输入更有可能为一异常。然而,自我表示方法的模块可具有重建正常数据及异常数据的视觉外观信息(例如视觉属性(visual attributes))的能力,以及可根据输入的视觉外观信息而非输入的语意信息(例如类别特征(categorical features)或类别信息)产生输出,以减少重建误差。因此,重建误差无法为用于异常检测的一合适指示符。
另一方面,信心估计方法被设计用来找出信心分数及临界值。举例来说,若信心分数低于临界值,输入被决定为一异常。然而,当输入为一异常时,信心估计方法的模块可产生高信心分数(即高信心分数高于临界值)。也就是说,信心估计方法的模块难以根据输入的语意信息产生信心分数。因此,信心估计方法难以识别异常数据。此外,两种方法的效能可被正常数据及异常数据的复杂背景或内容变种所影响。
本发明提供用于异常检测且具有特征分离(feature disentanglement)的装置及方法,旨在分离(例如区分、识别)正常数据及异常数据的视觉外观信息及语意信息。因此,正常数据及异常数据的复杂背景或内容变种减少方法的效能的问题被解决。
此外,本发明不仅对单类(one-class)异常检测有效(即在一数据集中的所有类别被视为正常数据,以及其他数据集的类别被视为异常数据),也对多类(multi-class)异常检测有效(即在一数据集中的一类别被视为异常数据,以及该数据集的其余类别被视为正常数据)。
在一实施例中,语意潜在向量包含有输入影像的语意信息,以及不包含有输入影像的视觉外观信息。在一实施例中,视觉外观潜在向量包含有输入影像的视觉外观信息,以及不包含有输入影像的语意信息。也就是说,编码器100分别将输入影像的语意信息及视觉外观信息编码到第一潜在向量的语意潜在向量及视觉外观潜在向量。因此,计算装置10聚焦语意信息以估计信心分数。
在一实施例中,训练模块110更新编码器100的至少一参数,使编码器100具有更好的能力来分离(例如分开)输入影像的语意信息及视觉外观信息。
在一实施例中,在训练流程(例如分离流程)中,编码器100及训练模块110被合并以找出(例如学习)正常数据的分布。在一实施例中,在训练流程中,语意潜在向量及视觉外观潜在向量被训练,以分别找出(例如学习)正常数据的语意信息及视觉外观信息。透过训练流程,编码器100可更准确分离输入影像的语意信息及视觉外观信息。因此,藉由消除输入影像的不相关的特征,计算装置10可更准确的估计信心分数。
在一实施例中,当执行训练流程时,输入影像为训练数据集的影像(即真实影像)。在一实施例中,在完成训练流程后,输入影像为检测的目标。
在一实施例中,编码器100独立运作而不需训练模块110,例如当终止条件(例如迭代的数量等于一默认值)成立时。在此情况下,编码器100可开始产生一潜在向量,以区分正常数据及异常数据(即决定输入影像是否为一异常)。
在一实施例中,语意潜在向量是单热向量(one-hot vector),以及语意潜在向量的每个数值满足(例如遵循)预测的分布。在一实施例中,若语意潜在向量的一最大信心分数等于或低于一临界数值,该输入影像被决定为一异常。在一实施例中,若语意潜在向量的一最大信心分数高于一临界数值,该输入影像被决定为一正常。也就是说,计算装置10为了信心估计使用语意潜在向量而不需视觉外观潜在向量。计算装置10选择语意潜在向量的最大信心分数,以及比较最大信心分数及临界数值,以决定输入影像是否为一异常。因此,藉由消除输入影像的不相关的特征(即视觉外观潜在向量),计算装置10决定输入影像是否为一异常。正常数据及异常数据的复杂背景或内容变种影响效能的问题被解决。
在一实施例中,编码器100及训练模块110的组合可被称为变分自编码器生成对抗网络(variationalautoencoder-generative adversarial network,VAE-GAN)。换言之,训练模块110可包含有译码器及鉴别器(例如鉴别器模块)。
图2为本发明实施例一训练模块20的示意图。训练模块20可用来实现图1中的训练模块110。训练模块20包含有译码器200、处理模块210、鉴别器模块220及反馈模块230。译码器200接收至少一潜在向量,以及根据至少一潜在向量及译码器200的至少一第二参数,产生至少一重建影像。处理模块210耦接于译码器200,以及接收及处理输入影像、至少一潜在向量及至少一重建影像。接着,处理模块210产生复数个输入对(input pairs)。鉴别器模块220耦接于处理模块210,以及接收复数个输入对。根据复数个输入对及鉴别器模块220的至少一第三参数,鉴别器模块220产生复数个分数。反馈模块230耦接于鉴别器模块220,以及接收复数个分数(scores)。根据复数个分数及损失函数,反馈模块230更新至少一第一参数、至少一第二参数及至少一第三参数。
在一实施例中,至少一潜在向量是第一潜在向量或随机取样潜在向量(randomsampled latent vector)。举例来说,译码器200接收第一潜在向量,以及产生第一重建影像。译码器200接收随机取样潜在向量,以及产生第二重建影像。
在一实施例中,随机取样潜在向量包含有语意潜在向量及视觉外观潜在向量。在一实施例中,随机取样潜在向量的视觉外观潜在向量可满足(例如遵循)多变量常态分布(multivariate normal distribution)(例如多变量高斯分布)
在一实施例中,编码器100及译码器200的组合可被称为自编码器(autoencoder)。在一实施例中,编码器100及译码器200的组合可被称为变分自编码器(variationalautoencoder,VAE)。
在一实施例中,译码器200的目标是产生具有与输入影像(即真实影像)相同质量的重建影像。
在一实施例中,处理模块210接收一影像(例如输入影像或至少一重建影像),以及降低影像的维度(dimensions)以产生一向量。接着,处理模块210连接(concatenate)向量及潜在向量(例如至少一潜在向量),以及产生一输入对。
在一实施例中,复数个输入对的一输入对包含有输入影像(即真实影像)及具有输入影像的至少一标签(label)的视觉外观潜在向量,其中至少一标签是语意潜在向量的基准真相(ground truth)(即至少一标签包含有输入影像的理想语意信息)。
在一实施例中,复数个输入对的一输入对包含有至少一重建影像及至少一潜在向量。举例来说,当接收第一潜在向量时,若译码器200产生第一重建影像,输入对包含有第一潜在向量及第一重建影像。当接收随机取样潜在向量时,若译码器200产生第二重建影像,输入对包含有随机取样潜在向量及第二重建影像。
在一实施例中,鉴别器模块220约束(constrain)译码器200,使译码器200不忽略至少一潜在向量的语意潜在向量,以产生至少一重建影像。
在一实施例中,在接收输入对后,鉴别器模块220产生用来区分(例如决定或辨别)输入对真实(或仿冒)程度的一分数(即用来区别在输入对中的影像和潜在向量是否更有可能是原始数据或由编码器100或译码器200所产生的重建数据)。复数个分数间的较大差距代表鉴别器模块220更成功地区分复数个输入对。
图3为本发明实施例一鉴别器模块300的示意图。鉴别器模块300可用来实现图2中的鉴别器模块220。鉴别器模块300接收输入对,以及产生对应的分数。根据输入对的不同内容,3种情况(a)~(c)被用于说明本发明的可能场景,但不限于此。
在情况(a)中,鉴别器模块300接收一输入对,其中输入对包含有输入影像(即真实影像)及具有输入影像的至少一标签的视觉外观潜在向量。根据至少一第三参数、输入影像、第一潜在向量的视觉外观潜在向量及至少一标签,鉴别器模块300产生第一分数。
在情况(b)中,鉴别器模块300接收一输入对,其中输入对包含有第一重建影像及第一潜在向量。根据至少一第三参数、第一重建影像及第一潜在向量,鉴别器模块300产生第二分数。
在情况(c)中,鉴别器模块300接收一输入对,其中输入对包含有第二重建影像及随机取样潜在向量。根据至少一第三参数、第二重建影像及随机取样潜在向量,鉴别器模块300产生第三分数。
需注意的是,情况(a)~(c)可发生在相同迭代(iteration)中。也就是说,根据图3,在一迭代中,鉴别器模块300产生第一分数、第二分数及第三分数,以及传送上述分数到反馈模块230。接着,根据损失函数及这些分数,反馈模块230更新至少一第一参数、至少一第二参数及至少一第三参数。
在一实施例中,根据第一分数、第二分数及损失函数,反馈模块230产生第一数值。在一实施例中,根据第一分数、第三分数及损失函数,反馈模块230产生第二数值。在一实施例中,在一迭代中,根据第一数值及第二数值,反馈模块230更新编码器100的至少一第一参数及译码器200的至少一第二参数。在一实施例中,在一迭代中,根据第一数值及第二数值,反馈模块230更新鉴别器模块220的至少一第三参数。在一实施例中,第一数值在每一次迭代中可为相同或不同。第二数值在每一次迭代中可为相同或不同。
在一实施例中,当更新至少一第一参数及至少一第二参数被请求(例如设定),以及至少一第三参数可被固定时,反馈模块230可产生第一数值及第二数值。在一实施例中,当更新至少一第三参数被请求(例如设定),以及至少一第一参数及至少一第二参数可被固定时,反馈模块230可产生第一数值及第二数值。也就是说,在一迭代中,反馈模块230更新编码器100及译码器200的参数(或鉴别器模块220的参数),以及鉴别器模块220的参数(或编码器100及译码器200的参数)被固定。
在一实施例中,在一迭代中,根据第一数值及第二数值,反馈模块230使用适应矩估计优化器(Adaptive Moment Estimationoptimizer,ADAM optimizer)来更新编码器100的至少一第一参数及译码器200的至少一第二参数。在用来更新至少一第一参数及至少一第二参数的迭代后,鉴别器模块220接收新复数个输入对,以及产生新复数个分数。新复数个分数间的新差距可小于当前复数个分数间的当前差距。
在一实施例中,在一迭代中,根据第一数值及第二数值,反馈模块230使用适应矩估计优化器以更新至少一第三参数。在用来更新至少一第三参数的迭代后,当接收相同复数个输入对时,根据鉴别器模块220的至少一新第三参数,鉴别器模块220产生新复数个分数。新复数个分数间的新差距可大于当前复数个分数间的当前差距。
在一实施例中,在至少一第三参数被更新N次后,至少一第一参数及至少一第二参数被更新,其中N是一正整数。在一实施例中,在至少一第一参数及至少一第二参数被更新M次后,至少一第三参数被更新,其中M是一正整数。
在一实施例中,训练流程(例如上述实施例)不仅鼓励译码器200产生具有与真实影像相同质量的至少一重建影像,也让编码器100分别分离输入影像的语意信息及视觉外观信息到语意潜在向量及视觉外观潜在向量。在一实施例中,编码器100独立运作而不需训练模块110(例如训练模块20),例如当鉴别器模块220无法根据复数个分数区分复数个输入对(例如复数个分数间的差距接近为零)时。在此情况下,编码器100可开始产生一潜在向量,以区分正常数据及异常数据(即决定输入影像是否为一异常)。
在一实施例中,若译码器220所接收的至少一潜在向量为第一潜在向量,编码器100接收至少一重建影像(即第一重建影像),以产生第二潜在向量。在一实施例中,根据第一潜在向量及第二潜在向量间的差异,反馈模块230计算损失函数。
在一实施例中,损失函数L
其中x是输入影像,
损失函数L
L
其中L(E,D,Dis)是瓦瑟斯坦生成对抗网络损失函数,L
在一实施例中,重建损失函数L
图4为本发明实施例一实验结果的比较表40。在图4中,七种方法以美国国家标准暨技术研究院所修改的数据集(Modified National Institute of Standards andTechnology dataset,MNISTdataset)产生实验结果:标准变分自编码器(standard VAE)、AnoGAN、基于生成对抗网络的有效异常检测(Efficient GAN Based Anomaly Detection,EGBAD)、GANomaly、耦接于生成对抗网络的无限高斯混和模型(Infinite GaussianMixture Model coupled with Generative Adversarial Networks,IGMM-GAN)、在神经网络中的异常检测(Outlier Detection In Neural Networks,ODIN)及本发明实施例。接着,藉由采用接收者操作特征曲线下方的面积指针(Area Under the Receiver OperatingCharacteristic curve metric,AUROCcurve metric),比较表40显示定性及定量的实验结果。为了聚焦更具有挑战性的多类异常检测,在该数据集中的一类别被视为异常,以及在该数据集中的其余类别被视为正常数据。观察比较表40可知,相较于其他方法,本发明具有较好的效能。
在上述实施例中,计算装置10的运作可被归纳为图5中的一流程图50。流程图50可被实现在计算装置10中,以及包含有以下步骤:
步骤500:开始。
步骤502:接收输入影像。
步骤504:根据输入影像及编码器的至少一第一参数,产生包含有语意潜在向量及视觉外观潜在向量的第一潜在向量。
步骤506:根据输入影像、第一潜在向量及损失函数,更新至少一第一参数。
步骤508:结束。
流程图50可被用来举例说明计算装置10的运作。流程图10的详细内容及变化可参考前述,在此不赘述。
本领域具通常知识者当可依本发明的精神加以结合、修饰及/或变化以上所述的实施例,而不限于此。前述的编码器、译码器、陈述、函数、模块及/或流程(包含建议步骤)可透过装置实现,装置可为硬件、软件、韧体(为硬件装置与计算机指令与数据的结合,且计算机指令与数据属于硬件装置上的只读软件)、电子系统、或上述装置的组合。
硬件的实施例可包含有模拟电路、数字电路及/或混合电路。举例来说,硬件可包含有特定应用集成电路(application-specific integrated circuit(s),ASIC(s))、场域可程序化门阵列(field programmable gate array(s),FPGA(s))、可程序化逻辑设备(programmable logic device(s))、耦合硬件组件(coupled hardware components)、或上述装置的组合。在一实施例中,硬件包含有通用处理器(general-purpose processor(s))、微处理器(microprocessor(s))、控制器(controller(s))、数字信号处理器(digitalsignal processor(s),DSP(s))、或上述装置的组合。
软件的实施例可包含有程序代码的集合、指令的集合及/或函数的集合,其可被保留(例如存储)在存储单元,例如计算机可读取介质(computer-readable medium)中。计算机可读取介质可包含有用户识别模块(Subscriber Identity Module,SIM)、只读式内存(Read-Only Memory,ROM)、闪存(flash memory)、随机存取内存(Random-Access Memory,RAM)、CD-ROM/DVD-ROM/BD-ROM、磁带(magnetic tape)、硬盘(hard disk)、光学数据存储装置(optical data storage device)、非挥发性存储装置(non-volatile storagedevice)、或上述装置的组合。计算机可读取介质(例如存储单元)可在内部(例如集成(integrate))或外部(例如分离(separate))耦合到至少一处理器。包含有一个或多个模块的至少一个处理器可(例如被配置为)执行计算机可读取介质中的软件。程序代码的集合、指令的集合及/或函数的集合可使至少一处理器、模块、硬件及/或电子系统执行相关步骤。
综上所述,本发明提供了一种处理异常检测(例如单类异常检测及多类异常检测)的计算装置。本发明分离输入影像的语意信息及视觉外观信息,以减少由输入影像的复杂背景或内容变种所造成的影响。
以上所述仅为本发明之较佳实施例,凡依本发明权利要求范围所做之均等变化与修饰,皆应属本发明之涵盖范围。
【符号说明】
10:计算装置
100:编码器
110:训练模块
20:训练模块
200:译码器
210:处理模块
220:鉴别器模块
230:反馈模块
300:鉴别器模块
40:比较表
50:流程图
500~508:步骤
- 药液的异常检测装置、液处理装置、基片处理装置、药液的异常检测方法、液处理方法和基片处理方法
- 同轴电缆的异常检测系统及其异常检测方法、以及具备该异常检测系统的处理装置