基于
稀疏
优化
异常
分布
检测
方法
陈启超
第4 3卷 第1期桂 林 电 子 科 技 大 学 学 报V o l.4 3,N o.1 2 0 2 3年2月J o u r n a l o f G u i l i n U n i v e r s i t y o f E l e c t r o n i c T e c h n o l o g yF e b.2 0 2 3收稿日期:2 0 2 2-0 3-3 1基金项目:国家自然科学基金(6 1 8 7 6 0 3 8)通信作者:李宽(1 9 8 4-),男,副教授,博士,研究方向为人工智能、机器学习中的安全问题。E-m a i l:l i k u a n d g u t.e d u.c n引文格式:陈启超,李宽.基于稀疏优化的异常分布检测方法J.桂林电子科技大学学报,2 0 2 3,4 3(1):4 1-4 8.基于稀疏优化的异常分布检测方法陈启超,李 宽(东莞理工学院 网络空间安全学院,广东 东莞 5 2 3 8 0 8)摘 要:现代神经网络可能会对来自训练分布之外的输入产生高置信度的预测结果,对机器学习模型构成潜在威胁。检测异常分布的输入是在现实世界中安全部署模型的核心问题。基于能量模型的检测方法,直接利用模型提取的特征向量计算样本的能量分数,而依赖并不重要的特征可能会影响检测的性能。为了解决该问题,提出了一种基于稀疏优化的损失函数。对已经预训练完成的分类模型进行微调,在学习过程中保持模型分类能力的同时,增加正常样本特征的稀疏程度,使得正常样本的能量分数降低,正常样本与异常样本之间的分数差异变大,从而提高检测效果。该方法并未引入异常的辅助数据集,避免了样本之间相关性的影响。在数据集C I F A R-1 0和C I F A R-1 0 0上的实验结果表明,该方法将检测6个异常数据集的平均 F P R 9 5分别降低了1 5.0 2%和1 5.4 1%。关键词:神经网络;异常分布检测;能量分数;微调;稀疏优化中图分类号:T P 3 9 1.4 文献标志码:A 文章编号:1 6 7 3-8 0 8 X(2 0 2 3)0 1-0 0 4 1-0 8S p a r s i t y-b a s e d r e g u l a r i z a t i o n f o r o u t-o f-d i s t r i b u t i o n d e t e c t i o nC H E N Q i c h a o,L I K u a n(S c h o o l o f C y b e r s p a c e S e c u r i t y,D o n g g u a n U n i v e r s i t y o f T e c h n o l o g y,D o n g g u a n 5 2 3 8 0 8,C h i n a)A b s t r a c t:M o d e r n n e u r a l n e t w o r k s m a y p r o d u c e h i g h c o n f i d e n c e p r e d i c t i o n r e s u l t s f o r i n p u t s f r o m o u t s i d e t h e t r a i n i n g d i s t r i-b u t i o n,p o s i n g a p o t e n t i a l t h r e a t t o m a c h i n e l e a r n i n g m o d e l s.D e t e c t i n g i n p u t s f r o m o u t-o f-d i s t r i b u t i o n s i s a c e n t r a l i s s u e i n t h e s a f e d e p l o y m e n t o f m o d e l s i n t h e r e a l w o r l d.D e t e c t i o n m e t h o d s b a s e d o n e n e r g y m o d e l s d i r e c t l y u s e t h e f e a t u r e v e c t o r s e x t r a c t e d b y t h e m o d e l t o c a l c u l a t e t h e e n e r g y s c o r e o f a s a m p l e,a n d r e l i a n c e o n f e a t u r e s t h a t a r e n o t s i g n i f i c a n t m a y a f f e c t t h e p e r f o r m a n c e o f t h e d e t e c t i o n.T o a l l e v i a t e t h i s p r o b l e m,a l o s s f u n c t i o n b a s e d o n s p a r s e r e g u l a r i z a t i o n i s p r o p o s e d t o f i n e-t u n e a c l a s s i f i c a t i o n m o d e l t h a t h a s b e e n p r e-t r a i n e d t o i n c r e a s e t h e s p a r s i t y o f i n-d i s t r i b u t i o n s a m p l e f e a t u r e s w h i l e m a i n t a i n i n g t h e c l a s s i f i c a t i o n p o w e r o f t h e m o d e l d u r i n g t h e l e a r n i n g p r o c e s s.T h i s r e s u l t s i n a l o w e r e n e r g y s c o r e f o r i n-d i s-t r i b u t i o n s a m p l e s a n d a l a r g e r d i f f e r e n c e i n s c o r e s b e t w e e n i n-d i s t r i b u t i o n a n d o u t-o f-d i s t r i b u t i o n s a m p l e s,t h u s i m p r o v i n g d e t e c t i o n p e r f o r m a n c e.F u r t h e r m o r e,t h e m e t h o d d o e s n o t i n t r o d u c e a n e x t e r n a l a u x i l i a r y d a t a s e t,a v o i d i n g t h e e f f e c t o f c o r-r e l a t i o n b e t w e e n s a m p l e s.E x p e r i m e n t a l r e s u l t s o n d a t a s e t s C I F A R-1 0 a n d C I F A R-1 0 0 s h o w t h a t t h e m e t h o d r e d u c e d t h e a v-e r a g e F P R 9 5 o f d e t e c t i n g t h e s i x a b n o r m a l d a t a s e t s b y 1 5.0 2%a n d 1 5.4 1%r e s p e c t i v e l y.K e y w o r d s:n e u r a l n e t w o r k;o u t-o f-d i s t r i b u t i o n d e t e c t i o n;e n e r g y s c o r e;f i n e-t u n i n g;s p a r s i t y r e g u l a r i z a t i o n 近年来,在机器学习领域基于深度神经网络(D N N)的算法在分类任务上取得了显著的成果1。在设计算法阶段,处于静态和封闭的理想环境中,使用特定分布的数据集合训练D N N分类模型,针对特定分布输入数据并做预测。在真实应用场景中,模型容易遇到异常分布的输入,而它也会尝试去做预测,对这类输入的预测结果可能会出乎意料。实际上,越来越多的工作证明2-3,D N N模型存在对异常分布数据过拟合的问题,即对于来自未知分布的输入数据,可能会产生一个过度自信的错误结果。在现实世界中部署机器学习模型时,确保系统的可靠性和安全性至关重要。一个可靠的机器学习系统不仅应该对在其熟悉分布的已知输入上产生准确的预测,还应该能检测到其不熟悉分布的未知输入并DOI:10.16725/45-1351/tn.2023.01.003桂林电子科技大学学报2 0 2 3年2月拒绝,随后再将它们移交给人类用户进行安全处理。例如,在无人驾驶汽车中4,希望驾驶系统能够在检测到以前从未见过的异常场景或者物体,在无法做出安全决定时,可及时发出警报并迅速将驾驶控制权移交给人类。为了在真实世界的应用场景中安全地部署D N N模型,异常分布检测问题被提出并迅速引起广泛关注5,其旨在确定模型的输入是否来自训练数据的分布,以防止模型产生不可靠的预测结果。异常分布检测要求模型不仅需要准确处理看得见的类(通常称为正常样本),还需要能够有效处理看不见的类(异常样本)。从实践的角度来看,随着基于D N N的算法在工业界广泛应用,使得模型具备这种能力成为一种必然要求。L i u等6提出一种能量评分函数并将其用于检测异常分布,为进一步提高检测效果,还提出了一种基于能量的微调模型的损失函数。在学习过程中,该函数需要用异常数据集来辅助模型进行训练,并将相对较低的能量值分配给正常训练数据,将较高的能量值分配给辅助训练的异常数据,从而达到正常样本能量值低、异常样本能量值高的目的。然而,该方法在训练阶段引入了依赖于数据集的超参数,且由于大规模的辅助异常数据集,训练成本(包括时间和存储消耗)特别高。鉴于此,提出了一种基于稀疏优化的方法,用于改进基于能量的方式。该方法不引入额外数据集和超参数,易于实现和使用,可显著降低训练成本,并避免数据集相关性带来的问题,从而提高基于能量分数的检测性能。1 基于预训练模型的方法基于预训练模型的方法是指给定一个已预训练好的D N N分类模型,利用其输出空间中的信息来计算样本的异常分数,从而检测出异常数据,优点是易于使用,无需修改训练程序和目标。H e n d r y c k s等5提出基于预训练模型的检测方法M S P,使用模型对输入数据产生的分类进行预测,即用S o f t m a x概率向量中概率的最大值作为异常分数,以区分待测试样本是否异常。L i a n g等7对M S P方法进行了改进,提出了O-D I N方法。该方法对S o f t m a x层的输出按照比例进行缩放,并在待测数据的输入空间中添加一定扰动,以增加正常样本与异常样本之间预测概率的间隔,提高了检测性能。H s u等8提出了广义的O D I N,通过分解模型输出的预测概率的方式扩展了O D I N,避免了需要使用到异常数据的问题。M a h a l a n o b i s9先用预训练模型提取正常样本的特征,再用类条件高斯分布对该特征进行建模,计算待测试样本与高斯分布之间的马氏距离,并将其作为