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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于圖神經(jīng)網(wǎng)絡的圖異常值檢測庫介紹

TigerGraph ? 來源:TigerGraph ? 作者:Yingtong Dou ? 2022-12-08 10:34 ? 次閱讀

文章具體介紹了圖神經(jīng)網(wǎng)絡的基本機制,以及圖上無監(jiān)督節(jié)點異常值檢測的概念和方法。同時他還分享了在這方面的一些發(fā)現(xiàn)和想法。最后,我們將介紹一個基于 GNN 的圖異常值檢測庫 (PyGOD) 及其與 TigerGraph機器學習工作臺的集成。

圖神經(jīng)網(wǎng)絡 (GNN)

我們先簡單了解一下現(xiàn)在熱門的圖神經(jīng)網(wǎng)絡 (GNN),這已經(jīng)成為圖數(shù)據(jù)挖掘的一種主導且強大的工具。與圖像數(shù)據(jù)的 CNN 相似,GNN 是一種神經(jīng)網(wǎng)絡,旨在對圖結構進行編碼并通過迭代聚合其鄰居的嵌入來學習節(jié)點的嵌入 (見圖 1)。大多數(shù) GNN 都持有同源性假設,即相連的節(jié)點是相似的;因此,聚合鄰居的信息將有助于學習信息量更大的中心節(jié)點表示。中心節(jié)點表示可用于節(jié)點分類、鏈接預測和異常值檢測 (OD) 等下游任務。

ed7d2b2c-761e-11ed-8abf-dac502259ad0.png

圖1:圖神經(jīng)網(wǎng)絡

圖上的異常值

異常值是與其余數(shù)據(jù)顯著不同的樣本。作為數(shù)據(jù)挖掘研究的主流方向,異常值檢測在行業(yè)中也至關重要?,F(xiàn)實世界數(shù)據(jù)中的異常值通常表示欺詐行為、系統(tǒng)錯誤、網(wǎng)絡入侵或網(wǎng)絡故障。這些異常值可能導致重大的財務損失和安全問題。

除了傳統(tǒng)表格數(shù)據(jù)中的異常值外,圖模型還可以提高異常值檢測的性能,特別是當數(shù)據(jù)實例具有共同的屬性和接近性時。社交平臺的機器人賬戶單個看可能沒什么問題(如圖 2 所示),但它的轉發(fā)行為密集相連,從圖的角度來看容易發(fā)現(xiàn)其中的異常。

ed9d5d0c-761e-11ed-8abf-dac502259ad0.png

圖2:圖上的異常值

在圖異常值檢測中,以前的文獻已經(jīng)定義并研究了兩種典型的異常值類型。(1) 結構異常值是指密集相連的節(jié)點,相反則是稀疏連接的常規(guī)節(jié)點,例如前面提到的社交網(wǎng)絡問題(圖 2 所示)。(2) 上下文異常值是其屬性與相鄰節(jié)點明顯不同的節(jié)點。它的定義與經(jīng)典的基于接近度的異常值檢測方法中的異常值假設相似。上下文異常值描繪了與圖中鄰居不同的節(jié)點,例如計算機網(wǎng)絡中的受損設備。

edd2aa8e-761e-11ed-8abf-dac502259ad0.png

圖3:兩種典型的異常值類型

基于 GNN 的節(jié)點異常值檢測

在 GNN 取得進展之前,大家就已經(jīng)利用矩陣分解、密度聚類和關系學習方法來編碼圖信息并識別異常值。其他異常值檢測方法大家可以參考文中鏈接(https://arxiv.org/abs/1404.4679)。

回到 GNN,在獲得節(jié)點表示之后,GNN 會使用不同的損失函數(shù)(目標函數(shù))進行優(yōu)化,用于不同的任務。例如,使用交叉熵損失來優(yōu)化 GNN 用于節(jié)點分類任務。

對于節(jié)點異常值檢測,常規(guī)做法是將 GNNs 集成到自動編碼器中,將 GNN 用作編碼器和解碼器。這種神經(jīng)網(wǎng)絡架構稱為圖自動編碼器(簡稱:GAE)。與香草自編碼器一樣,GAE 通過重建圖數(shù)據(jù)來編碼圖信息,即重建節(jié)點特征和邊。在異常值檢測方面,GAE 可用于編碼正常圖信息,具有高重構誤差的節(jié)點將表明其異常程度。圖4就是使用 GAE 進行節(jié)點異常值檢測的第一種模型。

edf8ca7a-761e-11ed-8abf-dac502259ad0.png

圖4:The OD framework of DOMINANT (SDM’ 19)

需要注意的是,使用 GAE 進行異常值檢測對圖數(shù)據(jù)有兩個隱含假設:(1)異常值僅占據(jù)少量數(shù)據(jù),而大部分數(shù)據(jù)是正常的;(2)正常數(shù)據(jù)具有共同的屬性和結構特征。在此假設下,GAE 可以用來檢測結構和上下文異常值,近兩年來也已經(jīng)有了許多 GAE 的變體。

基準測試的發(fā)現(xiàn)

接下來,跟大家分享一些基于 GNN 的節(jié)點異常值檢測方法進行基準測試的一些發(fā)現(xiàn):

1. 許多現(xiàn)有的基于 GNN 的異常值檢測方法都是基于合成異常值的相對樸素的假設來開發(fā)的;因此,許多方法在檢測有機異常值時效果并不理想。有機異常值通常非常復雜,其分布也可能多種多樣。但是,我們的基準測試表明,如果有機異常值遵循預定義的異常類型,則基于 GNN 的異常值檢測方法將是有效的。

2. 和大多數(shù)深度學習方法一樣,基于 GNN 的異常值檢測方法在小圖中效果都不是最優(yōu)的。與此同時,大多數(shù)基于 GNN 的異常值檢測方法在擁有數(shù)千萬個節(jié)點的大圖中都不具有可伸縮性。

3. 無監(jiān)督的基于 GNN 的異常值檢測方法的性能嚴重依賴于超參數(shù),而在無監(jiān)督學習中的超參數(shù)調整仍然是機器學習研究和實踐中的挑戰(zhàn)。

4. 大多數(shù)基于 GNN 的異常值檢測方法更傾向于特定類型的異常值。平衡和優(yōu)化每種異常值類型的檢測性能并不容易。同時,在預期中沒有方法具有一致的性能或者在不同的數(shù)據(jù)集上優(yōu)于其他方法。

基于圖的異常值檢測指南

基于上述發(fā)現(xiàn),由于其可擴展性約束,我們認為基于 GNN 的異常值檢測與工業(yè)應用之間仍存在差距。開發(fā)基于 GNN 的自動化、可擴展和任務導向的異常值檢測方法將是一個具有發(fā)展?jié)摿Φ姆较?。至于到底是應用基?GNN 的異常值檢測或基于圖的異常值檢測,作者也給出了應用指南(圖5),以方便從業(yè)者參考。我們簡單跟大家分享幾點,例如,是否采用圖?可以看異常實體是否具有共同的特性,異常實體是否具有集群行為,還有就是成本與效益之間的權衡。而是否采用GNN?則需要考慮基礎設施,功能可用性和功能類型,還有與其他模塊和任務集成。具體指南圖大家可以關注我們的微信公眾號查看正文。

ee0fe76e-761e-11ed-8abf-dac502259ad0.png

圖5:基于圖的異常值檢測指南

從上述指南中,作者強調了數(shù)據(jù)探索分析和精確問題定義對于應用基于圖的異常值檢測是至關重要的。

PyGOD 和TigerGraph ML Workbench

最后,作者還跟大家介紹了 PyGOD,這是一個與圖異常值檢測基準測試一起開發(fā)的 Python 庫。該庫基于 PyTorch 和 PyTorch Geometric (PyG) 開發(fā),其 API 樣式遵循流行的機器學習庫 scikit-learn,可以很容易地使用五行代碼檢測圖中的異常點:

ee3ace16-761e-11ed-8abf-dac502259ad0.png

PyGOD是一個不斷發(fā)展的Python庫,旨在涵蓋更多的檢測功能和更高的可擴展性。TigerGraph ML Workbench能夠將圖數(shù)據(jù)從TigerGraph DB轉換為PyG數(shù)據(jù)對象,因此PyGOD可以在TigerGraph中輕松安裝和測試。

ee6ad408-761e-11ed-8abf-dac502259ad0.png

審核編輯:郭婷

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

原文標題:Vol. 38 基于圖神經(jīng)網(wǎng)絡的圖異常值檢測:簡介

文章出處:【微信號:TigerGraph,微信公眾號:TigerGraph】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法

    在上一篇文章中,我們介紹了傳統(tǒng)機器學習的基礎知識和多種算法。在本文中,我們會介紹人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法,供各位老師選擇。 01 人工
    的頭像 發(fā)表于 01-09 10:24 ?185次閱讀
    人工<b class='flag-5'>神經(jīng)網(wǎng)絡</b>的原理和多種<b class='flag-5'>神經(jīng)網(wǎng)絡</b>架構方法

    LSTM神經(jīng)網(wǎng)絡的訓練數(shù)據(jù)準備方法

    : 一、數(shù)據(jù)收集與清洗 數(shù)據(jù)收集 : 根據(jù)LSTM神經(jīng)網(wǎng)絡的應用場景(如時間序列預測、自然語言處理等),收集相關的時間序列數(shù)據(jù)或文本數(shù)據(jù)。 數(shù)據(jù)可以來自數(shù)據(jù)、日志文件、傳感器讀數(shù)、用戶行為記錄等多種來源。 數(shù)據(jù)清洗 : 去除數(shù)據(jù)中的噪聲和
    的頭像 發(fā)表于 11-13 10:08 ?754次閱讀

    BP神經(jīng)網(wǎng)絡和人工神經(jīng)網(wǎng)絡的區(qū)別

    BP神經(jīng)網(wǎng)絡和人工神經(jīng)網(wǎng)絡(Artificial Neural Networks,簡稱ANNs)之間的關系與區(qū)別,是神經(jīng)網(wǎng)絡領域中一個基礎且重要的話題。本文將從定義、結構、算法、應用及未來發(fā)展等多個方面,詳細闡述BP
    的頭像 發(fā)表于 07-10 15:20 ?1218次閱讀

    基于神經(jīng)網(wǎng)絡的全息生成算法

    全息生成技術作為光學與計算機科學交叉領域的重要研究方向,近年來隨著神經(jīng)網(wǎng)絡技術的飛速發(fā)展,取得了顯著進展。基于神經(jīng)網(wǎng)絡的全息生成算法,以其強大的非線性擬合能力和高效的計算性能,為全
    的頭像 發(fā)表于 07-09 15:54 ?518次閱讀

    rnn是遞歸神經(jīng)網(wǎng)絡還是循環(huán)神經(jīng)網(wǎng)絡

    RNN(Recurrent Neural Network)是循環(huán)神經(jīng)網(wǎng)絡,而非遞歸神經(jīng)網(wǎng)絡。循環(huán)神經(jīng)網(wǎng)絡是一種具有時間序列特性的神經(jīng)網(wǎng)絡,能夠處理序列數(shù)據(jù),具有記憶功能。以下是關于循環(huán)
    的頭像 發(fā)表于 07-05 09:52 ?611次閱讀

    遞歸神經(jīng)網(wǎng)絡是循環(huán)神經(jīng)網(wǎng)絡

    遞歸神經(jīng)網(wǎng)絡(Recurrent Neural Network,簡稱RNN)和循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,簡稱RNN)實際上是同一個概念,只是不同的翻譯方式
    的頭像 發(fā)表于 07-04 14:54 ?828次閱讀

    反向傳播神經(jīng)網(wǎng)絡和bp神經(jīng)網(wǎng)絡的區(qū)別

    反向傳播神經(jīng)網(wǎng)絡(Backpropagation Neural Network,簡稱BP神經(jīng)網(wǎng)絡)是一種多層前饋神經(jīng)網(wǎng)絡,它通過反向傳播算法來調整網(wǎng)絡中的權重和偏置,以達到最小化誤差的
    的頭像 發(fā)表于 07-03 11:00 ?845次閱讀

    bp神經(jīng)網(wǎng)絡和卷積神經(jīng)網(wǎng)絡區(qū)別是什么

    BP神經(jīng)網(wǎng)絡(Backpropagation Neural Network)和卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,簡稱CNN)是兩種不同類型的人工神經(jīng)網(wǎng)絡,它們在
    的頭像 發(fā)表于 07-03 10:12 ?1290次閱讀

    卷積神經(jīng)網(wǎng)絡的一般步驟是什么

    數(shù)據(jù)預處理、構建網(wǎng)絡結構、前向傳播、反向傳播、參數(shù)更新、模型評估和應用等環(huán)節(jié)。 數(shù)據(jù)預處理 數(shù)據(jù)預處理是卷積神經(jīng)網(wǎng)絡訓練的第一步,主要包括數(shù)據(jù)清洗、數(shù)據(jù)增強、歸一化等操作。 1.1 數(shù)據(jù)清洗 數(shù)據(jù)清洗是指去除數(shù)據(jù)集中的噪聲、異常值
    的頭像 發(fā)表于 07-03 09:11 ?1214次閱讀

    卷積神經(jīng)網(wǎng)絡和bp神經(jīng)網(wǎng)絡的區(qū)別

    卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,簡稱CNN)和BP神經(jīng)網(wǎng)絡(Backpropagation Neural Networks,簡稱BPNN)是兩種
    的頭像 發(fā)表于 07-02 14:24 ?4520次閱讀

    建立神經(jīng)網(wǎng)絡模型的三個步驟

    建立神經(jīng)網(wǎng)絡模型是一個復雜的過程,涉及到多個步驟和細節(jié)。以下是對建立神經(jīng)網(wǎng)絡模型的三個主要步驟的介紹: 第一步:數(shù)據(jù)準備 1.1 數(shù)據(jù)收集 數(shù)據(jù)是神經(jīng)網(wǎng)絡的基礎。首先,你需要收集足夠的
    的頭像 發(fā)表于 07-02 11:20 ?1065次閱讀

    人工神經(jīng)網(wǎng)絡的工作原理是什么

    和學習。本文將詳細介紹人工神經(jīng)網(wǎng)絡的工作原理,包括其基本概念、結構、學習算法和應用領域。 基本概念 1.1 神經(jīng)神經(jīng)元是人工神經(jīng)網(wǎng)絡的基
    的頭像 發(fā)表于 07-02 10:06 ?1370次閱讀

    神經(jīng)網(wǎng)絡架構有哪些

    、語音識別、自然語言處理等多個領域。本文將對幾種主要的神經(jīng)網(wǎng)絡架構進行詳細介紹,包括前饋神經(jīng)網(wǎng)絡、循環(huán)神經(jīng)網(wǎng)絡、卷積神經(jīng)網(wǎng)絡、生成對抗
    的頭像 發(fā)表于 07-01 14:16 ?807次閱讀

    利用深度循環(huán)神經(jīng)網(wǎng)絡對心電降噪

    具體的軟硬件實現(xiàn)點擊 http://mcu-ai.com/ MCU-AI技術網(wǎng)頁_MCU-AI 我們提出了一種利用由長短期記憶 (LSTM) 單元構建的深度循環(huán)神經(jīng)網(wǎng)絡來降 噪心電信號 (ECG
    發(fā)表于 05-15 14:42

    了解如何使用PyTorch構建神經(jīng)網(wǎng)絡

    神經(jīng)網(wǎng)絡直接應用于數(shù)據(jù)集,您可以訓練它們以預測節(jié)點、邊緣和與相關的任務。它用于和節(jié)點分類、鏈路預測、
    發(fā)表于 02-21 12:19 ?804次閱讀
    了解如何使用PyTorch構建<b class='flag-5'>圖</b><b class='flag-5'>神經(jīng)網(wǎng)絡</b>