异常检测
了解 AI/ML 中的异常检测如何识别数据中的异常模式,并将其应用于预防欺诈、医疗保健等领域。
异常检测是机器学习 (ML)中使用的一种技术,用于识别因与大多数数据显著不同而引起怀疑的罕见项目、事件或观察结果。这些不符合要求的实例被称为异常点、离群点或新奇点。其主要目标是自动区分正常数据点和异常数据点。这种能力在很多领域都至关重要,因为它可以主动识别设备故障、金融欺诈、安全漏洞和医疗问题等问题。在计算机视觉(CV)领域,异常检测涉及在图像和视频中发现不符合预期行为的异常模式或对象。
异常检测与目标检测
重要的是要区分异常检测和目标检测。
- 物体检测:这项任务的重点是识别和定位图像中已知对象类别的实例。例如,一个物体检测模型经过训练后,可以在街景图像中找到所有汽车、行人和交通标志。该模型根据训练数据中的预定义类别,知道自己要找的是什么。
- 异常检测:这项任务是要识别任何偏离所学 "正常 "定义的事物。在许多情况下,系统事先并不知道异常是什么样子。例如,系统可能会在成千上万张完美无瑕的产品图片上接受训练,任务是标记出任何瑕疵,无论是划痕、凹痕还是褪色--这些类型的缺陷可能是系统以前从未见过的。
虽然Ultralytics YOLO这样的模型可以通过定制训练来执行异常检测,将特定缺陷视为对象,但基本方法是不同的。传统的对象检测需要每个必须找到的类的示例,而许多异常检测方法只需要代表正常状态的数据。
异常检测方法
异常检测技术可根据数据集标签的可用性进行大致分类:
- 监督学习:这种方法需要一个标有 "正常 "和 "异常 "示例的数据集。对分类模型进行训练,以区分这两种情况。这种方法非常有效,但受限于需要一个庞大且标签齐全的数据集,而异常情况顾名思义是罕见的,因此很难获得。
- 半监督学习:这是最常见的方法,模型只在正常示例的数据集上进行训练。系统学习正常模式,并将偏离所学模型的任何数据点标记为异常点。对于异常情况多种多样且难以预测的场景,这种方法非常实用。
- 无监督学习:这种方法无需任何标签。它的操作假设是,异常数据点很少,而且与正常数据点截然不同。聚类(如DBSCAN)等算法或统计方法被用来对数据点进行分组,孤立的点或小聚类被识别为异常点。关于各种方法的全面概述,可参阅有关该主题的学术调查报告,如"用于异常检测的深度学习"(Deep Learning for Anomaly Detection:A Survey》。
实际应用
异常检测是许多智能系统的基石,为各行各业提供重要的洞察力。
- 制造质量控制:在装配线上,计算机视觉系统可以实时监控产品。根据完美产品图像训练的模型可以立即发现裂缝、错位或部件缺失等缺陷。智能制造中经常使用的这种自动检测技术能比人工检查更有效地提高质量和减少浪费。
- 安全与监控:在公共场所或安全设施中,人工智能驱动的监控系统可以检测异常事件。例如,识别逆向行驶的车辆、检测机场内被遗弃的行李或标记未经授权进入禁区。这些系统可向安保人员发出实时警报。
- 人工智能在医疗保健领域的应用:异常检测有助于医学图像分析,可突出显示扫描图像中潜在的癌细胞,或从心电图数据中识别不规则的心跳。
- 金融欺诈检测:银行和金融机构使用异常检测来监控交易流,并识别表明欺诈活动的模式,例如在Kaggle 上的信用卡欺诈检测数据集中发现的模式。
- 网络安全:对网络流量进行监控,以发现可能预示网络攻击或数据泄露的异常模式。网络安全和基础设施安全局(CISA)等组织都强调此类积极主动的措施。
工具和技术
开发强大的异常检测系统通常需要结合标准 ML 库和专用平台。