選自openreview.net
作者:Xinshi Chen等
機器之心編譯
參與:Panda、蛋醬
在新冠狀肺炎的疫情防控之戰中,人工智慧技術正發揮著重要作用。本文將介紹一種用於預測 RNA 二級結構的端到端深度學習模型 E2Efold,在結構預測方面具有顯著更優表現,同時大大縮短新冠病毒 RNA 二級結構預測時間,為病毒研究、藥物篩選、疫苗研製等工作提供更多助力。這項成果來自螞蟻金服的研究團隊,目前這篇論文已被 ICLR 2020 接收為 Talk 論文。
理解 RNA 二級結構的相關研究具有重要意義。二級結構是指 RNA 序列各個位置有氫健互補配對的鹼基。RNA 的三維結構往往是在先形成的二級結構的框架上摺疊而成的,所以知道二級結構就能夠用來表徵 RNA 結構、推斷功能機制、並設計新實驗。
此次引發大規模疫情的新型冠狀病毒即屬於 RNA 病毒的一種。但以往關於 RNA 二級結構的計算預測模型存在著固有約束條件,此前處於主導地位的基於 DP 的算法將搜索空間限制為嵌套結構,如此一來,一些包含假結結構的 RNA 二級結構的具有重要生物學意義的有效信息可能會排除在外。
論文地址:https://openreview.net/forum?id=S1eALyrYDH
論文提出的端到端深度學習模型 E2Efold 可用於預測 RNA 二級結構,該模型能有效地考慮 RNA 二級結果計算預測問題中的固有約束條件。E2Efold 的核心思想是直接預測 RNA 鹼基配對矩陣,並能使用一個展開式算法進行約束編程以作為深度架構強制執行約束的模板。
研究者在基準數據集進行了大量實驗,E2Efold 取得了優越的表現:相比於之前的最佳算法,它能預測得到顯著更優的結構(尤其是對於假結結構);同時在推理時間方面,E2Efold 能與之前最快的算法相媲美。
這項成果可應用於新冠病毒的 RNA 二級結構預測等研究中,大大縮短新冠病毒的 RNA 二級結構的預測時間,顯著提升病毒研究、藥物篩選、疫苗研製等工作的效率,為面向新冠肺炎的抗疫戰提供助力。
研究概況
幾十年來,一直都有研究者在探索如何基於 RNA 的一級結構,通過計算方法來預測 RNA 的二級結構。大多數已有方法都假設二級結構是能量最小化的結果,即
。這個能量函數要麼是通過基於物理學的熱力學實驗估計的,要麼就是通過數據學習到的。
這些方法都存在一個問題,即所有可行的二級結構的搜索空間的規模會隨序列長度 L 的增長而指數級增長。為了能夠輕鬆地實現最小化,研究者通常假設鹼基配對具有某種嵌套結構(圖 2 左)且能量函數會成對地分解為因子。
這篇論文採用了另一個視角,其假設這種二級結構是一個前向函數的輸出,即
,然後可以用端到端的方式從數據中學習得到 θ。此外,還可以通過直接優化相關的損失來擬合這個前向模型。
這篇論文提出了一種端到端的深度學習解決方案。方案分為兩個階段。該架構的第一部分是一個基於 Transformer 的深度模型:深度評分網絡(Deep Score Network),其可以表徵可用於結構預測的序列信息。第二部分是一個多層網絡:後處理網絡(Post-Processing Network),該網絡能逐漸強制執行約束條件並限制輸出空間。這個網絡是基於一種用於求解約束優化問題的展開式算法而設計的。然後再將這兩個網絡耦合到一起,以一種端到端的方式聯合進行學習。由此,研究者將這個模型稱為 E2Efold。
在設計後處理網絡時,研究者使用了一種展開式算法作為歸納偏差,這使得 E2Efold 的輸出空間是受限的(見圖 3),從而能在數據有限時能更容易地學習得到優良的模型,還能減少過擬合的問題。然而,E2Efold 中編碼的約束是足夠靈活的,使得假結結構也能被包含在輸出空間中。總結來說,E2Efold 能在用於學習的模型偏置以及可行 RNA 結構的表達能力之間實現很好的平衡。
研究者在幾個 RNA 基準數據集上執行了實驗,對比了 E2Efold 和一些當前最佳的方法。結果表明 E2Efold 是更優的。
實驗評估使用了兩個基準數據集,參與比較的方法包括一些當前最佳方法和一些在 RNA 二級結構預測領域最常用的方法。實驗結果表明,E2Efold 在 RNAstralign 數據集上將 F1 分數提升了 29.7%,並且其推理 RNA 二級結構的速度與之前最高效的算法(LinearFold)一樣快。研究者也執行了控制變量研究,結果表明在後處理步驟中推動梯度是有必要的。
E2Efold:基於展開式算法的深度學習模型
(二級)深度評分網絡
E2Efold 的第一個部分是一個深度評分網絡 U_θ(x),其輸出是一個 L×L 的對稱矩陣。這個矩陣的每一項
都表示核苷酸 x_i 和 x_j 的配對分數。這個網絡的輸入 x 是 L × 4 維的 one-hot 嵌入。圖 4 展示了 U_θ 的具體架構。
其主要包含一個位置嵌入矩陣、一組堆疊的 Transformer 編碼器和一個 2D 卷積層,詳情如下:
藉助於神經網絡的表徵能力,研究者希望學習到有信息的 U_θ,使得 U_θ(x) 中分數更高的項能很好地對應於 RNA 結構中實際配對的鹼基。一旦計算出分數矩陣 U_θ(x),一種使用它的簡單方法是使用一個偏置項 s ∈ R(比如 s = 0),並令
時 A_ij = 1。但是,A_ij 的這種逐項獨立預測可能得到一個有違可行 RNA 二級結構約束的矩陣 A。
因此,為了確保預測得到的 A 是有效的,還需要一個後處理步驟。這個步驟可以在學習完 U_θ 後再單獨執行。但以這種方式解除鹼基配對評分與約束後處理過程的耦合關係可能會導致結果是次優的,此時這兩個階段中的錯誤無法同時得到考慮和調整。針對這個問題,研究者引入了一種後處理網絡,其可以與 U_θ 一起以端到端的方式訓練,以強制實施約束限制。
後處理網絡
E2Efold 的第二部分是一個後處理網絡 PP_φ,這是一個用於求解約束優化問題的展開式和參數化的算法。研究者將這個後處理步驟描述成了一個約束優化問題,並給出了求解它的算法。然後,該算法被用作模板,用於設計深度架構 PP_φ。
端到端訓練算法
給定一個包含輸入-輸出對樣本的數據集,E2Efold 的訓練過程類似於標準的基於梯度的監督學習。但是,RNA 二級結構預測問題常用的預測評估指標是 F1 分數、精度和召回率,而它們是不可微分的。
為此,研究者在這篇論文中定義了一種可微分的 F1 損失(Differentiable F1 Loss)。整體而言,該模型的優化目標是:
其中
,γ ≤ 1 是折現因子。
實驗
數據集
實驗使用了兩個基準數據集:(1)ArchiveII (Sloma & Mathews, 2016) 包含來自 10 種 RNA 類型的 3975 個 RNA 結構,這是一個在經典 RNA 摺疊方法中被廣為使用的基準數據集。(2)RNAStralign (Tan et al., 2017) 包含來自 8 種 RNA 類型的 37149 個結構,這是目前市面上最全面的 RNA 結構集合。在移除了冗餘的序列和結構之後,還剩下 30451 個結構。表 1 給出了這兩個數據集的統計情況。
基於 RNAStralign 的實驗結果
如表 2 所示,傳統方法得到的 F1 分數範圍在 0.433 到 0.624 之間,這與它們原論文所報告的結果是一致的。CONTRAfold 和 CDPfold 這兩種基於學習的方法在一些指標上優於傳統方法一些。而 E2Efold的表現則顯著更優,在所有指標上都至少超過其它方法 20%。
注意,對於幾乎所有其它方法,召回率通常都高於精度,而對 E2Efold 而言,精度高於召回率。這種現象的原因可能是 E2Efold 在神經網絡訓練過程中對約束進行了整合。圖 5 給出了每種方法的 F1 分數的分布。這個結果表明 E2Efold 能穩定地取得優良表現。
基於 ArchiveII 的無再訓練的實驗結果
E2Efold 在 ArchiveII 上的表現雖然不及在 RNAStralign 上結果,但仍在不同指標上都優於其它所有方法。此外,由於原始的 ArchiveII 數據集包含領域序列(子序列),研究者也移除這些領域進行了實驗,所得結果與表 3 類似。
假結結構預測
即使 E2Efold 並不排除假結結構,但仍不確定其是否真的能夠生成假結結構。因此,研究者選取了所有包含假結結構的序列,並在這個集合上計算了平均 F1 分數。此外,研究者還統計了被預測為假結的假結序列的數量,並將這個數量作為了真正例數(TP)。類似的,研究者還報告了真負例(TN)、假正例(FP)和假負例(FN),見表 5。大多數工具都排除了假結,而用於比較的 RNAstructure 則是可以預測假結結構的最著名的工具。
可視化
這裡給出了三個 RNA 序列的預測結構的可視化結果。在這些圖片中,紫色的線表示假結結構的邊。儘管 CDPfold 的 F1 分數比其它基準高,但其預測結果在視覺上離基本真值相差甚遠。在
所有基準中,RNAstructure 和 CONTRAfold 能得到相比而言更合理的可視化結果。但這兩種方法只能得到結構的粗略草圖,並不足夠好。在大多數情況下,E2Efold 得到的結果都與基本真值最相近。此外,在一些很長且難以預測的 RNA 序列上,E2Efold 取得了出人意料的優良表現。