【机器学习基础】关于异常检测的分享!
作者:趙越,卡內基梅隆大學,Datawhale特邀
作者信息
知乎微調:https://www.zhihu.com/people/breaknever
內容概括
1.什么是異常檢測?
2.異常檢測有什么具體應用?
3.異常檢測的工具概覽?如何用10行Python代碼進行異常檢測?
4.異常檢測算法概覽與主流模型介紹
5.面對各種各樣的模型,如何選擇和調參?
6.未來的異常檢測研究方向
7.異常檢測相關的資源匯總(書籍、講座、代碼、數據等)
異常檢測
什么是異常值、離群點(anomaly)?
異常一般指的是與標準值(或期待值)有偏離的樣本,也就是說跟絕大部分數據“長的不一樣”。
異常檢測的一些特點:
1.異常不一定代表是“壞”的事情,但往往是“有價值”的事情,我們對異常的成因感興趣
2.異常檢測往往是在無監督的模式下完成的—歷史數據中沒有標簽,我們不知道哪些數據是異常。因此無法用監督學習去檢測。
異常檢測的應用:
1.金融行業的反欺詐、信用卡詐騙檢測:把欺詐或者金融風險當做異常
2.罕見病檢測:把罕見病當做異常,比如檢測早發的阿茲海默癥
3.入侵檢測:把網絡流量中的入侵當做異常
4.機器故障檢測:實時監測發現或預測機械故障
5.圖結構、群體檢測:比如檢測疫情的爆發點等
異常檢測的應用
IntelControlFlag:
“基于10億條包含各種錯誤的未標記生產質量代碼的機器學習培訓,ControlFlag得以通過“異常檢測”技術,對傳統編程模式展開篩查。無論使用的是哪種編程語言,它都能夠有效地識別代碼中可能導致任何錯誤的潛在異常。”
AmazonAWSCloudWatch:
“今天,我們將通過一項新功能增強CloudWatch,它將幫助您更有效地使用CloudWatch警報。…我們的用戶可以構建自定義的控制面板,設置警報并依靠CloudWatch來提醒自己影響其應用程序性能或可靠性的問題。”
Google:
“GoogleAnalytics(分析)會選擇一段時期的歷史數據來訓練其預測模型。要檢測每天的異常情況,訓練期為90天。要檢測每周的異常情況,訓練期為32周。”
異常檢測的挑戰
1.大部分情況下是無監督學習,沒有標簽信息可以使用
2.數據是極端不平衡的(異常點僅占總體數據的一小部分),建模難度大
3.檢測方法往往涉及到密度估計,需要進行大量的距離/相似度計算,運算開銷大
4.在實際場景中往往需要實時檢測,這比離線檢測的技術難度更高
5.在實際場景中,我們常常需要同時處理很多案例,運算開銷大
6.解釋性比較差,我們很難給出異常檢測的原因,尤其是在高維數據上。但業務方需要了解異常成因
7.在實際場景中,我們往往有一些檢測的歷史規則,如何與學習模型進行整合
異常檢測工具
Python:
1.PyOD:超過30種算法,從經典模型到深度學習模型一應俱全,和sklearn的用法一致?
2.Scikit-Learn:包含了4種常見的算法,簡單易用
3.TODS:與PyOD類似,包含多種時間序列上的異常檢測算法
Java:
1.ELKI:EnvironmentforDevelopingKDD-ApplicationsSupportedbyIndex-Structures?
2.RapidMiner異常檢測擴展
R:
1.outlierspackage
2.AnomalyDetection
用10行Python代實行異常檢測:
詳細介紹:https://zhuanlan.zhihu.com/p/58313521
異常檢測算法
異常檢測算法可以大致被分為:
1.線性模型(LinearModel):PCA
2.基于相似度的度量的算法(Proximity-basedModel):kNN,LOF,HBOS
3.基于概率的算法(ProbabilisticModel):COPOD
4.集成檢測算法(EnsembleModel):孤立森林(IsolationForest),XGBOD
5.神經網絡算法(NeuralNetworks):自編碼器(AutoEncoder)
評估方法也不能簡單用準確度(accuracy),因為數據的極端不平衡
1.ROC-AUC曲線
2.Precision@Rankk:topk的精準
3.AveragePrecision:平均精準度
主流模型介紹:
如何選擇和合并模型
異常檢測實踐中的技巧
異常檢測落地中的考量
1.不要嘗試一步到位用機器學習模型來代替傳統模型
2.在理想情況下,應該嘗試合并機器學習模型和基于規則的模型
3.可以嘗試用已有的規則模型去解釋異常檢測模型
異常檢測研究方向
本文視頻講解,PPT,趙越的異常檢測資源已匯總(書籍、講座、代碼、數據等)
第 1 步:掃碼關注「Datawhale」公眾號
第 2 步:回復關鍵詞?異常檢測?可獲取
往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載機器學習的數學基礎專輯 獲取本站知識星球優惠券,復制鏈接直接打開: https://t.zsxq.com/qFiUFMV 本站qq群704220115。加入微信群請掃碼:總結
以上是生活随笔為你收集整理的【机器学习基础】关于异常检测的分享!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【CV】目标检测的常用数据处理方法!
- 下一篇: edge浏览器运行不流畅怎么办 提高ed