机器学习中的异常检测

2025年6月17日 | 阅读 4 分钟

异常检测是一个寻找那些罕见的、因与其余数据点或观测值不同而引起怀疑的项目、数据点、事件或观测值的过程。 异常检测也称为离群点检测

Machine Learning with Anomaly Detection

通常,异常数据与某些问题相关,例如银行欺诈、医疗问题、设备故障等。

找出异常的能力在于定义什么是“正常”?例如,在下面的图片中,黄色车辆在所有红色车辆中是一个异常。

Machine Learning with Anomaly Detection

异常检测的类型

1. 点异常

如果一个元组在数据集中远离其余数据,则可以称之为点异常。

示例:信用卡上突然出现巨额交易就是一个点异常的例子。

2. 情境异常

情境异常也称为条件离群点。如果一个特定的观测值与其他数据点不同,则称为情境异常。在这些类型的异常中,在一个情境下是异常的,在另一个情境下可能不是异常。

3. 集合异常

当一个数据集中的数据点对于整个数据集来说是异常的,并且这些值被称为集合离群点时,就会发生集合异常。在这些异常中,特定的或单个的值作为一个整体或在特定情境下并非异常。

异常检测技术类别

异常检测技术主要分为三种类型:

  1. 监督异常检测
  2. 无监督异常检测

监督异常检测

监督异常检测需要标记的训练数据,其中包含正常和异常数据,用于创建预测模型。一些常见的监督方法包括神经网络、支持向量机、k近邻、贝叶斯网络、决策树等。

k近邻是一种流行的非参数技术,它查找输入向量上不同点之间的近似距离。这是最好的异常检测方法之一。另一个流行的模型是贝叶斯网络,当与统计方案结合使用时,可用于异常检测。该模型编码了变量之间的概率关系。

监督异常检测技术具有不同的优点,例如能够编码变量之间的相互依赖关系并预测事件;它还提供了结合先验知识和数据的能力。

无监督异常检测

无监督异常检测不需要标记的训练数据。这些技术基于两个假设:

  • 大多数网络连接来自正常流量,只有少量数据是异常的。
  • 恶意流量在统计上与正常流量不同。

基于这些假设,经常出现相似数据点的聚类被假定为正常流量,而不频繁出现的数据组被认为是异常或恶意的。

一些常见的无监督异常检测算法包括自组织映射 (SOM)、K-means、C-means、期望最大化元算法 (EM)、自适应共振理论 (ART) 和单类支持向量机。SOM,即自组织映射,是一种旨在减少数据可视化维度的流行技术。

异常检测可以有效地帮助捕获欺诈,在大型复杂的大数据集中发现异常活动。这在容易发生恶意活动的领域,如银行安全、自然科学、医学和营销等方面非常有用。通过机器学习,组织可以加强搜索并提高其数字业务计划的有效性。

异常检测的需求

1. 应用性能的异常检测

任何公司的应用性能都可以提高或降低员工的生产力和收入。一般的或传统的方法来监控应用程序性能可以对问题做出反应,但业务仍然会受到影响,从而影响用户。但是,借助机器学习的异常检测,可以轻松识别和解决应用程序性能问题,而不会影响业务和用户。

使用机器学习算法的异常检测可以简单地将数据与相应的应用程序性能指标相关联,并找出问题的完整知识。还有不同的行业也为其业务采用异常检测技术,例如电信、广告科技等。

2. 产品质量的异常检测

产品经理仅仅依赖另一个部门来负责必要的监控和警报是不够的。产品经理总是需要能够信任产品能够顺利运行。这是因为产品总是需要改变,从每个版本发布到新功能升级,都会产生异常。如果不妥善监控这些异常,可能会导致数百万的收入损失,并可能影响品牌声誉。

3. 用户体验的异常检测

如果您发布了一个有缺陷的版本,您可能会遇到 DDoS 攻击,以及客户体验出现使用中断的风险。因此,在这些问题影响用户体验之前做出反应是必要的,以减少收入损失的可能性。

主动优化和改进用户体验将有助于提高游戏、在线业务等各种行业的客户满意度。

结论

在本主题中,我们提供了异常检测及其在业务中用例的详细描述。异常检测在信用卡欺诈检测系统、入侵检测等各种业务应用中都非常有用。