研究背景
异常检测旨在识别超出统计正常范围的行为模式。异常可能预示着恶意活动,如网站密码破解尝试、未经授权的信用卡交易或服务器侧信道攻击。异常检测器通常通过评分模型对输入数据进行异常可能性评估,并基于阈值进行二元决策。传统方法往往依赖历史数据的静态分析确定阈值。
技术挑战
在实际应用场景中,当数据规模庞大、来源多样且传输速度快时,静态分析方法不再适用。数据分布可能随时间推移发生变化(如节假日购物活动或在线服务突然流行),此时异常阈值需要自动调整。因此,实用异常检测需要在线统计估计技术,即对持续数据流进行分布估计。
创新框架
在神经信息处理系统大会(NeurIPS)上,我们提出了一个分析框架,能够同时处理以下五个挑战:
- 数据异常
- 分布漂移
- 高维数据
- 重尾数据
- 无需数据分布先验假设
通过理论分析证明,裁剪随机梯度下降(clipped SGD)可用于训练实时估计器。该方法通过限制单个数据样本对统计模型的影响程度,在仅假设数据方差有限的情况下自动计算裁剪阈值,无需数据方差的先验边界或估计值。
梯度裁剪机制
梯度裁剪确保噪声和损坏的梯度不会对数据分布估计产生过度影响。同时,研究还给出了该场景下的最优学习率计算方法,该学习率介于分布漂移无噪声情况下的高学习率与无分布偏移情况下的缓慢衰减学习率之间。
理论突破
本研究首次证明了存在能同时处理异常和分布漂移的估计算法。此前的研究只能单独处理其中一个问题。基于该方法的估计器已应用于某中心的威胁检测服务。
对抗建模框架
将异常和分布漂移建模为"遗忘型对抗者"的行为:在学习过程开始前,对抗者选择一系列概率分布和污染函数,分布变化模拟漂移,污染样本模拟异常。在现实数据中,污染数量和分布漂移幅度通常处于中等水平。
算法收敛性证明
通过归纳法证明clipped SGD在该场景下能收敛到可靠估计器。首先证明给定输入的误差增长仅取决于输入本身的可计算属性,进而证明当误差低于特定阈值时,后续非污染输入大概率保持低于阈值,而污染输入通过梯度裁剪也能大概率回落至阈值以下。
实验验证
在MNIST手写数字数据集上的实验表明,使用clipped SGD更新的逻辑回归模型能够同时适应分布偏移和识别异常。虽然理论分析表明clipped SGD的收敛速率并非最优,但当前研究正在探索如何提高收敛速率,以实现更准确的异常检测。
技术局限与展望
尽管clipped SGD能够以高概率收敛到良好估计器,但其收敛速率存在优化空间。后续工作将重点研究如何通过减少正常样本示例数量来提高收敛效率。