首页 > 技术 > 内容

使用异常检测识别意外事件以及偏离正常行为的情况

时间:2026-01-31  作者:Diven  阅读:0

什么是异常检测?

异常检测是识别与预期行为不同的事件或模式的过程。异常检测范围,从简单的离群值检测,到复杂的机器学习算法,这些算法经过训练可以发现数百个信号中隐藏的模式。
工程师和数据科学家使用异常检测来进行以下识别:

机械故障,用于预测性维护

制造生产线的缺陷

放射学影像中的恶性肿瘤

金融交易中的欺诈

零售业的客户流失

视频监控录像中的异常动作

在 MATLAB 中,有很多方法均可用来设计异常检测算法。哪种异常检测方法最适用于给定应用,将取决于可用异常数据量,以及您是否可将异常数据与正常数据区分开来。
异常检测的第一步是检查现有的数据。不妨考虑以下问题:

您能在原始数据中发现异常吗?

有时候,您只需查看数据即可执行异常检测。例如,下面图 1 中的信号是从风扇收集的,您可以很容易地看到表示风扇行为异常的信号突变。如果您能够通过肉眼检测异常,则也许可以使用简单的算法(例如 findchangepts 或 controlchart)进行异常检测。
087e1718-1b1c-11ee-962d-dac502259ad0.jpg
图 1:MATLAB 冷却风扇数据图,异常情况一目了然。

您能在衍生特征中发现异常吗?

通常很难从原始数据中直观地检测异常。在下面的信号中,很难确定哪个时域信号有异常。如果创建功率谱以在频域中查看数据,则峰值的频率和幅度差异可以清楚地表明两个信号截然不同。在这种情况下,您可以将这些峰值用作基于有监督学习方法的异常检测算法的特征输入。
08a0215a-1b1c-11ee-962d-dac502259ad0.jpg
图 2:尽管原始时序信号(左图)中的异常看上去不明显,但在频域中查看数据(右图,使用 MATLAB 中的周期图)时,可以看到峰值频率的明显差异。

您能用统计学方法区分正常特征和异常特征吗?

在单个信号中,异常不一定那么明显。当今的复杂机器可能有数百个传感器。有时,只有同时考虑多个传感器时,异常才会变得明显。标注了数据后,您可以检查时域和频域特征的统计分布,如图 3 所示。您还可以执行特征变换和排名,以识别最能区分两个组的特征。然后,您可以使用这些特征,通过有监督学习方法基于标注的数据训练异常检测算法。
08ccbd96-1b1c-11ee-962d-dac502259ad0.jpg
图 3:左侧的 MATLAB 图分别用蓝色和红色表示成对的正常数据和异常数据。右侧是来自诊断特征设计器的相应特征直方图,用于识别哪些特征可明确区分正常数据和异常数据,以供有监督异常检测算法使用。

如果您不知道异常的具体表现该怎么办?

机械故障代价高昂,操作人员通常希望通过保守的维护计划来防患未然。这可能意味着异常很少见,使得设计异常检测算法变得很棘手。
有几种设计异常检测算法的方法只需很少的异常数据,或者根本不需要异常数据。这些“仅正常”方法只基于正常数据训练算法,并将正常数据之外的数据识别为异常数据。
使用 MATLAB,您可以对数据应用以下“仅正常”异常检测方法:
阈值化。
阈值化在数据超过统计指标的阈值时识别异常。例如,时序数据中最近时段内的标准差,对信号使用控制图,使用变化点检测查找信号中的突变,或获得数据分布的稳健估计值,并将分布边缘的样本识别为异常。基于统计指标的阈值化是个不错的方法,但与机器学习方法相比,这种方法应用于多元数据比较困难,而且在异常检测方面也不够稳健。对于离群值具有稳健性的统计估计法将生成更好的结果,例如稳健协方差。
单类支持向量机。
单类支持向量机用于识别最大化类间距离的分离超平面。仅训练一个类会生成可视为正常的数据的模型。该模型使您无需任何可用于训练的标注异常即可检测异常。这种方法和其基于距离的方法需要数值特征作为输入,而且不适用于高维数据。
孤立森林。
孤立森林可用于构建将每个观测值隔离到一个叶节点中的树。异常分数作为样本的平均深度进行计算:异常样本需要的决策数比正常样本的要少。这种方法支持数值特征和分类特征组合,并且适用于高维数据。
自编码器。
编码器是基于正常数据训练且尝试重构原始输入的神经网络。经过训练的自编码器将会准确地重构正常输入。如果输入与其重构之间差异巨大,则可能表明存在异常。自编码器可用于信号和图像数据。
08f03280-1b1c-11ee-962d-dac502259ad0.jpg
图 4:自编码器经过训练,可以复制输入。利用输入与其重构之间的差异,可以对信号或图像数据进行异常检测。
当您的数据中存在异常但无法进行标注时,您还可以尝试使用无监督聚类方法进行异常检测。有时,您可以将聚类与正常数据和异常数据相关联,但除非数据集是均衡的(包含许多同类型的异常),否则使用“仅正常”方法更有可能获得有用的结果。
在应用异常检测算法之前,通常需要从原始数据中提取特征。
MATLAB 同时支持以手动和自动方法从信号、图像和文本数据中提取特征。PredICtive Maintenance Toolbox 中的诊断特征设计器可以帮助您从多种类型的信号中提取特征。

异常检测有助于识别离群值、与正常值的偏差和意外行为

如果您有足够的标注数据(包括异常),则可使用有监督学习方法进行异常检测

如果您的数据大部分都是正常数据,则应用某种专门的“仅正常”异常检测方法即可

上手示例:

使用 MATLAB 检测图像中的对象缺陷

要构建基于图像的异常检测算法,您可以执行以下操作:
1) 将图像馈送入预训练的 AlexNet 卷积神经网络;
2) 使用第一层后的网络激活值作为特征,然后
3) 使用 fitcsvm 训练单类支持向量机。单类支持向量机基于正常图像训练。负的分类分数表示异常。
审核编辑:刘清

猜您喜欢


电路保护元件的重要性日益凸显。其中,保险丝作为保护电路安全的关键部件,有着着不可替代的作用。RMZZ一次性保险丝因其独特的性能和封装形式,受到越来越多电子工程师...
2020-05-24 03:05:30
现代电子电路设计中,差分信号传输因其抗干扰能力强、信号完整性高而被应用。而差分输出电阻作为衡量差分信号质量和电路匹配的重要参数,成为设计和优化差分放大器、差分驱...
2025-11-08 13:00:04
你是否曾经好奇过电池和墙上插座里的电有什么不同?分别是直流电 (DC) 和交流电 (AC),就像两条不同的河流,都在输送电力,但水流的方式却截然不同。想象一下,...
2024-03-20 00:00:00
随着电子产品的不断发展,贴片电阻作为电子元器件中不可少的一部分,其制造工艺的精细化显得尤为重要。其中,贴片电阻丝印工艺作为关键步骤,直接影响电阻的性能稳定性和产...
2025-12-10 05:00:38
四端子电阻因其高精度和稳定性被应用于各种测量和控制电路中。紫泰荆作为一家知名电子元件制造商,其推出的四端子电阻产品因优良的性能和可靠的品质受到了行业的关注。本文...
2025-03-16 09:43:23
麻将机在生活中随处可见,麻将机的工作原理是背面朝上的麻将牌被洗牌桶上的磁环吸引,并随磁环一起旋转送到输送槽。在机器的前端,叠推马达将麻将子推入砧板,砧板由链条杆...
2023-08-01 10:16:00
焊枪作为焊接工艺中不可少的工具,主要用于将金属材料加热至熔融状态,从而实现各类金属的连接和修复。作用不仅限于焊接,还包括切割、雕刻等多种功能。焊枪通过高温火焰或...
2011-11-07 00:00:00
电解电容是电子元件,应用于电路中。作用非常重要,尤其是在电源和信号处理方面。本文将详细介绍电解电容的主要作用。 储存电能电解电容可以储存电能。能在短时间内释放电...
2025-04-02 08:31:07
螺距规是用于测量螺纹间距的重要工具,但市面上的螺距规种类繁多,各具特色。螺距规根据用途可分为公制和英制两种。公制螺距规主要用于测量毫米单位的螺纹,而英制螺距规则...
2008-12-11 00:00:00
贴片电阻R330表示阻值为33Ω的贴片电阻。字母R代表电阻,后面的数字330则采用三位数编码表示阻值。其中前两位数字33是有效数字,最后一位数字0表示在其后加0...
2024-11-29 10:26:17