本發(fā)明涉及基因測序技術(shù),具體涉及一種dna甲基化測序數(shù)據(jù)計(jì)算解讀方法。
背景技術(shù):
近年來,隨著下一代測序技術(shù)(nextgenerationsequence,ngs)的廣泛應(yīng)用,基因測序的成本迅速下降,基因測序技術(shù)得以在更加廣泛的生物、醫(yī)療、健康、刑偵、農(nóng)業(yè)等等許多領(lǐng)域被推廣應(yīng)用。其中,基于ngs的脫氧核糖核酸(deoxyribo-nucleicacid,dna)甲基化測序是一個非常有應(yīng)用價值的分支領(lǐng)域,受到廣泛的關(guān)注。
甲基化(methylation)是指從活性甲基化合物(如s-腺苷基甲硫氨酸)上將甲基催化轉(zhuǎn)移到其他化合物的過程。甲基化是表觀遺傳學(xué)(epigenetics)的重要研究內(nèi)容之一。最常見的甲基化修飾有dna甲基化和組蛋白甲基化。脊椎動物的dna甲基化一般發(fā)生在cpg位點(diǎn)(sites),即dna序列中的胞嘧啶(cytosine)-磷酸(phosphoricacid)-鳥嘌呤(guanine)位點(diǎn),經(jīng)dna甲基轉(zhuǎn)移酶催化胞嘧啶轉(zhuǎn)化為5-甲基胞嘧啶。人類基因中約80%-90%的cpg位點(diǎn)已被甲基化,1%-2%人類基因組是cpg群,并且cpg甲基化與轉(zhuǎn)錄活性成反比。dna甲基化能引起染色質(zhì)結(jié)構(gòu)、dna構(gòu)象、dna穩(wěn)定性及dna與蛋白質(zhì)相互作用方式的改變,能關(guān)閉某些基因的活性,去甲基化則誘導(dǎo)了基因的重新活化和表達(dá)。例如,已有的研究表明,人的dna甲基化與癌癥、衰老、老年癡呆等許多疾病密切相關(guān),異常的甲基化往往是許多疾病的起因。因此,dna甲基化檢測對于生物研究、醫(yī)療診斷、法醫(yī)生物學(xué)等多個領(lǐng)域具有非常大的應(yīng)用價值。
近年來,科學(xué)家們將傳統(tǒng)的甲基化檢測技術(shù)與目標(biāo)基因組捕獲技術(shù)以及ngs高通量測序技術(shù)相結(jié)合,定量測定人及其它物種基因組中甲基化的技術(shù)已經(jīng)進(jìn)入實(shí)用階段。目前最為常用的是亞硫酸鹽測序法(bisulfitesequencing,bs-seq),即用亞硫酸鹽處理基因組dna,則未發(fā)生甲基化的胞嘧啶被轉(zhuǎn)化為尿嘧啶(uracil),而甲基化的胞嘧啶不變。隨后設(shè)計(jì)bsp(bisulfitesequencingpcr)引物進(jìn)行聚合酶鏈?zhǔn)椒磻?yīng)(polymerasechainreaction,pcr),在擴(kuò)增過程中尿嘧啶全部轉(zhuǎn)化為胸腺嘧啶(thymine),最后對pcr產(chǎn)物進(jìn)行測序就可以判斷cpg位點(diǎn)是否發(fā)生甲基化。
基于ngs的dna甲基化測序的數(shù)據(jù)處理流程包括數(shù)據(jù)計(jì)算和數(shù)據(jù)解讀兩大步驟,其中數(shù)據(jù)計(jì)算步驟完成參考基因組的預(yù)處理和原始測序數(shù)據(jù)的去偽、比對、去重等計(jì)算任務(wù),以便數(shù)據(jù)解讀時使用;數(shù)據(jù)解讀步驟對數(shù)據(jù)計(jì)算處理后的數(shù)據(jù)在生物學(xué)、醫(yī)學(xué)、健康保健等領(lǐng)域的科學(xué)含義進(jìn)行分析、揭示和解釋。
目前,基于ngs的dna甲基化測序技術(shù)在應(yīng)用上存在兩個方面的瓶頸:
一個瓶頸是測序數(shù)據(jù)產(chǎn)出能力遠(yuǎn)遠(yuǎn)大于測序數(shù)據(jù)處理能力。例如,在基于ngs的dna甲基化測序中比較常用的測序數(shù)據(jù)計(jì)算解讀軟件methy-pipe,對典型的、包含300m個讀長為75堿基對(basepair,bp)的短測序片段(reads)的單樣本數(shù)據(jù),在12核intel至強(qiáng)(xeon)處理器上進(jìn)行整個計(jì)算解讀流程中的一個任務(wù)——比對(alignment),就耗時大約5小時,而illumina公司的hiseq4000測序儀在5個小時之內(nèi)能夠產(chǎn)出200m個讀長為300bp的reads。因此,一方面,測序生成的原始數(shù)據(jù)每年3到5倍的增加速度已經(jīng)遠(yuǎn)超摩爾定律,而測序數(shù)據(jù)的計(jì)算解讀又是高輸入/輸出密集和高計(jì)算密集型任務(wù),對測序數(shù)據(jù)進(jìn)行實(shí)時的、準(zhǔn)確的計(jì)算解讀和傳送變得非常困難,面臨著巨大的挑戰(zhàn)。另一方面,目前典型的測序數(shù)據(jù)計(jì)算解讀方法仍然主要是依托高性能的中央處理器(centralprocessingunit,簡稱cpu),運(yùn)用基于多線程技術(shù)的軟件進(jìn)行處理。但是,在保證準(zhǔn)確性的前提下,它能獲得的計(jì)算解讀加速性能仍然無法滿足上述挑戰(zhàn)的需求。所以,這種方法已經(jīng)缺乏持續(xù)性。
另一個瓶頸是測序數(shù)據(jù)解讀的深度、廣度無法滿足科研人員的需求,與此同時其可讀性又無法滿足普通大眾的需求。目前測序數(shù)據(jù)解讀的典型方法是基于一個參考基因組,然而,當(dāng)前使用的參考基因組本身就是基于有限的樣本,既不足以代表整個相關(guān)物種的多樣性,又不完備,因此在數(shù)據(jù)計(jì)算解讀時會導(dǎo)致偏差,而且缺乏與其它生物、醫(yī)學(xué)信息的廣泛地、深度交叉分析,難以滿足專業(yè)科研人員深入研究的需求。此外,測序數(shù)據(jù)解讀還基本停留在專業(yè)領(lǐng)域,面向非專業(yè)的大眾,又缺乏可讀性,即缺乏對測序數(shù)據(jù)直接的生物意義和間接的健康影響的通俗易懂、形式多樣的解讀。
目前,信息處理領(lǐng)域常見的處理器類型有中央處理器(centralprocessingunit,簡稱cpu)、現(xiàn)場可編程門陣列(fieldprogrammablegatearray,簡稱fpga)、圖形處理器(graphicsprocessingunit,簡稱gpu)和數(shù)字信號處理器(digitalsignalprocessor,簡稱dsp)。高性能cpu通常都包括多個處理器核(processorcore),從硬件上支持多線程,但是其設(shè)計(jì)目標(biāo)還是面向通用應(yīng)用程序,而相對于特殊的計(jì)算,通用應(yīng)用程序的并行性較小,需要較復(fù)雜的控制和較低的性能目標(biāo)。因此,cpu片上的硬件資源主要還是用于實(shí)現(xiàn)復(fù)雜的控制而不是計(jì)算,沒有為特殊功能包含專門的硬件,能夠支持的計(jì)算并行度不高。fpga是一種半定制電路,優(yōu)點(diǎn)有:基于fpga進(jìn)行系統(tǒng)開發(fā),設(shè)計(jì)周期短、開發(fā)費(fèi)用低;功耗低;生產(chǎn)后可重新修改配置,設(shè)計(jì)靈活性高,設(shè)計(jì)風(fēng)險小。缺點(diǎn)是:實(shí)現(xiàn)同樣的功能,fpga一般來說比專用集成電路(applicationspecificintegratedcircuit,asic)的速度要慢,比asic電路面積要大。隨著技術(shù)的發(fā)展和演進(jìn),fpga向更高密度、更大容量、更低功耗和集成更多硬核知識產(chǎn)權(quán)(intellectualproperty,ip)的方向發(fā)展,fpga的缺點(diǎn)在縮小,而優(yōu)點(diǎn)在放大。相比于cpu,fpga可以用硬件描述語言來定制實(shí)現(xiàn)、修改和增加并行計(jì)算。gpu最初是一種專門用于圖像處理的微處理器,能夠從硬件上支持紋理映射和多邊形著色等圖形計(jì)算基本任務(wù)。由于圖形學(xué)計(jì)算涉及一些通用數(shù)學(xué)計(jì)算,比如矩陣和向量運(yùn)算,而gpu擁有高度并行化的架構(gòu),因此,隨著相關(guān)軟硬件技術(shù)的發(fā)展,gpu計(jì)算技術(shù)日益興起,即gpu不再局限于圖形處理,還被開發(fā)用于線性代數(shù)、信號處理、數(shù)值仿真等并行計(jì)算,可以提供數(shù)十倍乃至于上百倍于cpu的性能。但是目前的gpu存在2個問題:一是,受限于gpu的硬件結(jié)構(gòu)特性,很多并行算法不能在gpu上有效地執(zhí)行;二是,gpu運(yùn)行中會產(chǎn)生大量熱量,能耗較高。dsp是一種用數(shù)字方法對各種信號進(jìn)行快速分析、變換、濾波、檢測、調(diào)制、解調(diào)等運(yùn)算處理的微處理器。為此,dsp在芯片內(nèi)部結(jié)構(gòu)上做了特殊的優(yōu)化,比如硬件實(shí)現(xiàn)高速、高精度的乘法等。隨著數(shù)字時代的到來,dsp廣泛應(yīng)用于智能設(shè)備、資源勘探、數(shù)字控制、生物醫(yī)學(xué)、航天航空等各個領(lǐng)域,具有功耗低、精度高、可進(jìn)行二維與多維處理等特點(diǎn)。綜上所述,以上四種計(jì)算器件各有特點(diǎn),又各有局限性。
針對前述基于ngs的dna甲基化測序技術(shù)應(yīng)用發(fā)展存在的兩個方面的瓶頸,如何利用上述處理器來實(shí)現(xiàn)海量測序數(shù)據(jù)的快速實(shí)時、精準(zhǔn)深入、通俗易懂、形式多樣的計(jì)算解讀,則已經(jīng)成為一項(xiàng)亟待解決的關(guān)鍵技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題:針對現(xiàn)有技術(shù)的上述問題,提供一種快速實(shí)時、精準(zhǔn)深入、通俗易懂、形式多樣的dna甲基化測序數(shù)據(jù)計(jì)算解讀方法。
為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
一種dna甲基化測序數(shù)據(jù)計(jì)算解讀方法,實(shí)施步驟包括:
1)對用于dna甲基化測序的參考基因組數(shù)據(jù)和原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理;
2)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器將預(yù)處理后的測序樣本數(shù)據(jù)和參考基因組進(jìn)行比對;
3)通過cpu調(diào)用gpu上編程實(shí)現(xiàn)的識別器、fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型基于比對結(jié)果進(jìn)行甲基化識別;
4)對結(jié)果數(shù)據(jù)進(jìn)行可視化,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型對結(jié)果數(shù)據(jù)反映的甲基化功能進(jìn)行挖掘和分析,且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù)。
優(yōu)選地,步驟1)對參考基因組數(shù)據(jù)進(jìn)行預(yù)處理的詳細(xì)步驟包括:對參考基因組數(shù)據(jù)進(jìn)行針對甲基化的生信轉(zhuǎn)換,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的索引生成器為生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)生成用于后續(xù)比對任務(wù)的索引,輸出生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引。
優(yōu)選地,步驟1)對原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理的詳細(xì)步驟包括:對原始的測序樣本數(shù)據(jù)進(jìn)行數(shù)據(jù)質(zhì)量控制得到可靠樣本數(shù)據(jù),所述數(shù)據(jù)質(zhì)量控制包括修剪dna甲基化測序原始樣本數(shù)據(jù),移除reads上的接頭序列和低質(zhì)量的堿基,對可靠樣本數(shù)據(jù)進(jìn)行針對甲基化的生信轉(zhuǎn)換,輸出生信轉(zhuǎn)換后的dna甲基化的測序可靠樣本數(shù)據(jù)。
優(yōu)選地,步驟1)中對用于dna甲基化測序的參考基因組數(shù)據(jù)和原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理是在cpu上基于不同的線程并發(fā)執(zhí)行的。
優(yōu)選地,步驟2)的詳細(xì)步驟包括:
2.1)讀取上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引;讀取上述修剪后的dna甲基化測序可靠樣本數(shù)據(jù)和生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù);
2.2)根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行精確比對,建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;
2.3)判斷dna甲基化測序樣本數(shù)據(jù)是否為雙端reads,如果是雙端reads,則跳轉(zhuǎn)執(zhí)行步驟2.4);否則為單端reads,跳轉(zhuǎn)執(zhí)行步驟2.5);不明確的reads則直接移除;
2.4)對于雙端reads,在不匹配數(shù)受控以及雙端reads之間的讀距受控條件下,根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,再次通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對,增加建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;跳轉(zhuǎn)執(zhí)行步驟2.6);
2.5)對于單端reads,在不匹配數(shù)受控的條件下,根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,再次通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對,增加建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;
2.6)根據(jù)上述比對結(jié)果,移除重復(fù)的reads;
2.7)根據(jù)上述比對結(jié)果,生成基本的統(tǒng)計(jì)信息,所述基本的統(tǒng)計(jì)信息包括比對率統(tǒng)計(jì)、甲基化密度水平統(tǒng)計(jì)的至少一種;
2.8)輸出上述數(shù)據(jù)比對結(jié)果和基本統(tǒng)計(jì)信息。
優(yōu)選地,步驟3)的詳細(xì)步驟包括:
3.1)讀取上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引;讀取上述修剪后的dna甲基化測序可靠樣本數(shù)據(jù)和生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù);讀取上述數(shù)據(jù)比對的結(jié)果信息;讀取上述基本統(tǒng)計(jì)結(jié)果信息;
3.2)識別每個有效的甲基化位點(diǎn);
3.3)進(jìn)行各種指定的特殊甲基化區(qū)的識別;
3.4)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行asms識別;
3.5)輸出甲基化識別結(jié)果信息。
優(yōu)選地,步驟3.3)進(jìn)行各種指定的特殊甲基化區(qū)的識別時包括2個并發(fā)執(zhí)行的子任務(wù):子任務(wù)①:進(jìn)行甲基化密度低、基因表達(dá)量高的dna區(qū)的低甲基化區(qū)識別,以及甲基化密度高、基因表達(dá)量低的dna區(qū)的高甲基化區(qū)識別;子任務(wù)②:通過cpu進(jìn)行在多種樣本中基因組里甲基化狀態(tài)不相同的區(qū)域的差異甲基化區(qū)識別,以及通過cpu調(diào)用基于gpu上編程實(shí)現(xiàn)的識別器負(fù)責(zé)并行執(zhí)行dmrs識別來實(shí)現(xiàn)個體間dmrs的識別,其中差異甲基化區(qū)被看作為可能參與基因轉(zhuǎn)錄水平調(diào)控的功能性區(qū)域。
優(yōu)選地,步驟4)的詳細(xì)步驟包括:
4.1)讀取上述基本統(tǒng)計(jì)結(jié)果信息、甲基化識別結(jié)果信息;
4.2)通過cpu調(diào)用gpu和dsp將基本統(tǒng)計(jì)結(jié)果信息和甲基化識別結(jié)果信息進(jìn)行可視化處理,且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù);
4.3)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行甲基化功能分析和挖掘;且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù);
4.4)輸出上述各種分析數(shù)據(jù)和深度解讀報告。
本發(fā)明dna甲基化測序數(shù)據(jù)計(jì)算解讀方法具有下述優(yōu)點(diǎn):
1、對于dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的每個耗時瓶頸,基于任務(wù)本身的算法或模型并行性,結(jié)合cpu、fpga、gpu和dsp這四種處理器的特點(diǎn),分別進(jìn)行了有針對性的并行加速,提高了dna甲基化測序數(shù)據(jù)計(jì)算解讀的實(shí)時性。
2、對于dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的甲基化識別和甲基化功能分析與挖掘,基于任務(wù)本身的目標(biāo),結(jié)合cpu、fpga、gpu和dsp這四種處理器的特點(diǎn),引入深度學(xué)習(xí)模型,加快和豐富了深度學(xué)習(xí)源數(shù)據(jù)的處理,提高了dna甲基化測序數(shù)據(jù)計(jì)算解讀的深度和廣度。
3、對于dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的數(shù)據(jù)可視化,結(jié)合cpu、gpu和dsp這三種處理器的特點(diǎn),配合完成可視化處理,提高了dna甲基化測序數(shù)據(jù)可視化的實(shí)時性,豐富了dna甲基化測序數(shù)據(jù)可視化的多樣性。
附圖說明
圖1為本發(fā)明實(shí)施例dna甲基化測序數(shù)據(jù)計(jì)算解讀的總流程示意圖。
圖2為本發(fā)明實(shí)施例dna甲基化測序數(shù)據(jù)計(jì)算解讀的預(yù)處理流程示意圖。
圖3為本發(fā)明實(shí)施例dna甲基化測序數(shù)據(jù)計(jì)算解讀的數(shù)據(jù)比對流程示意圖。
圖4為本發(fā)明實(shí)施例dna甲基化測序數(shù)據(jù)計(jì)算解讀的甲基化識別流程示意圖。
圖5為本發(fā)明實(shí)施例dna甲基化測序數(shù)據(jù)計(jì)算解讀的識別數(shù)據(jù)可視化和甲基化功能分析挖掘流程示意圖。
具體實(shí)施方式
如圖1所示,本實(shí)施例的dna甲基化測序數(shù)據(jù)計(jì)算解讀方法的實(shí)施步驟包括:
1)對用于dna甲基化測序的參考基因組數(shù)據(jù)和原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理;
2)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器將預(yù)處理后的測序樣本數(shù)據(jù)和參考基因組進(jìn)行比對(alignment);這個步驟需要使用cpu和fpga這兩種處理器;
3)通過cpu調(diào)用gpu上編程實(shí)現(xiàn)的識別器、fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)(deeplearning,dl)模型基于比對結(jié)果進(jìn)行甲基化識別;這個步驟需要使用cpu、fpga和gpu這三種處理器;
4)對結(jié)果數(shù)據(jù)進(jìn)行可視化,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型對結(jié)果數(shù)據(jù)反映的甲基化功能進(jìn)行挖掘和分析,且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù)。這個步驟需要使用cpu、fpga、gpu和dsp這四種處理器。
如圖1所示,本實(shí)施例中步驟1)和2)完成dna甲基化測序數(shù)據(jù)的計(jì)算任務(wù);步驟3)和4)完成dna甲基化測序數(shù)據(jù)的解讀任務(wù)。以下詳細(xì)步驟描述中,如果未加特殊說明,缺省使用的是cpu。
步驟1)包括2個并發(fā)執(zhí)行的子任務(wù):參考基因組的預(yù)處理和dna甲基化測序原始樣本數(shù)據(jù)的預(yù)處理。如圖2所示,本實(shí)施例中步驟1)中對用于dna甲基化測序的參考基因組數(shù)據(jù)和原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理是在cpu上基于不同的線程(線程1和線程2)并發(fā)執(zhí)行的。
參見圖2,步驟1)對參考基因組數(shù)據(jù)進(jìn)行預(yù)處理的詳細(xì)步驟包括:對參考基因組數(shù)據(jù)進(jìn)行針對甲基化的生信(insilico)轉(zhuǎn)換,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的索引生成器為生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)生成用于后續(xù)比對任務(wù)的索引,輸出生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引。這個步驟需要使用cpu和fpga這兩種處理器;對參考基因組數(shù)據(jù)進(jìn)行針對甲基化的生信(insilico)轉(zhuǎn)換時,如果采用的是bs-seq測序技術(shù),需要將參考基因組數(shù)據(jù)中所有代表未發(fā)生甲基化胞嘧啶(cytosine)的c轉(zhuǎn)換為代表胸腺嘧啶(thymine)的t。若dna為雙鏈(watsonandcrickstrands),則2條鏈都需要進(jìn)行轉(zhuǎn)換。為生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)生成用于后續(xù)比對任務(wù)的索引時,cpu負(fù)責(zé)索引生成的流程控制,fpga上硬件實(shí)現(xiàn)的索引生成器負(fù)責(zé)并行生成索引,cpu和fpga之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入fpga,能夠并行加速完成其中的計(jì)算密集任務(wù)。雖然在一段時間內(nèi),特定的參考基因組數(shù)據(jù)相對固定,可以生成索引一次,再在同類應(yīng)用中反復(fù)使用,但是,一旦參考基因組數(shù)據(jù)有了更新,必須重新生成新索引。
參見圖2,步驟1)對原始的測序樣本數(shù)據(jù)進(jìn)行預(yù)處理的詳細(xì)步驟包括:對原始的測序樣本數(shù)據(jù)進(jìn)行數(shù)據(jù)質(zhì)量控制得到可靠樣本數(shù)據(jù)(cleandatas),所述數(shù)據(jù)質(zhì)量控制包括修剪dna甲基化測序原始樣本數(shù)據(jù),移除reads上的接頭序列(theadaptersequence)和低質(zhì)量的堿基(bases),對可靠樣本數(shù)據(jù)進(jìn)行針對甲基化的生信轉(zhuǎn)換,輸出生信轉(zhuǎn)換后的dna甲基化的測序可靠樣本數(shù)據(jù)。對經(jīng)過上述修剪后得到的dna甲基化測序可靠樣本數(shù)據(jù)進(jìn)行針對甲基化的生信轉(zhuǎn)換時,如果采用的是bs-seq測序技術(shù),需要將dna甲基化測序可靠樣本數(shù)據(jù)中所有代表胞嘧啶(cytosine)的c轉(zhuǎn)換為代表胸腺嘧啶(thymine)的t。
如圖3所示,步驟2)的詳細(xì)步驟包括:
2.1)讀取上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引;讀取上述修剪后的dna甲基化測序可靠樣本數(shù)據(jù)和生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù);
2.2)根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器1將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行精確比對,建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器1進(jìn)行比對時,cpu負(fù)責(zé)數(shù)據(jù)精確比對的流程控制,fpga上硬件實(shí)現(xiàn)的比對器1負(fù)責(zé)并行執(zhí)行數(shù)據(jù)精確比對,cpu和fpga之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,本實(shí)施例通過加入fpga上硬件實(shí)現(xiàn)的比對器1,能夠并行加速完成其中的計(jì)算密集任務(wù)。
2.3)判斷dna甲基化測序樣本數(shù)據(jù)是否為雙端(paired-end)reads,如果是雙端reads,則跳轉(zhuǎn)執(zhí)行步驟2.4);否則為單端(single-end)reads,跳轉(zhuǎn)執(zhí)行步驟2.5);不明確(ambiguous)的reads則直接移除;
2.4)對于雙端reads,在不匹配(mismatches)數(shù)受控(例如不超過2個)以及雙端reads之間的讀距受控(例如在50到600個bases之間)條件下,根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,再次通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器2將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對,增加建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;跳轉(zhuǎn)執(zhí)行步驟2.6);本實(shí)施例中將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對時,cpu負(fù)責(zé)數(shù)據(jù)比對的流程控制,fpga上硬件實(shí)現(xiàn)的比對器2負(fù)責(zé)并行執(zhí)行數(shù)據(jù)比對,cpu和fpga之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入fpga,能夠并行加速完成其中的計(jì)算密集任務(wù);
2.5)對于單端reads,在不匹配(mismatches)數(shù)受控(通常不超過2個)的條件下,根據(jù)上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)的索引,再次通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器2將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對,增加建立上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)之間的映射關(guān)系;通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的比對器2將上述生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù)和上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)進(jìn)行比對時,cpu負(fù)責(zé)數(shù)據(jù)比對的流程控制,fpga上硬件實(shí)現(xiàn)的比對器2負(fù)責(zé)并行執(zhí)行數(shù)據(jù)比對,cpu和fpga之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入fpga,能夠并行加速完成其中的計(jì)算密集任務(wù);
2.6)根據(jù)上述比對結(jié)果,移除重復(fù)(duplicate)的reads;
2.7)根據(jù)上述比對結(jié)果,生成基本的統(tǒng)計(jì)信息,所述基本的統(tǒng)計(jì)信息包括比對率(alignmentrate)統(tǒng)計(jì),甲基化密度水平(methylationdensitylevel)統(tǒng)計(jì)的至少一種;
2.8)輸出上述數(shù)據(jù)比對結(jié)果和基本統(tǒng)計(jì)信息。
本實(shí)施例中,步驟3)基于比對結(jié)果進(jìn)行甲基化識別需要使用cpu、fpga和gpu這三種處理器;如圖4所示,步驟3)的詳細(xì)步驟包括:
3.1)讀取上述生信轉(zhuǎn)換后的參考基因組數(shù)據(jù)及其索引;讀取上述修剪后的dna甲基化測序可靠樣本數(shù)據(jù)和生信轉(zhuǎn)換后的dna甲基化測序可靠樣本數(shù)據(jù);讀取上述數(shù)據(jù)比對的結(jié)果信息;讀取上述基本統(tǒng)計(jì)結(jié)果信息;
3.2)識別每個有效的甲基化位點(diǎn);例如,dna甲基化主要形成5-甲基胞嘧啶(5-mc)和少量的n6-甲基腺嘌呤(n6-ma)及7-甲基鳥嘌呤(7-mg)。在真核生物中,5-mc主要出現(xiàn)在cpg序列、cpxpg、cca/tgg和gatc中;
3.3)進(jìn)行各種指定的特殊甲基化區(qū)的識別;
3.4)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行asms(allele-specificmethylatedregions,等位基因特異性甲基化區(qū))識別;在asms識別時,cpu負(fù)責(zé)asms識別的流程控制,fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行asms識別,cpu和fpga之間有數(shù)據(jù)和指令交互。使用深度學(xué)習(xí)方法進(jìn)行asms識別,可以支持基于大數(shù)據(jù)的統(tǒng)計(jì)學(xué)模型,能夠?qū)崿F(xiàn)更加準(zhǔn)確的asms分類和預(yù)測。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入fpga,硬件實(shí)現(xiàn)深度學(xué)習(xí)模型,能夠并行加速完成深度學(xué)習(xí)任務(wù);
3.5)輸出甲基化識別結(jié)果信息。
本實(shí)施例中,步驟3.3)進(jìn)行各種指定的特殊甲基化區(qū)的識別時包括2個并發(fā)執(zhí)行的子任務(wù):子任務(wù)①:進(jìn)行甲基化密度低、基因表達(dá)量高的dna區(qū)的低甲基化區(qū)(hypo-methylatedregions)識別,以及甲基化密度高、基因表達(dá)量低的dna區(qū)的高甲基化區(qū)(hyper-methylatedregions)識別;子任務(wù)②:通過cpu進(jìn)行在多種樣本中基因組里甲基化狀態(tài)不相同的區(qū)域的差異甲基化區(qū)識別,以及通過cpu調(diào)用基于gpu上編程實(shí)現(xiàn)的識別器負(fù)責(zé)并行執(zhí)行dmrs(differentiallymethylatedregions,dmrs,差異甲基化區(qū))識別來實(shí)現(xiàn)個體間dmrs(inter-dmrs)的識別,其中差異甲基化區(qū)被看作為可能參與基因轉(zhuǎn)錄水平調(diào)控的功能性區(qū)域。子任務(wù)②通過cpu進(jìn)行在多種樣本中基因組里甲基化狀態(tài)不相同的區(qū)域的差異甲基化區(qū)識別,以及通過cpu調(diào)用基于gpu上編程實(shí)現(xiàn)的識別器負(fù)責(zé)并行執(zhí)行dmrs識別時,cpu負(fù)責(zé)dmrs識別的流程控制,gpu上編程實(shí)現(xiàn)的識別器負(fù)責(zé)并行執(zhí)行dmrs的識別,cpu和gpu之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入gpu,能夠并行加速完成其中的計(jì)算密集任務(wù);
如圖5所示,步驟4)的詳細(xì)步驟包括:
4.1)讀取上述基本統(tǒng)計(jì)結(jié)果信息、甲基化識別結(jié)果信息;
4.2)通過cpu調(diào)用gpu和dsp將基本統(tǒng)計(jì)結(jié)果信息和甲基化識別結(jié)果信息進(jìn)行可視化處理,且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù);進(jìn)行可視化處理,能夠以各種科學(xué)、直觀、生動的方式表現(xiàn)數(shù)據(jù)的含義。例如:各種甲基化位點(diǎn)的分布及比例,不同甲基化區(qū)的分布及比例,等等。本實(shí)施例中通過cpu調(diào)用gpu和dsp將基本統(tǒng)計(jì)結(jié)果信息和甲基化識別結(jié)果信息進(jìn)行可視化處理時,cpu負(fù)責(zé)可視化的流程控制;gpu上編程處理視頻、動畫和顯示等任務(wù),cpu和gpu之間有數(shù)據(jù)和指令交互;dsp上編程處理圖形、圖像和音頻等任務(wù),cpu和dsp之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入gpu和dsp,它們和cpu相互配合,能夠并行加速完成多媒體處理任務(wù);
4.3)通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行甲基化功能分析和挖掘;且cpu調(diào)用gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示任務(wù),cpu調(diào)用dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻任務(wù);
甲基化功能分析和挖掘,即基于上述分析數(shù)據(jù),進(jìn)一步深入分析相關(guān)的甲基化功能,并擴(kuò)大外延,在已知的知識之外,再挖掘未知的關(guān)聯(lián)。例如:已知甲基化和癌癥存在關(guān)聯(lián),這一步驟就進(jìn)一步深入分析各種甲基化模式在癌癥中的作用,更進(jìn)一步深入分析各種甲基化模式在各種細(xì)分癌癥中的作用;挖掘甲基化和其它疾病之間是否存在關(guān)聯(lián),等等。
本實(shí)施例中通過cpu調(diào)用fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行甲基化功能分析和挖掘時,cpu負(fù)責(zé)分析和挖掘的流程控制;fpga上硬件實(shí)現(xiàn)的深度學(xué)習(xí)模型負(fù)責(zé)并行執(zhí)行分析和挖掘,cpu和fpga之間有數(shù)據(jù)和指令交互。使用深度學(xué)習(xí)方法進(jìn)行分析和挖掘,可以支持基于大數(shù)據(jù)的統(tǒng)計(jì)學(xué)模型,能夠?qū)崿F(xiàn)更加準(zhǔn)確的分析和挖掘;gpu上編程處理分析挖掘相關(guān)的視頻、動畫和顯示等任務(wù),cpu和gpu之間有數(shù)據(jù)和指令交互;dsp上編程處理和分析挖掘相關(guān)的圖形、圖像和音頻等任務(wù),cpu和dsp之間有數(shù)據(jù)和指令交互。只使用cpu時,這一步驟是整個dna甲基化測序數(shù)據(jù)計(jì)算解讀流程中的耗時瓶頸之一,加入fpga、gpu和dsp,它們和cpu相互配合,能夠并行加速完成深度學(xué)習(xí)及相關(guān)多媒體處理任務(wù);
4.4)輸出上述各種分析數(shù)據(jù)和深度解讀報告。
綜上所述,本實(shí)施例的dna甲基化測序數(shù)據(jù)計(jì)算解讀方法能夠滿足測序數(shù)據(jù)計(jì)算解讀的快速實(shí)時、精準(zhǔn)深入、通俗易懂、形式多樣的要求,為dna甲基化測序技術(shù)的應(yīng)用推廣助力。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,本發(fā)明的保護(hù)范圍并不僅局限于上述實(shí)施例,凡屬于本發(fā)明思路下的技術(shù)方案均屬于本發(fā)明的保護(hù)范圍。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理前提下的若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。