動機:
PacBio單分子實時測序是一種産生長片段(reads)的第三代測序技術,具有相對更低的通量和更高的錯誤率。錯誤包括大量插入缺失,并使下遊分析,像比對或從頭裝配複雜化。提出了一種利用第二代短片段高準确性的混合政策以修正長片段。短片段到長片段的比對提供了足夠的覆寫以剔除高達99%的錯誤,然而,是以過高的運作時和相當大量的磁盤和記憶體空間為代價的。
結果:
我們提出了LoRDEC,一種混合糾錯方法,它建構一個簡潔的de Brujin圖代表短片段,并通過圖中選擇的路徑為長片段中每個錯誤區尋找一個正确的序列。
相比之下,LoRDEC快至少6倍,并比可用的工具需要至少93%更少的記憶體或磁盤空間,然而獲得了可比的準确性。
可用性和實作:
LoRDEC是用C++寫的,在Linux平台上測試,并可以在
http://atgc.lirmm.fr/lordec免費獲得。
補充資訊:補充資料可以在Bioinformatics網站線上獲得。
Introduction
測序,即DNA或RNA序列的測定,現在屬于生命科學的基礎實驗。與桑格方法相比,所謂的下一代測序技術(第二代、第三代甚至第四代)大大降低了成本,提高了效率,使得全基因組測序和全轉錄組測序成為可能。除了從頭開始的基因組測序群組裝,許多類型的“組學”實驗已經被發明出來,并依賴于高通量測序。
目前所有可用的技術産生的讀序列隻代表目标分子序列的一部分。處理這些讀操作需要将它們與其他序列對齊:例如,在将它們映射到參考基因組時,或者在組裝期間讀操作之間的計算重疊時。為了進一步分析,保留了最優,有時是次優的對齊。對齊的強度(是以其有用性)主要由兩個因素控制:辨別的百分比和長度。很明顯,在測序過程中引入的錯誤,測序錯誤,通過引入不比對或将信号分解成更短的信号,使信号變得模糊。較弱的對齊可能無法通過後續的過濾器,并在向下分析時丢失。分析越精細,就越有必要捕獲所有排列中可用的資訊:例如,當試圖在組裝過程中彌合基因組中較少覆寫區域的缺口,或重建表達較少的RNA的序列時。為了抵消測序錯誤,已經發現錯誤校正算法對de novo assembly (Salzberg et al., 2012)是有效的,是以它們經常被合并到裝配管道中(如Euler SR(Chaisson and Pevzner, 2008)、ALLPATHS-LG (Gnerre et al.,2011)和SOAPdenovo2 (Luo et al.,2012))。
1.1第二代測序相關工作
在長序列(Sanger或PacBio讀取)的情況下,算法計算讀取的多個對齊,并調用一緻序列來糾正錯誤區域。對齊計算有運作時間長和參數依賴的不便(Salmela and Schroder, 2011)。在第二代讀取的情況下,意味着更大的輸入大小和适度的錯誤率,關鍵思想是利用排序的覆寫率。通過計算讀集中出現的錯誤子字元串的數量,可以區分錯誤子字元串和無錯誤子字元串。有了足夠的覆寫率,就可以計算一個最小門檻值,使每個無錯誤的k-mer在讀取集中出現至少相同次數的機率很高。高于/低于門檻值的k-mer分别被限定為solid或weak。這種思想在基于De Bruijn Graphs (DBG)的第二代彙程式設計式中得到了利用,其中隻有實體k-mers構成了DBG的節點(例如Zerbino和Birney,,或者在對照參考進行映射時,将錯誤的位置與生物突變區分開(Philippe et al.,2013)。目前許多用于第二代測序的誤差校正算法(Illumina、Roche or Solid)采用這種計數政策,也稱為光譜比對(Chaisson et al., 2004;Pevzner et al.,2001):計算固體k-mer的光譜,并通過更新每個弱k-mer及其最近的固體k-mer來糾正每次讀取。依賴于哈希表的實作很好地适應了k-mers(即固定長度的子字元串),而基于更靈活的讀取索引(例如字尾樹或字尾數組)的方法可以糾正不同長度的子字元串(Salmela,2010;Schroder et al.,2009)。基于譜對齊的方法比基于對齊的方法更有效、更可擴充,并且适用于低錯誤率。最近關于糾錯的工作主要集中在糾正Illumina讀取中替換是主要錯誤類型的地方,是以更具有挑戰性的插入和删除糾錯問題僅由少數作品解決(Salmela,2010;Salmela和Schroder,2011)。關于第二代測序誤差校正方法的調查,見Yang et al.(2013)。
1.2 PacBio reads相關工作
PacBio SMRT測序的特點是讀長得多(高達20kb),錯誤率高得多(415% Koren等,2012),并且對錯誤糾正提出了更困難的挑戰。然而,排序錯誤似乎是均勻分布的,獨立于序列上下文,并傾向于插入,在較小程度上删除。為了簡單起見,我們将PacBio讀、長讀(LR)和其他第二代讀、短讀(SR)稱為PacBio讀。為了解決這一挑戰,提出了兩種方法:僅使用LR進行自校正,或使用SR庫對LR進行混合校正。Self correction,類似于Sanger correction tools,計算LR [with BLASR (Chaisson and Tesler, 2012)]之間的局部對齊,以建構多個對齊,然後調用一緻性。它已經在非混合組裝器HGAP中實作,并在細菌基因組上進行了實驗(Chin et al.,2013)。混合校正利用了SR庫更高的品質和覆寫範圍,進而産生更強的對齊,在LR上對齊它們,并通過從多個對齊調用協商一緻序列來糾正後者。這種政策在組裝程式AHA (Bashir等,2012)和糾正程式LSC (Au et al.,2012)和PacBioToCA (Koren et al.,2012)中發現;在細菌基因組上達到了與非混合方法類似的精确度,但也證明能夠對真核生物基因組和轉錄組進行操作(Au et al.,2012;Koren et al.,2012)。
1.3基因組整理、支架和長讀校正方法的局限性
最近,有兩項提案[PBJelly (English et al.,2012)和Cerulean (Deshpande et al.,2013)]采用了基因組支架或整理的中間政策:除了LR之外,它們還将部分組裝的基因組或使用SR資料生成的組裝圖作為輸入。疊架被映射到LR, LR作為完成/填充裝配間隙或将疊架訂購到支架的基礎。Deshpande et al(2013)通過目前LR校正程式對時間、記憶體和磁盤的要求來證明他們的政策是正确的,該程式甚至對細菌基因組資料集也需要高計算資源和長時間的超級計算機運作。目前的校正程式似乎沒有充分利用序列索引資料結構來加快校正速度(Navarro and Makinen,2007)。
1.4貢獻
考慮到LR校正程式的局限性和PacBio讀取的高錯誤率,本文提出了一種新的混合校正算法。它首先建構SR資料的DBG,然後通過在DBG中搜尋最優路徑來糾正LR中的錯誤區域。沿路徑重疊的k-mers序列提供了該區域的校正序列。利用DBG緊湊表示的最新發展[Fig 1 Chikhi and Rizk (2012);Salikhov et al(2013)],我們開發了一個名為LoRDEC (Long Read DBG Error Correction,長讀DBG糾錯)的程式,它允許在普通計算硬體上糾正典型大小的資料集。我們将我們的程式與最先進的方法進行比較,發現它提供了相同的精度,低記憶體使用和合理的運作時間

2.方法
2.1概述
混合校正算法背後的原理是使用一組高品質的讀取來校正第二組誤碼率較高的讀取。通常,Illumina、454或PacBio CCS SR的低誤碼率參考集将有助于糾正長PacBio RS讀取。由于這兩個集合假設來自同一個庫,是以目标是将長時間讀入錯誤區域的序列轉換為分子該區域的SR可以組裝的序列,同時保持LR的長度。我們的程式LoRDEC将SR、LR和一個奇數k作為輸入。現在,我們的方法是通過周遊SR的DBG中的适當路徑,為LR的每個錯誤區域找到一個可選序列。為避免在糾正過程中引入錯誤依據,我們過濾掉任何k長子串,稱為k-mer,它在SR中出現的次數少于s次[在第二代組裝器(Chikhi and Rizk, 2012; Salikhov et al., 2013; Zerbino and Birney, 2008)]其中s由使用者設定。用我們的術語,我們隻保留了固定的k-mers。
LoRDEC首先讀取SR,建構它們的DBG (k階),然後逐個獨立地糾正每個長讀操作。DBG是大多數第二代組裝器(如Velvet、Minia)的底層圖。SR中的每個實心k-mer在DBG中構成一個節點,如果節點f的k-mer與g的k-mer重疊1個位置,則有向弧将節點f連結到節點g。圖1顯示了一個DBG示例。在用于裝配的DBG中,由于讀鍊未知,節點表示一個k-mer和它的反向補k-mer,并擴充了arc的概念,以確定兩個節點/k-mers可以在同一條鍊上重疊。例如,一個k-mer acgta将通過一個弧連接配接到k-mer cgtat。很明顯,從一個節點到另一個節點的路徑,也就是一系列弧,代表了一個核苷序列,在兩個節點之間,比如f和g,可能沒有路徑,隻有一條或多條路徑。通常,彙程式設計式沿着非分支路徑輸出序列為contigs。為了存儲DBG,我們使用記憶體效率高的GATB庫(
http://gatb-core.gforge.inria.fr),它允許周遊圖中的任何路徑并獲得任何節點的序列。GATB使用Bloom過濾器來存儲DBG,并額外記錄DBG中與k-mers相鄰的假陽性k-mers,如果周遊從一個實k-mer開始,則隻允許周遊實k-mers。然而,我們使用DBG來确定LR中的k-mer是否為固體,是以,GATB可以報告假陽性。我們發現,如果我們額外要求一個k-mer被認為是固态的,那麼它也必須至少有一個輸入弧和至少一個輸出弧,報告的固态k-mers中隻有一小部分(例如大腸杆菌資料集中的0.03%)是假陽性。
考慮從位置1、2、3開始的長讀的k-mers…:一些k-mers屬于圖中,屬于固體,而另一些k-mers不屬于圖中,屬于弱分子。基本上,可靠的k-mers應該是正确的,而較弱的可能包括測序錯誤,需要糾正。固體k-mers是DBG中的入口點,LoRDEC通過在與該區域相鄰的固體k-mers之間的DBG中找到最佳路徑,糾正了由弱k-mers組成的區域。有時,LR沒有實心k-mer,在這種情況下,LoRDEC在輸出中将其标記為實心k-mer并跳過它。我們的結果表明,隻有短的錯誤讀取(51500個核苷酸)完全缺乏可靠的k-mers(資料沒有顯示)。由于PacBio測序的目标是獲得長讀,是以我們的目标是産生長而正确的序列,是以我們決定在LoRDEC的目前版本中過濾這些讀。在剩餘的LR中,至少有一個k-mer是固态的:是以,對于弱區,會出現兩種情況:要麼它位于LR的一端,隻有一個實心k-mer與之相鄰,我們叫它頭或尾區域,或者它是一個内部區域,每一邊都有一系列的k-mers。薄弱區域如Fig 2a所示。我們的算法使用兩個不同的過程來糾正頭部/尾部或内部區域(見下文)。
糾正一次長讀的算法如Fig 2所示,總結如下。對于每次長讀,我們将head/tail校正過程應用到最左(head)和最右(tail)的弱區,然後循環周遊序列,選擇一對實體k-mers,并針對每對實體k-mers,對它們之間的弱區啟動校正過程。每次調用糾正過程都會動态地修改序列,進而将弱序列轉換為實k-mers。LoRDEC在讀取過程中執行兩次周遊,每個方向執行一次。首先,實時修正生成新的實體k-mers,作為下一遍的起始節點;其次,由于序列中的重複,搜尋路徑可以根據從哪個區域的末端開始,繼續到圖的不同部分。是以,值得嘗試兩次傳遞。
Fig2長read校正法。
(a)長讀根據短讀DBG劃分為弱區和實區(分别為直線和矩形)。長讀開始或結束時的弱區分别稱為頭區或尾區,其他弱區稱為内區。實心區域的圓圈表示DBG的k-mers。弱區域周圍的k-mers作為源節點和目标節點DBG中搜尋路徑。每個弱内部區域都使用幾個源/目标對。
(b)在第二個内部區域,在DBG中找到節點s1和t1之間的橋接路徑來糾正這個區域。在第三個區域,路徑搜尋沒有找到節點s2和t2之間的路徑。對于尾部,将尋找一個擴充路徑,并找到從節點s3到末尾的擴充路徑。一旦找到,路徑的糾正序列與尾部對齊,以确定最優子字元串(粗點箭頭)
2.2内部薄弱環節的校正
一個内部區域被每一邊的固體k-mers所包圍。該過程以源和目标實體k-mers、區域序列和最大分支限制為輸入。實體k-mers充當DBG中的源節點和目标節點,這些節點之間的任何路徑都編碼一個序列,該序列首先可以從SR組裝,然後,它以适當的實體k-mers開始和結束。是以,該區域序列可以用任意路徑的序列進行校正。我們選擇這些路徑的标準是最小化路徑和區域序列之間的編輯距離。現在,幾個可靠的k-mers可以作為搜尋的源和目标。我們用來過濾錯誤k-mer的可靠度标準并不完美:一些可靠k-mer可能仍然是錯誤的。對于這樣的k-mers,路徑搜尋可能會失敗,或者導緻路徑序列遠不是最優的。為了避免陷入這種局部極小值,我們不僅考慮了一個,而且考慮了在每個弱區周圍的幾對(源、目标)k-mers。
為此,我們循環周遊讀取的内部實體k-mers,并将每個k-mers看作一個源。對于每個可能的源,我們将t向下的實體k-mers視為目标(預設情況下t被設定為5),并根據源和目标k-mers是否相同,過濾掉一些排他的情況
(1)屬于同一實體k-mers運作:假設該區域是正确的,不尋找路徑;
(2)重疊:串聯重複很可能産生重疊區域,或者k-mer為假實心,我們跳過這種情況;
(3)在讀取時彼此距離太遠:計算動态規劃(DP)矩陣的最小編輯距離将需要太多的記憶體,并且找到路徑的可能性很低:我們必須跳過這種情況。
在所有其他情況下,我們尋找源和目标固體k-mers之間的最佳路徑。通過這種選擇源/目标對的方式,我們確定将考慮與弱區域相鄰的幾個對。如果源和目标之間的路徑被視為弱區域上的橋,那麼可選的源/目标對可能形成跨越讀取區域的不同橋。沿着read找到的所有橋都形成一個有向圖:路徑圖。實體k-mers建構它的節點,找到的每個路徑都是源和目标k-mers之間的弧。弧由區域序列和找到的路徑之間的編輯距離權重。是以,路徑圖的構造與内部區域的校正混合在一起。
為了為標明的源/目标對在DBG中尋找最優路徑,我們執行深度優先搜尋周遊源和目标之間的可能路徑,并在每個步驟(節點方向)計算其與DP矩陣中的區域序列的最小編輯距離。當到達圖中的死角、目标k-mer或路徑擴充的最小編輯距離超過允許的最大錯誤率時,停止對路徑的探索。當遇到的路徑數量超過分支限制時,将中止整個搜尋。最後,如果至少找到一條路徑,我們将路徑及其編輯距離記錄為路徑圖中兩個k-mers之間的弧,即我們在上面定義的。否則,如果對目前源k-mer的搜尋全部失敗,則在路徑圖中添加一個僞弧:源與下一個實心k-mer之間的弧,其權重距離等于區域長度。這確定從第一個實體k-mer到最後一個實體k-mer的路徑始終存在。
2.3頭部或尾部區域校正:尋找最佳擴充
糾正讀頭或讀尾是一個對稱的過程,是以我們用讀尾來描述它。尾巴是由弱k-聚體構成的核苷區,其前面至少有一個固體k-聚體。該過程以實體k-mer節點為輸入,以DBG中的源節點、尾序列和分支限制為輸入。與内部區域不同,我們缺少一個目标k-mer,是以需要另一個标準來停止通路路徑。該過程尋找任何允許糾正尾部字首的路徑,并在節點方面優化字首長度和目前路徑與尾部目前字首之間的編輯距離。它使用深度優先搜尋并探索路徑,直到它們的編輯距離變得太大,或者直到到達DBG中的死胡同或尾部。
最後,由于該過程優化了字首長度,它傾向于将搜尋擴充到與路徑對齊良好的字首之外。是以,重新考慮找到的路徑,以搜尋其優化對齊分數的字首。該比對步驟從實體k-mer開始尋找最佳擴充序列,并獲得最大的比對得分。這個擴充問題讓人想起了在BLAST中尋找局部對齊的最佳擴充搜尋(它通過一個下拉得分限制來解決; Altschul et al., 1990).。
關于陽極内部區域校正的優化。當源k-mer與其所有目标之間的路徑搜尋失敗時,這意味着我們無法找到橋接路徑。然而,我們可以在弱區域的每一邊找到最佳的擴充,并糾正該區域的字首和字尾。為此,我們使用與頭尾校正相同的擴充過程,并相應地調整圖的路徑邊緣。
2.4圖形路徑優化
最後,在一次完整的校正結束時,所有發現的内部路徑都記錄在路徑圖中。這裡,兩個實體k-mers之間的一條邊記錄了這些k-mers之間的路徑所訓示的區域的校正。最後,在考慮所有内部實體k-mers後,利用Dijkstra算法(Dijkstra, 1959)在路徑圖中找到讀取的第一個和最後一個實體k-mers之間的最短路徑,進而優化内部區域的校正。
2.5修邊和分割糾正讀數
在校正過程的最後,如果校正讀數中的每個堿基至少屬于一個固态k-mer,則可将其劃分為固态,否則為弱型。LoRDEC輸出大寫字母的實基和小寫字母的弱基。我們提供了兩個實用程式來修剪和分割校正後的讀數。第一個工具從讀取的開始和結束都對所有的弱堿進行了修剪,但保留了弱堿的完整區域,這些區域的兩邊都是實心堿。是以,每次糾正讀取都會産生一個修剪讀取。第二種工具通過從修正後的讀操作中提取出作為獨立序列的所有實基來對讀操作進行修剪和分割。
3.結果
3.1資料與計算環境
我們使用了三個不斷增長的資料集:一個來自E。大腸杆菌,兩個真核生物從酵母和鹦鹉。它們分别包括98Mb、1.5 Gb和6.8Gb的PacBio讀取,以及231,451mb和35Gb的Illumina讀取。所有細節見補充表S1。
所有的實驗都在伺服器上運作,伺服器有16個核心,運作速度2.53GHz,記憶體為32GB。運作時由Linux/Unix time指令記錄,記憶體和磁盤使用情況由定期輪詢作業系統記錄。因為所有的校正工具都支援在多個核心上并行執行,是以我們報告了CPU總時間和運作時間(挂鐘)。
3.2評價方法
我們使用兩種方法來評估校正的準确性。第一種方法測量讀序列與參考基因組的比對程度。第二種方法是比較原始讀數和校正讀數在比對參考文獻時的差異,以評估校正的準确性。
大腸杆菌和酵母資料集,我們使用BLASR (Chaisson and Tesler, 2012)将原始和糾正後的讀序列對齊到基因組,對于parrot資料集,我們使用bwam-mem (Li, 2013)。對于較小的資料集,使用BLASR是因為它傾向于更好地橋接長indel,進而報告更長時間的對齊。對于parrot資料集,我們更喜歡BWA-MEM,因為它更快。每次讀取,我們都保持其與基因組的最佳比對。然後,我們計算讀序列的對齊區域的大小、基因組中對齊區域的大小以及對齊中相同位置的數量。然後計算相同位置的數量除以基因組中對齊區域的長度來确定對齊的一緻性。然後,根據可以與基因組比對的區域大小和比對的一緻性,通過錯誤糾正程式對讀取結果進行評估。
可以進一步分析原始讀數和校正讀數的比對,以表征校正的精度。考慮原始讀、校正讀和相應基因組區域的多重對齊。這種多重比對中的每個位置可以分為真陽性(TP)、假陽性(FP)、真陰性(TN)或假陰性(FN)。如果原始讀數有錯誤,并且已被糾錯工具糾正,則位置為TP。原文中未改正的錯誤位置,為錯誤否定。在FP位置,糾錯工具已經進行了糾錯,雖然在原始讀取中沒有錯誤,最後,TN位置在原始讀取和糾正讀取中都是正确的
修正的精度可以用以下幾個統計量來測量:
靈敏度=TP/(TP+FN),工具識别錯誤位置的能力如何?
增益=(TP FP)/(TP+FN),該工具在不引入新錯誤的情況下如何消除錯誤
誤差校正工具包(Yang et al., 2013)是為比較第二代測序資料的誤差校正結果而設計的。作為輸入,它需要将原始讀操作和糾正後的讀操作映射到SAM格式的基因組。我們用BLASR表示E。大腸杆菌和酵母資料以及BWA-MEM為鹦鹉資料産生比對。對于每一對原始讀碼和校正讀碼,工具箱計算與參考基因組的差異集,并對這兩組進行比較,以确定校正時TP、FP和FN的位置。針對第二代測序的讀映射器報告讀與基因組的完全比對,而BLASR和BWA-MEM報告讀與基因組的最佳局部比對。我們對工具箱進行了修改,使原始讀取和修正讀取之間的差異僅在原始讀取對基因組的局部比對的基因組區域内計算。
對于大量的indel,比對結果的差異比較并不容易,即使是相同的差異往往産生不同的排列相同的比對的得分。是以,特别是在部分糾正的區域,可能會報告比實際情況更多的差異,是以這種方法可能報告比資料集中實際出現的更多的FPs或FNs。
3.3參數對方法的影響
我們研究了參數對方法的影響在大腸杆菌的資料集。我們每次改變一個參數,記錄運作時,并通過計算增益來評估方法的準确性。Fig3顯示了本實驗在改變5個參數時的結果:k、Illumina資料集中k-mer為solid的門檻值、校正區域的最大錯誤率、分支限制以及從源k-mer中尋路的目标k-mers數量。我們看到k=19對于這個資料集給出了最好的結果,進一步的酵母資料實驗證明k=19對于這個資料集也是最優的(資料沒有顯示)。固體k-mer門檻值對校正精度影響不大,門檻值越小,校正效果越好。通過在運作時略微增加校正區域的最大錯誤率,提高了校正精度。增加探索分支的數量或目标k-mers的數量隻對增益有很小的影響,而運作時顯著增加。基于這些觀察,我們在E上運作了我們的方法。大腸杆菌和酵母的資料與以下參數:k, 19;固體k-mers門檻值,3;最大錯誤率0.4;分支限制,200;和目标k-mers的數量,5。對于parrot資料,我們發現k=23在運作時和準确性方面都給出了更好的結果。Supplementary Table S2為每個參數及其預設值提供了解釋。
3.4與LSC、PacBioToCA比較
我們将LoRDEC與LSC (Au et al.,2012)和PacBioToCA (Koren et al.,2012)進行了比較。LSC使用預設參數運作,隻是我們将短讀覆寫深度設定為資料集的估計覆寫範圍,即E。大腸杆菌資料集和38為酵母資料集。PacBioToCA使用預設參數運作,除了調優适合我們平台的并行化參數。LoRDEC的參數設定如上所述。
3.4.1大腸杆菌
錯誤糾正工具的運作時、記憶體和磁盤使用情況如Table 1(頂部)所示。LoRDEC的速度比LSC快17倍,并且需要的記憶體比LSC少88%和95%,LSC是這個資料集中前面兩個工具中資源效率更高的。Table 1的右側顯示了LSC和LoRDEC的糾錯工具包報告的糾錯統計資料,我們看到LoRDEC的性能優于LSC。
将讀序列與參考基因組比對的統計資料如Table 2(頂部)所示。對于LSC,我們報告了工具報告的完整已更正讀集和已修正讀集的統計資料。類似地,我們為LoRDEC報告完整讀取、在末尾進行修剪的讀取以及修剪和分割讀取的統計資訊(參見Section 2.5)。LSC顯然在這三種工具中表現最差,而PacBioToCA和LoRDEC有類似的統計資料。經LoRDEC校正、修剪和分割後,reads的堿基略多一些,相對于reference對齊的堿基比例略小一些,但對齊區域的一緻性要高于PacBioToCA校正後的reads。
3.4.2酵母
LSC和PacBioToCA都未能在單個伺服器上完成此資料集的更正。我們分割PacBio資料,并在三個伺服器上運作LSC,在六個伺服器上運作PacBioToCA。PacBioToCA被設計為在多個伺服器上分布式運作,而LSC不支援分布式執行。是以,我們選擇在LSC中使用盡可能少的伺服器,以最小化分布式執行對校正精度的影響。
Table 1(中間)顯示了酵母資料集的運作時、記憶體和磁盤使用統計資料。對于這個資料集,LoRDEC使用的時間或記憶體至少比PacBioToCA和LSC少一個數量級,磁盤也比PacBioToCA和LSC少兩個數量級。例如,LoRDEC的速度是PacBioToCA的6倍,使用的記憶體和磁盤空間分别比PacBioToCA少93%和99%。LSC的增益和靈敏度保持在532%,而LoRDEC的增益和靈敏度保持在480%。Tabele 2(中間)比較了三種工具的對齊統計資料:LSC (full或trim)使用比LoRDEC更少的辨別對更少的基進行對齊。PacBioToCA與LoRDEC (trim+split)相比,在較高的計算成本下,PacBioToCA的對齊效果稍好一些。
3.5鹦鹉資料實驗
我們研究了LoRDEC在一個更大的真核資料集上的可伸縮性:parrot資料。由于鹦鹉的基因組是脊椎動物,是以是複雜的基因組,大約是人類基因組長度的三分之一(Supplementary Table S1),它代表了一個解決可擴充性和基因組組織影響問題的真正測試。考慮到LSC和PacBioToCA在較小酵母資料上的運作時間,本實驗不包括這些資料。這些資料包含三個PacBio庫,我們在各自的伺服器上對每個庫進行了更正。Table1(底部)顯示了由Error Correction Toolkit生成的運作時、記憶體和磁盤使用情況以及統計資料。基于這些結果,我們可以得出結論,LoRDEC的規模足以糾正大型真核生物基因組在普通計算硬體上的讀取。糾錯工具包在Table1 Table2中(底部)和一緻性統計(底部)表明,校正精度與酵母可比資料集,雖然參考基因組包含更多錯誤,草案和對齊的統計資料也遭受讀取校準的支架隻有部分對齊。
3.6基因組組織的影響
對LoRDEC提供的校正的評估表明,它對所有資料集都是全局精确的。然而,基因組組織,特别是重複的存在,可能會影響校正的品質。有人可能會說,在重複區域中,SR的DBG中發現的固體k-mers和路徑可能來自于不同的或多個重複的副本,進而誤導了校正過程。換句話說,校正的準确性可能随着基因組的不同而不同。如果是這樣的話,相對于觀察到的基因組覆寫率,讀序列的分布應該在原始讀序列和修正讀序列之間有所不同。為了評估這種可能性,我們計算了對齊的原始讀數和校正讀數的預期基因組覆寫率和觀察基因組覆寫率(Last columns of Table 2)。覆寫率計算為至少一個比對所覆寫的基因組位置數除以基因組長度。E。在大腸杆菌和酵母的情況下,PacBio測序深度理論上足以覆寫整個基因組(預期覆寫範圍為1),校正後的效果是将觀測到的覆寫範圍提高到99%以上。是以,在這兩個案例的覆寫率方面沒有明顯的偏見。parrot資料的情況有所不同。First, PacBio 測序 深度 隻有 5.5 , 進而 8 分 不同 的 預期 的 和 觀察 到 的 保險 原始 和 糾正 一緻 讀 (0.92 和 0.84 ;0.98和0.90)。為了評估可能的偏見,我們繪制了對齊讀取所覆寫基因組的百分比,作為原始讀取和校正讀取深度的函數(black squares and circles in Fig4)。我們還繪制了相同的函數,但是在随機化讀取位置之後,也就是說,對齊的讀取位置就像均勻分布在整個基因組(white squares and circles)的位置一樣。首先,實際比對的兩條曲線都與随機對照曲線不同,這表明原始reads的基因組分布存在一定的偏差,但校正後仍保持相同的偏差。可能有多種原因可以解釋這種偏差,包括測序深度低、局部裝配錯誤或映射偏差。其次,黑色曲線的形狀相似,說明讀取深度函數的分布不受LoRDEC的影響。請注意,修正後的讀數曲線仍然高于原始讀數曲線,顯示了LoRDEC在所有讀取深度上帶來的改進。是以,即使是在脊椎動物的基因組上,我們的結論是,由于基因組組織的原因,LoRDEC可以在很小的偏差下準确地糾正PacBio讀數
4.結論
由于它們的長度,PacBio讀取提供了有趣的資訊來連接配接其他序列,但是,由于它們的高錯誤率(這在靈敏度和運作時間方面阻礙了對齊和相似性檢測),使得這項任務變得相當困難。從實驗中可以看出,使用LoRDEC進行糾錯後,大部分序列與識别率為497%的序列是一緻的。以前的校正程式可以達到類似的精度,但計算資源有限。LoRDEC在這方面提供了一個顯著的改進,以至于任何基因組學項目都可以提供PacBio錯誤糾正,即使是真核物種。此外,混合錯誤校正仍然有用,因為它可以在項目中組合不同類型的排序。
與其他校正算法相比,LoRDEC提供了一種新的基于圖形的校正方法。DBG中的路徑搜尋允許處理更高的錯誤率。但是,如果源和目标k-mers之間沒有路徑或者存在太多路徑,那麼搜尋可能會失敗。一些改進似乎是可以實作的。當缺少路徑時,我們計劃在内部區域的每一側疊代地使用擴充路徑搜尋。丢失的路徑可能表示剩餘的擴充卡,而本地DBG結構可以幫助識别和删除它。在路徑太多的情況下,k的可選值可能會有所幫助:較小的k可以在該區域引入固态k-mers,使得求解時間更短。動态更新DBG順序(即參數k)的算法在這方面很有用(Cazaux et al.,2014)。
在PacBio RNA-seq reads上的其他實驗表明,LoRDEC還可以改善玉米轉錄本的序列,進而使它們更容易與參考轉錄資料庫對齊(參見補充資料)。LoRDEC使用簡單,可伸縮,可以很容易地內建到管道中,并且應該适應其他類型的讀取。
本文作者:wangprince2017