本公開(kāi)涉及數(shù)據(jù)處理,更具體地,涉及一種生物分子序列搜索方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、同源性搜索(homology?search)是一種生物信息學(xué)方法,通過(guò)比較脫氧核糖核酸(deoxyribonucleic?acid,dna)、核糖核酸(ribonucleic?acid,rna)或蛋白質(zhì)等生物分子序列,來(lái)尋找與新序列具有相似性的已知序列,從而進(jìn)一步推斷新序列的功能、結(jié)構(gòu)或潛在的生物學(xué)角色。核心概念“同源性”指不同物種中由共同祖先傳承下來(lái)的序列,因而具有相似的結(jié)構(gòu)或功能。
2、同源性搜索廣泛應(yīng)用于基因功能注釋、進(jìn)化生物學(xué)和藥物研發(fā)中,例如,用于新的基因或蛋白質(zhì)的功能預(yù)測(cè),以及尋找具有潛在藥物靶點(diǎn)的蛋白質(zhì)家族成員,是現(xiàn)代生物研究中不可或缺的工具。傳統(tǒng)的同源序列搜索工具無(wú)法勝任當(dāng)前大量的搜索任務(wù),受人工智能技術(shù)的啟發(fā),研究人員逐漸將深度學(xué)習(xí)方法引入同源序列搜索中。
3、同源生物分子序列的搜索可以包括基于結(jié)構(gòu)字母的搜索方法、基于轉(zhuǎn)移學(xué)習(xí)的搜索方法,目前,基于深度學(xué)習(xí)的方法可以直接實(shí)現(xiàn)端到端的同源生物分子序列的搜索。這種端到端方法在訓(xùn)練時(shí)需要利用大規(guī)模的生物序列數(shù)據(jù)集,以學(xué)到序列中的隱含模式,然而這些方法對(duì)生物序列進(jìn)行同源生物序列搜索的效率較低和準(zhǔn)確性較差。
技術(shù)實(shí)現(xiàn)思路
1、本公開(kāi)實(shí)施例提供一種生物分子序列搜索方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)??梢栽谔岣咄瓷镄蛄兴阉鳒?zhǔn)確性的同時(shí),提高搜索效率。
2、根據(jù)本公開(kāi)的一方面,提供了一種生物分子序列搜索方法,該生物分子序列搜索方法包括:獲取未知生物分子序列;將所述未知生物分子序列輸入至序列編碼模型進(jìn)行序列編碼,得到未知生物分子序列表示;通過(guò)所述未知生物分子序列表示,分別對(duì)生物分子序列向量數(shù)據(jù)庫(kù)中不同的候選向量集進(jìn)行相似性搜索,所述候選向量集中的每個(gè)候選向量對(duì)應(yīng)的候選生物分子序列的序列長(zhǎng)度相同;根據(jù)相似性搜索結(jié)果,分別從每個(gè)候選向量集中搜索出預(yù)設(shè)數(shù)量的已知生物分子序列表示;從多個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列中,篩選出所述未知生物分子序列對(duì)應(yīng)的同源生物分子序列。
3、根據(jù)本公開(kāi)的另一方面,提供了一種生物分子序列搜索裝置,該生物分子序列搜索裝置包括:序列獲取模塊,用于獲取未知生物分子序列;序列編碼模塊,用于將所述未知生物分子序列輸入至序列編碼模型進(jìn)行序列編碼,得到未知生物分子序列表示;序列搜索模塊,用于通過(guò)所述未知生物分子序列表示,分別對(duì)生物分子序列向量數(shù)據(jù)庫(kù)中不同的候選向量集進(jìn)行相似性搜索,所述候選向量集中的每個(gè)候選向量對(duì)應(yīng)的候選生物分子序列的序列長(zhǎng)度相同;表示搜索模塊,用于根據(jù)相似性搜索結(jié)果,分別從每個(gè)候選向量集中搜索出預(yù)設(shè)數(shù)量的已知生物分子序列表示;同源確定模塊,用于從多個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列中,篩選出所述未知生物分子序列對(duì)應(yīng)的同源生物分子序列。
4、可選地,同源確定模塊可以包括重排序子模塊以及序列篩選子模塊。重排序子模塊,用于對(duì)多個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列進(jìn)行序列重排序,得到目標(biāo)生物分子序列排序;序列篩選子模塊,用于從所述目標(biāo)生物分子序列排序中,篩選出所述未知生物分子序列對(duì)應(yīng)的同源生物分子序列。
5、可選地,重排序子模塊可以包括序列組合單元、評(píng)分預(yù)測(cè)單元以及重排序單元。序列組合單元,用于將每個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列,分別與所述未知生物分子序列組成對(duì)應(yīng)的生物分子序列對(duì);評(píng)分預(yù)測(cè)單元,用于針對(duì)每個(gè)生物分子序列對(duì),將所述生物分子序列對(duì)輸入至序列評(píng)分模型進(jìn)行序列關(guān)系評(píng)分預(yù)測(cè),得到所述每個(gè)生物分子序列對(duì)所對(duì)應(yīng)的序列關(guān)系評(píng)分;重排序單元,用于根據(jù)每個(gè)序列關(guān)系評(píng)分進(jìn)行已知生物分子序列的序列重排序,得到目標(biāo)生物分子序列排序。
6、可選地,所述序列評(píng)分模型包括特征提取網(wǎng)絡(luò)和關(guān)系評(píng)分網(wǎng)絡(luò),評(píng)分預(yù)測(cè)單元包括第一子單元、第二子單元以及第三子單元。第一子單元,用于將所述生物分子序列對(duì)中的已知生物分子序列和未知生物分子序列,分別輸入至所述特征提取網(wǎng)絡(luò)進(jìn)行特征提取,得到所述已知生物分子序列對(duì)應(yīng)的第一分子序列表示和所述未知生物分子序列對(duì)應(yīng)的第二分子序列表示;第二子單元,用于計(jì)算所述第一分子序列表示和所述第二分子序列表示之間差的絕對(duì)值,得到分子序列表示對(duì)差值;第三子單元,用于將所述分子序列表示對(duì)差值輸入至所述關(guān)系評(píng)分網(wǎng)絡(luò)進(jìn)行序列關(guān)系評(píng)分預(yù)測(cè),得到所述生物分子序列對(duì)的序列關(guān)系評(píng)分。
7、可選地,第三子單元可以具體用于:將所述分子序列表示對(duì)差值輸入至所述關(guān)系評(píng)分網(wǎng)絡(luò),根據(jù)所述分子序列表示對(duì)差值預(yù)測(cè)所述生物分子序列對(duì)在每個(gè)預(yù)設(shè)序列關(guān)系類別下的類別預(yù)測(cè)概率;對(duì)每個(gè)類別預(yù)測(cè)概率進(jìn)行歸一化處理,得到每個(gè)預(yù)設(shè)序列關(guān)系類別對(duì)應(yīng)的歸一化預(yù)測(cè)概率;根據(jù)每個(gè)歸一化預(yù)測(cè)概率,將最大歸一化預(yù)測(cè)概率確定為所述生物分子序列對(duì)的序列關(guān)系評(píng)分。
8、可選地,重排序單元可以具體用于:針對(duì)每個(gè)生物分子序列對(duì),對(duì)所述生物分子序列對(duì)進(jìn)行通用的序列相似性評(píng)分預(yù)測(cè),得到所述每個(gè)生物分子序列對(duì)的通用序列相似性評(píng)分;對(duì)每個(gè)生物分子序列對(duì)的序列關(guān)系評(píng)分和通用序列相似性評(píng)分進(jìn)行加權(quán)計(jì)算,得到對(duì)應(yīng)的序列加權(quán)評(píng)分;根據(jù)每個(gè)生物分子序列對(duì)的序列加權(quán)評(píng)分,對(duì)每個(gè)生物分子序列對(duì)中的已知生物分子序列進(jìn)行序列重排序,得到目標(biāo)生物分子序列排序。
9、可選地,序列篩選子模塊可以具體用于:從所述目標(biāo)生物分子序列排序中,按照序列加權(quán)評(píng)分由大到小的順序選取多個(gè)目標(biāo)生物分子序列;將所述多個(gè)目標(biāo)生物分子序列作為所述未知生物分子序列對(duì)應(yīng)的同源生物分子序列。
10、可選地,生物分子序列搜索裝置還可以包括樣本獲取模塊、關(guān)系預(yù)測(cè)模塊、誤差計(jì)算模塊以及模型訓(xùn)練模塊。樣本獲取模塊,用于獲取第一樣本生物分子序列和第二樣本生物分子序列,以及所述第一樣本生物分子序列和所述第二樣本生物分子序列對(duì)應(yīng)的樣本序列關(guān)系類別;關(guān)系預(yù)測(cè)模塊,用于將所述第一樣本生物分子序列和所述第二樣本生物分子序列,分別輸入至預(yù)設(shè)評(píng)分模型進(jìn)行序列關(guān)系預(yù)測(cè),得到預(yù)測(cè)序列關(guān)系類別;誤差計(jì)算模塊,用于根據(jù)所述預(yù)測(cè)序列關(guān)系類別和所述樣本序列關(guān)系類別進(jìn)行誤差計(jì)算,得到目標(biāo)損失;模型訓(xùn)練模塊,用于通過(guò)所述目標(biāo)損失對(duì)所述預(yù)設(shè)評(píng)分模型進(jìn)行迭代訓(xùn)練,直至滿足訓(xùn)練結(jié)束條件,得到序列評(píng)分模型。
11、可選地,重排序子模塊可以具體用于:根據(jù)相似性搜索結(jié)果,獲取每個(gè)已知生物分子序列表示對(duì)應(yīng)的序列相似度;根據(jù)每個(gè)序列相似度,對(duì)每個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列進(jìn)行排序,得到目標(biāo)生物分子序列排序;序列篩選子模塊可以具體用于從所述目標(biāo)生物分子序列排序中,按照序列相似度由大到小的順序選取多個(gè)已知生物分子序列;將所述多個(gè)已知生物分子序列確定為所述未知生物分子序列對(duì)應(yīng)的同源生物分子序列。
12、可選地,序列搜索模塊可以具體用于:針對(duì)生物分子序列向量數(shù)據(jù)庫(kù)中不同的候選向量集,將所述未知生物分子序列表示并行與所述候選向量集中每個(gè)候選向量進(jìn)行相似度計(jì)算,得到所述不同的候選向量集中每個(gè)候選向量對(duì)應(yīng)的序列相似度;表示搜索模塊可以具體用于根據(jù)所述不同的候選向量集中每個(gè)候選向量對(duì)應(yīng)的序列相似度,對(duì)每個(gè)候選向量集中的候選向量進(jìn)行相似度降序排序,得到所述每個(gè)候選向量集對(duì)應(yīng)的相似序列排序;根據(jù)所述相似序列排序的降序順序,依次從每個(gè)候選向量集選取預(yù)設(shè)數(shù)量的目標(biāo)候選向量作為已知生物分子序列表示。
13、可選地,序列編碼模型包括蛋白質(zhì)編碼器、核苷酸編碼器和池化層,序列編碼模塊可以具體用于:當(dāng)檢測(cè)到所述未知生物分子序列的生物分子類別為蛋白質(zhì)分子時(shí),將所述未知生物分子序列輸入至所述蛋白質(zhì)編碼器進(jìn)行序列編碼,得到蛋白質(zhì)序列特征,并將所述蛋白質(zhì)序列特征輸入所述池化層進(jìn)行池化操作,得到生物分子類別為蛋白質(zhì)分子的未知生物分子序列表示;當(dāng)檢測(cè)到所述未知生物分子序列的生物分子類別為核苷酸分子時(shí),將所述未知生物分子序列輸入至所述核苷酸編碼器進(jìn)行序列編碼,得到核苷酸序列特征,并將所述核苷酸序列特征輸入所述池化層進(jìn)行池化操作,得到生物分子類別為核苷酸分子的未知生物分子序列表示。
14、可選地,生物分子序列搜索裝置還可以包括標(biāo)簽獲取模塊以及向量過(guò)濾模塊。標(biāo)簽獲取模塊,用于獲取未知生物分子序列對(duì)應(yīng)的序列標(biāo)簽;向量過(guò)濾模塊,用于通過(guò)所述序列標(biāo)簽,對(duì)生物分子序列向量數(shù)據(jù)庫(kù)中每個(gè)向量數(shù)據(jù)段進(jìn)行向量過(guò)濾,得到每個(gè)向量數(shù)據(jù)段對(duì)應(yīng)的候選向量集。
15、可選地,向量過(guò)濾模塊可以具體用于:獲取生物分子序列向量數(shù)據(jù)庫(kù)中的每個(gè)向量數(shù)據(jù)段;針對(duì)每個(gè)向量數(shù)據(jù)段,對(duì)所述序列標(biāo)簽和所述向量數(shù)據(jù)段中的每個(gè)序列向量對(duì)應(yīng)的向量標(biāo)簽進(jìn)行匹配,將所述向量數(shù)據(jù)段中向量標(biāo)簽與所述序列標(biāo)簽匹配的序列向量確定為候選向量,并將所述候選向量存儲(chǔ)至所述向量數(shù)據(jù)段對(duì)應(yīng)的候選向量集。
16、可選地,生物分子序列搜索裝置還可以包括分子序列獲取模塊、分子序列編碼模塊、向量標(biāo)簽確定模塊、序列表示存儲(chǔ)模塊以及向量標(biāo)簽存儲(chǔ)模塊。分子序列獲取模塊,用于獲取待存生物分子序列;分子序列編碼模塊,用于將所述待存生物分子序列輸入至序列編碼模型,得到生物分子序列表示;向量標(biāo)簽確定模塊,用于獲取所述待存生物分子序列對(duì)應(yīng)的生物分子序列元數(shù)據(jù),并根據(jù)所述生物分子序列元數(shù)據(jù)確定所述生物分子序列表示對(duì)應(yīng)的向量標(biāo)簽;序列表示存儲(chǔ)模塊,用于根據(jù)所述待存生物分子序列的序列長(zhǎng)度,將所述生物分子序列表示存儲(chǔ)至生物分子序列向量數(shù)據(jù)庫(kù)中對(duì)應(yīng)的向量數(shù)據(jù)段,所述向量數(shù)據(jù)段中的每個(gè)向量對(duì)應(yīng)的生物分子序列的序列長(zhǎng)度與所述待存生物分子序列的序列長(zhǎng)度相同;向量標(biāo)簽存儲(chǔ)模塊,用于將所述向量標(biāo)簽存儲(chǔ)至所述生物分子序列向量數(shù)據(jù)庫(kù)。
17、根據(jù)本公開(kāi)的另一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,其中,在該計(jì)算機(jī)程序被處理器運(yùn)行時(shí)執(zhí)行上述的生物分子序列搜索方法。
18、根據(jù)本公開(kāi)的另一方面,提供了一種計(jì)算機(jī)設(shè)備,該計(jì)算機(jī)設(shè)備包括處理器以及存儲(chǔ)器,存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器調(diào)用時(shí)執(zhí)行上述的生物分子序列搜索方法。
19、根據(jù)本公開(kāi)的另一方面,提供了一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)程序或計(jì)算機(jī)指令,該計(jì)算機(jī)程序或計(jì)算機(jī)指令存儲(chǔ)在存儲(chǔ)介質(zhì)中;計(jì)算機(jī)設(shè)備的處理器從存儲(chǔ)介質(zhì)讀取該計(jì)算機(jī)程序或計(jì)算機(jī)指令,處理器執(zhí)行該計(jì)算機(jī)程序或計(jì)算機(jī)指令,使得計(jì)算機(jī)設(shè)備執(zhí)行上述生物分子序列搜索方法。
20、本公開(kāi)實(shí)施例通過(guò)序列編碼模型可以將獲取的未知生物分子序列編碼為未知生物分子序列表示,進(jìn)而通過(guò)未知生物分子序列表示,在低維的向量空間能夠?qū)ι锓肿有蛄邢蛄繑?shù)據(jù)庫(kù)中不同的候選向量集分別進(jìn)行快速的相似性搜索,進(jìn)而根據(jù)相似性搜索結(jié)果,從每個(gè)候選向量集中高效地搜索出預(yù)設(shè)數(shù)量的已知生物分子序列表示。該向量數(shù)據(jù)庫(kù)中,同一個(gè)候選向量集中的每個(gè)候選向量對(duì)應(yīng)的候選生物分子序列的序列長(zhǎng)度相同,不同候選向量集中的候選向量對(duì)應(yīng)的候選分子序列之間的序列長(zhǎng)度不同,所以在相似性搜索時(shí),通過(guò)對(duì)相同序列長(zhǎng)度的生物分子序列對(duì)應(yīng)的候選向量分別進(jìn)行相似性搜索,能夠避免候選向量集中的局部相似度較高,但在整個(gè)生物分子序列向量數(shù)據(jù)庫(kù)中全局相似度較低的候選向量被誤選為與未知生物分子序列表示相似的已知生物分子序列表示,從而,提高相似性搜索得到的已知生物分子序列表示的準(zhǔn)確度。相比于有關(guān)技術(shù)僅通過(guò)對(duì)生物分子序列進(jìn)行相似性搜索的方法,本公開(kāi)還能夠在多個(gè)已知生物分子序列表示對(duì)應(yīng)的已知生物分子序列的基礎(chǔ)上,篩選出未知生物分子序列對(duì)應(yīng)的同源生物分子序列。如此,通過(guò)快速的相似性搜索得到多個(gè)已知生物分子序列,并再對(duì)多個(gè)準(zhǔn)確度較高的已知生物分子序列做進(jìn)一步地篩選,能夠篩選出高質(zhì)量的同源生物分子序列,從而,在提高同源生物分子序列搜索的精確度的同時(shí),也提高同源生物分子序列搜索的效率。
21、本公開(kāi)的其他特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分地從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本公開(kāi)而了解。本公開(kāi)的目的和其他優(yōu)點(diǎn)可通過(guò)在說(shuō)明書(shū)、權(quán)利要求書(shū)以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。