国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于組裝基因組序列的方法、系統(tǒng)及裝置的制造方法

      文檔序號:10618210閱讀:499來源:國知局
      用于組裝基因組序列的方法、系統(tǒng)及裝置的制造方法
      【專利摘要】本申請?zhí)峁┮环N利用錨點序列對待組裝序列進行壓縮并進行基因序列組裝的方法,包括獲取一待組裝序列集的數據和多個錨點序列的數據;利用所述多個錨點序列,對所述待組裝序列集中的每一個待組裝序列進行壓縮以獲得該待組裝序列的索引表,其中所述索引表以錨點序列的標號的序列來表示;以及利用所述待組裝序列集中各待組裝序列壓縮得到的所述索引表進行比對并構建組裝骨架。
      【專利說明】
      用于組裝基因組序列的方法、系統(tǒng)及裝置
      技術領域
      [0001] 本申請設及基因測序領域,具體而言,設及組裝基因序列的方法、系統(tǒng)及裝置,其 可W提高基因序列組裝的速度及精準度,尤其是基因組序列組裝的速度及精準度。
      【背景技術】
      [0002] 人類基因組計劃是迄今為止最大的生物醫(yī)藥項目之一,其大大加快了 DNA測序技 術的發(fā)展。在過去的Ξ十年中,已經發(fā)展了Ξ代DNA測序技術,目前正處于在第二代測序技 術和第Ξ代測序技術更替的十字路口。
      [0003] 其中,第一代Sanger測序技術所產生的序列長度一般小于80化P。根據第 一代測序技術,利用重疊圖(Overlapping Graph)在測序得到的序列集之中,捜索共 有區(qū)域W組裝基因序列,但是運種基于重疊圖的捜索和比對算法在時間和存儲上耗費 較高。而第二代測序技術(也稱為下一代測序技術,NG巧所產生的序列較短,一般在 30-300bp的范圍內。在第二代測序技術的情況下,利用基于核巧k聯體化-mer)的德 布魯因圖(de Bruijn Graph,DB(i)算法(Conway, T.C.&Bromage,A.J. Succinct data structures for assembling large genomes. Bioinformatics 27,479-486(2011); Melsted,P. &Pritchard,J. Efficient counting of k_mers in DNA sequences using a bloom filter,BMC Bio informatics 12, 333 (2011) ; Ye,C.,Ma,Z. S.,Cannon, C. H.,Pop,M.&Yu, D. W. Exploiting sparseness in de novo genome assembly, BMC Bioinformatics 13 Suppl 6,S1(2012))對測序得到的序列集進行組裝D與重疊圖相 關聯的時間和存儲問題在處理第一代測序技術生成的相對少量的序列的時候還可^承 受,但在處理由第二代測序儀生成的巨大數量的短序列時,就成為很大的問題。雖然采 用DBG模式避免了成對對比的問題,但還是不得不面對巨大的內存占用的問題。在DBG 成為標準方法之前,原本用于組裝第一代的序列的基于重疊圖模型或重疊-排布-整 合(Overlap-Layout-Consensus,0LC)的軟件,如 Celera(Venter, J. C. et al. The sequence of the human genome. Science 291,1304-1351 (2001)),AMOS(Treangen, T. J.,Sommer, D. D.,Angly, F. E.,Koren, S. &Pop, M. Next generation sequence assembly with AMOS, Current protocols in bioinformatics Chapter 11,Unit 11.18(2011)) 和 ARACHNE(Batzoglou, S. et al. ARACHNE: a whole-genome shotgun assembler. Genome research 12, 177-189(2002)),也被應用于第二代測序技術所得序列的組裝。字串圖認及 最優(yōu)重疊圖是0LC方法的特定形式,其通過簡化整體重疊圖譜在組裝長序列方面非常有 效。
      [0004] 目前,已經開發(fā)了第蘭代測序技術(其也被稱為單分子測序技術HLevene,M. J.et al.Zero-mode waveguides for single-molecule analysis at high concentrat ions,Science299,682-686(2003);加,L·Q·,C?eley,S·&Bayley,比Cap化reofasinglΘ molecule in a nanocavity,Science291, 636-640 (2001)),從而可生成的最長序列范圍為 500bp-120化P之間。第蘭代測序技術最大的優(yōu)點是能夠實現高通量長序列測序。一方面, 增加測序長度具有協(xié)助辨別基因序列重復區(qū)域的顯著優(yōu)勢,從而有助于人類能更加直接并 有效地探索生物學問題,例如基因分型和突變等問題。然而,另一方面,增加測序長度就會 提高錯誤率,使得在錯誤的檢測和修正方面存在極大問題。 陽0化]第Ξ代測序的高錯誤率使得最初開發(fā)用于相對準確的第一代測序技術的基于重 疊組裝的OLC方法不適用。同樣,第Ξ代測序得到的帶錯長序列集使得最初設計用于第二 代測序技術的短序列組裝的DBG方法也不再適用。
      [0006] 因此,在現階段,基因測序技術所面臨的很大障礙是缺少一種有效的基因序列組 裝方法。

      【發(fā)明內容】

      [0007] 因此,本申請?zhí)峁┝擞糜诮M裝基因序列的方法、系統(tǒng)及裝置,其適用于任意長度測 序序列,尤其適用于組裝通過第Ξ代測序技術測得的長基因序列,從而能夠大大降低基因 序列組裝在計算時間和內存上的高度復雜性,并且提高基因序列組裝的速度和精度。
      [0008] 本申請的一個方面提供了一種用于組裝基因序列的方法,包括:獲取一待組裝序 列集的數據和多個錯點序列的數據;利用所述多個錯點序列,對所述待組裝序列集中的每 一個待組裝序列進行壓縮W獲得該待組裝序列的索引表,其中所述索引表W錯點序列的標 號來表示;W及利用所述待組裝序列集中各待組裝序列壓縮得到的所述索引表構建組裝骨 架。
      [0009] 在一些實施方式中,上述壓縮W獲得待組裝序列的索引表包括:確定每個錯點序 列在待組裝序列中的排列位置,并按照錯點序列在待組裝序列上的排列位置,獲得對應于 該待組裝序列的索引表。在一些實施方式中,上述確定每個錯點序列在待組裝序列中的排 列位置包括:將所述錯點序列和每一個待組裝序列分別打斷成一系列核巧k聯體,將所述 錯點序列的核巧k聯體分別與所述待組裝序列的核巧k聯體進行比對,當所述待組裝序列 的核巧k聯體中與錯點序列的核巧k聯體相匹配的個數超過預定闊值,則認為所述錯點序 列可W匹配至該待組裝序列;通過每個所述匹配的核巧k聯體分別在所述錯點序列及所述 待組裝序列中的位置的對應關系,計算得到所述匹配的錯點序列在待組裝序列中的排列位 置。對于有多個匹配的核巧k聯體的錯點序列,所述錯點序列在待組裝序列中的排列位置 可W是根據每個匹配的核巧k聯體計算得到的所述錯點序列在待組裝序列中的排列位置 的平均值。在一些實施方式中,所述k-mer的長度為:巧bp-5化P。在一些實施方式中,所述 闊值為所述錯點序列的長度的0. 1 %至2%。
      [0010] 在一些實施方式中,上述構建組裝骨架包括:將所述待組裝序列集中各待組裝序 列壓縮得到的所述索引表進行一一比對,篩選出具有最優(yōu)重疊的待組裝序列子集,W構建 待組裝序列間的最優(yōu)重疊圖譜,然后根據所述子集中的待組裝序列索引表中錯點序列標號 的位置對應關系對所述子集中的各待組裝序列進行排布,從而形成組裝骨架。在一些實施 方式中,上述構建組裝骨架包括:選取所述待組裝序列集中的一條序列作為當前序列,將 所述當前序列的索引表與待組裝序列集中的所有其它序列的索引表進行一一比對,找出與 所述當前序列具有重疊關系的備選序列,將備選序列與當前序列進行索引表比對或堿基比 對W找出與當前序列具有最優(yōu)重疊和延伸的序列,并將其相對于當前序列延伸的部分加到 當前序列上即獲得當前序列的擴展序列,通過將所述待組裝序列集中的每條序列作為當前 序列重復上述步驟w得到一組擴展序列,然后根據所述擴展序列中錯點序列標號的位置對 應關系對各擴展序列進行排布,從而形成組裝骨架。在一些實施方式中,本申請?zhí)峁┑挠?于組裝基因序列的方法進一步包括:在獲得每條待組裝序列的索引表后,利用錯點序列對 待組裝序列的索引表進行反向檢索,得到與所述錯點序列相對應的待組裝序列的索引表子 集,通過將所述索引表子集中所有其他序列的索引表比對到當前待組裝序列的索引表上來 修正所述待組裝序列的索引表子集中的待組裝序列的索引表。在一些實施方式中,上述通 過比對來修正被壓縮的待組裝序列包括:對待組裝序列的索引表子集中每條待組裝序列的 索引表,將其作為當前序列索引表與所述索引表子集中所有其他待組裝序列的索引表進行 一一比對,根據每個位置上不同的錯點序列標號出現的頻次進行投票,利用每個位置的投 票結果對每條當前序列的索引表進行修正,從而獲得修正后的待組裝序列的索引表。在一 些實施方式中,上述對待組裝序列的索引表進行修正包括:將比對結果中在待組裝序列的 索引表子集中出現不多于5次、或不多于4次、或不多于3次、或不多于2次、或不多于1次 的錯點從包含其的待組裝序列的索引表中刪除;將存在斷點的雜合序列刪除;W及將比對 結果中的被包含的序列刪除。在一些實施方式中,構建組裝骨架是在對待組裝序列的索引 表進行修正后進行的,其包括:將所有上述修正后的待組裝序列的索引表進行一一比對,篩 選出具有最優(yōu)重疊的修正后的待組裝序列的子集,然后根據所述子集中的修正后的待組裝 序列索引表中錯點序列標號的位置對應關系對待組裝序列進行排布,從而形成組裝骨架。 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的方法進一步包括對構建的組裝骨架 進行如下所述的再修正:在構建組裝骨架后,將所有待組裝序列與組裝骨架進行比對,對于 組裝骨架上的任一位點,通過計算所有可比對至該位點的各條序列中在該位點的每種堿基 出現的頻次進行投票,利用每個位點的投票結果對組裝骨架進行再修正,從而得到再修正 后的基因序列組裝結果。在一些實施方式中,上述投票是通過利用跳躍式核巧k聯體實現 的。在一些實施方式中,上述對組裝骨架進行再修正包括:獲得覆蓋待組裝基因序列不同區(qū) 域的組裝骨架,利用多個計算機處理器同時分別修正所述覆蓋待組裝基因序列不同區(qū)域的 組裝骨架,W及將再修正后的組裝骨架進行整合得到完整的基因序列組裝結果。
      [0011] 在一些實施方式中,本申請所述的待組裝序列集包括通過第二代基因組測序 技術測序得到的序列。在一些實施方式中,本申請所述的待組裝序列集中的序列長度 在l(K)bp-120化P之間、或者在5(K)bp-120化P之間、或者在5(K)bp-100化P之間、或者在 化bp-100化P之間、或者在l(K)bp-化bp之間、或者在l(K)bp-300bp之間。在一些實施方式 中,本申請所述的待組裝序列集包括通過第Ξ代基因組測序技術所得到的序列,并且所述 待組裝序列集中的序列長度在5(K)bp-100化P之間。在一些實施方式中,本申請所述的錯點 序列的長度在化p-30bp之間、或者在30bp-100bp之間、或者在l(K)bp-300bp之間、或者在 30bp-100化P之間、或者在3(K)bp-100化P之間。在一些實施方式中,本申請所述的錯點序 列選自下組:精度大于95%的序列長度在l(K)bp-300bp之間的短序列、基因組高保守區(qū)域 內的精度大于95%的序列長度在10化口-3006口之間的短序列和待組裝序列集中序列長度 在化bp-120化P之間的長序列的局部截取。在一些實施方式中,本申請所述的錯點序列的 長度在2-30bp之間。
      [0012] 本申請的另一個方面提供了一種用于組裝基因序列的裝置,包括:獲取模塊,所述 獲取模塊用于獲取一待組裝序列集的數據和多個錯點序列的數據;壓縮模塊,所述壓縮模 塊用于利用所述多個錯點序列,對所述待組裝序列集中的每一個待組裝序列進行壓縮w獲 得該待組裝序列的索引表,其中所述索引表W錯點序列的標號來表示;W及組裝模塊,所述 組裝模塊用于利用所述待組裝序列集中各待組裝序列壓縮得到的所述索引表構建組裝骨 架。
      [0013] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的裝置,進一步包括:待組裝 序列的索引表修正模塊,所述待組裝序列的索引表修正模塊用于利用所述錯點序列對待組 裝序列的索引表進行反向檢索,得到與所述錯點序列相對應的待組裝序列的索引表子集, 通過將所述索引表子集中所有其他序列的索引表比對到當前待組裝序列的索引表上來修 正所述待組裝序列的索引表。
      [0014] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的裝置,進一步包括:基因序 列組裝結果修正模塊,所述基因序列組裝結果修正模塊用于對構建的組裝骨架進行如下所 述的再修正:在構建組裝骨架后,將所有待組裝序列與組裝骨架進行比對,對于組裝骨架上 的任一位點,通過計算所有可比對至該位點的各條序列中在該位點的每種堿基出現的頻次 進行投票,利用每個位點的投票結果對組裝骨架進行再修正,從而得到再修正后的基因序 列組裝結果。
      [0015] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的裝置,進一步包括:基因序 列組裝結果整合模塊,所述基因序列組裝結果整合模塊用于獲得覆蓋待組裝基因序列不同 區(qū)域的組裝骨架,利用多個計算機處理器同時分別修正所述覆蓋待組裝基因序列不同區(qū)域 的組裝骨架,W及將再修正后的組裝骨架進行整合得到完整的基因序列組裝結果。
      [0016] 本申請的再一個方面提供了一種用于組裝基因序列的系統(tǒng),包括:輸入組件,其用 于獲取一待組裝序列集的數據和多個錯點序列的數據;存儲器,其用于存儲所述待組裝序 列集的數據和多個錯點序列的數據;W及處理器,其被配置于;利用所述多個錯點序列,對 所述待組裝序列集中的每一個待組裝序列進行壓縮W獲得該待組裝序列的索引表,其中所 述索引表W錯點序列的標號來表示;W及利用所述待組裝序列集中各待組裝序列壓縮得到 的所述索引表構建組裝骨架。
      [0017] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的系統(tǒng)中,處理器被進一步 配置于:在獲得所述索引表后,利用所述錯點序列對待組裝序列的索引表進行反向檢索,得 到與所述錯點序列相對應的待組裝序列的索引表子集,通過將所述索引表子集中所有其他 序列的索引表比對到當前待組裝序列的索引表上來修正所述待組裝序列的索引表子集中 每條待組裝序列的索引表。
      [0018] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的系統(tǒng)中,處理器被進一步 配置于對構建的組裝骨架進行如下所述的再修正:在構建組裝骨架后,將所有待組裝序列 與組裝骨架進行比對,對于組裝骨架上的任一位點,通過計算所有可比對至該位點的各條 序列中在該位點的每種堿基出現的頻次進行投票,利用每個位點的投票結果對組裝骨架進 行再修正,從而得到再修正后的基因序列組裝結果。
      [0019] 在一些實施方式中,本申請?zhí)峁┑挠糜诮M裝基因序列的系統(tǒng)中,處理器對組裝骨 架進行的再修正包括:獲得覆蓋待組裝基因序列不同區(qū)域的組裝骨架,利用多個計算機處 理器同時分別修正所述覆蓋待組裝基因序列不同區(qū)域的組裝骨架,W及將再修正后的組裝 骨架進行整合得到完整的基因序列組裝結果。
      [0020] 相應地,通過應用本申請所述的方法、系統(tǒng)和裝置,由高精度測序短序列或者高精 度測序短序列的組裝片段組成錯點序列,并利用錯點序列對待組裝序列進行標記,并將待 組裝序列壓縮成對應的索引表,然后再進行比對和組裝,從而大大加快了組裝速度并減少 了計算量。
      [0021] 并且,考慮到通過第Ξ代測序技術獲得的待組裝序列的錯誤率比較高,因此進一 步對被壓縮的待組裝序列進行了修正或移除,從而使得待組裝序列的錯誤被修正,提高了 組裝骨架的正確率。最后,對于組裝骨架上的任一位點,通過計算所有可比對至該位點的各 條序列中在該位點的每種堿基出現的頻次進行投票,利用每個位點的投票結果對組裝骨架 進行修正從而得到了準確率更高的基因序列組裝結果。
      [0022] 因此,本申請所述的方法、系統(tǒng)和裝置只需要較低的基因序列覆蓋率就能提供更 高的連續(xù)性,并且只需要最小的計算機內存,而且在處理大的基因組測序序列集時,速度有 多個數量級的提升,因此適用于任意長度測序序列,尤其適用于組裝通過第Ξ代測序技術 測得的長基因序列。
      【附圖說明】
      [0023] 本申請的上述及其他特征將通過下面結合附圖及其詳細描述作進一步說明。應當 理解的是,運些附圖僅示出了根據本申請的若干示例性的實施方式,因此不應被視為是對 本申請保護范圍的限制。除非特別說明,附圖不必是成比例的,并且其中類似的標號表示類 似的部件。
      [0024] 圖1是根據一示例性實施例示出的一種基因序列組裝方法的流程圖。
      [00巧]圖2是根據另一示例性實施例示出的一種基因序列組裝方法的流程圖。
      [0026] 圖3是根據又一示例性實施例示出的一種基因序列組裝方法的流程圖。
      [0027] 圖4A至圖4G是根據圖1至圖3所示的方法進行序列組裝的示意圖。
      [0028] 圖5A至圖5D是用于說明圖3所示的整合步驟的示例性圖示。
      [0029] 圖6是用于實現上述圖1中所述基因序列組裝方法的裝置框圖。
      [0030] 圖7是用于實現上述圖2中所述基因序列組裝方法的裝置框圖。
      [0031] 圖8是用于實現上述圖3中所述基因序列組裝方法的裝置框圖。
      [0032] 圖9是根據一示例性實施例示出的一種基因序列組裝系統(tǒng)的框圖。
      【具體實施方式】
      [0033] W下的詳細描述中引用了構成本說明書一部分的附圖。說明書和附圖所提及的示 意性實施方式僅僅出于是說明性的目的,并非意圖限制本申請的保護范圍。本領域技術人 員可W理解,也可采用許多其他的實施方式,并且可對所描述實施方式做出各種改變,而不 背離本申請的主旨和保護范圍。應當理解的是,在此說明并圖示的本申請的各個方面可W 按照很多不同的配置來布置、替換、組合、分離和設計,運些不同配置都包含在本申請中。
      [0034] 定義
      [0035] 本申請中對基因序列的"組裝"是指對多個待組裝的序列進行比對,并利用序列間 的重疊關系構建基于所述待組裝序列的基因圖譜。
      [0036] 本申請中的術語"比對"當用于對核酸序列的比對時可W通過本領域技術人員 公知的任何方法完成,例如,可^通過現有的軟件BLASR、DALIGN、BLAST、BLAST-2、ALIGN、 ALIGN-2BWA、B0WTIE或者MegalignONASTAR)等。本申請中的術語"比對"當用于對索引 表之間的比對時可W通過本領域技術人員公知的任何其他方法完成。(如Smith, Temple F. and Waterman,Michael S. (1981),"Identification of Common Molecular Subsequences", Journal of Molecular Biology 147:195 - 197; 或者 Lipman, DJ ; Pearson, W民(1985),"Rapid and sensitive protein similarity searches",Science 227(4693):1435 - 41:或者 Pearson,WR;Lipman,DJ (1988)'"Improved tools for biological sequence comparison". Proceedings of the National Academy of Sciences of 化e United States of America 85 巧):2444 - 8)。
      [0037] 本申請中的"OLC算法"是指由Staden開發(fā)的算法(Staden R. A new computer method for the storage and manipulation of DNA gel reading data. Nucleic Acids Res.8(16):3673 - 3694. (1980)) W及在其基礎上開發(fā)出的相關算法,主要用于 數據量較少的長序列(特別是第一代測序序列)的拼接?;?LC算法的常見軟件 有 Arachne (參見 Batzoglou S, Jaffe DB, Stanley Κ, et al. ARACHNE:a whole-genome shotgun assembler. Genome Resl2:177 - 89. (2002)),Celera Assembler(參見 Myers EW, Sutton GG, Delcher AL,etal.A whole-genome assembly of Drosophila. Science 287:2196 - 204. (2000)),CAP3(參見 Huang X,Madan A. CAP3:A DNA sequence assembly program. GenomeRes 9:868 - 77. (1999)),PCAP(參見加 ang X,Yang SP.Generating a genome assembly with PCAP. Curr Protoc Bioinformatics. Chapter 11 :Unitll. 3. (2005)),Phrap (參見 de la Bastide M,McCombie WR. Assembling genomic DNA sequences with PHRAP. Curr Protoc Bioinformatics. Chapter11:Unitil.4. (2007)),Phusion(參見 Mullikin JC, Ning Z.The phusion assembler. Genome Res 13:81 - 90. (2003))及 Newbler (參見 Marcel MargulieslME, William EA, Said A, et al. Genome sequencing in open microfabricated high density picoliter reactors. NaUire437:376 - 80. (2005))。
      [003引 本申請中的"DBG算法,,是指由Idu巧和Waterman開發(fā)的算法(Idu巧RM,Waterman MS. A new algorithm for DNA sequence assembly. JComput Biol 2:291 - 306. (19%))臥 及在其基礎上開發(fā)出的相關算法,后來被廣泛應用于生物信息學中基因片段的組裝中,主 要適合高覆蓋率的短序列的拼接。其相應的軟件有Euler-USR(參見化aisson MJ,Brinza D,Pevzner PA.De novo fragment assembly with short mate-paired reads: does 化e read length matter ? Genome Res 19:336 - 46. (2009)),Velvet (參見 Zerbino D民,Birney E.Velvet: algorithms for de novo short read assembly using de Bruijn graphs. Genome Resl8:821 - 9. (2008)),ABySS(參見 Simpson JT, Wong K, Jackman SD, et al. ABySS:a parallel assembler for short read sequence data. GenomeRes 19:1117 - 23. (2009)),AllPa化-LG(參見 Gnerre S,Maccallum I,Przybylski D,et al. High-quality draft assemblies of mammalian genomes from massively parallel sequence data.Rroc Natl Acad Sci USA108:1513 - 18.(2011)),S0APdenovo(參見 Li 民,Zhu H, Ruan J, et al. De novo assembly of human genomes with massively parallel short read sequencing. Genome Res20:265 - 72. (2009))0
      [0039] 本申請中的"k-mer"即核巧k聯體,是指將基因序列W-定長度k連續(xù)切割,按照 每個堿基順次移動一位切割相同序列長度為k的核巧酸序列,例如對于序列為:ATCGTTGCT TAATGACGTCAGTCGAATGCGATGACGTGACTGACTG 的核巧酸序列,如果 k-mer 為 13-mer 的話,則可 W得到如下的一系列長度為13的核巧酸序列:
      [0040] ATCGTTGCTTAAT
      [0041] TCGTTGCTTAATG
      [0042] CGTTGCTTAATGA
      [0043] GTTGCTTAATGAC
      [0044] …
      [0045] ACGTGACTGACTG。
      [0046] 本申請中的"Sparse k-mer"即跳躍式核巧k聯體,是指在分析比對結果時,對于 基因序列W k長度進行跳躍性的分割,而不是順移一位依次切割。
      [0047] 本申請中的術語"覆蓋率"或者"深度"當用于測序時是指測序得到的堿基總量 化P)與被測基因序列大小的比值,它是評價測序量的指標之一。測序帶來的錯誤率或假陽 性結果會隨著測序深度的提升而下降,因此基因組測序中通常會對原始樣品進行多次重復 的擴增W增加測序深度。 引實施方式
      [0049] 如【背景技術】中所述,第Ξ代測序的高錯誤率使得最初開發(fā)用于相對準確的第一代 測序技術的基于重疊組裝的0LC算法不適用。同樣,第Ξ代測序得到的帶錯長序列集使得 最初設計用于第二代測序技術的短序列組裝的DBG算法也不再適用。因此,本申請?zhí)岢隽?一種采用混合策略進行基因序列組裝的方法。并且,由于第Ξ代測序方法獲得的序列集所 需要的數據容量很大,因此即使是在小的微生物的基因組對于運些長序列的糾錯都需要很 高的計算資源。為此,本申請進一步通過引入"錯點序列"來降低基因序列組裝在計算時間 和內存上的高度復雜性,并且確?;蛐蛄薪M裝的精度。
      [0050] W下,將參考圖1對于本申請進行示例性地說明。圖1所示為本申請的一示例性 實施例的一種基因序列組裝方法的流程圖。首先,本申請所述的基因序列組裝方法可W在 任何形式的數字平臺系統(tǒng)上實現,該數字平臺包括臺式計算機、筆記本、便攜式掌上電腦、 服務器、計算機集群、網絡工作站等,后面將結合圖9對實現本申請的方法的一種示例性實 施例系統(tǒng)900加 W詳細說明,運里先暫不詳述。
      [0051] 如圖1所示,本申請的基因序列組裝方法主要包括S101、S102和S103 Ξ個步驟。 W下將結合附圖分別介紹該Ξ個步驟。
      [0052] 首先,在步驟S101中,獲取一待組裝序列集的數據和多個錯點序列的數據。
      [0053] 具體而言,在步驟S101中,由系統(tǒng)900(例如計算機)通過輸入組件(例如數據傳 輸接口)獲取基因測序的數據。該基因測序數據既包括由基因組測序儀器得到的原始序列 的數據,也可W包括基于原始序列的數據進行組裝而得到的經過預處理之后的數據。所述 經過預處理之后的數據包括:例如,通過第二代基因組測序技術可W得到高精度的短序列, 然后利用現有的組裝軟件將其組裝成片段的序列(contig)。在一些實施方式中,待組裝序 列集可W是任何序列集。在一些實施方式中,待組裝序列集是第二代基因組測序技術所得 到的序列集。在另一些實施方式中,待組裝序列集是第Ξ代基因組測序技術所得到的序列 集。W下,將W待組裝序列集是第Ξ代基因組測序技術所得到的序列集為例來進行說明。
      [0054] 錯點序列為對應于待測基因組中的某一片段區(qū)域的序列,錯點序列與其對應的待 測基因組的片段具有相同的或者相似的核酸序列。錯點序列可W對應于待測基因組有代表 性的區(qū)域,例如待測基因組的高保守區(qū)域。在一些實施方式中,所述錯點序列為由現有數 據庫中獲取的序列。在另一些實施方式中,所述錯點序列是第二代基因組測序技術所得到 的短序列,或者是通過利用現有的組裝軟件(例如華大基因公司提供的SOAPdenovo組裝軟 件)對第二代基因組測序技術所得到的短序列進行組裝而得到的序列,或者上述兩者的組 合。在另一些實施方式中,所述錯點序列為待組裝序列本身的局部截取,例如通過將待組裝 序列集中最長的一段序列截短為一系列的短序列,之后將上述短序列與待組裝序列集中所 有其他序列進行比對,對于那些與上述截短得到的短序列沒有重疊的序列的部分進行進一 步的截取,再加入到上述短序列的集合中,直到得到的短序列集可W與所有序列均有重疊。
      [0055] 本領域一般技術人員可W根據待組裝序列的長度選擇錯點序列的長度,對于第Ξ 代測序,錯點序列的長度一般設為待組裝序列集中序列的平均長度的10-30%。對于第二代 測序技術,錯點長度可W長于平均測序長度。對于一組待組裝序列集可W選擇固定的錯點 序列長度,也可W選擇不同長度的錯點序列。應當理解,錯點序列的平均長度越長,則壓縮 后的待組裝序列的索引表的平均長度越短,數據處理量越??;同時錯點序列數量越多則對 其整個待組裝基因序列的覆蓋范圍越高,一般選擇的錯點序列數量乘W錯點序列的平均長 度應該不低于待組裝基因序列的總長度的30%。在一些實施方式中,所述錯點序列長度在 2bp-30bp之間、或者在30bp-100bp之間、或者在100bp-300bp之間、或者在30bp-1001Ap之 間、或者在3(K)bp-100化P之間。不同的錯點序列可W由不同的標號表示,所述標號可W是 數字或者字母,或者數字與字母的組合,或者其他適合的表示形式。例如,可W用若干位數 字為錯點序列標號,例如多個錯點序列可分別標記為數字001、002、003等等。又例如可W 用代數標號,如XI、X2、X3等分別表示不同的錯點序列。
      [0056] 然后,在步驟S102中,將利用所述多個錯點序列,對所述待組裝序列集中的每一 個待組裝序列進行壓縮,W獲得該待組裝序列的W錯點序列的標號來表示的索引表。
      [0057] 具體而言,將錯點序列與待組裝序列進行比對,找出錯點序列在待組裝序列上 的排放位置,并按照錯點序列在待組裝序列上的排列位置,獲得對應于該待組裝序列的 索引表,由此將每條待組裝序列W錯點序列的標號表示,即,將基因序列壓縮為W標號形 式表示的一串數字或字符,完成序列壓縮,并獲得對應于多個錯點序列的多個索引表, 所述多個索引表形成對應于該待組裝序列集的壓縮的數據集。例如:如果錯點序列為 contig_331, contig_101, contig_17,當運些contig被依次比對到一條待組裝序列上,且 錯點序列在待組裝序列上的排列位置依序為contig_331, contig_101, contig_17,則該待 組裝序列對應的索引表為巧31,101,17]。
      [0058] 在某些實施方式中,通過W下的k-mer方式壓縮每一個待組裝序列,并獲得每一 個待組裝序列的索引表:將錯點序列和待組裝序列打斷成相同長度的k-mer順位集合(例 如,設k = 13,將錯點序列和待組裝序列分別從其起始位點起打斷成13-mer的順位集合)。 將獲得的錯點序列和待組裝序列的k-mer分別進行一一比對,并且根據錯點序列的長度選 擇合適的闊值,當所述待組裝序列的核巧k聯體中與錯點序列的核巧k聯體相匹配的個數 超過預定闊值,則認為所述錯點序列可W匹配至該待組裝序列;通過每個所述匹配的核巧 k聯體分別在所述錯點序列及所述待組裝序列中的相對位置,計算得到該匹配的核巧k聯 體所對應的錯點序列在待組裝序列中的排列位置。對于有多個匹配的核巧k聯體的錯點 序列,所述錯點序列在待組裝序列中的排列位置可W是根據每個匹配的核巧k聯體計算得 到的所述錯點序列在待組裝序列中的排列位置的平均值。其中,在本發(fā)明的一些實施方 式中,所述預定闊值為所述錯點序列的長度的0. 1%至2%。本領域技術人員可W根據計 算得到的每個錯點序列在待組裝序列中的排列位置,獲得待組裝序列的索引表。其中所 述1<-11161'的長度為:269-5化9、1569-1%9、1569-2化9、269-1569、269-1%9、3化9-5化口或 15bp-51bp。
      [0059] 另外,可W將索引表被全部包含在另一待組裝序列的索引表之內的待組裝序列刪 除,W簡化待組裝序列數據集。并且,W-待組裝序列為當前序列,將所述當前序列的索引 表與待組裝序列集中的所有其它序列的索引表進行一一比對,找出與當前序列索引表具有 重疊關系的序列(也可稱為"備選序列"),之后將備選序列與當前序列進行索引表比對或 堿基比對,找到其中相對于當前序列包含在某一方向上索引表的延伸的被壓縮的待組裝序 列,并將完全被當前序列所包含的序列移除;在所剩的備選序列中挑選出與當前序列具有 向左或向右最優(yōu)重疊的序列,移除不具有在某一方向上的最大重疊度的序列,僅保留與當 前序列具有向左或向右最優(yōu)重疊的序列(其也可W稱為當前序列的最優(yōu)延伸序列),并將 所述最優(yōu)延伸序列相對于當前序列延伸的部分加到當前序列上即獲得當前序列的擴展序 列。在上述比對過程中,若當前序列被其他與其具有重疊關系的序列完全包含,則刪除當前 序列,不生成當前序列的擴展序列;若沒有找到相對于當前序列具有向左或向右延伸的序 列,則W所述當前序列作為該輪比對所得到的擴展序列。通過將所述待組裝序列集中的每 條序列作為當前序列重復上述步驟W得到一組擴展序列,然后根據所述擴展序列中錯點序 列標號的位置對應關系對各擴展序列進行排布,從而完成構建組裝骨架??蒞使用本領域 技術人員所知的任何合適的方法和軟件來計算序列之間的重疊,例如通過BLASR、DALIGN、 BLAST、BLAST-2、ALIGN、ALIGN-2BWA、B0WTIE、SOAP 或者 Megali即值NASTAR)等比對軟件對 當前序列與待組裝序列集中的所有其他序列進行一一比對,基于比對結果找出與當前序列 具有重疊關系的序列。
      [0060] 在某些實施方式中,在最優(yōu)重疊圖的構建步驟中或者在對最優(yōu)延伸序列的篩選步 驟中,每個節(jié)點代表一條待組裝序列,其為一個或多個連續(xù)的錯點序列標號的組合。為獲得 最優(yōu)重疊圖可W進行兩輪運算,第1輪,刪除所有被全部包含的節(jié)點,例如,如果存在節(jié)點 [又1,而,&],則刪除被全部包含在上述節(jié)點中的節(jié)點[Xi,X2]及節(jié)點[而,&],運樣做的目的 是為了避免不必要的重復和包含的節(jié)點的比對。第2輪,計算不相互包含的節(jié)點之間的所 有后綴-前綴重疊。然后對最優(yōu)重疊圖進行簡化,當從節(jié)點A到節(jié)點B的延伸的重疊度高 于所有從節(jié)點A向同一方向延伸的其他重疊時,節(jié)點A至節(jié)點B的延伸存在優(yōu)勢。在某些 實施方式中,重疊度可由對應的重疊區(qū)域的長度或重疊區(qū)域所設及多個錯點的總長度或重 疊區(qū)域中待組裝序列與錯點匹配的k-mer數量來衡量。一般來說,將每條序列作為當前序 列與其他序列進行比對,都可能找到一個向左具有與當前序列最大重疊的最優(yōu)延伸序列, W及一個向右具有與當前序列最大重疊的最優(yōu)延伸序列,將所述向左的最優(yōu)延伸序列和向 右的最優(yōu)延伸序列相對于當前序列延伸的部分加到所述當前序列上即獲得該序列的擴展 序列。但由于待組裝序列長度有限,因此可能出現無法處理的重復(比如多條待組裝序列 均為某一當前序列的最優(yōu)重疊,稱為并列最優(yōu))此時會導致在圖譜上出現分支(Miller, J. R. et al. Aggressive assembly of pyrosequencing reads with mates. Bioinformatics 24, 2818-2824 (2008))。當出現分支時,組裝算法在出現分支處斷開,或選擇其中一條序列 間相互最優(yōu)(即A至B的延伸是A在右向的最優(yōu)重疊延伸,B至A的延伸是B在左向的最 優(yōu)重疊延伸)的重疊進行延伸。將最優(yōu)重疊圖中不出現分叉(即序列間不存在并列最優(yōu)) 的每個線性區(qū)域單獨輸出為組裝結果。將W索引表形式表示的壓縮序列串聯起來,之后重 新轉化為W堿基形式表示的未壓縮的待組裝序列作為基因組輪廓的組裝骨架。
      [0061] 因此,通過利用如圖1所述的組裝基因序列方法,由錯點序列(例如,高精度測序 短序列或者高精度測序短序列的組裝片段)對待組裝序列(例如,由第二代基因組測序技 術或者第Ξ代基因組測序技術所得到的長序列)進行標記,并將待組裝序列壓縮成對應的 索引表,然后再進行比對和組裝,從而大大加快了組裝速度并減少了計算量。
      [0062] 在某些實施方式中,對待組裝序列的組裝可W依靠上述待組裝序列的索引表,具 體地包括:選取所述待組裝序列集中的一條序列作為當前序列,將所述當前序列的索引表 與待組裝序列集中的所有其它序列的索引表進行一一比對,找出與所述當前序列具有重疊 關系的序列,將所述當前序列與所述與當前序列具有重疊關系的序列進行索引表比對或堿 基比對W找出當前序列的最優(yōu)延伸序列,并將其相對于當前序列延伸的部分加到當前序列 上即獲得當前序列的擴展序列(即向左或向右最優(yōu)重疊延伸),并通過將所述待組裝序列 集中的每條序列作為當前序列重復上述步驟W得到一組擴展序列,然后根據所述擴展序列 中錯點序列標號的位置對應關系對各擴展序列進行排布,從而形成組裝骨架。
      [0063] 圖2所示為根據本申請另一示例性實施例的一種基因序列組裝方法的流程圖。圖 2中所示基因序列組裝方法主要包括S201、S202、S203 W及S204四個步驟。其中S201步驟 用于獲取一待組裝序列集和多個錯點序列,其與上文所述的圖1中的S101基本相似,在此 就不再重復。同樣,S202步驟(壓縮待組裝序列W獲得由錯點序列的標號構成的索引表) 與上文的S102類似,在此也不再重復。
      [0064] W下將詳細描述S203步驟。通過S202步驟獲得W錯點序列的標號來表示的索引 表后,在S203步驟中進一步通過比對來修正被壓縮的待組裝序列。 陽0化]具體地,利用所述錯點序列對待組裝序列的索引表進行反向檢索,通過比對來修 正被壓縮的待組裝序列包括:根據S201中得到的錯點序列對待組裝序列的索引表進行反 向檢索,得到S202中所述索引表內與所述的一條錯點序列或者所述錯點序列中的多條連 續(xù)排列的錯點序列的組合相對應的待組裝序列的集合(即,待組裝序列的索引表子集);對 利用所述反向檢索得到的待組裝序列集合中的每條待組裝序列的索引表,將其作為當前序 列索引表與所述索引表子集中所有其他待組裝序列進行一一比對(即將每兩條待組裝序 列中對應位置的錯點序列的標號進行一一比對),根據每個位置上不同的錯點序列標號出 現的頻次進行投票,修正每條當前序列中出現的錯誤的錯點序列標號,并且若當前序列的 索引表中具有重復的或被包含的錯點序列排列關系,則將該當前序列刪除,從而獲得更為 精準且精簡的待組裝序列的索引表集。
      [0066] W錯點序列為contig-Xi、-X2、-X3。。。-Xi為例,上述通過比對來修正被壓縮的待 組裝序列的步驟包括:利用contig的標號Xi、X2、&。。。Xi構建索引表,使得對每條錯點序 列,都可借助索引表迅速尋找所有含有該錯點序列的待組裝序列。對每個contig錯點序列 標號Xl,記錄包含該Xl的待組裝序列的序列索引表,得到相對應的待組裝序列的索引表的 集合,運個過程可W被看作為一個序列分組的過程。之后,用動態(tài)規(guī)劃算法或者其他更高效 的算法對得到的待組裝序列集合內的各條待組裝序列進行組內一一比對。上述一一比對可 在被壓縮的待組裝序列上進行也可在未壓縮的待組裝序列上進行。
      [0067] 對于被壓縮的待組裝序列,組內的一一比對是指將每條壓縮序列(當前序列) 的索引表與組內其他序列的索引表進行比對:一方面,將當前序列中在多序列比對僅僅 出現很少次數(例如,僅僅出現1-5次、或不多于5次、或不多于4次、不多于3次、不多 于2次、不多于1次)的錯點序列標號從該序列的索引表中刪除,例如當前序列索引表為 巧31,101,21,17],而在多序列比對中標號為21的錯點序列僅在當前序列的索引表中出現 了一次,而未在任何其他序列的索引表中出現過,則刪除當前序列索引表巧31,101,21,17] 中的錯點序列標號21,即原序列的索引表由[331,101,21,17]變?yōu)榍?1,101,17];另一方 面,如果在多序列比對中,發(fā)現當前序列中存在斷點(即所有與斷點左端重疊的序列均與 斷點右邊不重疊,反之也是如此,則判定該點為斷點),則將此整條序列稱為雜合序列,并將 它刪除。同時在一一比對過程中,若當前序列被其他序列包含,則刪除該被包含的當前序列 (例如,如果當前序列索引表為[XI,而]或者[而,X3],當存在索引表為[XI,枯X3]的序列,貝U 刪除當前序列)。被刪除的序列將不再參與后續(xù)的組裝骨架的構建。
      [0068] 考慮到通過第Ξ代測序技術獲得的待組裝序列的錯誤率比較高,因此通過S203 步驟對被壓縮的待組裝序列進行了修正或移除,可使得后續(xù)的組裝骨架的正確率得到了很 大提局。
      [0069] 接著,在步驟S204中,構建組裝骨架。具體而言,利用S203中修正后的被壓縮的 待組裝序列構建最優(yōu)重疊圖譜,從而完成構建組裝骨架。因為該步驟S204和上文所述的步 驟S104相類似,運里就不再重復。
      [0070] 并且,本申請還提供了又一種基因序列組裝方法的實施方式。圖3是本申請又一 示例性實施例的一種基因序列組裝方法的流程圖。圖3中所示的基因序列組裝方法主要包 括 S301、S302、S303、S304 W及 S305 五個步驟。
      [0071] 其中在步驟S301中,獲取一待組裝序列集的數據和多個錯點序列的數據;然后在 步驟S302中,壓縮待組裝序列為W錯點序列的標號表示的索引表;在S303步驟中,通過比 對刪除被壓縮的待組裝序列中的雜合序列及被包含序列,W及將待組裝序列的多序列比對 中僅僅出現很少次數(例如,僅僅出現1-5次、或不多于5次、或不多于4次、不多于3次、 不多于2次、不多于1次)的錯點序列的標號從包含其的序列的索引表中刪除;在步驟S304 中,構建組裝骨架;并且在步驟S305中,通過整合得到準確率更高的基因序列組裝結果。在 本實施方式中,步驟S301、S302、S303和S304分別與上文中的步驟S101、S102、S103和S104 相類似,在此就不再重復。W下將詳細闡述步驟S305。
      [0072] 具體而言,在步驟S305中,對構建的組裝骨架進行如下所述的再修正:將所有待 組裝序列與步驟S304所得到的組裝骨架進行比對,對于骨架上的任一位點,通過計算所有 可比對至該位點的各條序列中每種堿基出現的頻次進行投票,利用每個位點的投票結果對 組裝骨架進行再修正,從而最終整合得到準確率較高的基因序列組裝結果。
      [0073] 在某些實施方式中,上述投票整合是通過將所有待組裝序列比對到組裝骨架 上,并根據比對結果構建跳躍式 k-mer 圖(Ye, C. , Ma, Z. S. , Cannon, C. H. , Pop, M. &Yu, D. W. Exploiting sparseness in de novo genome assembly. BMC BioinformaticslSSuppl 6, SI (2012)),利用同一位點的多條序列進行投票整合,再修正骨架中的錯誤,并利用跳躍 式k-mer圖的結構獲取最終準確率更高的基因序列組裝結果。跳躍式k-mer的用意是在 大數據量情況下通過跳躍方式來節(jié)省計算時占用的內存。k值一般用1~5,用稍微大的 k值可W繞開比對算法中的錯誤比對。跳躍步長g-般也是1~5,稍微大的步長可W顯 著減少計算時占用的內存。在整合精度相當的情況下,與現有的PBagcon算法(化in, C. S. et al. Nonhybrid,finished microbial genome assemblies from long-read SM民T sequencing data. Na 化 re me 化 odslO, 563-569(2013))相比,使用 1^下所述的 Sparc 整合算 法速度為其5倍左右,計算時占用的內存為其1/2-1/5。
      [0074] Sparc整合算法是基于跳躍式k-mer的一種方法,具體可W包括Ξ個步驟,第一 步:構建骨架k-mer圖;第二步進行序列比對并在比對過程中根據比對結果記錄新的節(jié)點 和邊W及更新各邊的權重;W及第Ξ步:捜索最大路徑。W下將結合附圖5A-5D對上述各步 驟作出詳細說明。 陽0巧]如圖5A所示,組裝骨架序列為ACTGGACTAAA,W k-mer長度為2,跳躍步長g為3 構建k-mer圖,則:所述k-mer的起始位置分別為1, 4, 7, 10,其相對應的k-mer分別為:AC、 GG、CT、AA,被選為節(jié)點。記錄下k-mer之間的連接關系:例如第一個k-mer AC往右延伸經 過TGGS個堿基后,到達第二個k-mer GG的結束位置。TGG則被記錄為連接AC節(jié)點與GG 節(jié)點的邊(edge),此時因為此TGG僅出現過一次,所W邊的權重是1,依此類推。
      [0076] W下將示例性地分析幾條序列與骨架的比對結果。
      [0077] 如圖5B所示,第一條原始序列(即待組裝序列或其片段)為ACTGGACCAAA,將其與 組裝骨架比對。在比對結果中,起始位點1、4的AC、GG節(jié)點能夠完全比對上,則對該節(jié)點不 需進行額外操作,僅僅將邊的權重增加,即路徑TGG的權重變?yōu)?。到達第7位點的時候, 由于CC與骨架中的CT不完全匹配,則將CC作為新的節(jié)點,并記錄下一從第4位節(jié)點GG到 第7位節(jié)點CC的新路徑ACC,作為新的邊,權重為1。由于第10位節(jié)點的AA與骨架匹配, 所W不需要生成新的節(jié)點,僅僅記錄下從新的第屯位節(jié)點CC到之前已有的第十位點的新 的邊AAA,權重為1。 陽07引如圖5C所示,第二條原始序列為ACGGACCAAA,將其與骨架比對。在比對結果中,起 始位點1的節(jié)點AC匹配,經過兩個堿基GG到達第四位節(jié)點GG,由于GG節(jié)點與前面生成的 邊TGG不同,所W生成新的邊緣GG,權重為1。接下來,從第4位節(jié)點GG到第7位節(jié)點的時 候,由于節(jié)點CC在之前序列中已經生成,路徑也已經被記錄,則增加對應的ACC邊的權重, 權重為2。
      [0079] 該過程可逐序列進行,然后可在最終結果中捜索權重最大的路徑并將所述路徑相 組合(如圖5D所示),從而得到整合序列:ACTGGACCAAA。在某些實施方式中,圖中的所有 權重需要經過調節(jié),比如減去某個小的數值(例如該區(qū)域測序深度的10% -30% ),W避免 由測序區(qū)域中的長插入性錯誤導致的較大的權重總和的錯誤路徑。
      [0080] 因此,通過將所有待組裝序列與組裝骨架比對,對多條序列在同一位點的核巧酸 進行投票整合(即找出出現頻率最高的核巧酸并選取該核巧酸作為該位點的核巧酸),優(yōu) 選的,通過Sparc整合算法再修正所述組裝骨架,從而得到準確率更高的基因序列組裝結 果。
      [0081] 圖4A至圖4G是根據圖1至圖3所示方法進行序列組裝的示意圖。首先,如圖4A 所示,在步驟S10US201或S301中,獲取待組裝序列集和錯點序列。其中圖4A左方的各種 類型的細線條表示帶有數字標號的錯點序列,而右方的各種粗線條則表示各個待組裝序列 (例如圖4A所示的原始長序列)。如上文所述,所述待組裝序列集可W是由基因組測序儀 器得到的原始序列的數據或者是基于原始序列的數據進行組裝而得到的預處理過的數據; 所述錯點序列可W是由現有數據庫中篩選獲取的,或者是通過利用現有的組裝軟件(例如 華大基因公司提供的組裝軟件)對第二代基因組測序技術所得到的短序列進行組裝而得 到的,或者是測序結果中待組裝序列本身的局部截取。
      [0082] 圖4B示出了與S102、S202、S302步驟相對應的序列標記和壓縮過程:即將錯點序 列與待組裝序列進行基因序列比對,計算錯點序列在待組裝序列上的排放位置,并如圖4B 所示,用錯點序列的標號標記待組裝序列;被標記的各條待組裝序列即被壓縮為由各個錯 點序列的標號W其在長序列上出現次序排列的列表,完成序列壓縮并獲得W錯點序列為標 記的待組裝序列的索引表。
      [0083] 如圖4C和4D所示為與S203、S303相對應的步驟:利用從S102、S202、S302中獲 得的索引表,反向檢索得到與某一錯點序列相關的所有待組裝序列的分組(如圖4C所示, 反向檢索所有包含錯點序列1的序列得到的序列分組);之后將反向檢索得到的組內序列 進行一一比對,對于每條序列(當前序列),將它的索引表與所有組內其他序列的索引表進 行比對:一方面,將當前序列中在多序列比對中僅僅出現極少次數(例如,僅僅出現1-5次、 或不多于5次、或不多于4次、不多于3次、不多于2次、不多于1次)的錯點序列標號從該 序列的索引表中刪除;另一方面,如果在多序列比對中,發(fā)現當前序列中存在斷點(即所有 與斷點左端重疊的序列均與斷點右邊不重疊,反之也是如此,則判定該點為斷點),則將該 當前序列作為雜合序列刪除;再一方面,在一一比對過程中,若當前序列被其他序列包含, 則刪除該被包含的當前序列(圖4D)。被刪除的錯點及雜合序列或被包含的序列將不再參 與后續(xù)的組裝骨架的構建。上述反向檢索后對待組裝序列進行分組,并對每條待組裝序列 的索引表進行比對修正的過程,最終得到的結果是更為精準且精簡的待組裝序列的索引表 集,而該精準且精簡的索引表集中所有的序列將被用于后續(xù)的組裝骨架的構建過程中。
      [0084] 而圖4E-圖4F則示意了與S104、S204、S304相對應的構建組裝骨架的過程:即基 于所述索引表,將每一條被壓縮的待組裝序列(當前序列)的索引表與用于組裝骨架的其 他被壓縮序列的索引表進行一一比對,找出與所述當前序列具有重疊關系的備選序列,將 備選序列與當前序列進行索引表比對或堿基比對,首先移除比對結果中索引表整個被其他 序列的索引表完全包含的序列,之后尋找到與它具有重疊的錯點序列并且能夠在某一方向 上延展的多條被壓縮的待組裝序列,將比對結果中索引表不具有在某一方向上的最大重疊 的序列移除,僅保留當前序列的最優(yōu)延伸序列,并將其相對于當前序列延伸的部分加到當 前序列上即獲得當前序列的擴展序列,并通過將所述待組裝序列集中的每條序列作為當前 序列重復上述步驟W得到一組擴展序列,然后根據擴展序列中錯點序列標號的位置對應關 系對各擴展序列進行排布(如圖4E所示);從而完成構建組裝骨架(如圖4F所示)。 陽0化]如圖4G所示為與S305相對應的步驟:在構建組裝骨架后,將所有待組裝序列比對 到組裝骨架上,對于組裝骨架上的任一位點,通過計算所有可比對至該位點的各條序列中 在該位點的每種堿基出現的頻次進行投票,利用每個位點的投票結果對組裝骨架進行再修 正,w得到準確的基因序列組裝結果。
      [0086] 圖6-8是用于實現上述圖1-3中所述基因序列組裝方法的裝置框圖。參照圖6, 該裝置包括獲取模塊601、壓縮模塊602 W及組裝模塊604。其中獲取模塊601被配置為獲 取一待組裝序列集的數據和多個錯點序列的數據;壓縮模塊602被配置為利用所述多個錯 點序列,對所述待組裝序列集中的每一個待組裝序列進行壓縮W獲得該待組裝序列的索引 表,其中所述索引表W錯點序列的標號來表示;組裝模塊603被配置為利用所述待組裝序 列集中各待組裝序列壓縮得到的所述索引表構建組裝骨架。
      [0087] 如圖7所示,上述實現基因序列組裝方法的裝置除了包括與圖6中601、602、604 具有相同功能的獲取模塊701、壓縮模塊702 W及組裝模塊704 W外,還可W進一步包括待 組裝序列的索引表修正模塊703。其中該待組裝序列的索引表修正模塊703被配置為利用 所述錯點序列對待組裝序列的索引表進行反向檢索,得到與所述錯點序列相對應的待組裝 序列的索引表子集,通過將所述索引表子集中所有其他序列的索引表比對到當前待組裝序 列的索引表上來修正所述待組裝序列的索引表子集中每條待組裝序列的索引表。
      [0088] 如圖8所示,上述實現基因序列組裝方法的裝置除了包括與圖7中701、702、703、 704具有相同功能的獲取模塊801、壓縮模塊802、待組裝序列的索引表修正模塊803 W及組 裝模塊804 W外,還可W進一步包括基因序列組裝結果修正模塊805。其中該基因序列組 裝結果修正模塊805被配置為對構建的組裝骨架進行如下所述的再修正:在構建組裝骨架 后,將所有待組裝序列與組裝骨架進行比對,對于骨架上的任一位點,通過計算所有可比對 至該位點的各條序列中在該位點的每種堿基出現的頻次進行投票,利用每個位點的投票結 果對組裝骨架進行再修正,從而得到再修正后的基因序列組裝結果。在一些實施方式中,如 圖8所示的裝置還可W進一步包括:基因序列組裝結果整合模塊806,所述基因序列組裝結 果整合模塊用于獲得覆蓋待組裝基因序列不同區(qū)域的組裝骨架,利用多個計算機處理器同 時分別修正所述覆蓋待組裝基因序列不同區(qū)域的組裝骨架,W及將再修正后的組裝骨架進 行整合得到完整的基因序列組裝結果。
      [0089] 本申請的實現基因序列組裝方法的裝置可W包括和上述方法步驟相對應的模塊 和/或模塊組合,并且隨著上述方法步驟的改變,上述裝置也可W進行相應的變化W實現 本申請的基因序列組裝方法。
      [0090] 并且,本申請還提供了一種用于實現上述圖1-3中所述方法的系統(tǒng)。圖9是根據 一示例性實施例示出的一種本申請的系統(tǒng)900。系統(tǒng)900可W是任何形式的數字平臺,包括 臺式計算機、筆記本、便攜式掌上電腦、數字平臺、計算機集群、網絡工作站等。
      [0091] 如圖9所示的系統(tǒng)900包括:通過總線950內部連接的一個或多個輸入組件910 ; 一個或多個輸出組件920 ; -個或多個中央處理器(CPU)930 及一個或多個存儲組件 940,所述存儲組件940在其中存儲一個或多個計算機程序944、一個或多個操作系統(tǒng)946、 W及可選的一個或多個數據庫948。
      [0092] 其中,輸入組件910使得可W向系統(tǒng)900提供數據輸入。常用的輸入組件910包 括數據輸入接口、網絡傳輸接口,或者其它類型的輸入部件。在本申請中,輸入組件910用 于獲取一待組裝序列集的數據和多個錯點序列的數據。
      [0093] 并且,輸出組件920用于向用戶提供計算結果,常見的輸出組件920包括用戶圖形 界面(GUI)、Ξ維顯示界面、輸出數據接口、網絡傳輸接口,或者其它類型的輸出部件等。
      [0094] 中央處理器(CPU) 930通??刂葡到y(tǒng)980的整體操作,諸如與顯示、數據處理、數據 存儲、數據通信W及記錄操作相關聯的操作等。中央處理器(CPU)930可W包括一個或多個 處理器來執(zhí)行指令,W完成上述的方法的全部或部分步驟。此外,中央處理器(CPU)930可 W包括一個或多個模塊,便于處理中央處理器(CPU)930和其他組件之間的交互。例如,中 央處理器(CPU) 930可W包括輸入/輸出模塊,W方便輸入組件910、輸出組件920和中央處 理器(CPU)930之間的交互。
      [0095] 存儲器940可W由任何類型的隨機存取存儲設備RAM 941或只讀存儲設備ROM 942或者它們的組合實現,如靜態(tài)隨機存取存儲器(SRAM)、電可擦除可編程只讀存儲器 巧EPROM)、可擦除可編程只讀存儲器巧PROM)、可編程只讀存儲器(PROM)、只讀存儲器 (ROM)、CD-ROM、磁帶、軟盤和光數據存儲設備等。存儲器940可W被配置為存儲各種類型的 數據W支持在系統(tǒng)900的操作。運些數據的示例包括用于在系統(tǒng)900上操作的任何操作系 統(tǒng)946、計算機程序944、數據庫948等。其中可W在所述系統(tǒng)900中執(zhí)行所述計算機程序 944,計算機程序944通過指令指導中央處理器930的相應模塊執(zhí)行本申請中所述的基因序 列組裝的方法。并且,在本發(fā)明中,存儲器940還被配置于存儲所述待組裝序列集的數據和 多個錯點序列的數據。
      [0096] 其中,如圖1-3所示的方法可W用例如計算機軟件、硬件或者其組合來在計算機 可讀介質中實現。對于硬件實現而言,運里所述的實施例可W通過專用集成電路(ASIC)、數 字信號處理器值SP)、數字信號處理設備值SPD)、可編程邏輯器件(PLD)、現場可編程口陣 列(FPGA)、處理器、控制器、微控制器、微處理器、設計成執(zhí)行運里所述功能的其它電子單元 或者其選擇性組合內的一個或多個來實現。
      [0097] 對于軟件實現而言,運里所述的實施例可W用單獨的軟件模塊,諸如過程模塊和 功能模塊來實現,其每一個都執(zhí)行一個或多個運里所述的功能和操作。軟件代碼可W用任 何適當的編程語言編寫的軟件應用來實現,并且可W存儲在專用的計算機系統(tǒng)的存儲器或 者其他計算機可讀介質中,并且由計算機系統(tǒng)的處理器來執(zhí)行,也可W安裝在具備數據存 儲和處理功能的其他電子設備中,如平板電腦、服務器等。
      [0098] 在一些實施方式中,可W通過系統(tǒng)900實現:利用所述多個錯點序列,對所述待組 裝序列集中的每一個待組裝序列進行壓縮W獲得該待組裝序列的索引表,其中所述索引表 W錯點序列的標號來表示;W及利用所述待組裝序列集中各待組裝序列壓縮得到的所述索 引表構建組裝骨架。在一些實施方式中,可W通過系統(tǒng)900進一步實現:在獲得每條待組裝 序列的索引表后,利用錯點序列對待組裝序列的索引表進行反向檢索,得到與所述錯點序 列相對應的待組裝序列的索引表子集,通過將所述索引表子集中所有其他序列的索引表比 對到當前待組裝序列的索引表上來修正待組裝序列的索引表子集中每條待組裝序列的索 引表。在另一些實施方式中,可W通過系統(tǒng)900進一步實現對構建的組裝骨架進行如下所 述的再修正:在構建組裝骨架后,將所有待組裝序列與組裝骨架進行比對,對于組裝骨架上 的任一位點,通過計算所有可比對至該位點的各條序列中在該位點的每種堿基出現的頻次 進行投票,利用每個位點的投票結果對組裝骨架進行再修正,從而得到再修正后的基因序 列組裝結果。在一些實施方式中,可W通過系統(tǒng)900進一步實現:獲得覆蓋待組裝基因序列 不同區(qū)域的組裝骨架,利用多個計算機處理器同時分別修正所述覆蓋待組裝基因序列不同 區(qū)域的組裝骨架,W及將再修正后的組裝骨架進行整合得到完整的基因序列組裝結果。
      [0099] 系統(tǒng)900可W被配置于實現本申請所記載和包含的方法的任一步驟W及任一步 驟的組合,在此不再重復。
      [0100] 綜上所述,本申請?zhí)峁┝艘环N高效的并支持各種各樣的測序技術的從頭開始的 (de novo)組裝算法。與針對第Ξ代測序的一些現有的算法工具相比,本申請的方法需要 較低的序列覆蓋率、提供更高的連續(xù)性、需要最小的內存并且在處理大的基因組測序序列 集時速度有多個數量級的提升。例如,根據本申請的方法所組裝得到的基因組大小可W在 任意范圍,例如在30化P-300抓P之間、或者在lMbp-4. 6Mbp之間、或者在lMbp-12Mbp之間、 或者在lMbp-120Mbp之間、或者在lMbp-3抓P之間。并且測序深度可W在5X-200X之間、 5x-20x之間、或者在5x-30x之間、或者在5x-40x之間、或者在5x-50x之間、或者在5X-128X 之間、或者在5X-237X之間。而且通過利用本申請的方法、系統(tǒng)W及裝置所進行的基因組 組裝耗時為現有組裝工具的10 1-10 5倍、或者10 1-10 3倍、或者10 2-1〇 3倍、或者10 2-1〇 5 倍、或者10 3-10 5倍。 陽101] 本申請所公開的方法、系統(tǒng)W及裝置與進行第Ξ代測序技術的公司(例如太平洋 生物科學公司(Pacific Biosciences)和牛津納米孔公司(Oxford Nanopore))的測序儀 均可兼容,也與第二代測序技術,如Illumina公司的各種測序技術兼容。并且,本申請所公 開的方法、系統(tǒng)W及裝置可W用于大動物、植物、微生物或者人的基因組的研究。進一步,本 申請所公開的方法、系統(tǒng)W及裝置允許在工作站級別的電腦上甚至可能在普通臺式電腦上 高效組裝大型基因組,而現有的組裝工具通常需要超級計算機或計算機集群。因此,本申請 所公開的方法、系統(tǒng)W及裝置將能夠大大加快第Ξ代測序技術擴展至設及植物、動物、微生 物和人類基因組等的研究的更加廣泛的應用領域。 陽102] W下將通過多個實施例將本申請所述的方法與其他現有的組裝方法進行比較。 陽103] 實施例1 :
      [0104] 對第Ξ代測序序列集進行組裝
      [0105] 在本實施例中,比較了基于本申請的方法、系統(tǒng)W及裝置所設計的程序(W下簡 稱為"DBG20LC"程序)與其他組裝程序化cBio2CA(參見Koren,S.et al. Hybrid error correction and de novo assembly of single-molecule sequencing reads. Nature biotechnology 30, 693-700 (2012)), HGAP(參見 Qiin,C.S.et al. Nonhybrid, finished microbial genome assemblies from long-read SMRT sequencing data. Nature methods 10, 563-569(2013) ;Berlin, K. et al. Assembling Large Genomes with Single-Molecule Sequencing and Locality Sensitive Hashing, (2014))和 ECtools (參見 Lee, H. et al. Error correction and assembly complexity of single molecule sequencing reads, (2014))得到的結果,其中上述其他組裝程序均是為第Ξ代測序在不同的測序序列 集中設計的基因組組裝程序。
      [0106] 在本實施例中選擇的待組裝序列是基于化cBio測序平臺測得的S. cerevisiae w303基因組(基因組大小為12Mbp)的測序序列集,該測序序列集中待組裝序列平均長度 為51Λρ。錯點序列來自:利用Illumina Miseq測序序列集,WSparseAssembler的跳躍 k-mer方法進行組裝,得到約2500條錯點序列,錯點序列平均長度約為4. 3化P,錯點序列總 長度約為11. 4Mbp,對待測基因組序列的覆蓋率約為95%。基于本申請的DBG20LC對第二 代基因測序巧Ox深度/覆蓋率)和第Ξ代基因測序(10X/20X深度/覆蓋率)得到的序 列集進行組裝,W k-mer長度為17bp、闊值為(0. 1 % *每個錯點序列的長度)的參數將錯 點序列比對到待組裝序列從而得到壓縮的待組裝序列索引表的集合,之后修正壓縮的待組 裝序列中的錯誤,并且完成組裝骨架的構建的步驟一共用了大概10CPU分鐘,然后用Sparc 運行了兩次對基因序列組裝結果的修正步驟W獲得合適的序列組裝結果。在本實施例中, Sparc中將所有待組裝序列與組裝骨架W修正基因序列組裝結果的步驟通過現有的Blasr 矛呈序(Chaisson, Μ. feTesler, G. Mapping sin邑le molecule sequencin邑 reads usin邑 basic local alignment with successive refinement(BLASR):application and theory. BMC 61〇111化^11日*山313,238(2012))實現的,其中利用61日3'程序進行序列比對^修正基因序 列組裝結果的過程占據了整個組裝過程中大部分的運算時間(約2個CPU小時)。
      [0107] 將本申請的方法與其他Ξ個現有的軟件進行比對,并且比對了修正后的 W303化cBio組裝序列結果。 陽10引表1. S. cerevisiae基因組組裝性能比較(基因組大?。?2M bp) 陽 109]
      [0110] 表1中的術語"同一性"是指兩條或多條核酸序列進行比對時序列相同的部分的 堿基數占整條序列的全部堿基數的百分比。表1中的術語"NG50"是指在基因序列組裝時 當50%的待測基因原長被包含在內的組裝序列的最小大小。表1中的術語"修正NG50"是 指在基因序列組裝中當50%的待測基因原長被包含在內的修正后的組裝序列的最小大小。 除非另有說明,上述術語在W下各實施例中或本申請說明書其他部分均表示相同的含義。 陽111] 如表1所示的結果表明DBG20LC需要最少的覆蓋率(深度)和計算時間,并且能 夠得到與其他組裝程序類似質量的組裝結果。在一般情況下,DBG20LC可W用比現有的大 多數組裝程序低一到兩個數量級的時間和內存就產生比較好的結果,并且可W在較低的 (10X-20X)覆蓋率(深度)的化cBio測序序列集中實現較好的組裝質量。在本實施例中, 注意到大部分時間是用在使用Blasr將所有測序得到的原始序列比對至組裝骨架的組裝 結果修正部分(2CPU小時)。因此,表1中分開標注了運部分需要的CPU時間。由于運項對 基因序列組裝結果的比對修正步驟可W通過將組裝骨架分割成多個不同區(qū)域,利用多個計 算機處理器同時分別修正組裝骨架的不同區(qū)域,之后將修正后的不同區(qū)域進行整合得到完 整的基因序列組裝結果,所W其經歷時間可W更短。 陽11引實施例2:
      [0113] 在本實施例中選擇的待組裝序列是基于化cBio測序平臺測得的A. thaliana ler-0基因組(基因組大小為llSMbp)的測序序列集,該測序序列集中待組裝序列平均長 度為51Λρ。錯點序列來自:利用Illumina Miseq測序序列集,W Sparse Assembler的 跳躍k-mer方法進行組裝,得到約83000條錯點序列,錯點序列平均長度約為1. 3化p,錯 點序列總長度約為115Mbp,對待測基因組序列的覆蓋率約為97 %。在本實施例中使用 Sparse Assembler 組裝軟件(Ye, C. , Ma, Z. S. , Cannon, C. H. , Pop, M. &Yu, D. W. Exploiting sparseness in de novo genome assembly. BMC BioinformaticslSSuppl 6,SI (2012)) 化-mer長度為5化p ;sparse步長g = 15)在2小時內預組裝了 50x深度的Illumina (第二 代基因組測序平臺)測序序列集?;诒旧暾埖腄BG2化C,利用上述組裝結果作為錯點,對 20x/40x化cBio測序序列集進行組裝,W k-mer長度為17bp、闊值為(0. 5% *每條錯點序 列長度)的參數將錯點序列比對到待組裝序列從而得到壓縮的待組裝序列索引表的集合, 之后修正壓縮的待組裝序列中的錯誤,并且完成組裝骨架的構建的步驟一共用了大概1個 CPU小時。而之后用Sparc (k-mer長度1,步長g = 1)對基因序列組裝骨架進行修正。又 花費了 18個CPU小時來完成最終的對組裝結果的修正過程。在整個過程中,最大內存使用 量為6GB。
      [0114] 相比較而言,由于現有的軟件在處理相同規(guī)模的問題時需要耗時超過一千個CPU /j、日寸(Berlin, K. et al. Assembling Large Genomes with Sin邑le_Molecule Sequencing and Locality Sensitive Hashing. (2014)),?下為收集的數據對比(Xee,H.et al.Rrror correction and assembly complexity of single molecule sequencing reads. (2014))。 為了評估序列的組裝,將本申請的方法得到的組裝結果與使用高覆蓋率的化cBio測序序 列集并且經如iver修正后的HGAP組裝結果進行比對,計算糾錯修正序列。 陽11引表2. A. thaliana基因組組裝性能比較(基因組大?。?18M bp) 陽116]
      [0117] 實施例3:
      [0118] 在本實施例中,待組裝序列集是基于化cBio測序平臺測得的54x覆蓋率的人類 化.sapiens)(基因組大?。?. OGbp)測序序列集中的較長的30x覆蓋率序列的序列集,該測 序序列集中待組裝序列平均長度為14. 5化P。錯點序列來自:利用80x覆蓋率的Illumina Miseq測序序列集,W Sparse Assembler的跳躍k-mer方法化-mer長度為5化P ;sparse步 長g = 20)進行組裝,得到約二百二十萬條錯點序列,錯點序列平均長度約為1.化bp,錯點 序列總長度約為2. 6Gbp,對待測基因組序列的覆蓋率約為85%。上述預組裝80x覆蓋率的 IIlumina (第二代測序)的測序序列集得到錯點序列的步驟花費34個CPU小時。
      [0119] 之后基于本申請的DBG2化C,利用第二代Illumina預組裝的錯點序列,W k-mer 長度為17bp、闊值為(1%*每條錯點序列長度)的參數將錯點序列比對到上述較長的 30x覆蓋率序列的序列集中(平均長度14.5化P),從而得到壓縮的待組裝序列索引表的集 合,運個步驟花費了 3個CPU小時,而17-mer的存儲共占用了 70GB的內存。實驗結果證 明,即使是在54x覆蓋率的完全序列集中將錯點序列比對到所有待組裝序列上的過程也 只需花費少于6小時(數據未在表3中顯示)。最后化-mer長度1,步長g= 1)的對基 因序列組裝骨架進行修正的步驟花費了大約2000個CPU小時。在最初的報導化ttp:// blog. P曰cificbiosciences. com/2014/02/d3t3-rele3se-54x-long-re3d-cover3ge-for. html)中,構建重疊圖譜的過程花了 405000個CPU小時,而運個過程可W使用局部敏感性 拼接(locality sensitive h曰sh) (Berlin, Κ. et 曰1. Assembling Large Genomes with Single-Molecule Sequencing and Locality Sensitive Hashing. (2014))的方法減少 大約一半的時間。而在另一個直接而高度優(yōu)化的實施方式中(Myers, G. in Algorithms in Bioinformatics, Vol. 8701. (eds. D. Brown&B. Morgenstern), p52-67(Springer Berlin 化ide化erg, 2014)),能夠在利用更多的內存的基礎上進一步減少所需時間至15600CPU小 時。
      [0120] DBG20LC最終的組裝結果的質量可W與目前先進的組裝工具使用更大量資源得到 的結果相媳美。為了評估結果的準確性,W下表格中將組裝結果與人類參考基因組染色體 14進行比對,從而得到同一性和修正NG50的比對結果。 陽12U 表3. Η. sapiens基因組組裝性能比較(基因組大小:3. 0G bp) 陽1。]
      [012引由于測序序列集規(guī)模的問題,表中同一性及修正NG50僅使用染色體14的序列集 進行計算。 陽124] 實施例4: 陽1巧]對基于化化rd Nanopore平臺的第Ξ代測序序列集進行組裝
      [0126] DBG20LC可W正常用于計算錯誤率30% W上的序列。然而,為了保證準確的整合 結果則需要更高的測序深度。為了避開運個問題,在實驗中給高精度序列(例如第二代測 序中的contig)分配了更高的權重。
      [0127] 在本實施例中,待組裝序列集是基于Nanopore測序平臺的30x覆蓋率的大腸桿 菌K12基因組(基因組大?。?.6Mbp)測序序列集,該測序序列集中待組裝序列平均長度 為6. 5化P。錯點序列來自:利用30x覆蓋率的Illumina Miseq測序序列集,^Sparse Assembler的跳躍k-mer方法進行組裝,得到約2500條錯點序列,錯點序列平均長度約為 1. 7化P,錯點序列總長度約為115Mbp,對待測基因組序列的覆蓋率約為97%?;诒旧暾?的DBG2化C,利用上述組裝結果作為錯點,對30x覆蓋率的Nanopore測序序列集進行組裝, Wk-mer長度為15bp、闊值為(2%*每條錯點序列長度)的參數將錯點序列比對到待組裝 序列從而得到壓縮的待組裝序列索引表的集合,之后修正壓縮的待組裝序列中的錯誤,并 且完成組裝骨架的構建。而之后用Sparc (k-mer長度1,步長g = 1)運行了 3輪對基因序 列組裝骨架進行修正的步驟,結果列于表4中。 陽12引表4. E. coli K12基因組組裝性能比較(基因組大?。?, 6M bp.) 陽 129]
      陽130] 實施例5: 陽13U 對基于Illumina平臺的第二代測序數據進行組裝
      [0132] 為了評估短序列集組裝工具在處理通過精確的第二代測序技術獲得的長序列時 的性能,下載了針對大腸桿菌E. coli K-12菌株MG1655克隆值NAnexus數據庫(具體可 參考 ht1:p://sra. anexus.com)登錄號:SRA073308)的 50x 覆蓋率的 Illumina Miseq 的 測序序列集。在本實驗中,將本申請所述的組裝工具對較長的Illumina測序序列集進行 組裝的結果與其他幾個常用組裝工具(包括SGA(Simpson, J. T. &Durbin, R. Efficient de novo assembly of large genomes using compressed data structures. Genome researc h22, 549-556(2012)), S0APdenovo2(Luo, R. et al. S0APdenovo2:an empirically improved memory-efficient short-read de novo assembler. GigaSciencel, 18(2012)), SPAdesS ( Bankevich, A. et al. SPAdes:a new genome assembly algorithm and its applications to single-cell sequencing. Journal of computational biology:a journal of computational molecular cell biologyl9, 455-477(2012))的組裝結果進行了 比較。
      [0133] 有意思的是,對于在第Ξ代測序技術中生成的相對較長的測序序列集,傳統(tǒng)的具 有固定k-mer長度的DBG的組裝結果并非最優(yōu)的,其已經暴露了難W分辨重復區(qū)域并且當 使用較大的k值時需要更高的精準度及更高覆蓋率的測序序列集的缺點。運對矛盾的要 求,使得它很難獲得有限的計算資源的最優(yōu)組合。迭代DBG W更多的計算時間、費用和更復 雜的算法設計與實施為代價,部分解決了上述問題。例如,必須使用一個誤差校正程序W生 成長且正確的k-mer字串。SGA利用FM-index索引方法尋找準確匹配,運也帶來了對序列 質量的限制。
      [0134] 相反的,本申請的算法是穩(wěn)定的并且對質量的限制更松散,因此其能夠更有效及 準確地尋找重疊區(qū)域。本申請的DBG20LC使用Sparse Assembler組裝程序設置k = 31來 組裝最初的錯點序列。使用所述錯點序列及待組裝序列集計算壓縮序列。
      [0135] 其中錯點序列來自:利用50x覆蓋率的長度為150bp的Illumina Miseq測序序列 集,W SparseAssembler的跳躍k-mer方法進行組裝,得到約400條錯點序列,錯點序列平 均長度約為13化P,錯點序列總長度約為4. 6Mbp,對待測基因組序列的覆蓋率約為100%。 基于本申請的DBG2化C,利用上述組裝結果作為錯點序列,對50x覆蓋率的11 lumina測序序 列集進行組裝,Wk-mer長度為3化P、闊值為0的參數將錯點序列比對到待組裝序列從而得 到壓縮的待組裝序列索引表的集合,并且完成組裝骨架的構建。對于Illumina數據,由于 精度高,組裝骨架即可作為最終結果。在運個例子里錯點序列和待組裝序列來自同一數據 集。主要原因是傳統(tǒng)的k-mer法僅僅能解決比k短的重復區(qū)域,并不能解決基因組中比k 長,但比讀長短的所有重復區(qū)域。所W雖然錯點序列平均長度很長,但仍有大量重復區(qū)域不 能解開。DBG20LC則用錯點壓縮待組裝序列,并最大程度化解了運些比讀長短的重復區(qū)域。 陽136] 在此序列集中,本申請所述方法中的重疊圖譜的構建只花費了大概1秒的時間, 而其中序列的壓縮花費了大部分的計算時間-大約兩分鐘。 陽137] 表5.對使用Miseq讀取的E. coli基因組序列的組裝性能比較(基因組大?。?. 6M bp) 陽13引
      陽139] 實施例6:
      [0140] 在本實施例中,本申請中描述的Sparc整合算法在各種從細菌基因組到哺乳動物 基因組大小的數據集中被驗證。Sparc整合算法在化cBio數據集(http://schatzl油. cshl.edu/data/ectools/)中及在 Oxford Nanopore 數據集化ttp://gigadb.org/ dataset/100102)中的驗證結果如下。
      [0141] 與Sparc整合算法最為相似的現有算法是PBdagcon,W下將顯示在上述兩個 數據集中PBdagcon算法與Sparc整合算法的比較結果。基于完全相同的數據輸入,使 用如本申請所述的方法首先利用DBG20LC生成組裝骨架,最后使用MUMmer 3(Kudz,S. et al. Versatile and open software for comparing large genomes. Genome BiologyS,R12 (2004))的化adiff功能來計算最終的整合同一性。所有的實驗均在具有AMD 化teron 2425肥CPUs處理器(在800MHz的頻率下)的工作站中進行。
      [0142] Sparc被設計為允許使用一種(如第二代或第Ξ代測序)或多種混合測序數據 (如同時使用第二代測序W及第Ξ代測序序列)并且賦予相應的路徑更高的權重。將整合 的結果再作為輸入進行迭代再運行整合運算有助于提高同一性。在混合數據集的整合實驗 中,使用Sparse Assembler組裝工具組裝的Illumina組裝錯點序列并且將邊的權重增加 至5。在化cBio數據集中,Wk= l,g= 1運行兩輪整合算法,第一輪及第二輪后的逐堿 基準確率在表6中W同一性1及同一性2來表示。在第一個實驗中,使用化cBio中得到的 E. coli測序數據集并且在不同的測序深度情況下對同一性進行檢測。在10X/30X深度的測 序數據中使用DBG20LC得到的最長組裝骨架分別為1. 3Mbp和4. 6Mbp。在現有數據庫中可 W找到登記號為NC_000913,長度為4. 6Mbp的E. coli參考基因組。在混合數據集中,僅使 用lOx深度的數據Sparc整合算法就能夠達到99. 91 %的同一性,而當使用30x深度的數據 時其能達到更好的整合質量巧9. 98%的同一性)。而在化cBio數據集中得到的同一性只 略低于在混合數據集中得到的結果。
      [0143] 表6.在化cBio中得到的E. coli測序數據集中的計算結果
      [0144]
      [0145] 使用在化cBio中得到的測序深度為20x的A. thaliana(基因組大小為120Mbp) 測序數據集,檢測Sparc整合算法在計算更大數據容量時的性能。使用DBG20LC得到的 最長組裝骨架為 7. IMbp。WHGAP(Qiin,C.S. et al.Nonhybrid, finished microbial genome assemblies from long-read SMRT sequencing data. Nature methods 10, 563-569(2013))方法得到的純化cBio數據集基因組組裝被作為參照W計算同一性。
      [0146] 表7.在化cBio中得到的A. thaliana測序數據集中的計算結果 陽 147]
      [0149] 在化化rd Nanopore數據集中,基于其更高的錯誤率,W k = 2, g = 2運行四輪整 合算法,第一輪及第四輪后的逐堿基準確率在表8中W同一性1及同一性2來表示。在混 合數據集中與在化化rd Nanopore數據集中使用Sparc與PBdagcon整合算法的結果列于 表8中。運用Sparc整合算法在具有約40%原始錯誤率的化化rd Nanopore數據集中能夠 得到高于99. 5%的同一性,其比在混合數據集中得到的結果同一性更高。在此實驗中,得到 的最長組裝骨架為4.6Mbp。
      [0150] 表8.在化化rd Nanopore中得到的E. coli測序數據集中的計算結果
      [0151]
      陽152] 在30x PacBio E.coli的混合數據集中使用不同的參數對內存及質量進行比較, 如表9中所示,除了在設定更高的g值能夠降低內存的消耗W外,其他參數的變化并未能引 起結果的較大改變。 陽153] 表9.使用不同的參數對內存及質量進行比較 陽 154]
      [01巧]上述實驗的結果顯示在使用Sparc整合算法時,一般可設定k = 1-3, g = 1-5。使 用混合數據集可W減少對第Ξ代測序數據深度的需求,運將大大降低測序成本。由于第二 代測序具有更高的準確率,將第二代測序的結果用于整合將有助于提高基因組裝的質量。
      [0156] 盡管在此公開了本申請的各個方面和實施例,但其他方面和實施例對于本領域技 術人員而言也是顯而易見的。在此公開的各個方面和實施例僅用于說明目的,而非限制目 的。本申請的保護范圍和主旨僅通過后附的權利要求書來確定。
      [0157] 同樣,各個圖表可W示出所公開的方法和系統(tǒng)的示例性架構或其他配置,其有助 于理解可包含在所公開的方法和系統(tǒng)中的特征和功能。要求保護的發(fā)明并不限于所示的示 例性架構或配置,而所希望的特征可W用各種替代架構和配置來實現。除此之外,對于流程 圖、功能性描述和方法權利要求,運里所給出的方框順序不應限于W同樣的順序實施W執(zhí) 行所述功能的各種實施例,除非在上下文中明確指出。
      [0158] 除非另外明確指出,本文中所使用的術語和短語及其變體均應解釋為開放式的, 而不是限制性的。在一些實例中,諸如"一個或多個"、"至少"、"但不限于"運樣的擴展性詞 匯和短語或者其他類似用語的出現不應理解為在可能沒有運種擴展性用語的示例中意圖 或者需要表示縮窄的情況。
      【主權項】
      1. 一種用于組裝基因序列的方法,包括: 獲取一待組裝序列集的數據和多個錨點序列的數據; 利用所述多個錨點序列,對所述待組裝序列集中的每一個待組裝序列進行壓縮以獲得 該待組裝序列的索引表,其中所述索引表以錨點序列的標號來表示;以及 利用所述待組裝序列集中各待組裝序列壓縮得到的所述索引表構建組裝骨架。2. 如權利要求1所述的方法,其中,所述壓縮以獲得待組裝序列的索引表包括: 確定每個錨點序列在待組裝序列中的排列位置,并按照錨點序列在待組裝序列上的排 列位置,獲得對應于該待組裝序列的索引表。3. 如權利要求2所述的方法,其中,所述確定每個錨點序列在待組裝序列中的排列位 置包括: 將所述錨點序列和每一個待組裝序列分別打斷成一系列核苷k聯體,將所述錨點序列 的核苷k聯體分別與所述待組裝序列的核苷k聯體進行比對,當所述待組裝序列的核苷k 聯體中與錨點序列的核苷k聯體的匹配率超過預定閾值,則認為所述錨點序列可以匹配至 該待組裝序列; 通過所述匹配的核苷k聯體在所述錨點序列上的位置及所述匹配的核苷k聯體在所述 待組裝序列上的位置之間的相互對應關系,確定匹配的錨點序列在待組裝序列中的排列位 置。4. 如權利要求3所述的方法,其中,所述核苷k聯體的長度為:15bp-51bp、15bp-25bp、 或 31bp_51bp。5. 如權利要求3所述的方法,其中,所述閾值為所述錨點序列的長度的0. 1%至2%。6. 如權利要求1所述的方法,其中,所述構建組裝骨架包括: 將所述待組裝序列集中各待組裝序列壓縮得到的所述索引表進行一一比對,篩選出具 有最優(yōu)重疊的待組裝序列子集,以構建待組裝序列間的最優(yōu)重疊圖譜,然后根據所述子集 中的待組裝序列中錨點序列標號的位置對應關系對所述子集中的各待組裝序列進行排布, 從而形成組裝骨架。7. 如權利要求1所述的方法,其中,所述構建組裝骨架包括: 選取所述待組裝序列集中的一條序列作為當前序列,將所述當前序列的索引表與待 組裝序列集中的所有其它序列的索引表進行一一比對,找出與所述當前序列具有重疊關系 的備選序列,將備選序列與當前序列進行索引表比對或堿基比對以找出與當前序列具有最 優(yōu)重疊和延伸的序列,并將其相對于當前序列延伸的部分加到當前序列上即獲得當前序列 的擴展序列,通過將所述待組裝序列集中的每條序列作為當前序列重復上述步驟以得到一 組擴展序列,然后根據所述擴展序列中錨點序列標號的位置對應關系對各擴展序列進行排 布,從而形成組裝骨架。8. 如權利要求1所述的方法,進一步包括:在獲得每條待組裝序列的索引表后,利用所 述錨點序列對待組裝序列的索引表進行反向檢索,得到與所述錨點序列相對應的待組裝序 列的索引表子集,通過將所述索引表子集中所有其他序列的索引表比對到當前待組裝序列 的索引表上來修正所述待組裝序列的索引表子集中的每條待組裝序列的索引表。9. 如權利要求8所述的方法,其中,所述通過比對來修正所述待組裝序列的索引表子 集中的每條待組裝序列的索引表包括: 對待組裝序列的索引表子集中每條待組裝序列的索引表,將其作為當前序列索引表與 所述索引表子集中所有其他待組裝序列的索引表進行一一比對,根據每個位置上不同的錨 點序列標號出現的頻次進行投票,利用每個位置的投票結果對每條所述當前序列索引表進 行修正,從而獲得修正后的待組裝序列的索引表。10. 如權利要求9所述的方法,其中,所述對待組裝序列的索引表進行修正包括: 將比對結果中在待組裝序列的索引表子集中出現不多于5次、或不多于4次、或不多于 3次、或不多于2次、或不多于1次的錨點序列標號從包含其的序列的索引表中刪除; 將存在斷點的雜合序列刪除;以及 將比對結果中的被包含的序列刪除。11. 如權利要求9所述的方法,其中,所述構建組裝骨架包括:將所有所述修正后的待 組裝序列的索引表子集中的索引表進行一一比對,篩選出具有最優(yōu)重疊的修正后的待組裝 序列的子集,然后根據所述子集中的修正后的待組裝序列索引表中錨點序列標號的位置對 應關系對待組裝序列進行排布,從而形成組裝骨架。12. 如權利要求1-11中任一項所述的方法,進一步包括對構建的組裝骨架進行如下所 述的再修正:在構建組裝骨架后,將所有待組裝序列與組裝骨架進行比對,對于組裝骨架上 的任一位點,通過計算所有可比對至該位點的各條序列中在該位點的每種堿基出現的頻次 進行投票,利用每個位點的投票結果對組裝骨架進行再修正,從而得到再修正后的基因序 列組裝結果。13. 如權利要求12所述的方法,其中,所述投票是通過利用跳躍式核苷k聯體實現的。14. 如權利要求12-13中任一項所述的方法,其中,所述對組裝骨架進行再修正包括: 獲得覆蓋待組裝基因序列不同區(qū)域的組裝骨架,利用多個計算機處理器同時分別修正 所述覆蓋待組裝基因序列不同區(qū)域的組裝骨架,以及將再修正后的組裝骨架進行整合得到 完整的基因序列組裝結果。15. 如權利要求1-14中任一項所述的方法,其中,所述待組裝序列集包括通過第二代 基因組測序技術測序得到的序列。16. 如權利要求1-15中任一項所述的方法,其中,所述待組裝序列集中的序列長度 在100bp-120kbp之間、或者在500bp-120kbp之間、或者在500bp-100kbp之間、或者在 lkbp-100kbp之間、或者在100bp-lkbp之間、或者在100bp_300bp之間。17. 如權利要求1-16中任一項所述的方法,其中,所述待組裝序列集包括通過第三代 基因組測序技術所得到的序列,并且所述待組裝序列集中的序列長度在500bp-100kbp之 間。18. 如權利要求1-17中任一項所述的方法,其中,所述錨點序列的長度在2bp-30bp之 間、或者在30bp-100bp之間、或者在100bp-300bp之間、或者在30bp-100kbp之間、或者在 300bp-100kbp 之間。19. 如權利要求18所述的方法,其中,所述錨點序列選自下組:精度大于95%的序列 長度在100bp-300bp之間的短序列、基因組高保守區(qū)域內的精度大于95%的序列長度在 100bp-300bp之間的短序列和待組裝序列集中序列長度在lkbp-120kbp之間的長序列的局 部截取。20. -種用于組裝基因序列的系統(tǒng),包括: 輸入組件,其用于獲取一待組裝序列集的數據和多個錨點序列的數據; 存儲器,其用于存儲所述待組裝序列集的數據和多個錨點序列的數據;以及 處理器,其被配置于: 利用所述多個錨點序列,對所述待組裝序列集中的每一個待組裝序列進行壓縮以獲得 該待組裝序列的索引表,其中所述索引表以錨點序列的標號來表示;以及利用所述待組裝 序列集中各待組裝序列壓縮得到的所述索引表構建組裝骨架。21. 如權利要求20所述的系統(tǒng),其中,所述處理器被進一步配置于: 在獲得每條待組裝序列的索引表后,利用所述錯點序列對待組裝序列的索引表進彳丁反 向檢索,得到與所述錨點序列相對應的待組裝序列的索引表子集,通過將所述索引表子集 中所有其他序列的索引表比對到當前待組裝序列的索引表上來修正所述待組裝序列的索 引表子集中每條待組裝序列的索引表。22. 如權利要求20所述的系統(tǒng),其中,所述處理器被進一步配置于對構建的組裝骨架 進行如下所述的再修正: 在構建組裝骨架后,將所有待組裝序列與組裝骨架進行比對,對于骨架上的任一位點, 通過計算所有可比對至該位點的各條序列中在該位點的每種堿基出現的頻次進行投票,利 用每個位點的投票結果對組裝骨架進行再修正,從而得到再修正后的基因序列組裝結果。23. 如權利要求22所述的系統(tǒng),其中,所述處理器被進一步配置于: 獲得覆蓋待組裝基因序列不同區(qū)域的組裝骨架,利用多個計算機處理器同時分別修正 所述覆蓋待組裝基因序列不同區(qū)域的組裝骨架,以及將再修正后的組裝骨架進行整合得到 完整的基因序列組裝結果。
      【文檔編號】G06F19/22GK105989249SQ201510084489
      【公開日】2016年10月5日
      【申請日】2015年2月16日
      【發(fā)明人】葉承羲
      【申請人】葉承羲
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1