1. 程式人生 > 資訊 >登上《科學》雜誌:最新演算法只需一塊 RTX2080,10 分鐘就能算出蛋白質結構

登上《科學》雜誌:最新演算法只需一塊 RTX2080,10 分鐘就能算出蛋白質結構

(原標題:兩大頂級 AI 演算法一起開源!Nature、Science 齊發 Alphafold2 相關重磅,雙廚狂喜)

喜大普奔!今天一波 Nature、Science 齊發文,可把學術圈的嗑鹽人們高興壞了。

一邊是“AI 界年度十大突破”AlphaFold2 終於終於開源,登上 Nature。

另一邊 Science 又出報道:華盛頓大學竟然還搞出了一個比 AlphaFold2 更快更輕便的演算法,只需要一個英偉達 RTX2080 GPU,10 分鐘就能算出蛋白質結構

要知道,當年 AlphaFold2 橫空出世,那是真・沸騰了學術圈。

不僅谷歌 CEO 皮猜、馬斯克、李飛飛等大 V 紛紛點贊,連馬普所的演化生物研究所所長 Andrei Lupas 都直言:它會改變一切。

結構生物學家 Petr Leiman 感嘆,我用價值一千萬美元的電鏡努力地解了好幾年,Alphafold2 竟然一下就算出來了。

更是有生物學網友表示絕望,感覺專業“前途渺茫”:

而今天這一波 Nature、Science 神仙打架,再次點燃話題度。

讓學界狂熱的 Alphafold2

先說被頂刊爭相報道的 Alphafold2,它作為一個 AI 模型,為何引起各界狂熱?

因為它一出來,就解決了生物學界最棘手的問題之一。這個問題於 1972 年被克里斯蒂安・安芬森提出,它的驗證曾經困擾科學家 50 年:

給定一個氨基酸序列,理論上就能預測出蛋白質的 3D 結構。

蛋白質由氨基酸序列組成,但真正決定蛋白質作用的,是它的 3D 結構,也就是氨基酸序列的摺疊方式。

為了驗證這個理論,科學家們嘗試了各種手段,但在 CASP14(蛋白質結構預測比賽)中,準確性也只達到 40 分左右(滿分 100)。

直到去年 12 月,Alphafold2 出現,將這一準確性直接拔高到了 92.4/100,和蛋白質真實結構之間只差一個原子的寬度,真正解決了蛋白質摺疊的問題。

Alphafold2 於當年入選 Science 年度十大突破,被稱作結構生物學“革命性”的突破、蛋白質研究領域的里程碑。

它的出現,能更好地預判蛋白質與分子結合的概率,從而極大地加速新藥研發的效率。

今天,Alphafold2 的開源,又進一步在 AI 和生物學界激起了一大波浪。

谷歌 CEO 皮猜很高興:

亦有生物學博士表示:未來已來!

來自 UC 伯克利 AI 實驗室的博士 Roshan Rao 在看過後表示,這份程式碼看起來不僅容易使用,而且文件也非常完善。

現在,是時候藉著這份開源演算法,弄清 Alphafold2 的魔術是怎麼變的了。

AlphaFold2 詳細資訊公開

研究人員強調,這是一個完全不同於 AlphaFold 的新模型。

2018 年的 AlphaFold 使用的神經網路是類似 ResNet 的殘差卷積網路,到了 AlphaFold2 則借鑑了 AI 研究中最近新興起的 Transformer 架構。

Transformer 使用注意力機制興起於 NLP 領域,用於處理一連串的文字序列。

而氨基酸序列正是和文字類似的資料結構,AlphaFold2 利用多序列比對,把蛋白質的結構和生物資訊整合到了深度學習演算法中。

AlphaFold2 用初始氨基酸序列與同源序列進行比對,直接預測蛋白質所有重原子的三維座標。

從模型圖中可以看到,輸入初始氨基酸序列後,蛋白質的基因資訊和結構資訊會在資料庫中進行比對。

多序列比對的目標是使參與比對的序列中有儘可能多的序列具有相同的鹼基,這樣可以推斷出它們在結構和功能上的相似關係。

比對後的兩組資訊會組成一個 48block 的 Evoformer 塊,然後得到較為相似的比對序列。

比對序列進一步組合 8 blocks 的結構模型,從而直接構建出蛋白質的 3D 結構。

最後兩步過程還會進行 3 次迴圈,可以使預測更加準確。

▲如何用三維座標確定結構

還有更快、成本更低的演算法?

AlphaFold2 首次公佈的時候並沒有透露太多技術細節。

在華盛頓大學,同樣致力於蛋白質領域的 David Baker 一度陷入失落:

如果有人已經解決了你正在研究的問題,但沒有透露他們是如何解決的,你該如何繼續研究?

不過他馬上重整旗鼓,帶領團隊嘗試能不能復現 AlphaFold2 的成功。

幾個月後,Baker 團隊的成果不僅在準確度上和 AlphaFold2 不相上下,還在計算速度和算力需求上實現了超越。

就在 AlphaFold2 開源論文登上 Nature 的同一天,Baker 團隊的 RoseTTAFold 也登上 Science。

RoseTTAFold 只需要一塊 RTX2080 顯示卡,就能在 10 分鐘左右計算出 400 個氨基酸殘基以內的蛋白質結構。

這樣的速度,意味著什麼?

那就是研究蛋白質的科學家不用再排隊申請超算資源了,小型團隊和個人研究者只需要一臺普通的個人電腦就能輕鬆展開研究。

RoseTTAFold 的祕訣在於採用了 3 軌注意力機制,分別關注蛋白質的一級結構、二級結構和三級結構。

再通過在三者之間加上多處連線,使整個神經網路能夠同時學習 3 個維度層次的資訊。

考慮到現在市場上顯示卡不太好買,Baker 團隊還貼心的搭建了公共伺服器,任何人都可以提交蛋白質序列並預測結構。

自伺服器建立以來,已經處理了來自全世界研究者提交的幾千個蛋白質序列。

這還沒完,團隊發現如果同時輸入多個氨基酸序列,RoseTTAFold 還可以預測出蛋白質複合體的結構模型。

對於多個蛋白質組成的複合體,RoseTTAFold 的實驗結果是在 24GB 視訊記憶體的英偉達 Titan RTX 上計算 30 分鐘左右。

現在整個網路是用單個氨基酸序列訓練的,團隊下一步計劃用多序列重新訓練,在蛋白質複合體結構預測上還可能有提升空間。

正如 Baker 所說:

我們的成果可以幫助整個科學界,為生物學研究加速。

Alphafold2 開源地址:

https://github.com/deepmind/alphafold

RoseTTAFold 開源地址:

https://github.com/RosettaCommons/RoseTTAFold

相關論文:

Alphafold2:https://www.nature.com/articles/s41586-021-03819-2

RoseTTAFold:https://science.sciencemag.org/content/early/2021/07/14/science.abj8754