Justin Gilmer, Samuel S. Schoenholz, Patrick F. Riley, Oriol Vinyals, George E. Dahl. Neural Message Passing for Quantum Chemistry. Proceedings of the 34th International Conference on Machine Learning, PMLR 70:1263-1272, 2017.
https://arxiv.org/abs/1704.01212
文章提出了一個框架MPNN堕汞,整合那些使用信息傳遞算法和聚合過程來計算以拓?fù)鋱D作為輸入的函數(shù)的拓?fù)鋱D模型,這個框架可以很好的預(yù)測分子和材料的性質(zhì)。
MPNN框架
對一個具有節(jié)點(diǎn)特征xv和邊特征evw的無向圖G,MPNN的前向傳播有兩個階段:消息傳遞階段(message passing phase)和讀出階段(readout phase)。
- 消息傳遞階段運(yùn)行T個時間步璧瞬,用消息函數(shù)和頂點(diǎn)更新函數(shù)定義。在該階段,根據(jù)消息更新圖中各節(jié)點(diǎn)的隱藏狀態(tài)陌凳,其中表示v在G中的鄰節(jié)點(diǎn):
- 讀出階段根據(jù)某個讀出函數(shù)R計算整個圖的特征向量
注意,也可以通過引入圖中所有邊的隱藏狀態(tài)内舟,并將它們像消息傳遞階段一樣地更新合敦,來學(xué)習(xí)MPNN中的邊特征。
? 消息函數(shù)验游,向量更新函數(shù)和讀出函數(shù)都是可微函數(shù)蛤肌。作用于節(jié)點(diǎn)的狀態(tài)集合,同時對節(jié)點(diǎn)的排列不敏感批狱,這樣才能保證 MPNN 對圖同構(gòu)保持不變裸准。在之前提出的不同MPNN模型中,赔硫,和有著不同的具體實現(xiàn)形式炒俱。
QM9上的MPNN
用表示圖中每個節(jié)點(diǎn)的內(nèi)部隱藏表示的維數(shù),用表示圖中節(jié)點(diǎn)的數(shù)量爪膊。我們對MPNNs的實現(xiàn)是在有向圖上操作权悟,在這種情況下,傳入消息是和的拼接推盛。將此應(yīng)用于無向的化學(xué)圖時峦阁,我們將圖視為有向的,其中每條原始邊都變成了帶有相同的標(biāo)簽的輸入邊和輸出邊耘成。
我們的MPNN模型的輸入是一組圖的節(jié)點(diǎn)的特征向量榔昔,和一個帶有向量值條目的鄰接矩陣a,以表示分子中的不同鍵以及兩個原子之間的成對空間距離瘪菌。初始隱藏狀態(tài)被設(shè)置為原子輸入特征向量撒会,并被填充到維度。
為了兼容邊特征师妙,新的消息函數(shù)如下诵肛,其中是將邊向量映射到 維矩陣的神經(jīng)網(wǎng)絡(luò)。
? 理論上來說默穴,如果節(jié)點(diǎn)消息同時依賴于源節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)的話怔檩,網(wǎng)絡(luò)的消息通道將會得到更有效的利用褪秀。所以也可以嘗試去使用一種消息函數(shù)的變種,其中薛训,為神經(jīng)網(wǎng)絡(luò)溜歪。
另外,文章探索了兩種不同的方法來更改消息在整個模型中的傳遞方式许蓖。最簡單的修改是為未連接的節(jié)點(diǎn)對添加單獨(dú)的“虛擬”邊蝴猪。這可以作為數(shù)據(jù)預(yù)處理步驟實現(xiàn),并允許信息在傳播階段進(jìn)行長距離傳輸膊爪。還可以使用一個潛在的“主”節(jié)點(diǎn)自阱,它以特殊的邊類型連接到圖中的每個輸入節(jié)點(diǎn)。主節(jié)點(diǎn)充當(dāng)全局暫存空間米酬,每個節(jié)點(diǎn)在消息傳遞的每個步驟中都從暫存空間讀取和寫入沛豌。目的同樣是為了在傳播階段傳播較長的距離。
最后赃额,文章同樣嘗試了兩種讀出函數(shù)加派。首先是 GG-NN 中的讀出函數(shù):
此外也考慮set2set模型,模型首先對元組做線性映射跳芳,并將投影元組的集合作為輸入芍锦,然后經(jīng)過步計算后,set2set模型會生成一個與節(jié)點(diǎn)順序無關(guān)的embeedding向量飞盆,從而得到輸出向量娄琉。
同之前的模型和表征比較,文章模型在QM9的各項性質(zhì)預(yù)測上都取得了最小的MAE值吓歇。
文章還發(fā)現(xiàn)完整的邊特征向量(包括鍵類型和空間距離)和處理氫原子作為顯式節(jié)點(diǎn)是非常重要的孽水。