本技術(shù)涉及3d分子重構(gòu),特別是涉及一種3d分子生成模型的訓練方法及裝置。
背景技術(shù):
1、近年來,分子生成技術(shù)在藥物設計和發(fā)現(xiàn)領(lǐng)域取得了顯著進展。2d分子生成方法因其速度快、效率高而備受關(guān)注,但其固有的局限性也日益顯現(xiàn)。由于2d分子生成過程缺乏蛋白和小分子之間的充分相互作用和交互,這些生成的分子與蛋白口袋的關(guān)聯(lián)性較低,導致生成的分子往往無效。
2、目前,3d分子生成算法逐漸成為主流,這些算法能夠更好地捕捉蛋白-配體相互作用的復雜性。例如,pocket2mol和difflinker等算法展示了較為優(yōu)異的效果。然而,pocket2mol采用自回歸式生成方式,無法在分子生成過程中實現(xiàn)全局關(guān)聯(lián)。而difflinker算法需要提前給定或預測生成的原子數(shù)量作為條件,具有較強的局限性。此外,這兩種方法在生成過程中無法同時完成rgroup、linker和denovo生成。
3、現(xiàn)有的3d生成算法存在以下問題:
4、1、全局關(guān)聯(lián)性不足:如pocket2mol,由于采用自回歸式生成方式,無法在分子生成過程中實現(xiàn)分子與蛋白口袋的全局關(guān)聯(lián)。
5、2、條件局限性:如difflinker,需提前給定或預測生成的原子數(shù)量,限制了算法的靈活性和適用性。
6、3、生成范圍局限:現(xiàn)有方法無法同時完成r基團、連接子和自發(fā)生成,導致生成過程的多樣性和復雜性不足。
技術(shù)實現(xiàn)思路
1、本技術(shù)實施例所要解決的技術(shù)問題是提供一種3d分子生成模型的訓練方法及裝置,以達到支持多種分子生成方式,確保分子不會與蛋白產(chǎn)生沖突,以及增強構(gòu)象的合理性的目的。
2、第一方面,本技術(shù)實施例提供了一種3d分子生成模型的訓練方法,所述方法包括:
3、獲取模型訓練樣本,所述模型訓練樣本包括:指定分子生成方式下的分子的sdf特征、蛋白口袋的sdf特征和所述分子的分子保留部分的sdf特征;所述sdf特征用于表征分子的三維格點中每個格點到達距離其最近的原子的距離,以及每個格點的類型由距離最近其最近的格點的原子類型決定;
4、在第一訓練階段,將所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征作為分子約束條件,基于所述分子的sdf特征和所述分子約束條件對待訓練3d分子生成模型中的條件變分自編碼器進行訓練;
5、在第二訓練階段,凍結(jié)所述條件變分自編碼器的參數(shù),訓練所述待訓練3d分子生成模型中的擴散網(wǎng)絡擬合所述條件變分自編碼器中編碼器輸出的隱向量,以訓練得到3d分子生成模型。
6、可選地,所述獲取模型訓練樣本,包括:
7、在所述指定分子生成方式為denovo生成方式的情況下,基于dfs遞歸遍歷方式對所述分子進行遍歷,構(gòu)建得到所述分子的原子順序;
8、對所述分子進行加噪處理,得到加噪后的分子;
9、構(gòu)建所述加噪后的分子的sdf特征、及所述蛋白口袋的sdf特征;
10、將所述分子的原子順序、所述加噪后的分子的sdf特征、及所述蛋白口袋的sdf特征作為所述模型訓練樣本。
11、可選地,所述獲取模型訓練樣本,包括:
12、在所述指定分子生成方式為r-group生成方式的情況下,獲取所述分子對應的分子片段的分子斷點,并對所述分子片段添加斷點標識;
13、將每個分子片段的所述分子斷點優(yōu)先加入遍歷隊列內(nèi),并基于bfs遞歸遍歷方式對所述分子片段進行遍歷,構(gòu)建得到所述分子片段的原子順序;
14、對兩個所述分子片段中的待生成分子片段進行加噪處理,得到加噪后的分子片段;
15、構(gòu)建所述加噪后的分子片段的sdf特征、及所述蛋白口袋的sdf特征和兩個所述分子片段中片段保留部分的sdf特征;
16、將所述分子片段的原子順序、所述加噪后的分子片段的sdf特征、及所述蛋白口袋的sdf特征和片段保留部分的sdf特征作為所述模型訓練樣本。
17、可選地,所述獲取模型訓練樣本,包括:
18、在所述指定分子生成方式為linker生成方式的情況下,獲取所述分子對應的三個分子片段的分子斷點,并對所述三個分子片段添加斷點標識;
19、將每個所述分子斷點優(yōu)先加入遍歷隊列內(nèi),并基于bfs遞歸遍歷方式對每個所述分子片段進行遍歷,構(gòu)建得到每個所述分子片段的原子順序;
20、對三個所述分子片段中的待生成分子片段進行加噪處理,得到加噪后的分子片段;
21、構(gòu)建所述加噪后的分子片段的sdf特征、所述蛋白口袋的sdf特征和三個所述分子片段中片段保留部分的sdf特征;
22、將每個所述分子片段的原子順序、所述加噪后的分子片段的sdf特征、所述蛋白口袋的sdf特征和片段保留部分的sdf特征作為所述模型訓練樣本。
23、可選地,所述條件變分自編碼器包括:兩個并聯(lián)的第一編碼器和第二編碼器、及與所述第一編碼器和所述第二編碼器連接的解碼器,
24、所述將所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征作為分子約束條件,基于所述分子的sdf特征和所述分子約束條件對待訓練3d分子生成模型中的條件變分自編碼器進行訓練,包括:
25、調(diào)用所述第一編碼器對所述分子的sdf特征、所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征進行特征處理,得到輸入信息的隱向量;
26、調(diào)用所述第二編碼器對所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征進行特征處理,得到分子約束條件向量;
27、調(diào)用所述解碼器對所述分子約束條件向量和所述隱向量進行處理,得到預測3d分子構(gòu)象;
28、基于所述預測3d分子構(gòu)象和所述模型訓練樣本的真實構(gòu)象,計算得到所述條件變分自編碼器的損失值;
29、在所述損失值處于預設范圍內(nèi)的情況下,確定所述條件變分自編碼器訓練完成。
30、可選地,所述調(diào)用所述解碼器對所述分子約束條件向量和所述隱向量進行處理,得到預測3d分子構(gòu)象,包括:
31、對所述隱向量隨機添加高斯噪聲,得到加噪隱向量;
32、將所述分子約束條件向量和所述加噪隱向量輸入至所述解碼器;
33、調(diào)用所述解碼器對分子約束條件向量和所述加噪隱向量進行處理,得到所述預測3d分子構(gòu)象。
34、可選地,所述訓練所述待訓練3d分子生成模型中的擴散網(wǎng)絡擬合所述條件變分自編碼器中編碼器輸出的隱向量,包括:
35、調(diào)用所述擴散網(wǎng)絡的transformerblock先計算所述隱向量的x軸和y軸的注意力特征,再計算z軸的注意力特征;
36、調(diào)用所述擴散網(wǎng)絡的基于ode的rectified?flow根據(jù)計算得到的注意力特征,對所述隱向量進行降噪處理,得到所述隱向量在當前時刻的預測高斯噪聲;
37、基于所述預測高斯噪聲,計算得到所述擴散網(wǎng)絡的損失值;
38、在所述損失值處于預設范圍內(nèi)的情況下,確定所述擴散網(wǎng)絡訓練完成。
39、可選地,在所述訓練得到3d分子生成模型之后,還包括:
40、獲取蛋白口袋;
41、對高斯分布進行采樣得到采樣特征;
42、調(diào)用所述條件變分自編碼器的編碼器對所述蛋白口袋進行處理,得到蛋白口袋編碼向量表征;
43、基于擴散網(wǎng)絡基于所述蛋白口袋編碼向量表征對采樣特征進行迭代處理,以使所述采樣特征從高斯分布逐步遷移至小分子在隱空間上的分布,得到所述采樣特征在隱空間上的分布向量表征;
44、調(diào)用所述條件變分自編碼器的解碼器基于所述蛋白口袋編碼向量表征對所述分布向量表征進行自解碼處理,得到3d分子構(gòu)象。
45、可選地,所述調(diào)用所述條件變分自編碼器的解碼器基于所述蛋白口袋編碼向量表征對所述分布向量表征進行自解碼處理,得到3d分子構(gòu)象,包括:
46、調(diào)用所述條件變分自編碼器的解碼器基于所述蛋白口袋編碼向量表征對所述分布向量表征進行自解碼處理,得到初始3d分子構(gòu)象;
47、將所述初始3d分子構(gòu)象重新輸入至所述條件變分自編碼器的編碼器和解碼器進行去噪優(yōu)化處理,得到所述3d分子構(gòu)象。
48、第二方面,本技術(shù)實施例提供了一種3d分子生成模型的訓練裝置,所述裝置包括:
49、模型樣本獲取模塊,用于獲取模型訓練樣本,所述模型訓練樣本包括:指定分子生成方式下的分子的sdf特征、蛋白口袋的sdf特征和所述分子的分子保留部分的sdf特征;所述sdf特征用于表征分子的三維格點中每個格點到達距離其最近的原子的距離,以及每個格點的類型由距離最近其最近的格點的原子類型決定;
50、自編碼器訓練模塊,用于在第一訓練階段,將所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征作為分子約束條件,基于所述分子的sdf特征和所述分子約束條件對待訓練3d分子生成模型中的條件變分自編碼器進行訓練;
51、擴散網(wǎng)絡訓練模塊,用于在第二訓練階段,凍結(jié)所述條件變分自編碼器的參數(shù),訓練所述待訓練3d分子生成模型中的擴散網(wǎng)絡擬合所述條件變分自編碼器中編碼器輸出的隱向量,以訓練得到3d分子生成模型。
52、可選地,所述模型樣本獲取模塊包括:
53、第一原子順序構(gòu)建單元,用于在所述指定分子生成方式為denovo生成方式的情況下,基于dfs遞歸遍歷方式對所述分子進行遍歷,構(gòu)建得到所述分子的原子順序;
54、第一加噪分子獲取單元,用于對所述分子進行加噪處理,得到加噪后的分子;
55、第一sdf特征構(gòu)建單元,用于構(gòu)建所述加噪后的分子的sdf特征、及所述蛋白口袋的sdf特征;
56、第一樣本獲取單元,用于將所述分子的原子順序、所述加噪后的分子的sdf特征、及所述蛋白口袋的sdf特征作為所述模型訓練樣本。
57、可選地,所述模型樣本獲取模塊包括:
58、分子斷點獲取單元,用于在所述指定分子生成方式為r-group生成方式的情況下,獲取所述分子對應的分子片段的分子斷點,并對所述分子片段添加斷點標識;
59、第二原子順序構(gòu)建單元,用于將每個分子片段的所述分子斷點優(yōu)先加入遍歷隊列內(nèi),并基于bfs遞歸遍歷方式對所述分子片段進行遍歷,構(gòu)建得到每個所述分子片段的原子順序;
60、第二加噪分子獲取單元,用于對兩個所述分子片段中的待生成分子片段進行加噪處理,得到加噪后的分子片段;
61、第二sdf特征構(gòu)建單元,用于構(gòu)建所述加噪后的分子片段的sdf特征、及所述蛋白口袋的sdf特征和兩個所述分子片段中片段保留部分的sdf特征;
62、第二樣本獲取單元,用于將所述分子片段的原子順序、所述加噪后的分子片段的sdf特征、所述蛋白口袋的sdf特征和片段保留部分的sdf特征作為所述模型訓練樣本。
63、可選地,所述模型樣本獲取模塊包括:
64、斷點標識添加單元,用于在所述指定分子生成方式為linker生成方式的情況下,獲取所述分子對應的三個分子片段的分子斷點,并對所述三個分子片段添加斷點標識;
65、第三原子順序構(gòu)建單元,用于將每個所述分子斷點優(yōu)先加入遍歷隊列內(nèi),并基于bfs遞歸遍歷方式對每個所述分子片段進行遍歷,構(gòu)建得到每個所述分子片段的原子順序;
66、第三加噪分子獲取單元,用于對三個所述分子片段中的待生成分子片段進行加噪處理,得到加噪后的分子片段;
67、第三sdf特征構(gòu)建單元,用于構(gòu)建所述加噪后的分子片段的sdf特征、所述蛋白口袋的sdf特征和三個所述分子片段中片段保留部分的sdf特征;
68、第三樣本獲取單元,用于將每個所述分子片段的原子順序、所述加噪后的分子片段的sdf特征、所述蛋白口袋的sdf特征和片段保留部分的sdf特征作為所述模型訓練樣本。
69、可選地,所述條件變分自編碼器包括:兩個并聯(lián)的第一編碼器和第二編碼器、及與所述第一編碼器和所述第二編碼器連接的解碼器,
70、所述自編碼器訓練模塊包括:
71、隱向量獲取單元,用于調(diào)用所述第一編碼器對所述分子的sdf特征、所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征進行特征處理,得到輸入信息的隱向量;
72、約束條件向量獲取單元,用于調(diào)用所述第二編碼器對所述蛋白口袋的sdf特征和所述分子保留部分的sdf特征進行特征處理,得到分子約束條件向量;
73、預測分子構(gòu)象獲取單元,用于調(diào)用所述解碼器對所述分子約束條件向量和所述隱向量進行處理,得到預測3d分子構(gòu)象;
74、第一損失計算單元,用于基于所述預測3d分子構(gòu)象和所述模型訓練樣本的真實構(gòu)象,計算得到所述條件變分自編碼器的損失值;
75、自編碼器訓練單元,用于在所述損失值處于預設范圍內(nèi)的情況下,確定所述條件變分自編碼器訓練完成。
76、可選地,所述預測分子構(gòu)象獲取單元包括:
77、加噪向量獲取子單元,用于對所述隱向量隨機添加高斯噪聲,得到加噪隱向量;
78、向量輸入子單元,用于將所述分子約束條件向量和所述加噪隱向量輸入至所述解碼器;
79、預測分子構(gòu)象獲取子單元,用于調(diào)用所述解碼器對分子約束條件向量和所述加噪隱向量進行處理,得到所述預測3d分子構(gòu)象。
80、可選地,所述擴散網(wǎng)絡訓練模塊包括:
81、注意力特征計算單元,用于調(diào)用所述擴散網(wǎng)絡的transformerblock先計算所述隱向量的x軸和y軸的注意力特征,再計算z軸的注意力特征;
82、預測高斯分布獲取單元,用于調(diào)用所述擴散網(wǎng)絡的基于ode的rectified?flow根據(jù)計算得到的注意力特征,對所述隱向量進行降噪處理,得到所述隱向量在當前時刻的預測高斯噪聲;
83、第二損失計算單元,用于基于所述預測高斯噪聲,計算得到所述擴散網(wǎng)絡的損失值;
84、擴散網(wǎng)絡訓練單元,用于在所述損失值處于預設范圍內(nèi)的情況下,確定所述擴散網(wǎng)絡訓練完成。
85、可選地,所述裝置還包括:
86、蛋白口袋獲取模塊,用于獲取蛋白口袋;
87、采樣特征獲取模塊,用于對高斯分布進行采樣得到采樣特征;
88、向量表征獲取模塊,用于調(diào)用所述條件變分自編碼器的編碼器對所述蛋白口袋進行處理,得到蛋白口袋編碼向量表征;
89、分布表征獲取模塊,用于基于擴散網(wǎng)絡基于所述蛋白口袋編碼向量表征對采樣特征進行迭代處理,以使所述采樣特征從高斯分布逐步遷移至小分子在隱空間上的分布,得到所述采樣特征在隱空間上的分布向量表征;
90、3d分子構(gòu)象獲取模塊,用于調(diào)用所述條件變分自編碼器的解碼器基于所述蛋白口袋編碼向量表征對所述分布向量表征進行自解碼處理,得到3d分子構(gòu)象。
91、可選地,所述3d分子構(gòu)象獲取模塊包括:
92、初始分子構(gòu)象獲取單元,用于調(diào)用所述條件變分自編碼器的解碼器基于所述蛋白口袋編碼向量表征對所述分布向量表征進行自解碼處理,得到初始3d分子構(gòu)象;
93、3d分子構(gòu)象獲取單元,用于將所述初始3d分子構(gòu)象重新輸入至所述條件變分自編碼器的編碼器和解碼器進行去噪優(yōu)化處理,得到所述3d分子構(gòu)象。
94、第三方面,本技術(shù)實施例提供了一種電子設備,包括:
95、處理器、存儲器以及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)上述任一項所述的3d分子生成模型的訓練方法。
96、第四方面,本技術(shù)實施例提供了一種計算機可讀存儲介質(zhì),當所述存儲介質(zhì)中的指令由電子設備的處理器執(zhí)行時,使得電子設備能夠執(zhí)行上述任一項所述的3d分子生成模型的訓練方法。
97、與現(xiàn)有技術(shù)相比,本技術(shù)實施例包括以下優(yōu)點:
98、本技術(shù)實施例中,通過獲取模型訓練樣本,模型訓練樣本包括:指定分子生成方式下的分子的sdf特征、蛋白口袋的sdf特征和分子的分子保留部分的sdf特征,sdf特征用于表征分子的三維格點中每個格點到達距離其最近的原子的距離,以及每個格點的類型由距離最近其最近的格點的原子類型決定。在第一訓練階段,將蛋白口袋的sdf特征和分子保留部分的sdf特征作為分子約束條件,基于分子的sdf特征和分子約束條件對待訓練3d分子生成模型中的條件變分自編碼器進行訓練。在第二訓練階段,凍結(jié)條件變分自編碼器的參數(shù),訓練待訓練3d分子生成模型中的擴散網(wǎng)絡擬合條件變分自編碼器中編碼器輸出的隱向量,以訓練得到3d分子生成模型。本技術(shù)實施例通過按照指定分子生成方式進行3d分子生成模型的訓練,可以使得模型可以支持多種分子生成方式,即可以同時完成r基團、連接子和自發(fā)生成,極大地增強了生成分子的多樣性和復雜性。通過使用擴散網(wǎng)絡來關(guān)聯(lián)蛋白口袋和配體分子的全局信息,從而在3d分子生成過程中實現(xiàn)全局關(guān)聯(lián)。同時無需給定或預測生成的原子數(shù)量,提高了算法的靈活性和適用性。
99、應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本技術(shù)。