异常检测-基于相似度的⽅法-学习笔记-4

异常检测的学习笔记并非原创,而是搜索各位大佬的帖子整理而得。如有冒犯,请联系我。


关于异常检测是去寻找异常检测点,异常点不一定是“坏”的样本,在经济学中,经常说到小概率事件,我认为异常点可以认为是小概率事件的研究,我们常常会对异常值进行研究,这也是非常有意义的,如何去确定异常点,怎么去寻找一个标准?

通常我们会用距离衡量各个样本之间的一种关系,此类⽅法不仅适⽤于多维数值数据,在其他许多领域,例如分类数据,⽂本数据,时间序列数据和序列数据等⽅⾯也有⼴泛的应⽤。异常点往往会在局部点出现,本节我们将基于距离和基于密度的方法去寻找异常点。

1. 基于距离的度量

基于距离的异常检测有这样⼀个前提假设,即异常点的  k 近邻距离要远⼤于正常点。

在基于距离进行异常检测,我们通常使用基于单元的⽅法或者基于索引的方法。

1.1 基于单元的方法 

在基于单元格的技术中,数据空间被划分为单元格,单元格的宽度是阈值D和数据维数的函数。在给定的单元以及相邻的单元中存在的数据点满⾜某些特性,这些特性可以让数据被更有效的处理。

具体可以参考:异常检测 | Datawhale

二维网格

1.2 基于索引的⽅法

对于⼀个给定数据集,基于索引的⽅法利⽤多维索引结构(如 R 树、k - d
树)来搜索每个数据对象 A 在半径 D  范围内的相邻点。

该算法在数据集的维数增加时具有较好的扩展性,但是时间复杂度的估算仅考虑了搜索时间,而构造索引的任务本⾝就需要密集复杂的计算量。

2. 基于密度的度量

基于密度的算法主要有局部离群因⼦(LocalOutlierFactor,LOF),以及LOCI、CLOF等基于LOF的改进算法。

但LOF因为要计算距离,运算开销大,不适合大数据,高维。其核心思路是计算每个点在局部区域上(Loca Region)的密度和其领域点的密度来判断异常程度。

2.1 k-距离

对于数据集D中的某⼀个对象o,与其距离最近的k个相邻点的最远距离表⽰为k-distance(p),定义为给定点p和数据集D中对象o之间的距离d(p,o),满⾜:

在集合D中⾄少有k个点 o,其中o^{\prime} \in D\{p\},满足d(p,o^{\prime}) \leq d(p,o);

在集合D中最多有k-1个点o,其中o^{\prime} \in D\{p\},满足 d(p,o^{\prime}) < d(p,o)

直观⼀些理解,就是以对象o为中⼼,对数据集D中的所有点到o的距离进⾏排序,距离对象o第k近的点p与o之间的距离就是k-距离。

2.2 k-邻域

由k-距离,我们扩展到⼀个点的集合——到对象o的距离小于等于k-距离的所有点的集合,我们称之为k-邻域:

N_{k-\text { distance }(p)}(P)=\{q \in D \backslash\{p\} \mid d(p, q) \leq k-\operatorname{distance}(p)\}

2.3 可达距离

有了邻域的概念,我们可以按照到对象o的距离远近,将数据集D内的点按照到o的距离分为两类:

若  p_{i}在对象o的k-邻域内,则可达距离就是给定点p关于对象o的k-距离;

若 p_{i} 在对象o的k-邻域外,则可达距离就是给定点p关于对象o的实际距离。

2.4 局部可达密度

我们可以将“密度”直观地理解为点的聚集程度,就是说,点与点之间距离越短,则密度越⼤。在这⾥,我们使⽤数据集D中给定点p与对象o的k-邻域内所有点的可达距离平均值的倒数(注意,不是导数)来定义局部可达密度。

定义:\operatorname{lrd} _{\operatorname{Min} P t s}(p)=1 /\left(\frac{\sum_{o \in N_{M i n P t s}(p)}^{\text {reach }-\operatorname{dist}_{\operatorname{Min} P t s}(p, o)}}{\left|N_{\operatorname{Min} P t s}(p)\right|}\right)

由公式可以看出,这⾥是对给定点p进⾏度量,计算其邻域内的所有对象o到给定点p的可达距离平均值。

2.5 局部异常因子

L O F_{\operatorname{Min} P t s}(p)=\frac{\sum_{o \in N_{\operatorname{Min} P t s}(p)} \frac{\operatorname{lrd}_{\operatorname{Min} P t s}(0)}{\operatorname{lrd}_{\operatorname{Min} P t s}(p)}}{\left|N_{\operatorname{Min} P t s}(p)\right|}

表⽰点p的邻域 N_{k} (p) 内其他点的局部可达密度与点p的局部可达密度之⽐的平均数。如果这个⽐值越接近1,说明o的邻域点密度差不多,o 可能和邻域同属⼀簇;如果这个⽐值小于1,说明o的密度⾼于其邻域点密度,o为密集点;如果这个⽐值⼤于1,说明o的密度小于其邻域点密度,o 可能是异常点。

我们从直观上可以得到⼀个印象,即基于LOF模型的离群点识别在某些情况下,可能⽐基于某种统计学分布规则的识别更加符合实际情况。


3. 基于谱聚类的度量

前面分别介绍了基于距离和密度进行异常检测,我认为可以通过谱聚类的方法对样本进行聚类,从而寻找样本中的异常点。

4.练习


参考链接:https://scikit-learn.org/stable/auto_examples/neighbors/plot_lof_outlier_detection.html?highlight=lof

pyod_lof: https://blog.csdn.net/sweet1194695742/article/details/100150768



©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 161,601评论 4 369
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,367评论 1 305
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 111,249评论 0 254
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,539评论 0 217
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,967评论 3 295
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,929评论 1 224
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,098评论 2 317
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,825评论 0 207
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,609评论 1 249
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,796评论 2 253
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,282评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,603评论 3 261
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,277评论 3 242
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,159评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,959评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,079评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,874评论 2 277

推荐阅读更多精彩内容

  • 主要内容包括: 基于距离的度量 基于密度的度量 LOF检测样例 1、概述   “异常”通常是一个主观的判断,什么样...
    Q_cy阅读 661评论 0 0
  • 异常检测——基于相似度的方法 基于距离的度量 基于密度的度量 1.概述 “异常”通常是一个主观的判断,什么样的数据...
    许志辉Albert阅读 822评论 0 2
  • 基于相似度的方法 基于距离的度量 基于密度的度量 概述 “异常”通常是一个主观的判断,什么样的数据被认为是“异常”...
    penta_ever阅读 216评论 0 0
  • 一、基本概念 异常对象被称作离群点。异常检测也称偏差检测和例外挖掘。 常见的异常成因:数据来源于不同的类(异常对象...
    王尔德的小人书阅读 1,796评论 0 0
  • 一、离群点是什么? 离群点,是一个数据对象,它显著不同于其他数据对象,与其他数据分布有较为显著的不同。有时也称非离...
    堂堂正正的大号阅读 2,285评论 0 2