鄭文琛:基於網絡功能模塊的圖特徵學習 | AI 研習社79期大講堂

2020-12-08 雷鋒網

雷鋒網AI研習社按:圖是一種常見的數據結構,可以被用於許多不同的預測任務。如何從圖數據學習有效特徵是個重要的問題。我們的新概念是從點和邊出發,拓展到更高階的子圖結構(比如路徑、子圖)來幫助圖特徵學習。這些高階的子圖結構通常具有不同的功能,事實上在一起共同構造了整個網絡,所以我們稱這些高階的子圖結構為網絡功能模塊(Network Functional Blocks)。

在這次分享中,嘉賓將用語義相關度搜索(Semantic Proximity Search)作為一個應用例子,來介紹他們最近在探索不同粒度的網絡功能模塊、以進行有效圖特徵學習的一些進展。

分享嘉賓:

鄭文琛,微眾銀行人工智慧項目組專家工程師和副總經理。主要研究方向為結構化數據的特徵學習和遷移學習,已在相關研究領域發表了60餘篇頂級會議和期刊論文,並擁有多項專利和技術。

在圖數據特徵工程的成就獲得國際人工智慧頂級會議 IJCAI 2018 年的 Early Career Spotlight,在遷移學習應用於用戶行為識別的成就獲得國際會議ICCSE 2018年的最佳論文獎。是 Cognitive Computation 雜誌的副主編。同時也是多個頂級人工智慧國際會議的編委會委員和研討會的組織者。

公開課回放地址:

http://www.mooc.ai/open/course/560?=Leiphone 

分享主題:基於網絡功能模塊的圖特徵學習

分享提綱:

  • 圖特徵學習簡介。

  • 網絡功能模塊的概念,及其在語義相關度搜索的應用。

  • 利用節點路徑作為網絡功能模塊的解決方案。

  • 利用子圖擴展路徑作為網絡功能模塊的解決方案。

  • 利用異質有向無環圖作為網絡功能模塊的解決方案。

  • 總結。

  • 微眾 AI 招聘簡介

雷鋒網(公眾號:雷鋒網) AI 研習社將其分享內容整理如下:

首先,我給大家做一些簡單的介紹,圖是一種常見的數據結構,我們會發現存在很多不一樣的圖結構,尤其是這種異質圖的網絡,比較常見的類型包括職場網絡、社交網絡、學術網絡和電商網絡等等。

 

過去我們處理圖數據/圖的特徵學習,主要解決的是「點」層面的圖的特徵學習,比如下面這張圖,左邊是圖的結構,我們通常會據此做圖的特徵學習,就是將圖上的每個點映射到第一維的空間上,這樣做的話圖上相近的點在第一維空間上同樣會很靠近,黃色的點與黃色的點聚在一起,黑色的點與黑色的點聚在一起。

 

將一個圖的結構映射到一個低維空間,從而得到一個點的表徵,是一種比較簡單的做法。實際上,圖的結構還挺有意思的,特別是當圖存在異質信息的時候。由於圖本身具有拓撲結構,我們會發現存在很多不同的模塊。考慮一個電商圖,這個點可能是個買家,而在功能定位上它是一個角色(role)。除了點的結構以外,還存在其他的一些結構,比如說路徑(買家-車-賣家),更複雜的我們還有子圖(賣家-書&城市-買家)

 

因此,同樣的一張圖,通過不同的點、不同的圖來組成模塊,它們之間是有區別的,從點——路徑——子圖,它們各自承載不同的功能,正因為功能的不同,隨之語義也就不同。所以我們認為一張圖是由許多不同的模塊組成的,而每一個模塊的功能主要取決於兩個因素:一是拓撲結構,也就是說形狀是什麼樣的;二是它的預測任務究竟是什麼。

這也意味著,圖並不只是點與點之間的連接,實際上這些點與點之間的變化是很豐富的,它們構成了不同子圖的結構,這些子圖結構又為我們帶來了豐富的語義。

根據傳統的做法,大家會直接把圖上的點單獨做成特徵向量,那麼問題來了,我們能不能利用好這些含有豐富語義的拓撲結構,無論是路徑也好,子圖也好,我們將它們擴展開來,利用語義更豐富的這些結構作為網絡的功能模塊,再基於這些功能模塊來做網絡特徵學習,最後利用這些特徵來做點的分類、回歸、排序等等。總之,不局限於點的層面,而是探索網絡功能模塊這麼一個概念。這是我們的一個整體思路。

語義相關度搜索(Semantic Proximity Search)

 

我們近期在做的工作,是探索一些比較特殊的網絡功能模塊的使用場景。這裡我會以一個場景作為例子介紹這個網絡功能模塊的概念。這個例子就是語義相關度搜索(Semantic Proximity Search),這是一個比較常見的異質圖搜索應用。在語義相關度搜索使用場景中,只要給定一個 query 和一個 relation,可以對其他節點進行排序,讓我們對這個應用有了很大的想像空間。再者,異質圖本身存在不同的功能模塊,用來做語義相關搜索可說是最適合不過。

那麼做語義相關檢索會遇到哪些挑戰呢?我們認為主要有兩個:

1)點嵌入(node embedding)是一個比較間接的解法。我們做語義相關度檢索,關心的是兩個節點之間的語義相關度,對於點嵌入來說,它更關心的是每個節點之間的向量。考慮到兩個節點之間並不一定直接相鄰的,在給定兩個點的向量後,我們需要算出兩個點之間的距離,這意味著必須通過很多種方式去計算,然而我們並不知道哪種計算方式是最好的。此外,在大部分情況下,點嵌入更多被用來處理同質圖;如果是異質圖,我舉個例子:「我買了一個牙刷」,不能說我跟牙刷的 embedding 很像,這說明什麼呢?傳統的 node embedding 是很難處理這種圖的異質性的。總而言之,node embedding 是一個比較間接的解法,因為關心的是兩個點之間的結構,而不是單個點的結構。

2)有沒有一些工作是專門做異質圖嵌入的呢?有,比較常見的是知識圖譜嵌入,目前這塊有許多特別好的工作。我們認為知識圖譜的 embedding 是非常有意思的解法,不過要強調的是,知識圖譜其實是比較特殊的異質圖,一般會分為 head、 relation、tail 幾個部分,然而一般的異質圖很少存在這麼「乾淨」的關係鏈。如果考慮的是兩個點之間的距離,那麼我們關心的重點不是究竟哪個點先嵌入的,而是這兩個點之間的結構的嵌入。

這是我們認為在工作上比較有挑戰性的地方。

利用節點路徑作為網絡功能模塊的解決方案

接下來我會介紹我們的三個工作——三種用於解決語義相關搜索任務的網絡功能模塊(Network Function Blocks)。

第一個工作很簡單,我們利用異質路徑作為網絡功能模塊,我們的主體思路是,既然關心兩個節點之間的距離,那就乾脆把兩個點之間的網絡結構做成輸入,由此算出引向量特徵,再綜合算出相關度。這樣做的好處是,一是把節點之間的結構變成一個映射,這是一種比較直接的做法;另外,由於這是一個異質子圖結構,這種做法可以避免我們不停地去考慮每個節點的處境。

 

在具體的操作上,我們首先把兩個節點之間的結構(通過異質路徑獲得)輸入到特徵學習裡(可以採用任意序列的學習模型),接著做一些 discounted pooling,因為對於整個特徵表達而言,有些路徑可能很長,有些路徑可能很短,有些路徑則可能不是非常顯著。結束後,我們將這些不同的路徑整合成一個向量,最終得到一個 embedding,再將 embedding 乘以參數向量來得到最終的距離值。對於語義相關度搜索來說,只要給定點和點之間的距離,我們就可以做一個排序。這也是我們選擇做一對一的訓練和對路徑做 discounted pooling 的原因,過程非常簡單,結果卻挺有意思的。

ProxEmbed 是一種基於路徑的操作方法,事實上是通過一堆路徑給兩個節點之間的網絡結構做近似。這樣的 idea 也被利用到許多其他領域的工作裡。這種 path-based 的方法儘管很成功,但我們後來發現路徑是一種比較低階的結構,如果對每個路徑進行單獨考慮,其實能夠挖掘出來的信息是非常有限的,除非擁有非常優秀的 pooling 策略,不然你沒法判斷信息是如何被不同路徑相互看到的,因此不一定足以描述豐富的語義。

利用子圖擴展路徑作為網絡功能模塊的解決方案

接著我們做了第二個工作,我們將路徑做了擴展。剛剛我們有提到兩個節點之間的關係不只有路徑,還包括頻繁子圖,於是我們就在思考,有沒有可能通過頻繁子圖去擴充路徑的結構。為什麼要做路徑的擴充呢?因為點和點之間的路徑能夠很好地描述點和點之間的距離,如果再給點和點之間的關係增加一些豐富的子圖語義信息,路徑的表達能力將會因此大大增強。通過增加頻繁子圖的語義信息,我們最終可以得到 subgragh-augmented path,接著我們將它作為模型特徵的學習,將 subgragh-augmented path 作為映射,從而學習到特徵表達,最終算出它的語義距離(Proximity Score)

 

可能有人會問,為什麼在具體的操作上考慮的是用戶和用戶之間的關係,而不是任意兩個點之間?原因是我們在提到語義相關搜索的時候,其實指的是和用戶相關的語義相關搜索,這種應用考慮的更多還是用戶和用戶之間的關係,所以我們只對用戶做兩兩交叉。另外,這種交叉還有一個好處,那就是可以減少計算的複雜度。

考慮到並不是所有子圖、S-node、S-path 的貢獻都是一樣的,我們專門做了一個分層級注意力(hierarchical attention)模型來幫我們做篩選。此外,我們還考慮到子圖路徑其實是有結構的,所以專門針對子圖的 embedding 結構的相似性,我們來描述兩個節點之間的 embedding 關係,由此得到每一個節點和節點之間的 subgragh-augmented path 的一個全新 embedding。

 

我們的工作基於這麼一個假設,那就是子圖的 patterns 和 instances 都是預先算好的。在實際的操作中我們發現這個假設是可以被接受的,因為頻繁子圖經常會被離線算好,再用來作為圖索引。我舉幾個比較典型的例子,比如阿里巴巴的反欺詐和 Twitter 的用戶內容推薦,都是如此。另外,我們發現過往的一些工作中,也存在很多這種高效的子圖挖掘和匹配的算法。

那麼問題來了,我們能不能不做子圖挖掘,然後將這些豐富的子圖結構給利用起來呢?

利用異質有向無環圖作為網絡功能模塊的解決方案

帶著這個問題,我們又做了另外一項工作,那就是利用異質的有向無環圖作為網絡功能模塊。我們使用 DAGs(Directed Acyclic Graphs)代替路徑去計算節點結構的特徵,主要是基於這麼一項考慮:關係通常是有向的,然而路徑的表達能力卻有限。另外,DG 一般是環狀結構,環則意味著更長的距離,對於描述兩個點之間的關係並沒有多大好處。況且從計算角度來說,環結構對於圖的 inference 是不友好的。於是我們將部分的環去掉,最終得到 DAG 結構。

 

接下來,我們需要解決的是 DAGs 的產生效率問題,為此我們引入了一個距離可感知的 DAG 產生機制。我們會預先進行採樣,採樣好路徑以後,我們將這些路徑拼成一個圖,然後利用路徑遍歷來構建 DG,過程中通過一套計算來進行去環,經過不停地遍歷所有的 path 以後,我們最終可以得到 DAG 結構。這樣處理的好處是,可以避免一個點到另一個點的結構只有一種 DAG。接著我們可以利用一堆 DAG 去給兩個點之間的結構做近似,讓語義變得更加豐富。

 

解決了 DAG 的產生效率問題,接下來我們要解決的是如何去描述和做特徵學習,為此我們做了一個距離遞減機制(recursive distance discount mechanism),因為我們發現點和點之間的結構路徑的貢獻率不一定都是一樣的,這就凸顯了距離的重要性。當我們仔細觀察每一個 DAG 的結構時,每個節點都有不同的前驅。為了區分不同節點的迭代貢獻率,我們可以根據不同前驅到達 query 的距離,將之與 predecessor 綜合起來進行計算,來得到最終目標節點的 embedding,每個節點我們可以不停往後推,直至得到最終的 embedding 為止。

實驗結果

最後我們做了一些實驗,主要測試三個數據集的六種語義關係,這些數據集包括了 LinkedIn、Facebook 和 DBLP。因為這是一項排序任務,因此我們加入了一些評估指標,那就是 NDCG(normalized discounted cumulative gain)和 Map(mean average precision)。

同時我們還列了一些比較典型的 Baseline 算法:首先是 deep walk ranking(DWR)算法,它從一個點採集一堆的路徑,來學習節點特徵;第二個是 meta-graph proximity(MGP),通過數任意兩個節點間的 meta-graph 個數來計算節點間距離;第三個是 Metapath2vec,通過採樣 metapaths 來學習節點特徵。

最終結果顯示,ProxEmbed、SPE 以及 D2AGE 三者在不同的 symmetric 和 asymmetric 裡的效果都比較好,當中 SPE 的表現是最出色的,因為 SPE 為了在挖掘頻繁子圖方面做了較多工作,因此得到的信息更多更好。其次就是 D2AGE,效果跟 SPE 比較接近,有些地方甚至表現得更好,說明了即使不挖掘頻繁子圖,也有可能獲得比較穩定的效果

總結

最後我再總結以下我們的工作。我們主要想利用圖特徵學習來解決語義相關度檢索任務,而我們認為點嵌入(node embedding)是一個間接的解決方案,所以我們提出把 query 和 target 之間的結構拿來做特徵學習。具體要如何獲得結構特徵?我們採用的是 network functional blocks 方法,也就是三種基於網絡功能模塊的圖特徵學習方法。第一項工作是 ProxEmbed,利用異質路徑作為網絡功能模塊;第二項工作是 SPE,利用子圖擴充路徑作為網絡功能模塊;第三項工作是 D2AGE,利用有向無環圖作為網絡功能模塊。

最後這些模塊都在數據集上取得了比 baselines 要好的效果。

我們整理了一份關於 network functional blocks 近期工作的文獻集,同時我們也開源了我們所有的工作數據和代碼,感興趣的同學可以到網上去檢索,然後自己做一些復現。

 

分享完我們的工作,我想順便做個招聘廣告。我目前就職的微眾銀行,是騰訊發起的國內首家民營銀行、網際網路銀行。我們目前在微眾做很多的 AI 落地實踐,包括如何利用 AI 獲客、如何用機器人來低成本高質量地服務客戶、以及如何在保護隱私的前提下跨越數據牆和最大化數據使用效率等。

非常期待大家能夠加入我們,我們提供了很多相關的 AI 領域職位,有興趣的同學可以將簡歷發到 quainajiang@webank.com。謝謝大家!

以上就是本期嘉賓的全部分享內容。更多公開課視頻請到雷鋒網AI研習社社區(https://club.leiphone.com/  )觀看。關注微信公眾號:AI 研習社(okweiwu),可獲取最新公開課直播時間預告。

雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。

相關焦點

  • 香港中文大學胡梟瑋:用於陰影檢測的 DSC 特徵 | AI研習社64期大講堂
    來自香港中文大學的胡梟瑋採用了提取 DSC 特徵的方式來解決這個問題,他在近日的 AI 研習社大講堂上向我們分享了具體操作思路。公開課回放地址:http://www.mooc.ai/open/course/523 分享主題:用於陰影檢測的 DSC 特徵分享提綱:陰影檢測相關工作與研究動機DSC模型介紹實驗結果與討論最新工作---陰影去除雷鋒網AI研習社將其分享內容整理如下:大家好,我是胡梟瑋,來自香港中文大學。
  • 香港中文大學胡梟瑋:用於陰影檢測的 DSC 特徵 | AI研習社64期大...
    來自香港中文大學的胡梟瑋採用了提取 DSC 特徵的方式來解決這個問題,他在近日的 AI 研習社大講堂上向我們分享了具體操作思路。最近的兩個工作是基於深度學習的方法來檢測陰影,目前看來已經達到了比較好的性能,這兩種方法——scGAN 與 stacked-CNN,分別發表在了 2017 年的 ICCV 與 2016 年的 ECCV 上,主要是通過深度神經網絡從大量的數據樣本中自動學習特徵,用於檢測陰影區域。
  • AR近眼顯示中的光波導| AI 研習社 158期大講堂總結
    回放地址:http://www.mooc.ai/open/course/675? 分享主題:AR近眼顯示中的光波導 分享提綱: 雷鋒網AI研習社將其分享內容整理如下:大家晚上好,我是來自Rokid的Linda,很高興AI研習社今天給我這個機會,能夠和大家一起探討在AR眼鏡的光學系統中最近比較熱的一個詞
  • 復旦大學陳俊坤:自然語言處理中的多任務學習 | AI 研習社職播間第...
    其中一個重要的原因是數據規模問題。多任務學習是將多個任務一起學習,充分挖掘多個任務之間的相關性,來提高每個任務的模型準確率,從而可以減少每個任務對訓練數據量的需求。近日,在雷鋒網 AI 研習社公開課上,復旦大學計算機系在讀碩士陳俊坤分享了其所在研究組關於多任務學習在自然語言處理領域的最新工作。
  • 孫啟超:卷積神經網絡在人臉識別技術中的應用 | AI研習社第51期猿...
    隨著 iPhone X 的發布,Face ID 人臉識別技術開始進入人們的日常生活中,當我們拿起手機並看著它的時候就可以實現手機解鎖的功能。而人臉識別中的關鍵技術就是卷積神經網絡。近日,在雷鋒網 AI 研習社公開課上,法國蒙彼利埃大學孫啟超就講述了卷積神經網絡的基本原理以及人臉識別技術是如何運行的。
  • 大講堂 | 預測時間敏感的機器學習模型建模與優化
    原標題:大講堂 | 預測時間敏感的機器學習模型建模與優化 雷鋒網AI研習社訊:機器學習模型現在已經廣泛應用在越來越多的領域比如地震監測,闖入識別,高頻交易;同時也開始廣泛的應用在行動裝置中比如通過邊緣計算。這些真實世界的應用在原有的模型精度基礎之上帶來很多實際約束比如預測要在很短或規定時間內完成。
  • 鄒炎炎:語義分析介紹及跨語言信息在語義分析中的應用 | AI 研習社...
    近日,在雷鋒網 AI 研習社公開課上,新加坡科學設計大學在讀博士鄒炎炎就用通俗易懂的語言為大家介紹了 semantic parsing 的概念、背景以及自己在該領域的論文成果,並介紹了關於 output embedding 對於 semantic parsing 的影響。公開課回放視頻網址:http://www.mooc.ai/open/course/544?
  • 陳陟原:數據降維與可視化| AI 研習社第 53 期猿桌會
    近日,在雷鋒網 AI 研習社公開課上,澳大利亞國立大學信息技術專業學生陳陟原就分享了數據降維與可視化的相關內容。公開課回放視頻網址:http://www.mooc.ai/open/course/526陳陟原:澳大利亞國立大學信息技術專業學生。現在在北京大學做國際暑期教學助理。
  • 清華大學王宇龍:如何通過關鍵數據通路去理解網絡行為? | AI研習社...
    AI研習社按:神經網絡長久以來的「黑盒」屬性,導致人們一直無法理解網絡的內部是如何運作的,針對這個困擾已久的問題,學界主要存在三種研究方向:數據歸因模式、特徵解碼模式以及模型理解模式。在近日的 AI 研習社大講堂上,清華大學的王宇龍就從模型理解的角度入手,為我們詳細介紹了如何通過發現網絡中的關鍵數據通路(critical data routing paths, CDRPs),更好地理解網絡。
  • 北郵張慶恆:如何基於 rasa 搭建一個中文對話系統 (有源碼視頻)|...
    AI研習社按:對話系統是自然語言處理的一個熱門話題,而自然語言理解則是對話系統的關鍵組成部分,現有的很多自然語言理解工具往往以服務的方式獲取(Google 的 API.ai, Facebook 的 Wit.ai 等),使用這些服務往往需要向服務提供商提供自己的數據,並且根據自己業務調試模型很不方便。
  • 吳博:目標檢測集成框架在醫學圖像 AI 輔助分析中的應用 | AI 研習...
    近日,在雷鋒網 AI 研習社公開課上,深圳市宜遠智能科技有限公司負責人吳博剖析了目標檢測已有的框架,重點分享如何對目標檢測框架進行改造,以便在醫學圖像分析中產生更好的效果。公開課回放視頻網址:http://www.mooc.ai/open/course/559?
  • 加州伯克利博士:基於隱模型的圖神經網絡設計|NeurIPS 2020論文分享
    近年來,人們對深度學習方法在圖上的擴展越來越感興趣。在多方因素的成功推動下,研究人員借鑑了卷積網絡、循環網絡和深度自動編碼器的思想,定義和設計了用於處理圖數據的神經網絡結構,由此出現了一個新的研究熱點——「圖神經網絡(Graph Neural Networks,GNN)」。
  • 曠視科技 CSG 算法負責人姚聰:深度學習時代的文字檢測與識別技術...
    原標題:曠視科技 CSG 算法負責人姚聰:深度學習時代的文字檢測與識別技術 | AI 研習社 103 期大講堂 雷鋒網 AI 研習社按:隨著深度學習的興起和發展,計算機視覺領域發生了極大的變化。
  • 大講堂 | 人工智慧所需的數學基礎
    AI研習社按:隨著大數據時代的到來,深度學習越來越具有可行性。隨著深度學習的不斷火熱,也原來越多人轉行深度學習。在本次雷鋒網AI研習社公開課中,講者將分享轉行深度學習所需要的數學基礎以及相關熱門的CNN、RNN、GAN的數學思考。
  • 光學精密工程 | 實例特徵深度鏈式學習全景分割網絡
    2.2 實例特徵深度鏈式學習網絡的構成實例特徵深度鏈式學習網絡由兩種功能不同的鏈式單元組合構成,根據單元對特徵的不同處理操作,將鏈式單元分為特徵保持鏈和特徵增強鏈兩種形式。2.2.1 特徵保持鏈鏈式學習網絡的第一個鏈式單元(又稱第一環)直接接收原始輸入信息並執行學習函數功能操作,而後連接下一單元。作為原始輸入數據和下一級特徵提取結構的中間環節,第一環能否在實現自身學習功能基礎上為後續結構提供完整數據成為決定網絡性能的重要問題。
  • 用於深度強化學習的結構化控制網絡(ICML 論文講解)
    本文為 AI 研習社編譯的技術博客,原標題 : Structured Control Nets for Deep Reinforcement Learning Tutorial (ICML Published Long Talk Paper) 作者 |Mario Srouji 翻譯 |
  • 今日Paper|社交媒體謠言檢測;連續手語識別;細粒度服裝相似性學習...
    目錄基於雙向圖卷積神經網絡的社交媒體上謠言檢測 用於連續手語識別的時空多線索網絡基於屬性特定嵌入網絡的細粒度服裝相似性學習混合圖神經網絡在人群計數中的應用使用衛星圖像中的目標檢測生成可解釋的貧困地圖 基於雙向圖卷積神經網絡的社交媒體上謠言檢測 論文名稱:Rumor Detection>作者:Bian Tian /Xiao Xi
  • 一場深度學習引發的圖像壓縮革命
    雷鋒網 AI 研習社按,2012 年,AlexNet 橫空出世,以 15.4% 的低失誤率奪得當年 ILSVRC(ImageNet 大規模視覺識別挑戰賽)冠軍,超出亞軍十多個百分點。WEBP 採用一種基於 VP8 編碼(已於 2010 年 5 月開源)的圖片壓縮器,利用預測編碼技術,達到減少數據量、加速網絡傳輸的目的。而 TNG 一改傳統的這些編碼技術,轉而乘上深度學習這艘大船。
  • 深度學習預測比特幣價格;基於神經網絡的自動化前端開發 | Github...
    雷鋒網 AI 研習社按:對於開發者來講,證明其編程能力最好的方式是展示他們的項目和代碼。雷鋒網 AI 研習社本周從 YouTube、知乎以及 Github 官網上搜羅了數個與 AI 相關的開源項目,為 AI 開發者的設計提供參考。
  • 港科大博士生侯璐:基於損失函數的神經網絡量化方法|分享總結
    :神經網絡功能強大,但是其巨大的存儲和計算代價也使得它的使用特性,特別是在一些計算能力相對較弱的行動裝置上受到了很大的限制。為了解決這個問題, 最近有許多針對於神經網絡壓縮和加速的工作被提出, 例如神經網絡剪枝, 權重矩陣低秩分解,權重量化等。這次分享主要是針對於權重量化這一類方法。近期,在雷鋒網 GAIR 大講堂上,來自香港科技大學的博士生侯璐同學分享了深度學習網絡的權重量化的一些最新進展。以及幾篇ICLR的論文解讀。