你是否進行過基因組測序?全世界已經有數百萬人進行了基因組測序,到2025年,這一人數可達10億。
研究人員獲取的基因組數據越多,個人和公共健康的前景就越好。目前,產前DNA測試已可對胎兒發育異常進行篩查。很快,患者就可以通過血液測序找到可能預示著傳染病的非人類基因。將來,癌癥研究人員將能夠通過對多個組織的DNA和RNA進行日常單細胞測序,來跟蹤疾病的進展。
全民DNA測序將使我們更全面地了解整個社會的健康狀況。這就是英國生物銀行的目標,它旨在對50萬名志愿者的基因組進行測序,并對他們進行數十年的追蹤。覆蓋廣泛人口的基因組研究已經成為一項日常應用,對與特定疾病相關聯的突變進行識別。對空氣、土壤和水中的生物體進行定期測序將有助于追蹤流行病、食物病原體、毒素等。
要實現這樣的愿景,需要存儲并分析的數據量將大到難以想象。通常,一臺DNA測序儀處理一個人的整個基因組就會產生數十至數百千兆字節的數據。在存儲時,數百萬基因組累積的數據將達到數十艾字節。
這還僅是開始。發現并應用基因組數據的科學家、醫生以及其他相關人士對每個個體并不會僅僅進行一次測序,他們還會想對多個人體組織中的多個細胞進行反復測序。隨著測序速度的增加和其成本的下降——現在個人基因組測序只需要1000美元,并且還在迅速下降——他們還想對其他動物、植物、微生物和整個生態系統的DNA進行測序。此外,新應用程序,甚至新產業的出現,都會催生出更多的測序行為。
雖然現在很難預測基因組數據所有的未來收益,但我們已經看到了一項不可避免的挑戰:數據存儲量幾乎達到了令人難以置信的程度。目前,存儲基因組數據的成本仍然只占實驗室總預算的一小部分。但該成本正急劇增長,遠遠超過了存儲硬件價格的下降。在未來5年內,存儲數十億人類、動物、植物和微生物基因組的成本將達到每年數十億美元。這些數據需要保存數十年,甚至更長時間。
數據壓縮顯然非常有用。生物信息學專家們已經使用類似gzip的標準壓縮工具,將文件大小縮小到原來的1/20。一些研究者還使用了更為專業的、針對基因組數據進行優化的壓縮工具,但這些工具都沒有得到廣泛采用。我們兩人都從事數據壓縮算法研究,我們認為是時候提出一種新的壓縮方案了——一種效率更高、速度更快、更適用于基因組數據獨有特性的方案。正如專用視頻和音頻壓縮對YouTube和Netflix等流媒體服務至關重要一樣,面對基因組數據爆炸,也必須利用專用的基因組數據壓縮工具才能獲取收益。
在解釋如何更好地壓縮基因組數據以前,讓我們仔細觀察一下數據本身。“基因組”是指4種核苷酸堿基的序列——腺嘌呤、胞嘧啶、鳥嘌呤和胸腺嘧啶——它們形成了我們熟悉的DNA堿基A、C、G、T。這些核苷酸出現在組成人類基因組的23對染色體的A-T和C-G堿基對的堿基鏈中。這些染色體包含大約60億個核苷酸,存在于大部分人體細胞中,并且包括編碼基因、非編碼因子(如染色體末端的端粒)、調控因子和線粒體DNA。伊諾米那(Illumina)、牛津納米孔科技公司(Oxford NanoporeTechnologies)和太平洋生物科技(Pacific Biosciences)等公司的DNA測序儀能夠在數小時內對一份DNA樣本完成一組人類基因組的自動測序。
這些商業DNA測序儀不產生單個基因組長度的ACGT串,而是產生大量的子串或“讀序”(reads)。“讀序”彼此有部分重疊,需要由序列裝配軟件重建完整的基因。通常,當進行全基因測序時,每一段基因出現在不超過約100個“讀序”中。
根據所使用的測序技術,一個“讀序”的長度可以在大約100到10萬個堿基對間不等,“讀序”的總數在數百萬到數百億堿基不等。短的“讀序”可以發現單個堿基對的突變,長的“讀序”能更好地檢測在成千上萬個堿基對中發生的缺失或插入等復雜變異。
DNA測序是一個充滿噪聲的過程,“讀序”包含錯誤很常見。因此,除了ACGT核苷酸串以外,每個“讀序”還包括質量評分,標明測序儀對每個DNA核苷酸的置信度。測序儀的質量評分以對數形式表達錯誤概率。其使用的算法是專利技術,但在事后可查。如果質量評分為20(對應的錯誤概率為1%),那么用戶可確認在已知DNA序列中大約有1%的堿基對是不正確的。使用這些文件的程序依賴質量評分來區分出測序錯誤和突變等變化。相對于測序錯誤,真正的突變將具有更高的平均質量評分——也就是說,更低的錯誤概率。
測序儀將含有核苷酸串、質量評分以及其他一些元數據的“讀序”逐個地粘貼在一起,形成所謂的FASTQ文件。一個完整基因組的FASTQ文件通常包含數十至數百千兆字節的數據。
這些文件冗余度很高,其原因是任意兩個人的基因組幾乎都是一樣的。平均而言,每1000個核苷酸中,只有大約1個核苷酸不同,通常人們只對這些基因組差異感興趣。一些DNA測序針對特定的差異區域——例如,像23andMe這樣的DNA基因分析應用僅查找特定的差異,刑事調查中DNA分析則會查找某些標記重復次數的變化。
但是,如果你不知道有需要關注的區域在哪里——例如,你試圖診斷一種未知遺傳來源的疾病,那你就需要對整個基因組測序,這就意味著獲取更大量的測序數據。
重復的測序數據也是為了清除錯誤,因此對基因組相同部分進行多次讀取。有時單一樣本包含多種變異序列,因此你會想對其進行重復測序來捕捉這些變異。比如檢測一個組織樣本中的癌細胞,或檢測孕婦血液中胎兒DNA的痕跡。這可能意味著要對每個DNA堿基對進行很多次測序,通常超過100次,以識別稀有變異與常見變異,區分真正的差異與測序錯誤。
━━━━
到目前為止,對DNA測序為何會產生如此多的冗余數據你應該已有了更好的理解。事實證明,這些冗余正是數據壓縮的理想選擇。無須存儲同一基因組數據的多個副本,你可以只存儲一份副本。
為了壓縮基因組數據,你可以首先將每個DNA序列“讀序”分為較小的數據塊,然后為每個數據塊分配一個數字索引。最終,所有索引構成了一部字典,其中的條目不是單詞,而是DNA堿基對短序列。
文本壓縮器就以這種方式工作。例如,GitHub擁有一個廣泛使用的單詞列表,可用它來為每個單詞分配數字索引。因此,要將一段文本編碼為二進制,需要將每個單詞替換為其數字索引——比如GitHub的列表中用數字64872代表單詞“compression”(壓縮)——隨后再以二進制形式表示這些數字。為了壓縮二進制表示,可以按單詞使用頻率對字典進行排序,而不是按字母表順序,以便使更常用的單詞獲得更小的數字,這樣它們需要編碼的位數就更少。
另一種常見的策略是Lempel-Ziv算法系列,它建立一個由越來越長的短語(而不是單詞)組成的詞典。例如,如果某個文本經常在“基因組”后跟“數據”一詞,則會把單個的數字索引分配給短語“基因組數據”。
很多通用的壓縮工具,例如gzip、bzip2、臉書的Zstandard和谷歌的Brotli,都使用這兩種方法。雖然這些工具對壓縮基因組文本有效,但為特定的數據類型開發的專用壓縮器與它們相比有更顯著的優勢。
再看視頻流的情況。單幀視頻及其播放方向使得視頻壓縮軟件能夠預測下一幀,因此壓縮文件不包含每一幀中每個像素的數據。此外,觀眾可以容忍難以察覺的視頻信息丟失或失真,這與基于文本的數據情況不同。為了利用這一特點,一家國際聯盟組織花費數年制定了H.264視頻壓縮標準(如今藍光光碟、YouTube、iTunes Store、Adobe Flash Player和微軟的Silver- light便使用該標準)。
研究人員同樣也在設計專用的基因組數據壓縮工具,在每個月的學術文獻中都涌現出一些新的工具。很多人使用“基于參照”的壓縮方法,它的切入點是以人類基因組序列作為參照。任何人類DNA短序列——由不超過100個堿基對組成的序列——很可能出現在該參照中的某處,哪怕有測序錯誤和突變。因此,專用的壓縮器不列出序列中所有近100個堿基對,而是僅記錄該串在參照中的開始位置(例如“5號染色體中的第1000個堿基對”)并描述相對于參照序列的所有差異(例如“刪除第10個堿基對”)。除了壓縮軟件之外,該方法還需要用戶提供一份人類基因組的參照副本,其數據大小約為1千兆字節。
如上所述,FASTQ文件不只包含DNA序列,還包含表明潛在錯誤的質量評分。遺憾的是,基于參照的壓縮無法用于壓縮FASTQ質量評分,因為沒有針對質量評分的參照序列。但是,這些工具著眼于質量評分的模式——例如,一個低質量得分之后很可能是另一個低質量得分,或者DNA“讀序”開始階段的質量評分往往比結束階段的要高。就像對所有單詞按照使用頻率降序編碼可以壓縮文本一樣,對一組質量評分數據按照其預測可能性高低的順序進行編碼,可以對該數據進行壓縮。研究人員有時會丟棄低質量數據,而不對其進行存儲和壓縮,但數據壓縮程序可能無法決定丟棄哪些數據或確定“低質量”的閾值是多少。
━━━━
這些新的壓縮器是個良好的開端,但它們還不完美。隨著對數據的理解不斷加深,我們壓縮數據的能力也隨之提高。數據壓縮迫使我們尋找數據中的隱性模式和冗余;當數據壓縮深入到一定的程度時,我們就會意識到我們完全理解了這些數據。如果基因組數據壓縮器能夠將數據中的細微模式納入考慮,那么就將能夠縮小文件大小并降低存儲成本。
在斯坦福大學我們自己的研究中,我們得出了一項有潛力的觀察結果:基因組中兩個連續DNA變異之間的距離遵從“雙冪律”分布。你可能熟悉“冪律”分布的概念,即某種結果出現的概率與該結果數量級的倒數(負指數冪)成正比,可能達到某個冪數。城市人口通常遵循這種分布:擁有200萬人口的城市數量大約是擁有100萬人口的城市數量的一半。該定律也適用于國家財富分布,20%的人口占有80%的財富(二八定律)。
雙冪律包括兩種不同的冪律,它們作用在相同類型的數據上,但覆蓋不同的范圍。例如,二八定律可以應用于人口財富占比中的下半部分,而一九定律適用于上半部分。雙冪律可以用于描述臉書上的好友數量、電話呼叫的持續時間,以及硬盤驅動器上的文件大小。
事實證明,通過DNA堿基對測量得出相鄰遺傳變異之間距離的直方圖看起來符合雙冪律,交叉點出現在大約1000個DNA堿基對附近(見本文的“雙冪律”圖表)。何種進化過程導致了該種分布尚不明確,但是其存在使改進壓縮成為可能。克勞德?香農在信息理論的一個基本成果中指出:數據無法被壓縮到其分布的信息熵以下——信息熵是一種隨機性測度。雙冪律分布證明了現實基因組的隨機性比假設模型的隨機性要小,即具有較低的信息熵,模型假設基因組中每個位置出現變異的可能性相等。我們對這一發現感到興奮——這不僅是一個有趣的生物學現象,還暗示存在尚未開發的更大壓縮潛能。
━━━━
今天使用的基因組數據壓縮器是無損的——也就是說,允許你逐個數位地將壓縮文件恢復至與壓縮前完全一樣。但有一種情況允許一定量的損失,不是在DNA序列中,而是在測序儀對數據的質量評分中。雖然只有4種DNA核苷酸(A、C、G、T),但通常大約有40種可能的質量評分,因此構成無損壓縮的FASTQ文件中的大多數數位是質量評分,而不是DNA序列。這種精確度是無用的,因為使用基因組數據的應用軟件傾向于忽略質量評分中的微小變化,或是可能完全丟棄質量評分。當質量評分以有損方式壓縮時,類似于尋找兩個基因組之間變化的某些任務的性能實際上得到了改善,因為有損壓縮消除了質量評分間的無關變化,有效地除去了數據中的噪聲。
我們還可以通過丟棄某些基因測序信息來節省存儲空間。DNA“讀序”出現在FASTQ文件中的確切順序對隨后的分析來說通常并不重要。類似識別遺傳變異等很多情形,隨機攪亂“讀序”,產出的結果幾乎相同。因此,你可以利用“排序的列表比未排序的列表能夠壓縮得更多”這一事實,按字母表順序對DNA“讀序”進行排序。文本壓縮中的類似情況是對單詞列表進行排序,并說明相鄰單詞之間的距離。例如,“decompressed”和“decompresses”(“解壓”的不同時態)在字典中是相鄰的,它們的最后一個字母(d和s)在字母表中相隔15個字母,因此你可用整數15對第二個單詞進行編碼。
舉例說明該方法如何運用在DNA上,讓我們按字母表順序對序列ACGAAA、ACGAAG和 ACGAAT進行排序。前5個字母都是一樣的,因此我們只對第6個字母之間的差異感興趣。第二個序列被編碼為整數2(因為最后一個字母G,是核苷酸字母表ACGT中排在A之后的第2個字母),第3個序列被編碼為1(因為它的最后一個字母T,是G之后的1個字母)。相對于按原始順序存儲DNA“讀序”,這種方法可以節省兩倍乃至更多的存儲量。
當然,壓縮率只是壓縮工具能力的衡量標準之一。速度是另一個衡量因素。很多專用FASTQ壓縮器并行運行,比單CPU運行節省時間;有些壓縮器利用GPU和現場可編程門陣列處理器,這些硬件經常用于加速視頻處理和機器學習。另一個實用的因素是能夠搜索壓縮數據。你一定不希望在只想快速搜索一段特定DNA序列時,還必須先解壓整個文件。
基因組壓縮工具的選擇越來越多,此時我們需要的是標準化。就像視頻壓縮技術要等到業內大部分人士達成一個標準才能起步一樣,基因組壓縮技術也必須形成一個標準——或至少是一組標準。
幸運的是,基因組測序數據壓縮的標準已經開始制定。動態圖像專家組(MPEG)——也就是開發MP3音頻格式和幾項流行視頻格式的機構——多年來一直在制定一項壓縮基因組數據的標準,名為MPEG-G。該規范有望于今年晚些時候完成。該標準將隨著技術的提高而發展,就像視頻壓縮標準曾經的方式一樣。
我們開發高效、健全和標準化的基因組數據壓縮的速度只是一個經濟學問題。隨著存儲數據量的飆升,存儲成本日益高漲,降低成本才能推動行業采用更好的壓縮方法。
現在,隨著序列數據總量的累積,基因研究可能處于取得意外收獲的風口,目前,該領域與10年前人工智能的處境相似。最近人工智能所取得的巨大進步在很大程度上是由大量可用的數據集所驅動的,原先使用中等數據量表現不佳的深度學習算法,在使用大量數據集后,變得非常強大。基因研究人員已經開始對他們的數據使用深度學習算法,但在取得類似收獲之前,他們不得不等待大量基因信息的累積。但有一件事是清楚的:沒有基因數據壓縮技術的重大進步,他們就無法取得成功。
-
DNA
+關注
關注
0文章
243瀏覽量
31038 -
冗余數據
+關注
關注
0文章
4瀏覽量
1458
原文標題:面臨挑戰的基因組數據壓縮技術
文章出處:【微信號:IEEE_China,微信公眾號:IEEE電氣電子工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論