想要了解圖或圖神經(jīng)網(wǎng)絡(luò)?沒有比看論文更好的方式了
圖嵌入、圖表征、圖分類、圖神經(jīng)網(wǎng)絡(luò),這篇文章將介紹你需要的圖建模論文,當(dāng)然它們都有配套實(shí)現(xiàn)的。
圖是一種非常神奇的表示方式,生活中絕大多數(shù)的現(xiàn)象或情境都能用圖來表示,例如人際關(guān)系網(wǎng)、道路交通網(wǎng)、信息互聯(lián)網(wǎng)等等。正如馬哲介紹事物具有普遍聯(lián)系性,而圖正好能捕捉這種聯(lián)系,所以用它來描述這個(gè)世界是再好不過的方法。
但圖這種結(jié)構(gòu)化數(shù)據(jù)有個(gè)麻煩的地方,我們先要有圖才能進(jìn)行后續(xù)的計(jì)算。但圖的搭建并不簡單,目前也沒有比較好的自動(dòng)化方法,所以第一步還是需要挺多功夫的。只要各節(jié)點(diǎn)及邊都確定了,那么圖就是一種非常強(qiáng)大且復(fù)雜的工具,模型也能推斷出圖中的各種隱藏知識(shí)。
不同時(shí)期的圖建模
其實(shí),我們可以將圖建模分為圖神經(jīng)網(wǎng)絡(luò)與傳統(tǒng)的圖模型。其中以前的圖建模主要借助 Graph Embedding 為不同的節(jié)點(diǎn)學(xué)習(xí)低維向量表征,這借鑒了 NLP 中詞嵌入的思想。而圖神經(jīng)網(wǎng)絡(luò)借助深度學(xué)習(xí)進(jìn)行更強(qiáng)大的圖運(yùn)算與圖表征。
Graph Embedding 算法聚焦在如何對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行低維向量表示,相似的節(jié)點(diǎn)在表征空間中更加接近。相比之下,GNN 最大的優(yōu)勢(shì)在于它不只可以對(duì)一個(gè)節(jié)點(diǎn)進(jìn)行語義表示。
例如 GNN 可以表示子圖的語義信息,將網(wǎng)絡(luò)中一小部分節(jié)點(diǎn)構(gòu)成的語義表示出來,這是以前 Graph Embedding 不容易做到的。GNN 還可以在整個(gè)圖網(wǎng)絡(luò)上進(jìn)行信息傳播、聚合等建模,也就是說它可以把圖網(wǎng)絡(luò)當(dāng)成一個(gè)整體進(jìn)行建模。此外,GNN 對(duì)單個(gè)節(jié)點(diǎn)的表示也可以做得更好,因?yàn)樗梢愿玫亟V車?jié)點(diǎn)豐富信息。
在傳統(tǒng)圖建模中,隨機(jī)游走、最短路徑等圖方法會(huì)利用符號(hào)知識(shí),但這些方法并沒有辦法很好地利用每個(gè)節(jié)點(diǎn)的語義信息。而深度學(xué)習(xí)技術(shù)更擅長處理非結(jié)構(gòu)文本、圖像等數(shù)據(jù)。簡言之,我們可以將 GNN 看做將深度學(xué)習(xí)技術(shù)應(yīng)用到符號(hào)表示的圖數(shù)據(jù)上,或者說是從非結(jié)構(gòu)化數(shù)據(jù)擴(kuò)展到了結(jié)構(gòu)化數(shù)據(jù)。GNN 能夠充分融合符號(hào)表示和低維向量表示,發(fā)揮兩者優(yōu)勢(shì)。
圖建模論文與代碼
在 GitHub 的一項(xiàng)開源工作中,開發(fā)者收集了圖建模相關(guān)的論文與實(shí)現(xiàn),并且從經(jīng)典的 Graph Embedding、Graph Kernel 到圖神經(jīng)網(wǎng)絡(luò)都有涉及。它們?cè)趫D嵌入、圖分類、圖表征等領(lǐng)域都是非常重要的論文。
項(xiàng)目地址:https://github.com/benedekrozemberczki/awesome-graph-classification
該項(xiàng)目主要收集的論文領(lǐng)域如下所示:
1. Factorization
2. Spectral and Statistical Fingerprints
3. Graph Neural Network
4. Graph Kernels