第9章 异常检测
第4章介绍了特征学习,还介绍了用作监督学习任务的无监督学习预训练步骤的自编码器。
本章将针对不同的使用示例,应用类似概念,即异常检测。一个良好的异常检测器的决定因素是:找到能够很容易地表示偏离正态分布的数据表示。深度自编码器在学习底层数据的高层抽象和非线性关系方面非常有效。接下来,向大家展示深度学习是如何适合于异常检测的。
本章先解释异常检测和异常点检测之间的差异以及共同点,引导读者进行一个虚构的欺诈案例研究;然后会列出一些示例,展示在现实应用中具有异常现象以及自动快速检测系统的重要性。
在进入深度学习算法的实现之前,本章将介绍一些被广泛应用于传统机器学习的技术以及它们当前存在的局限性。
本章将应用第4章中所述的深度自编码器的架构,但研究对象是一种特殊类型的半监督学习(也称为新奇检测)。这部分将提出两种强有力的方法:一种方法是基于重新建误差;另一种方法是基于低维特征压缩。
本章还将介绍一种构建简单、可扩展前向多层神经网络最需要的开源框架——H2O,最后将使用H2O自编码器模型的Python API来编写几个异常检测示例。
第一个示例是重新使用第3章和第4章中的MNIST数据集,用于检测写得很难被识别的数字。第二个示例将显示如何检测心电图时间序列中的异常脉冲。
本章涵盖以下主题:什么是异常检测和异常点检测、异常检测的现实应用、流行的浅层机器学习算法、基于深度自编码器的异常检测、H2O概述,以及MNIST数字异常识别和心电图异常脉冲检测示例。
9.1 什么是异常检测和异常点检测
异常检测,大多与异常点检测和新奇检测相关,它是指识别严重偏离同质数据集中所观测到的预期模式的项目、事件或观测值。异常检测就是预测未知。
无论何时,只要发现数据中存在不一致的观测值,就可以将其称为“异常”或“异常点”。尽管这两个词汇经常互换使用,但它们实际上指的是两个不同的概念,正如Ravi ...
Get Python深度学习从原理到应用 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.