精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于二叉樹的ensemble異常檢測算法

lviY_AI_shequ ? 來源:lq ? 2018-12-11 16:57 ? 次閱讀

iForest (Isolation Forest)是由Liu et al. [1] 提出來的基于二叉樹的ensemble異常檢測算法,具有效果好、訓(xùn)練快(線性復(fù)雜度)等特點(diǎn)。

1. 前言

iForest為聚類算法,不需要標(biāo)記數(shù)據(jù)訓(xùn)練。首先給出幾個(gè)定義:

劃分(partition)指樣本空間一分為二,相當(dāng)于決策樹中節(jié)點(diǎn)分裂;

isolation指將某個(gè)樣本點(diǎn)與其他樣本點(diǎn)區(qū)分開。

iForest的基本思想非常簡單:完成異常點(diǎn)的isolation所需的劃分?jǐn)?shù)大于正常樣本點(diǎn)(非異常)。如下圖所示:

xi 樣本點(diǎn)的isolation需要大概12次劃分,而異常點(diǎn)x0指需要4次左右。因此,我們可以根據(jù)劃分次數(shù)來區(qū)分是否為異常點(diǎn)。但是,如何建模呢?我們?nèi)菀紫氲剑簞澐謱?yīng)于決策樹中節(jié)點(diǎn)分裂,那么劃分次數(shù)即為從決策樹的根節(jié)點(diǎn)到葉子節(jié)點(diǎn)所經(jīng)歷的邊數(shù),稱之為路徑長度(path length)。假設(shè)樣本集合共有n個(gè)樣本點(diǎn),對于二叉查找樹(Binary Search Tree, BST),則查找失敗的平均路徑長度為

其中,H(i)為harmonic number,可估計(jì)為ln(i)+0.5772156649。那么,可建模anomaly score:

其中,h(x)為樣本點(diǎn)x的路徑長度,E(h(x))為iForest的多棵樹中樣本點(diǎn)x的路徑長度的期望。特別地,

當(dāng)s值越高(接近于1),則表明該點(diǎn)越可能為異常點(diǎn)。若所有的樣本點(diǎn)的s值都在0.5左右,則說明該樣本集合沒有異常點(diǎn)。

2. 詳解

iForest采用二叉決策樹來劃分樣本空間,每一次劃分都是隨機(jī)選取一個(gè)屬性值來做,具體流程如下:

停止分裂條件:

樹達(dá)到了最大高度;

落在孩子節(jié)點(diǎn)的樣本數(shù)只有一個(gè),或者所有樣本點(diǎn)的值均相同;

為了避免錯(cuò)檢(swamping)與漏檢(masking),在訓(xùn)練每棵樹的時(shí)候,為了更好地區(qū)分,不會拿全量樣本,而會sub-sampling樣本集合。iForest的訓(xùn)練流程如下:

sklearn給出了iForest與其他異常檢測算法的比較。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 檢測算法
    +關(guān)注

    關(guān)注

    0

    文章

    118

    瀏覽量

    25189
  • 二叉樹
    +關(guān)注

    關(guān)注

    0

    文章

    74

    瀏覽量

    12283

原文標(biāo)題:異常檢測算法:Isolation Forest

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    二叉樹算法在單總線技術(shù)中的應(yīng)用

    介紹了單總線技術(shù)和二叉樹算法。單總線技術(shù)可以將地址線、數(shù)據(jù)線和控制線合成一根線,并允許在這根線上掛接多個(gè)單總線器件。提出了用二叉樹算法搜索單總線器件注冊碼,并
    發(fā)表于 03-16 09:38 ?20次下載

    基于二叉樹分解的自適應(yīng)防碰撞算法

    該文提出了一種基于二叉樹分解的自適應(yīng)防碰撞算法。新算法利用標(biāo)簽EPC 的唯一性,通過時(shí)隙分配估計(jì)標(biāo)簽的分布情況,對發(fā)生碰撞的時(shí)隙進(jìn)行二叉樹搜索,從而將一個(gè)龐大且復(fù)雜
    發(fā)表于 11-17 14:09 ?21次下載

    基于二叉樹的時(shí)序電路測試序列設(shè)計(jì)

    為了實(shí)現(xiàn)時(shí)序電路狀態(tài)驗(yàn)證和故障檢測,需要事先設(shè)計(jì)一個(gè)輸入測試序列。基于二叉樹節(jié)點(diǎn)和樹枝的特性,建立時(shí)序電路狀態(tài)二叉樹,按照電路二叉樹節(jié)點(diǎn)(狀態(tài))與樹枝(輸入)的層次邏輯
    發(fā)表于 07-12 13:57 ?0次下載
    基于<b class='flag-5'>二叉樹</b>的時(shí)序電路測試序列設(shè)計(jì)

    二叉樹層次遍歷算法的驗(yàn)證

    實(shí)現(xiàn)二叉樹的層次遍歷算法,并對用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”創(chuàng)建的二叉樹進(jìn)行測試。
    發(fā)表于 11-28 01:05 ?2023次閱讀
    <b class='flag-5'>二叉樹</b>層次遍歷<b class='flag-5'>算法</b>的驗(yàn)證

    二叉樹,一種基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型

    然后我們再定義一棵深度也為 3 的二叉樹,該二叉樹的 n 個(gè)結(jié)點(diǎn)(n≤7),當(dāng)從 1 到 n 的每個(gè)結(jié)點(diǎn)都與上圖中的編號結(jié)點(diǎn)一一對應(yīng)時(shí),這二叉樹就稱為完全二叉樹
    的頭像 發(fā)表于 04-13 10:48 ?4173次閱讀
    <b class='flag-5'>二叉樹</b>,一種基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型

    詳解電源二叉樹到底是什么

    作為數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ),分很多種,像 AVL 、紅黑、二叉搜索....今天我想分享的是關(guān)于二叉樹
    的頭像 發(fā)表于 06-06 15:05 ?9779次閱讀
    詳解電源<b class='flag-5'>二叉樹</b>到底是什么

    二叉樹操作的相關(guān)知識和代碼詳解

    是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學(xué)習(xí)的難點(diǎn)。在面試環(huán)節(jié)中,二叉樹也是必考的模塊。本文主要講二叉樹操作的相關(guān)知識,梳理面試??嫉膬?nèi)容。請大家跟隨小編一起來復(fù)習(xí)吧。 本篇針對面
    的頭像 發(fā)表于 12-12 11:04 ?1947次閱讀
    <b class='flag-5'>二叉樹</b>操作的相關(guān)知識和代碼詳解

    二叉樹的前序遍歷非遞歸實(shí)現(xiàn)

    我們之前說了二叉樹基礎(chǔ)及二叉的幾種遍歷方式及練習(xí)題,今天我們來看一下二叉樹的前序遍歷非遞歸實(shí)現(xiàn)。 前序遍歷的順序是, 對于中的某節(jié)點(diǎn),先遍歷該節(jié)點(diǎn),然后再遍歷其左子樹,最后遍歷其右子
    的頭像 發(fā)表于 05-28 13:59 ?1857次閱讀

    數(shù)據(jù)結(jié)構(gòu)與算法分析中的二叉樹與堆有關(guān)知識匯總

    該資料包括數(shù)據(jù)結(jié)構(gòu)與算法分析中的二叉樹與堆有關(guān)的一些知識
    發(fā)表于 11-03 09:37 ?0次下載

    C語言數(shù)據(jù)結(jié)構(gòu):什么是二叉樹?

    完全二叉樹:完全二叉樹是效率很高的數(shù)據(jù)結(jié)構(gòu)。對于深度為K,有n個(gè)節(jié)點(diǎn)的二叉樹,當(dāng)且僅當(dāng)每一個(gè)節(jié)點(diǎn)都與深度為K的滿二叉樹中編號從1至n的節(jié)點(diǎn)一一對應(yīng)時(shí),稱為完全
    的頭像 發(fā)表于 04-21 16:20 ?2325次閱讀

    怎么就能構(gòu)造成二叉樹呢?

    一直跟著公眾號學(xué)算法的錄友 應(yīng)該知道,我在二叉樹:構(gòu)造二叉樹登場!,已經(jīng)講過,只有 中序與后序 和 中序和前序 可以確定一顆唯一的二叉樹。前序和后序是不能確定唯一的
    的頭像 發(fā)表于 07-14 11:20 ?1382次閱讀

    使用C語言代碼實(shí)現(xiàn)平衡二叉樹

    這篇博客主要總結(jié)平衡二叉樹,所以,二叉排序樹知識不會提及,但是會用到。
    的頭像 發(fā)表于 09-21 11:00 ?965次閱讀

    二叉樹的代碼實(shí)現(xiàn)

    二叉樹的主要操作有遍歷,例如有先序遍歷、中序遍歷、后序遍歷。在遍歷之前,就是創(chuàng)建一棵二叉樹,當(dāng)然,還需要有刪除二叉樹算法
    的頭像 發(fā)表于 01-18 10:41 ?1118次閱讀
    <b class='flag-5'>二叉樹</b>的代碼實(shí)現(xiàn)

    C++構(gòu)建并復(fù)制二叉樹

    使用C++構(gòu)建一個(gè)二叉樹并復(fù)制、輸出。
    的頭像 發(fā)表于 01-10 15:17 ?903次閱讀
    C++構(gòu)建并復(fù)制<b class='flag-5'>二叉樹</b>

    C++自定義二叉樹并輸出二叉樹圖形

    使用C++構(gòu)建一個(gè)二叉樹并輸出。
    的頭像 發(fā)表于 01-10 16:29 ?1535次閱讀
    C++自定義<b class='flag-5'>二叉樹</b>并輸出<b class='flag-5'>二叉樹</b>圖形