
使用這些基本 REST API 最佳實踐構建出色的 API
GNN簡介:
論文《Graph neural networks: A review of methods and applications》
GNN是一類用于處理圖數據的深度學習模型,能夠捕捉節點間的依賴關系。它們在多個領域表現出色,如社交網絡分析、物理系統建模、蛋白質接口預測和疾病分類。
GNN的設計流程:
圖神經網絡(GNN)設計流程分為4步,包括找到圖結構、指定圖類型和規模、設計損失函數以及使用計算模塊構建模型。
具體設計流程如下:
GNN的核心模塊:
在圖神經網絡(GNN)中,計算模塊是模型的核心,它定義了節點之間信息的傳遞和聚合方式。
在圖神經網絡(GNN)中,關鍵的計算模塊包括:
詳細了解圖神經網絡GNN:神經網絡算法 – 一文搞懂GNN(圖神經網絡)
Transformer是一種基于自注意力機制的深度學習模型,最初是為了解決自然語言處理中的序列到序列(sequence-to-sequence)問題而設計的。
Transformer簡介:論文《Attention Is All You Need》
由于Transformer強大的性能,Transformer模型及其變體已經被廣泛應用于各種自然語言處理任務,如機器翻譯、文本摘要、問答系統等。
注意力機制:注意力機制是一種允許模型在處理信息時專注于關鍵部分,忽略不相關信息,從而提高處理效率和準確性的機制。它模仿了人類視覺處理信息時選擇性關注的特點。
當人類的視覺機制識別一個場景時,通常不會全面掃描整個場景,而是根據興趣或需求集中關注特定的部分,如在這張圖中,我們首先會注意到動物的臉部,正如注意力圖所示,顏色更深的區域通常是我們最先注意到的部分,從而初步判斷這可能是一只狼。
注意力機制通過查詢(Q)匹配鍵(K)計算注意力分數(向量點乘并調整),將分數轉換為權重后加權值(V)矩陣,得到最終注意力向量。
注意力分數是量化注意力機制中某一部分信息被關注程度的數值,反映了信息在注意力機制中的重要性。
在Transformer架構中,有3種不同的注意力層:
詳細了解Transformer中的三種注意力機制:神經網絡算法 – 一文搞懂Transformer中的三種注意力機制Transformer的核心組件:Transformer模型包含輸入嵌入、位置編碼、多頭注意力、殘差連接和層歸一化、帶掩碼的多頭注意力以及前饋網絡等組件。
Transformer的架構:
Transformer遵循編碼器-解碼器總體架構,使用堆疊的自注意力機制和逐位置的全連接層,分別用于編碼器和解碼器,如圖中的左半部分和右半部分所示。
Encoder編碼器:Transformer的編碼器由6個相同的層組成,每個層包括兩個子層:一個多頭自注意力層和一個逐位置的前饋神經網絡。在每個子層之后,都會使用殘差連接和層歸一化操作,這些操作統稱為Add&Norm。這樣的結構幫助編碼器捕獲輸入序列中所有位置的依賴關系。
Decoder解碼器:Transformer的解碼器由6個相同的層組成,每層包含三個子層:掩蔽自注意力層、Encoder-Decoder注意力層和逐位置的前饋神經網絡。每個子層后都有殘差連接和層歸一化操作,簡稱Add&Norm。這樣的結構確保解碼器在生成序列時,能夠考慮到之前的輸出,并避免未來信息的影響。
編碼器與解碼器的本質區別:在于Self-Attention的Mask機制。
詳細了解Transformer:神經網絡算法 – 一文搞懂Transformer
圖神經網絡(GNN)和Transformer的結合是近年來的研究熱點。這類結合不僅能夠讓兩者發揮各自的優勢,還能推動模型的創新,提高處理圖數據的效率和性能。
具體點講,通過利用Transformer,我們可以擴展GNN的感受野,包括那些距離中心節點較遠的相關節點。相對的,GNN也可以幫助Transformer捕捉復雜的圖拓撲信息,并從相鄰區域高效地聚合相關節點。
Transformer的局限:
盡管 Transformer 在自然語言處理和計算機視覺方面取得了巨大成功,但由于兩個重要原因,它很難推廣到中大規模圖數據。
GNN的局限:
在圖表示學習中,圖神經網絡(GNN)可以融合圖結構和節點屬性,但感受野有限。
TransGNN:
是否可以將 Transformer 和 GNN 結合起來,互相幫助?論文《Can Transformer and GNN Help Each Other?》提出了一種名為 TransGNN 的新模型,其中 Transformer 層和 GNN 層交替使用以相互改進。
具體來說,為了擴大感受野并解開邊的信息聚合,論文建議使用 Transformer 聚合更多相關節點的信息,以改善 GNN 的消息傳遞。此外,為了捕獲圖結構信息,使用位置編碼并利用GNN層將結構融合為節點屬性,從而改進了圖數據中的Transformer。
TransGNN的架構圖:
TransGNN 的框架如圖所示:
TransGNN的核心模塊:
TransGNN框架是一個結合了注意力機制、位置編碼和圖神經網絡(GNN)的深度學習模型。該框架主要包括三個核心模塊:
TransGNN Module:
Transformer擅長聚合遠距離的相關信息,而GNN則擅長捕捉圖的結構信息。結合這兩個機制,可以構建出一個更強大、更全面的圖神經網絡模型。
以下是TransGNN模塊的三個核心子模塊的概述:
推薦系統的重要性:
推薦系統在現代在線平臺中至關重要,因為它們有效解決了信息過載的問題,通過為用戶推薦有用的內容提高了用戶體驗。協同過濾(CF)與用戶和項目信息編碼:協同過濾是推薦系統的核心方法之一,其中對用戶和項目信息的有效編碼對于準確推斷用戶偏好至關重要。近年來,用于建模圖結構數據的圖神經網絡(GNN)的發展迅速增多。一個有前途的方向是沿著用戶-項目交互執行信息傳播,以基于遞歸聚合模式完善用戶嵌入。
圖神經網絡(GNN)的挑戰:
通過將GNN和Transformer結合,可以充分利用兩者的優勢,同時彌補各自的不足,從而構建更強大、更全面的推薦系統模型。這種結合可以擴展GNN的感受野,同時利用Transformer的全局聚合能力來捕獲長期依賴關系。TransGNN論文論文《TransGNN: Harnessing the Collaborative Power of Transformers?and Graph Neural Networks for Recommender Systems》
TransGNN論文架構:
TransGNN被應用于多個推薦系統數據集,并與其他先進的推薦算法進行了比較。以下是一些具體的案例和數據結果:
數據集:
研究團隊在五個公共數據集上進行了實驗,這些數據集涵蓋了不同的推薦場景,如電影推薦、商品推薦等。這些數據集包含了豐富的用戶-項目交互信息,以及項目的內容信息和圖結構信息。
實驗設置:
為了驗證TransGNN的有效性,研究團隊將TransGNN與多個基線模型進行了比較,包括基于GNN的模型(如GCN、GraphSAGE)和基于Transformer的模型(如Transformer-Rec)。此外,還考慮了其他先進的推薦算法,如矩陣分解(MF)和深度神經網絡(DNN)。
實驗結果:
文章轉自微信公眾號@架構師帶你玩轉AI