雷鋒網(wǎng)報道:還記得AlphaFold成名的那一戰(zhàn)么?
2018年的11月2日,在第13屆全球蛋白質(zhì)結(jié)構(gòu)預(yù)測競賽(CASP)上,AlphaFold獲得了預(yù)測43種蛋白中的25種蛋白結(jié)構(gòu)的最高分,在98名參賽者中排名第一。對于DeepMind的預(yù)測方法,由于當(dāng)時沒有具體論文發(fā)布,眾多學(xué)者認(rèn)為是計算能力突出使得AlphaFold獲得冠軍。
1月15日,DeepMind關(guān)于AlphaFold模型與代碼通過了同行評審發(fā)布在了雜志《nature》上面。并且模型和代碼已經(jīng)開源。
代碼:https://github.com/deepmind/deepmind-research/tree/master/alphafold_casp13
模型:https://www.biorxiv.org/content/10.1101/846279v1.full.pdf
根據(jù)DeepMind的介紹,在預(yù)測蛋白質(zhì)結(jié)構(gòu)的物理性質(zhì)方面使用了兩種不同的方法來構(gòu)建預(yù)測模型。并且兩種方法都是基于深度神經(jīng)網(wǎng)絡(luò)來設(shè)計的,另外,預(yù)測模型主要完成對基因序列中蛋白質(zhì)的特性的預(yù)測,這些特性包括:a:成對的氨基酸之間的距離;b:連接這些氨基酸的化學(xué)鍵之間的角度。
兩種圖片展示方式都表達(dá)了AlphaFold預(yù)測的準(zhǔn)確度,像素亮度代表氨基酸之間的距離,像素顏色越亮,兩個殘基(residues)對就越近。第一行圖片是真實(shí)距離,中間一行圖片展示的是平均距離。
具體操作步驟為用神經(jīng)網(wǎng)絡(luò)預(yù)測蛋白質(zhì)中的每一對殘基的概率分布,然后將這些概率合并為一個分?jǐn)?shù),從而能夠估計預(yù)測蛋白質(zhì)結(jié)構(gòu)的準(zhǔn)確性。另外,還訓(xùn)練了一個單獨(dú)的神經(jīng)網(wǎng)絡(luò),基于所有距離的總和來評估預(yù)測的蛋白質(zhì)結(jié)構(gòu)與實(shí)際的結(jié)構(gòu)的接近程度。然后使用評分系統(tǒng)(也是用神經(jīng)網(wǎng)絡(luò)構(gòu)建)找到最優(yōu)的預(yù)測。
雷鋒網(wǎng)(公眾號:雷鋒網(wǎng)):整個蛋白質(zhì)結(jié)構(gòu)預(yù)測的過程
第二種方法是采用梯度下降優(yōu)化分?jǐn)?shù),從而達(dá)到更準(zhǔn)確的精度。更具體的是將梯度下降應(yīng)用在整個蛋白質(zhì)結(jié)構(gòu)鏈的預(yù)測過程,而不僅僅是蛋白質(zhì)展開的“碎片”。
模型簡介
https://www.biorxiv.org/content/10.1101/846279v1.full.pdf
根據(jù)DeepMind公開的論文《Improved protein structure prediction using predicted inter-residue orientations》。AlphaFold由深度學(xué)習(xí)和傳統(tǒng)算法混合而成:CNN+Rosetta。
具體來說構(gòu)建神經(jīng)網(wǎng)絡(luò)預(yù)測殘基間的方向和距離,然后用Rosetta對蛋白質(zhì)結(jié)構(gòu)同源建模、結(jié)構(gòu)修復(fù)。同時設(shè)計一種Rosetta的優(yōu)化方法來補(bǔ)充Rosetta能量函數(shù)的預(yù)測約束,進(jìn)而生成更精確的模型。
盡管訓(xùn)練數(shù)據(jù)集全部為天然的蛋白質(zhì),但該模型始終將更高的概率分配給新設(shè)計的蛋白質(zhì),并找到?jīng)Q定殘基的關(guān)鍵折疊和建立蛋白質(zhì)結(jié)構(gòu)“理想性(ideality)”的獨(dú)立定量衡量標(biāo)準(zhǔn)。
更為具體的,模型的由兩個關(guān)鍵部分組成:一個是深度殘差卷積神經(jīng)網(wǎng)絡(luò),即將多序列比對( multiple sequence alignments)作為輸入;輸出的信息為蛋白質(zhì)中的殘基對中的相對距離和方向。
另一個是在網(wǎng)絡(luò)輸出的基礎(chǔ)上針對殘基對的距離和方向最小化的約束建立快速Rosetta模型(fast Rosetta model)在訓(xùn)練數(shù)據(jù)集方面,DeepMind使用的蛋白質(zhì)數(shù)據(jù)庫(PDB)里面有15051個蛋白質(zhì)鏈條信息,其中有30%是被標(biāo)注的數(shù)據(jù)。
關(guān)于對模型的測試,DeepMind使用的是兩個獨(dú)立的測試集:第一個來自CASP13,第二個來自CAMEO實(shí)驗(yàn)。另外,在CASP13數(shù)據(jù)集上,DeepMind使用完整的蛋白質(zhì)序列而不是結(jié)構(gòu)域序列來模擬。
圖注:A:用角度和距離表示從一個殘基到另一殘基的轉(zhuǎn)換。B:神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)根據(jù)MSA預(yù)測殘基間的幾何形狀;C:預(yù)測過程概覽
在殘基間的幾何預(yù)測方面,DeepMind使用深度殘差神經(jīng)網(wǎng)絡(luò)。與大多數(shù)預(yù)測方法不同,DeepMind除了預(yù)測化學(xué)鍵之間的距離之外,殘基對之間的方位也屬于其預(yù)測的范圍。如上圖所示,殘基1與殘基2之間的方位由3個二面角以及2個平面角表示。其中ω表示沿虛軸(連接兩個殘基的原子)旋轉(zhuǎn)角度。平面角定義了從殘基1看到殘基2的Cβ原子的方向。另外,與d和ω不同,θ和φ坐標(biāo)是不對稱的,其取決于殘基的順序。綜上6個參數(shù)d,ω,定義了兩個殘基的主干原子的相對位置,這6個參數(shù)也是神經(jīng)網(wǎng)絡(luò)所要預(yù)測的。
神經(jīng)網(wǎng)絡(luò)的輸入是從MSA提取的特征,并且執(zhí)行動態(tài)運(yùn)算。輸入的一維特征包括:蛋白質(zhì)氨基酸序列的獨(dú)熱編碼、位置特定頻率矩陣(position-specific frequency matrix)、配位熵(positional entropy)。隨后這些一維特征被水平和垂直平鋪,然后堆疊在一起以產(chǎn)生2×42=84個2維特征映射。此外,DeepMind從MSA中提取配對統(tǒng)計信息,這些信息從輸入MSA構(gòu)造的縮小協(xié)方差矩陣的逆導(dǎo)出的耦合來表示。首先計算一個站點(diǎn)(one-site)和兩個站點(diǎn)(two-site)的頻率計數(shù),計算公式如下:
其中,A和B分別表示氨基酸的屬性,δ是克羅內(nèi)克函數(shù),Wm是MSA中序列數(shù)目的倒數(shù),與序列m至少有80%的序列同源性。其中
然后計算樣本協(xié)方差矩陣,公式如下:
接下來在收縮(即通過在對角線上附加恒定權(quán)重進(jìn)行正則化)之后求其逆(也稱為精度矩陣):
范數(shù)轉(zhuǎn)換:
最后修正:
在具體的訓(xùn)練過程中,DeepMind使用交叉熵進(jìn)行評估,其評估結(jié)果是總損失等于4個擁有同樣權(quán)重的分支網(wǎng)絡(luò)的損失之和。另外,使用學(xué)習(xí)率為1e-4的Adam優(yōu)化器,Dropout保持85%的概率。并隨機(jī)地對輸入MSAs在對數(shù)尺度上平均進(jìn)行采樣,長度超過300個氨基酸的大蛋白質(zhì)會被隨機(jī)切片。然后對于距離分布,將概率值通過以下等式將概率值轉(zhuǎn)換為分?jǐn)?shù):
上述公式中的a是常數(shù)(=1.57),di是第i個bin的距離,
pi是第i個bin的距離的概率,N是bin的總數(shù)。
對于方向的分布,不考慮歸一化的情況下,概率轉(zhuǎn)分?jǐn)?shù)的公式為:
最后將所有的分?jǐn)?shù)通過Rosetta轉(zhuǎn)化成平滑勢能,并用約束限制勢能最小化。綜上整個模型我們可以歸結(jié)為:扔進(jìn)一個蛋白質(zhì)序列,生成一個結(jié)構(gòu)、一個評分,通過評分判斷是否滿意,不滿意就再生成一個。
代碼簡介
根據(jù)DeepMind提供的Github中介紹,這份代碼包括預(yù)測網(wǎng)絡(luò)、相關(guān)的模型權(quán)重以及在《自然》雜志上發(fā)表的CASP13數(shù)據(jù)集的實(shí)現(xiàn)。此外,還詳細(xì)的介紹了數(shù)據(jù)的下載地址,以及如何輸入數(shù)據(jù);運(yùn)行系統(tǒng)如何操作也給出了詳細(xì)的指導(dǎo)。雷鋒網(wǎng) AI科技評論在下方再次給出github地址,感興趣的讀者趕緊去上手試一試吧!
https://github.com/deepmind/deepmind-research/tree/master/alphafold_casp13