首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >综述专栏 | 异常检测:Anomaly Detection

综述专栏 | 异常检测:Anomaly Detection

作者头像
guichen1013
发布于 2020-11-17 03:37:44
发布于 2020-11-17 03:37:44
2.3K0
举报
文章被收录于专栏:海边的拾遗者海边的拾遗者

作者 | 阿尔法杨XDU

来源 | https://www.zhihu.com/people/mu-yi-yang-42-66

编辑 | 海边的拾遗者公众号

本文仅作学术交流,如有侵权,请联系后台删除

01

简介

异常检测一直是机器学习中一个非常重要的子分支,在各种人工智能落地应用例如计算机视觉数据挖掘、NLP中,异常检测算法都是很热门的研究方向,特别是大数据时代,人工处理数据的速度已经远远赶不上机器了,所以更快地检测数据中的异常情况成为了我们当下非常重要的任务。在深度学习广泛的推广之前,传统的异常检测算法有很多,例如高斯拟合,半监督学习等等,而在深度学习大火之后,人们也开始研究将深度学习应用于各种异常任务中(也就是Deep Anomaly Detection,以下统称DAD),并取得了很大的成功,本文将把当下该方向热门的研究方向分类并列举了对应的文章,希望能帮助大家更好地理解此方向的研究。

02

异常检测的概念

异常检测,从定义而言就是一种识别不正常情况与挖掘非逻辑数据的技术,也叫outliers。例如在计算机视觉的应用中,有人在抖音发表一个视屏,在边骑车边打电话,那这就是个不符合规范的视屏,我们能否采用一些方式来将其检测出来,再例如在数据挖掘领域中,那异常检测的应用就更广泛了,比如信用卡盗刷,超大金额支出等等。通常情况下,在我们阅读论文的过程中,异常检测(Anomaly Detection)也被叫做,Novelty Detection,Outlier Detection,Forgery Detection,Out-of-distribution Detection。在阅读论文的情况,这些名词也有轻微的区别,以计算机视觉为例,如下图所示。

在计算机视觉的基本任务——图像分类中,单分类与多分类问题,将几种概念的细微区别基本阐述清楚了。Anomaly Detection指在不属于该分类的数据集中,而Novelty是检测可能属于该分类但却没见过(Unseen)也就是Novel的数据集,而OOD(out-of-distribution)则是多分类中不同目标的分布,这些任务在接下来的论文中,也经常有人进行相应的研究。

03

异常检测相关工作与方向

首先根据查阅异常检测方向综述的文章,我将基于深度学习的异常检测应用方向论文,按照主要的逻辑结构列举在了下面,我相信这可以更加方便地向你展示异常检测方向你应该怎样去研究你的论文。

1. DAD研究的主要元素

(1) 异常数据集

  • 点集
  • 连续集
  • 团队集

(2) 异常检测模型

  • 无监督学习、AutoEncoder、GAN、矩阵因子分解
  • 半监督学习、强化学习
  • Hybrid(混种)、特征提取+传统算法
  • 单分类神经网络

(3) 异常检测应用

  • 诈骗检测
  • 网络侵入检测
  • 医学异常检测
  • 传感器网络异常检测
  • 视屏监督
  • 物联网大数据异常检测
  • 日志异常检测
  • 工业危害检测

2. 异常检测论文分类

下面也是我根据参考文献,把异常检测论文分成几个当前研究方向,相当于列出了一个目录在这里,可供之后方便查看,关于论文分类的一些概念,我会在下面的介绍中详细提及。

(1) 数据的连续性

(2) 数据标签的可用性

  • 监督学习Supervised Learning
  • 半监督学习Semi-supervised Learning
  • 无监督学习Unsupervised Learning

(3) 基于训练对象的模型

  • 深度混种模型Deep Hybrid Model(DHM)
  • 单分类神经网络One-Class Neural Networks(OC-NN)

(4) 数据异常类型

  • 点集Point
  • 连续集Contextual
  • 团队集Collective or Group

(5) 异常检测输出类型

  • 异常分数Anomaly Score
  • 标签Lable

(6) 异常检测应用

有将近十种异常检测相关的应用,由于目前对该部分研究较浅,所以之后会考虑单独写篇文章来总结异常检测方面的应用型论文。

04

原始数据的连续性Nature of Input Data

在DAD问题中选择怎样的网络结构很大部分取自于原始数据(raw/input data)的类型,原始数据在广义上我们可以分为连续型(Sequential)与非连续型(Non-sequential),如何选择相应的模型,我列举在下表中。

DAD在未降维的高维原始数据中表现优异,成功提取大规模数据的关系,通常情况下,网络越深,提取效果越好,这个部分感兴趣的话可以参考下面这篇文章。

  • Yann LeCun, Yoshua Bengio, and Geoffrey Hinton. Deep learning. nature, 521(7553):436, 2015.

05

数据标签的可用性Availability of Labels

数据标签是非常重要的事情,标签代表着正常(normal)数据或是未见过(unseen/novel)的数据,对于标签内容的使用同样是现在异常检测方向论文重点考虑的事情。异常检测的模型也可以根据数据标签的内容广义的分为三类,监督,半监督和无监督。

1. 监督Supervised DAD

基于监督学习的DAD文章,整理了两篇医学方向的,由于监督学习对于标签内容的依赖度过重,所以他对于异常检测的问题并不是那么合适,所以它并不如半监督和无监督应用地那么广泛。

  • Raghavendra Chalapathy, Ehsan Zare Borzeshi, and Massimo Piccardi. An investigation of recurrent neural architectures for drug name recognition. arXiv preprint arXiv:1609.07585, 2016a.
  • Raghavendra Chalapathy, Ehsan Zare Borzeshi, and Massimo Piccardi. Bidirectional lstm-crf for clinical concept extraction. arXiv preprint arXiv:1611.08373, 2016b.

2. 半监督Semi-supervised DAD

由于正常数据集比异常数据集更好获得,所以半监督学习DAD方法被非常广泛的使用,拥有了足够的数据集,我们能更好地标出正常数据,异常数据,新数据的界限,半监督学习模型列举三篇论文。

  • Drausin Wulsin, Justin Blanco, Ram Mani, and Brian Litt. Semi-supervised anomaly detection for eeg waveforms using deep belief nets. In Machine Learning and Applications (ICMLA), 2010 Ninth International Conference on, pages 436–441. IEEE, 2010.
  • Mutahir Nadeem, Ochaun Marshall, Sarbjit Singh, Xing Fang, and Xiaohong Yuan. Semi-supervised deep neural network for network intrusion detection. 2016.
  • Hongchao Song, Zhuqing Jiang, Aidong Men, and Bo Yang. A hybrid semi-supervised anomaly detection model for high-dimensional data. Computational intelligence and neuroscience, 2017.

3. 无监督Unsupervised DAD

传统机器学习算法其实我感觉更倾向于直接从数据集中让机器去学习一些东西,然后直接用参数的方式表示出来,异常检测问题同样我们也用自动标签的方式去检测是否异常,因为有时候可能数据难以获取。自动解码器是无监督DAD的核心,所以这里深度学习的一些神经网络大有可为,例如RNN,LSTM等等。我们这里只列举了一种采用变种半监督学习方法的论文,应用于异常数据降维,表现效果超越很多传统降维算法,如PCA,Isolation等等。

  • Aaron Tuor, Samuel Kaplan, Brian Hutchinson, Nicole Nichols, and Sean Robinson. Deep learning for unsupervised insider threat detection in structured cybersecurity data streams. arXiv preprint arXiv:1710.00811, 2017.

06

基于训练对象的模型

按照训练对象的区别,我们把训练模型单独划分为两类,变种模型与单分类神经网络。

1. 深度变种模型Deep Hybrid Models(DHM)

  • Jerone TA Andrews, Edward J Morton, and Lewis D Griffin. Detecting anomalous data using auto-encoders. International Journal of Machine Learning and Computing, 6(1):21, 2016a.
  • Tolga Ergen, Ali Hassan Mirza, and Suleyman Serdar Kozat. Unsupervised and semi-supervised anomaly detection with lstm neural networks. arXiv preprint arXiv:1710.09207, 2017.

2. 单分类神经网络One-Class Neural Networks(OC-NN)

  • Raghavendra Chalapathy, Aditya Krishna Menon, and Sanjay Chawla. Anomaly detection using one-class neural networks. arXiv preprint arXiv:1802.06360, 2018a.

07

数据异常类型

1. 点集Point

举信用卡盗刷的例子,点集异常就是指单笔交易大金额支出,比如你都花1块2块的钱,突然有一天消费了1k,那可能就出现了异常情况,但这个方向好像没有人单独发过文章。

2. 连续集Contextual or Conditional

连续集就是指上下文相关的连续数据,某一个中间数据出现了异常情况,可能引起了梯度消失爆炸等等问题。

  • Xiuyao Song, Mingxi Wu, Christopher Jermaine, and Sanjay Ranka. Conditional anomaly detection. IEEE Transactions on Knowledge and Data Engineering, 19(5):631–645, 2007.

3. 团队集Collective or Group

还是信用卡盗刷的例子,如果某天你的信用卡突然短时间内不停地消费50元,那机器可能会发现,这些团队数据集的消费出现了异常,这种情况我们也在其他场合经常遇到。

  • Raghavendra Chalapathy, Edward Toth, and Sanjay Chawla. Group anomaly detection using deep generative models. arXiv preprint arXiv:1804.04876, 2018b.
  • Lo¨ıc Bontemps, James McDermott, Nhien-An Le-Khac, et al. Collective anomaly detection based on long short-term memory recurrent neural networks. In International Conference on Future Data and Security Engineering, pages 141–152. Springer, 2016.
  • Daniel B Araya, Katarina Grolinger, Hany F ElYamany, Miriam AM Capretz, and G Bitsuamlak. Collective contextual anomaly detection framework for smart buildings. In Neural Networks (IJCNN), 2016 International Joint Conference on, pages 511–518. IEEE, 2016.
  • Naifan Zhuang, Tuoerhongjiang Yusufu, Jun Ye, and Kien A Hua. Group activity recognition with differential recurrent convolutional neural networks. In Automatic Face & Gesture Recognition (FG 2017), 2017 12th IEEE International Conference on, pages 526–531. IEEE, 2017.

08

idea新颖的论文

这里我再给大家推荐8篇idea比较新颖的论文,可供大家阅读与交流。

[1] Liu W, Luo W, Lian D, et al. Future frame prediction for anomaly detection–a new baseline[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 6536-6545. [2] Gong D, Liu L, Le V, et al. Memorizing normality to detect anomaly: Memory-augmented deep autoencoder for unsupervised anomaly detection[C]//Proceedings of the IEEE International Conference on Computer Vision. 2019: 1705-1714. [3] Park H, Noh J, Ham B. Learning Memory-guided Normality for Anomaly Detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 14372-14381. [4] Zhao Y, Deng B, Shen C, et al. Spatio-temporal autoencoder for video anomaly detection[C]//Proceedings of the 25th ACM international conference on Multimedia. 2017: 1933-1941. [5] Ionescu R T, Khan F S, Georgescu M I, et al. Object-centric auto-encoders and dummy anomalies for abnormal event detection in video[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019: 7842-7851. [6] Liu W, Luo W, Li Z, et al. Margin Learning Embedded Prediction for Video Anomaly Detection with A Few Anomalies[C]//IJCAI. 2019: 3023-3030. [7] Sultani W, Chen C, Shah M. Real-world anomaly detection in surveillance videos[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 6479-6488. [8] Luo W, Liu W, Gao S. A revisit of sparse coding based anomaly detection in stacked rnn framework[C]//Proceedings of the IEEE International Conference on Computer Vision. 2017: 341-349.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 海边的拾遗者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如何使用StreamSets从MySQL增量更新数据到Hive
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面Fayson介绍了《如何在CDH中安装和使用StreamSets》,通过StreamSets实现数据采集,在实际生产中需要实时捕获MySQL、Oracle等其他数据源的变化数据(简称CDC)将变化数据实时的写入大数据平台的Hive、HDFS、HBase、Solr、Elasti
Fayson
2018/04/18
15.4K3
如何使用StreamSets从MySQL增量更新数据到Hive
如何使用StreamSets实现MySQL中变化数据实时写入Kudu
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面Fayson介绍了《如何在CDH中安装和使用StreamSets》和《如何使用StreamSets从MySQL增量更新数据到Hive》,通过StreamSets实现数据采集,在实际生产中需要实时捕获MySQL、Oracle等其他数据源的变化数据(简称CDC)将变化数据实时的
Fayson
2018/04/18
5.7K0
如何使用StreamSets实现MySQL中变化数据实时写入Kudu
0787-6.3.3-如何在本地集群安装Workload Experience Manager(WXM)
Workload XM是Cloudera现代数据平台以工作负载为中心的管理工具,可主动分析数据仓库、数据工程和机器学习环境的工作负载,提升应用程序性能,以及优化基础架构的容量配置。Workload XM与Cloudera Enterprise平台内的多种计算引擎进行交互,使用户能够全面了解各类性能指标,从而通过迭代模式进行自助服务。
Fayson
2020/06/29
1.7K0
0787-6.3.3-如何在本地集群安装Workload Experience Manager(WXM)
0726-6.3.0-如何在CDH6.3中安装Streams Messaging Manager(SMM)
Cloudera在2019年9月18日正式对外宣布发布Cloudera Stream Processing(CSP)2.0,参考《Cloudera Streams Management正式GA》。Cloudera Stream Processing (CSP)提供了高级消息传递,流处理和流分析功能,这些功能由Apache Kafka作为核心流处理引擎提供支持。它同时为Kafka添加了两个流管理功能,Kafka监控和Kafka数据复制。Streams Messaging Manager(SMM)为Kafka集群提供了一个监控仪表板。Streams Replication Manager(SRM)为企业提供了实现跨集群Kafka topic复制的能力。
Fayson
2019/11/09
1.9K0
0726-6.3.0-如何在CDH6.3中安装Streams Messaging Manager(SMM)
0623-6.2.0-如何在CDH中安装CFM
2019年4月15日,Cloudera在其官网宣布GA两款新的产品Cloudera Flow Management和Cloudera Edge Management,即CFM和CEM。Flow Management和Edge Management以前都是隶属于HDP的相关产品,Cloudera此次官宣代表的是它们现在可以与CDH一起安装并使用,包括使用Cloudera Manager进行简易的Parcel安装和服务监控。HDP和CDH合并后,对于CDH的客户也一直期待HDP的一些优秀特性能早点融合到CDH中,CEM和CFM就是一次开始,它们为IOT场景的边缘管理和边缘数据搜集带来了可能。具体参考《0603-Cloudera Flow Management和Cloudera Edge Management正式发布》。
Fayson
2019/05/15
2.5K0
0623-6.2.0-如何在CDH中安装CFM
如何使用StreamSets实现MySQL中变化数据实时写入HBase
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面Fayson介绍了《如何在CDH中安装和使用StreamSets》、《如何使用StreamSets从MySQL增量更新数据到Hive》以及《如何使用StreamSets实现MySQL中变化数据实时写入Kudu》,本篇文章Fayson主要介绍如何使用StreamSets实现M
Fayson
2018/07/11
5.1K2
如何在CDH5.15中安装CDSW1.4
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Cloudera在2018年6月12日发布了CDH5.15版本,5.15的新功能可以参考前一篇文章《CDH5.15和CM5.15的新功能》,随着CDH5.15发布的同时还有CDSW1.4。在CDH5.13版本以后支持CDSW的Parcel安装,本篇文章
Fayson
2018/07/13
5.5K2
如何在CDH5.14中安装CDSW1.3
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Cloudera在2018年1月26日发布了CDH5.14版本,5.14的新功能可以参考前一篇文章《CDH5.14和CM5.14的新功能》,在CDH5.13版本以后支持CDSW的Parcel安装,本篇文章就主要讲述如何通过CM5.14.3使用Parce
Fayson
2018/07/12
1.9K0
0600-6.1.0-如何在CDH6.1中安装CDSW1.5
Cloudera在2019年1月29日发布CDSW1.5,CDSW1.5的一个最大的更新就是支持CDH6和HDP,在1.5之前,CDSW是不能安装到CDH6.x的。CDH5.13版本以后支持CDSW的Parcel安装,本篇文章Fayson就主要讲述如何通过CM6.1使用Parcel包安装CDSW1.5。
Fayson
2019/04/28
2.5K0
0600-6.1.0-如何在CDH6.1中安装CDSW1.5
如何在CDH中安装Kudu&Spark2&Kafka
在CDH的默认安装包中,是不包含Kafka,Kudu和Spark2的,需要单独下载特定的Parcel包才能安装相应服务。本文档主要描述在离线环境下,在CentOS6.5操作系统上基于CDH5.12.1集群,使用Cloudera Manager通过Parcel包方式安装Kudu、Spark2和Kafka的过程。
Fayson
2018/03/29
6K0
如何在CDH中安装Kudu&Spark2&Kafka
0586-5.16.1-如何在CDH5.16.1中安装CDSW1.5
Cloudera在2018年11月29日发布了CDH5.16.1版本,5.16.1的新功能可以参考前一篇文章《0466-CDH5.16.1和CM5.16.1的新功能》,2019年1月29日发布CDSW1.5。CDH5.13版本以后支持CDSW的Parcel安装,本篇文章Fayson就主要讲述如何通过CM5.16.1使用Parcel包安装CDSW1.5。
Fayson
2019/04/28
2K0
0586-5.16.1-如何在CDH5.16.1中安装CDSW1.5
0478-如何在CDH5.16.1中安装CDSW1.4.2
Cloudera在2018年11月29日发布了CDH5.16.1版本,5.16.1的新功能可以参考前一篇文章《0466-CDH5.16.1和CM5.16.1的新功能》,这一次随着CDH5.16的同时没有发布新的CDSW,比如CDSW1.5,但前一段时间就已经发布了CDSW1.4.2。CDH5.13版本以后支持CDSW的Parcel安装,本篇文章Fayson就主要讲述如何通过CM5.16使用Parcel包安装CDSW1.4.2。
Fayson
2018/12/26
2.9K0
如何在Redhat7.4安装CDH5.15
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Cloudera在2018年6月12日发布了CDH5.15,新功能介绍可以参考Fayson之前的文章《CDH5.15和CM5.15的新功能》。本文档主要描述如何在Redhat7.4安装CDH5.15。Cloudera企业级数据中心的安装主要分为5个步骤
Fayson
2018/07/12
2.2K0
如何在Redhat7.4安装CDH6.0
Cloudera在前天8月30日,对外宣布正式发布Cloudera Enterprise 6,相关介绍可以参考Fayson昨天的文章《Cloudera Enterprise 6正式发布》。本文档Fayson主要描述如何在Redhat7.4安装CDH6.0。CDH6与CDH5的安装步骤一致,主要包括以下四部分:
Fayson
2018/09/29
3.9K3
如何在Redhat7.3安装CDH5.14
Cloudera在2018年1月26日发布了CDH5.14,新功能介绍可以参考Fayson之前的文章《CDH5.14和CM5.14的新功能》。本文档主要描述如何在Redhat7.3安装CDH。Cloudera企业级数据中心的安装主要分为5个步骤:
Fayson
2018/03/29
3.6K0
如何使用StreamSets实现Oracle中变化数据实时写入Kudu
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson介绍了关于StreamSets的一些文章,参考《如何在CDH中安装和使用StreamSets》、《如何使用StreamSets从MySQL增量更新数据到Hive》、《如何使用StreamSets实现MySQL中变化数据实时写入K
Fayson
2018/07/12
5.3K0
Cloudera Manager 和CDH6.0.1安装,卸载,各步骤截图
https://www.cloudera.com/documentation/enterprise/6/6.0.html
Java架构师必看
2021/08/12
2.9K0
如何在CDH中使用Solr对HDFS中的JSON数据建立全文索引
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Solr是一个高性能,采用Java开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。SolrCloud是Sol
Fayson
2018/07/12
6.9K0
如何在CDH5.14.2中安装Phoenix4.14.0
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- Fayson在前面的文章《Cloudera Labs中的Phoenix》,《如何在CDH中使用Phoenix》和《如何使用Phoenix在CDH的HBase中创建二级索引》中介绍了Cloudera Labs中的Phoenix,如何在CDH5.11.2中安装和使用Phoenix4.
Fayson
2018/07/12
1.4K0
0890-7.1.6-如何在CDP集群配置Kerberos高可用
1.文档编写目的 本篇文章主要介绍如何在CDP 7.1.6集群中配置Kerberos的高可用。 文档概述 1.如何在CDP7集群配置Kerberos高可用 2.验证 3.总结 测试环境 1.操作系统Redhat7.2 2.CDP7.1.6 3.使用root用户操作 2.备节点安装Kerberos服务 1.在备节点安装Kerberos服务,暂时不进行相关配置 [root@cdh1 ~]# yum install -y krb5-server openldap-clients krb5-workstation
Fayson
2022/08/31
1.3K0
0890-7.1.6-如何在CDP集群配置Kerberos高可用
推荐阅读
相关推荐
如何使用StreamSets从MySQL增量更新数据到Hive
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档