跨越醫學與天文學!Google用機器學習發現行星、分析DNA
在前一篇報導當中,Google 用相當有趣的方式,讓民衆親身體驗什麼是「機器學習」,而在世界的另一個角落,其實 Google 早已將這項技術拓展到天文學領域,協助天文學家執行「克卜勒任務」;甚至拓展到醫學領域,協助醫生透過檢測 DNA 序列來尋找可能的疾病。
克卜勒任務(Kepler mission) 爲 2009 年 5 月開始的計劃。相關統計數據指出,天文學家們透過克卜勒太空望遠鏡(Kepler space telescope)在 4 年期間蒐集超過 20 萬顆恆星的亮度,以平均 30 分鐘記錄一次每顆恆星的亮度來計算,每顆恆星至今已記錄大約 7 萬次亮度,透過人工的方式篩選,這些天文學家至今已經篩選了超過 3 萬個透過克卜勒太空望遠鏡所偵測到的訊號,當中約有 2,500 個訊號被認定爲行星,但由於耗時且許多較弱的訊號同時也有較多雜訊,以致於無法透過人工方式判別是否爲行星。
一般來說,天文學家傳統在尋找行星的作法分爲兩階段,第一階段是透過電腦演算法找出潛在行星訊號,接着進入第二階段,由天文學家判斷哪些訊號是來自真實的行星。
然而,不管是第一階段還是第二階段,人類在應付這些龐大資料,往往都是曠日費時、而且還有可能發生誤差,也因此產生了 Google 透過機器學習技術,將運算模型套運到探索行星的任務當中,在過程中建立一個神經網路來分類克卜勒的訊號。
談到機器學習,當然就要先看大數據,Google Brain研究團隊資深軟體工程師 Chris Shallue 表示,研究人員透過利用 15,000 個天文學家已人工標記的克卜勒訊號來訓練模型,當中Google採用卷積神經網路(convolutional neural network)來預測偵測到的訊號爲行星的機率。在有了固定的訓練模組之後,緊接着再透過模型搜尋克卜勒資料庫中的 670 個恆星並藉此辨別新行星,辨別的方式有點像是 Google 相簿的圖像辨識,而這也是克卜勒-90 i 和克卜勒-80 g被發現的原因,在這當中,克卜勒-90 i 是克卜勒 90 星系中最小的一顆星球,而克卜勒-90 i 是距離其恆星第三靠近的行星。
Google 機器學習團隊下一個目標是運用模型運算整個克卜勒資料庫中超過 20 萬顆的恆星,而現在已在 20 萬顆恆星中探索 670 個。目前爲止,尚未能解決的一個問題是假陽性預測(background false positives)。舉例來說,有可能偵測到一顆恆星的亮度其實是來自附近恆星的亮度,現階段來說,模型還無法辨別行星的訊號是來自哪一顆恆星。目前仍仰賴以人工的方式來確認模型偵測到的行星位置訊號,未來希望可以將位置資訊結合制模型當中,讓模型可以辨別這類的訊號。
除了透過機器學習協助人類發現行星,Google 還透過機器學習協助人類分析基因序列,近年來基因組測序幫助許多以前無法解決的病例。例如:幫助醫生決定癌症的標靶治療是否有效;當新生兒發現無法解釋的疾病時,醫院可使用基因組測序來尋找可能的病因。
透過Google Brain研究團隊資深軟體工程師張碧娟解釋,上述的方式稱爲「變體識別(Variant Calling)」,因爲每個人的基因和人類參考基因組不會完全一樣,研究人員藉此先找出「個體」和「參考基因組」之間的差異,而這也是許多醫療及藥物開發的第一步。在這邊需要說明的是,不是所有的變體都會產生疾病,變體識別只是找出差異性的第一步,並不包含預測一個變體是否會產生疾病。
變體識別的困難度來自於基因組序列的龐大資料量,以及儀器讀取特性。爲了能精準的識別出這些變體,新一代測序儀「高通量測序技術 (High-throughput sequencing, HTS) 」開啓了基因測序革命。
然而新一代測序儀雖提供大量、快速且低成本的數據,但由於這些 DNA 讀序相當片段,加上測序儀的結果有許多錯誤,這些錯誤有可能是樣本 DNA 本身的品質,有可能是儀器本身的物理特性,有可能是儀器準備樣品的協議,也有可能是基因讀序的錯誤之間具有相關性,加上以現有普遍的變體識別工具依然維持傳統的統計技術,雖然合理,但通常需仰賴大量人工設計、手調參數,也需要花費專家多年的時間,而且很難快速推廣至新的測序技術。
對此,Google Brain 團隊與 Verily Life Sciences 合作花了兩年多時間開發了一套所謂「DeepVariant」技術,主要是爲了提高基因組測序準確性所開發的工具,使用的資料來源是基因組測序技術,透過深度學習(Deep Learning)可以從數據中直接學習哪種參數最有用,而不需要人工手調參數,主要用來分析 DNA 序列,研究人員將測序儀所讀到的數據編碼成爲圖像的格式,然後使用常見的圖像分類演算法,訓練出準確的「變體識別模型」。這項突破讓團隊在 2016 年及 2017 年贏得美國食品藥物管理局所分別舉辦的變體識別比賽。而這項技術於 2017 年 12 月由 Google Brain 團隊正式開源。
此外,Google Brain 團隊與 Google Cloud 合作,在 Google Cloud Platform(GCP)上提供 DeepVariant 工作流程,幫助開發者與研究人員透過 GCP 上的技術用規模化的方式優化配置且降低成本、縮短週期。
在未來,Google 希望藉由結合基因組測序資料,以及實際的臨牀結果與病史,進一步驗證 DeepVariant 的準確性以及對於衍生應用的幫助。此外,Google 初步發現,在其他動物 (例如老鼠) 以及植物 (例如米) 上的變體識別,也有很高的準確率。這表示 DeepVariant 可以應用在農業或甚至其他的生物研究上,而在這次的訪談當中,Google 也證實開發團隊確實要將這項成功經驗拓展至農業或其他生物研究領域當中。
*相關圖片與資料來源:用機器學習發現新行星、DeepVariant