色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

GNN教程:GraghSAGE算法細節詳解!

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:深度學習自然語言 ? 2020-11-24 09:32 ? 次閱讀

引言

本文為GNN教程的第三篇文章 【GraghSAGE算法】,在GCN的博文中我們重點討論了圖神經網絡的逐層傳播公式是如何推導的,然而,GCN的訓練方式需要將鄰接矩陣和特征矩陣一起放到內存或者顯存里,在大規模圖數據上是不可取的。 其次,GCN在訓練時需要知道整個圖的結構信息(包括待預測的節點), 這在現實某些任務中也不能實現(比如用今天訓練的圖模型預測明天的數據,那么明天的節點是拿不到的)。GraphSAGE的出現就是為了解決這樣的問題,這篇博文中我們將會詳細得討論它。

一、Inductive learning v.s. Transductive learning

首先我們介紹一下什么是inductive learning。與其他類型的數據不同,圖數據中的每一個節點可以通過邊的關系利用其他節點的信息,這樣就產生了一個問題,如果訓練集上的節點通過邊關聯到了預測集或者驗證集的節點,那么在訓練的時候能否用它們的信息呢? 如果訓練時用到了測試集或驗證集樣本的信息(或者說,測試集和驗證集在訓練的時候是可見的), 我們把這種學習方式叫做transductive learning, 反之,稱為inductive learning。

顯然,我們所處理的大多數機器學習問題都是inductive learning, 因為我們刻意的將樣本集分為訓練/驗證/測試,并且訓練的時候只用訓練樣本。然而,在GCN中,訓練節點收集鄰居信息的時候,用到了測試或者驗證樣本,所以它是transductive的。

二、概述

GraphSAGE是一個inductive框架,在具體實現中,訓練時它僅僅保留訓練樣本到訓練樣本的邊。inductive learning 的優點是可以利用已知節點的信息為未知節點生成Embedding. GraphSAGE 取自 Graph SAmple and aggreGatE, SAmple指如何對鄰居個數進行采樣。aggreGatE指拿到鄰居的embedding之后如何匯聚這些embedding以更新自己的embedding信息。下圖展示了GraphSAGE學習的一個過程:

對鄰居采樣

采樣后的鄰居embedding傳到節點上來,并使用一個聚合函數聚合這些鄰居信息以更新節點的embedding

根據更新后的embedding預測節點的標簽

三、算法細節

3.1 節點 Embedding 生成(即:前向傳播)算法

這一節討論的是如何給圖中的節點生成(或者說更新)embedding, 假設我們已經完成了GraphSAGE的訓練,因此模型所有的參數(parameters)都已知了。具體來說,這些參數包括個聚合器(見下圖算法第4行)中的參數, 這些聚合器被用來將鄰居embedding信息聚合到節點上,以及一系列的權重矩陣(下圖算法第5行), 這些權值矩陣被用作在模型層與層之間傳播embedding的時候做非線性變換。

下面的算法描述了我們是怎么做前向傳播的:

算法的主要部分為:

(line 1)初始化每個節點embedding為節點的特征向量

(line 3)對于每一個節點

(line 4)拿到它采樣后的鄰居的embedding并將其聚合,這里表示對鄰居采樣

(line 5)根據聚合后的鄰居embedding()和自身embedding()通過一個非線性變換()更新自身embedding.

算法里的這個比較難理解,下面單獨來說他,之前提到過,它既是聚合器的數量,也是權重矩陣的數量,還是網絡的層數,這是因為每一層網絡中聚合器和權重矩陣是共享的。

網絡的層數可以理解為需要最大訪問到的鄰居的跳數(hops),比如在figure 1中,紅色節點的更新拿到了它一、二跳鄰居的信息,那么網絡層數就是2。

為了更新紅色節點,首先在第一層()我們會將藍色節點的信息聚合到紅色節點上,將綠色節點的信息聚合到藍色節點上。在第二層()紅色節點的embedding被再次更新,不過這次用的是更新后的藍色節點embedding,這樣就保證了紅色節點更新后的embedding包括藍色和綠色節點的信息。

3.2 采樣 (SAmple) 算法

GraphSAGE采用了定長抽樣的方法,具體來說,定義需要的鄰居個數, 然后采用有放回的重采樣/負采樣方法達到,。保證每個節點(采樣后的)鄰居個數一致是為了把多個節點以及他們的鄰居拼成Tensor送到GPU中進行批訓練。

3.3 聚合器 (Aggregator) 架構

GraphSAGE 提供了多種聚合器,實驗中效果最好的平均聚合器(mean aggregator),平均聚合器的思慮很簡單,每個維度取對鄰居embedding相應維度的均值,這個和GCN的做法基本一致(GCN實際上用的是求和):

舉個簡單例子,比如一個節點的3個鄰居的embedding分別為 ,按照每一維分別求均值就得到了聚合后的鄰居embedding為.

論文中還闡述了另外兩種aggregator:LSTM aggregator和Pooling aggregator, 有興趣的可以去論文中看下。

3.4 參數學習

到此為止,整個模型的架構就講完了,那么GraphSAGE是如何學習聚合器的參數以及權重變量的呢? 在有監督的情況下,可以使用每個節點的預測label和真實label的交叉熵作為損失函數。在無監督的情況下,可以假設相鄰的節點的輸出embeding應當盡可能相近,因此可以設計出如下的損失函數:

其中是節點的輸出embedding,是節點的鄰居(這里鄰居是廣義的,比如說如果和在一個定長的隨機游走中可達,那么我們也認為他們相鄰),是負采樣分布,是負采樣的樣本數量,所謂負采樣指我們還需要一批不是鄰居的節點作為負樣本,那么上面這個式子的意思是相鄰節點的embedding的相似度盡量大的情況下保證不相鄰節點的embedding的期望相似度盡可能小。

四、后話

GraphSAGE采用了采樣的機制,克服了GCN訓練時內存和顯存上的限制,使得圖模型可以應用到大規模的圖結構數據中,是目前幾乎所有工業上圖模型的雛形。然而,每個節點這么多鄰居,采樣能否考慮到鄰居的相對重要性呢,或者我們在聚合計算中能否考慮到鄰居的相對重要性? 這個問題在我們的下一篇博文Graph Attentioin Networks中做了詳細的討論。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4773

    瀏覽量

    100885
  • 算法
    +關注

    關注

    23

    文章

    4620

    瀏覽量

    93041
  • 模型
    +關注

    關注

    1

    文章

    3260

    瀏覽量

    48910

原文標題:GNN教程:GraghSAGE算法細節詳解!

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    詳解MySQL多實例部署

    詳解MySQL多實例部署
    的頭像 發表于 11-11 11:10 ?274次閱讀

    詳解kubectl常用命令

    詳解kubectl常用命令
    的頭像 發表于 11-05 15:39 ?274次閱讀
    <b class='flag-5'>詳解</b>kubectl常用命令

    常用的ADC濾波算法有哪些

    ADC(模數轉換器)濾波算法在信號處理中起著至關重要的作用,它們能夠幫助我們提取出有用的信號,同時濾除噪聲和干擾。以下是常用的ADC濾波算法詳解,這些算法各具特色,適用于不同的應用場景
    的頭像 發表于 10-08 14:35 ?421次閱讀

    PRU開發詳解

    電子發燒友網站提供《PRU開發詳解.pdf》資料免費下載
    發表于 09-05 11:27 ?0次下載
    PRU開發<b class='flag-5'>詳解</b>

    中偉視界:智能監控和預警,靜止超時AI算法如何提升非煤礦山安全?

    本文詳細介紹了靜止超時AI算法在非煤礦山的工作原理、技術實現細節和應用場景,并分析了其在安全管理中的實際效果。通過智能監控和預警,靜止超時AI算法能夠提高礦山的安全防控水平,提升管理效率,降低運營
    的頭像 發表于 07-14 11:29 ?1106次閱讀
    中偉視界:智能監控和預警,靜止超時AI<b class='flag-5'>算法</b>如何提升非煤礦山安全?

    中偉視界:提升礦山安全生產水平,人員入井智能分析算法技術細節解析

    本文詳細介紹了人員入井智能分析算法在智慧礦山建設中的工作原理、功能特點及應用。通過實時監控和數據上報,該算法提高了礦山的安全管理水平和生產效率,增強了監管能力。未來,算法的發展方向包括優化算法
    的頭像 發表于 07-11 13:16 ?272次閱讀

    機器學習算法原理詳解

    機器學習作為人工智能的一個重要分支,其目標是通過讓計算機自動從數據中學習并改進其性能,而無需進行明確的編程。本文將深入解讀幾種常見的機器學習算法原理,包括線性回歸、邏輯回歸、支持向量機(SVM)、決策樹和K近鄰(KNN)算法,探討它們的理論基礎、
    的頭像 發表于 07-02 11:25 ?1130次閱讀

    BLDC電機控制算法詳解

    算法。本文將詳細介紹BLDC電機的控制算法,包括電速算法、電流環控制算法、磁場導向控制算法等,并探討其原理、特點和應用。
    的頭像 發表于 06-14 10:49 ?1117次閱讀

    細節控必備!東芝“顯微屏”電視Z700NF,打造專精細節的“顯微屏”電視

    對音畫細節的打磨,旨在解決用戶的觀影痛點,提供極致還原的細節視聽享受。 1300nits Mini LED?亮度突破,細節盡現 用戶在觀看電視時,常因亮度不足而錯失畫面的細微之處。東芝電視Z700NF采用1300nits Min
    的頭像 發表于 04-19 13:31 ?344次閱讀

    VC++串口通信詳解

    電子發燒友網站提供《VC++串口通信詳解.doc》資料免費下載
    發表于 03-24 09:36 ?0次下載

    EMI電磁干擾:原理、影響及解決方法詳解

    EMI電磁干擾:原理、影響及解決方法詳解?|深圳比創達電子
    的頭像 發表于 03-21 10:02 ?898次閱讀
    EMI電磁干擾:原理、影響及解決方法<b class='flag-5'>詳解</b>?

    靜電ESD整改:原因、影響與解決方案詳解

    靜電ESD整改:原因、影響與解決方案詳解?|深圳比創達電子
    的頭像 發表于 03-13 10:26 ?934次閱讀
    靜電ESD整改:原因、影響與解決方案<b class='flag-5'>詳解</b>?

    詳解pcb粗糙度測量,分享測量技巧

    詳解pcb粗糙度測量,分享測量技巧
    的頭像 發表于 03-12 11:28 ?1306次閱讀

    DCDC原理詳解

    電子發燒友網站提供《DCDC原理詳解.pptx》資料免費下載
    發表于 03-05 17:18 ?97次下載

    SMT關鍵工序再流焊工藝詳解

    SMT關鍵工序再流焊工藝詳解
    的頭像 發表于 01-09 10:12 ?660次閱讀
    SMT關鍵工序再流焊工藝<b class='flag-5'>詳解</b>
    主站蜘蛛池模板: 亚洲AV午夜福利精品香蕉麻豆| 女人张开腿让男人桶爽免| 久久热最新网站获取3| 日韩精品一区二区中文| 中文字幕人成人乱码亚洲影视 | 午夜影院美女| 古装性艳史电影在线看| 三级黃60分钟| 芳草地社区在线视频| 青草精品国产福利在线视频| abp-146| 美女的避毛| 8090碰成年女人免费碰碰尤物| 久久精视频| 最新无码国产在线视频| 久久视频这有精品63在线国产 | 神马电影院午 夜理论| 国产精品 日韩精品 欧美| 肉奴隷 赤坂丽在线播放| 国产爱豆果冻传媒在线观看| 卫生间被教官做好爽HH视频 | 久久综合视频网站| 最新国自产拍 高清完整版| 美女张开腿让男生桶动态图| 中文字幕人成人乱码亚洲影视S| 久久综合网久久综合| 91福利国产在线观看网站| 牛牛在线视频| 出租屋自拍贵在真实15P| 窝窝色资源站| 精品视频在线播放| 一个人看的WWW高清电影| 久久五月综合婷婷中文云霸高清| 973午夜伦伦电影论片| 日韩成人在线视频| 国产乱码一区二区三区| 野花影院手机在线观看| 男人网站在线| 国产精品亚洲AV色欲在线观看| 夜色帮首页| 日本VA在线视频播放|