傳統生物醫學數據分析技術在大數據時代背景下,面臨著巨大挑戰,而深度學習技術在生物醫學分析領域的應用,迎來了巨大的發展機遇。本文綜述了深度學習在生物醫學數據分析領域的最新研究進展。首先闡述了深度學習方法及工具,隨后以時間為主線,圍繞生物醫學問題的提出、數據預處理方法、模型建立方法、訓練算法重點總結了近五年深度學習在生物醫學數據分析中的具體應用,并重點強調了醫療輔助診斷中的深度學習應用。最后給出了未來深度學習在生物醫學數據分析領域可能的發展方向。
引用本文: 李肅義, 唐世杰, 李鳳, 齊建卓, 熊文激. 基于深度學習的生物醫學數據分析進展. 生物醫學工程學雜志, 2020, 37(2): 349-357. doi: 10.7507/1001-5515.201907016 復制
引言
21 世紀被稱為信息時代,信息傳播與處理的速度都以幾何級數的方式爆炸增長,隨之而來的便是大數據時代。隨著網絡的發展,越來越多大型的公開數據庫可供研究人員使用,例如美國臨床試驗數據庫、中國的神州基因組數據云等。在大數據時代背景下,隨著生物醫學數據采集技術的快速發展,研究者可以用更多的方式來更加全面地進行生物醫學數據分析研究。傳統的生物醫學數據挖掘和分析方法面對海量增長的數據可能會顯得效率較低,因為一方面生物醫學大數據維度更高,計算更復雜,另一方面不同類型的生物醫學數據的處理方式復雜多變,對模型的數據處理能力要求更高。近年來深度學習在自然語言處理、計算機視覺、語音識別以及基因組學和蛋白質結構等領域取得了突破性的進展,由于其具有強大的特征提取能力,非常適合處理生物醫學大數據統計分析等相關問題,于是得到了越來越多的生物醫學研究人員的關注[1-5]。
深度學習起源于人工神經網絡,多層感知器就是一種經典的深度學習模型[6]。深度學習模型具有自動學習特征的特點,在訓練過程中自動整合提取到的數據特征,通過組合低層特征形成更加抽象的高層特征。作為機器學習的一個領域,深度學習也分為監督學習和無監督學習,但和傳統的機器學習模型如決策樹(decision tree,DT)、支持向量機(support vector machine,SVM)等相比更具靈活性[7-8]。
本文首先介紹了深度學習方法及工具框架,隨后總結了近五年深度學習技術在生物醫學數據分析中的具體應用,最后給出了未來深度學習在生物醫學數據分析領域可能的發展方向。
1 深度學習方法及工具
1.1 深度學習方法
深度學習方法包含多種深度學習模型,其中基礎模型有深度信念網絡(deep belief network,DBN)和堆棧自編碼器(stacked automatic encoder,SAE),但現在生物醫學數據分析領域更常用的模型是卷積神經網絡(convolutional neural network,CNN)、循環神經網絡(recurrent neural network,RNN)、生成式對抗網絡(generative adversarial network,GAN)和圖神經網絡(graph neural network,GNN)等[9-14]。本節將詳細介紹這些模型的基本單元、工作原理和訓練過程等。
從神經學角度來說,CNN 的設計靈感來自動物視覺皮層對外界事物的感知,感受野的發現對 CNN 的意義重大[15]。CNN 在圖像識別領域有著廣泛的應用,它主要包括輸入層、卷積層、池化層、全連接層和輸出層等,模型訓練過程中的核心操作是卷積過程和池化過程。卷積過程主要是特征提取的過程,池化過程主要是數據降維的過程,卷積池化過程中用到了權值共享原理,減少了模型的訓練參數。CNN 是通過卷積層和池化層的堆疊,然后加上全連接層和輸入輸出層構成的。CNN 的訓練過程與傳統神經網絡類似,參照了反向傳播算法,分為前向傳播階段和后向傳播階段。在不同的應用領域,CNN 有著不同的變體,例如常見的分類網絡,如谷歌網絡(GoogLeNet);還有常見的分割網絡,如 U 型網絡(U-Net)等[16-17]。圖 1 展示了一個簡單的 CNN 模型,它具有兩個卷積層、兩個池化層、一個全連接層和輸入輸出層。

RNN 是用來處理和預測序列數據的深度學習模型,廣泛應用于語音識別、自然語言處理、圖像描述生成等領域。RNN 能充分利用序列數據前后信息,每個隱藏層的輸入包括上一層的輸出和上一時刻該隱藏層的輸出,網絡會對前面的信息記憶并應用于計算當前輸出。RNN 采用時間反向傳播算法訓練,但普通 RNN 在處理長序列問題時可能會遇到梯度消失或梯度爆炸等問題[18-19]。解決這一問題的方法是采用長短期記憶網絡結構(long short-term memory,LSTM),該模型是在 RNN 的基礎上加入了三個門結構,分別是輸入門、遺忘門和輸出門,使不同時期記憶信息的尺度動態變化,從而能夠處理長序列問題[20]。LSTM 是目前最為常用的 RNN 模型,結構如圖 2 所示,其中 Ct-1 是上一時刻的長期狀態,ht-1 為上一時刻的輸出,Ct 為當前時刻的狀態,ht 為當前時刻的輸出。

GAN 模型包含兩部分,分別是生成模型和判別模型。生成模型用來捕捉樣本數據的分布,用服從某一分布的噪聲生成一個類似真實訓練數據的樣本;判別模型充當一個二分類器,估計輸入樣本來自于真實數據的概率,如果樣本來自于真實數據,判別模型輸出較大概率,否則輸出較小概率。GAN 的訓練過程為先固定一方,然后更新另一方的網絡權重,交替優化網絡,從而形成競爭對抗,直到兩個網絡達到一個動態平衡,最終生成模型獲得了和真實數據幾乎相同的樣本。GAN 在圖像生成領域有著廣泛的應用,可以在數據量不足的情況下生成數據,適用于訓練數據較少時進行數據擴增。由于隱私等問題,生物醫學領域中數據的獲取可能較難,顯然 GAN 可以在小數據樣本的情況下生成數據以彌補不足。圖 3 展示了一個簡單的 GAN 模型。

圖數據包含十分豐富的關系型信息,例如句子的依賴樹、圖像的場景圖等,從這些非結構化數據中進行推理學習都需要圖推理模型。圖 4 展示了一個簡單的 GNN 模型。GNN 依靠圖中節點之間的信息傳遞來捕捉圖中的依賴關系。GNN 相對于傳統的神經網絡有獨特的優勢,標準的 CNN 和 RNN 不能處理圖輸入這種非順序排序的特征表示。用傳統的 CNN 和 RNN 來處理圖數據,只能遍歷圖中節點所有可能的出現順序作為模型的輸入,這樣的計算量對模型來說是難以承受的。然而 GNN 的輸出不隨節點的輸入順序轉移,GNN 分別在每個節點上傳播,忽略了節點之間輸入的順序。另外,圖中的連接線表示兩個節點之間的依賴關系。在傳統的神經網絡中,這種依賴關系只能通過節點的特征表示來體現。GNN 可以依賴周圍的狀態來更新節點的狀態。近年來,很多新的 GNN 變體應運而生,特別是圖卷積網絡(graph convolutional network,GCN)在生物醫學領域中已有諸多應用[21]。

1.2 深度學習工具
由于深度學習模型的運算過程中包含了大量的線性代數計算、概率統計計算和最優化計算,導致不同模型代碼之間的計算過程有很多相似之處,所以有關研究人員開發了不同的深度學習框架,方便他人開發利用各種模型。本節分析了八種常見的深度學習框架,基本可以滿足研究人員的需求。
Deep learning toolbox 是 MATLAB 軟件中的深度學習工具箱,其包含了 SAE、DBN、CNN 等模型,代碼簡單,適合初學者學習[22]。Caffe 是模塊化的深度學習框架,速度極快,由 C++語言編寫,也適用于 Python,在圖像處理方面表現優越[23]。Theano 是一個高效運算的 Python 庫,用來定義、優化和評估涉及多維數組的數學表達式[24]。TensorFlow 是使用數據流圖進行數值計算的開源庫,最初由 Google 研究人員開發,并一直開源給公眾,現在已經開發出 TensorFlow 2.0 版本,是目前使用人數最多的開源框架。TensorFlow 的主要優點是分布式計算,特別是在應用大量圖形處理器(graphics processing unit,GPU)的場合,所以 TensorFlow 目前主要被應用于工業領域中[25]。MXNet 也是由 C++語言實現的,同時提供了 Python、R 等多種語言接口,它也支持多個 GPU 分配訓練網絡,編程效率和運行效率都非常高[26]。Keras 是一個低限度的、模塊化的神經網絡庫,它把 Theano、TensorFlow、MXNet 包裝成了更具人性化的應用程序接口,是一種較為簡單的框架[27]。PyTorch 是由 Facebook 開源的神經網絡框架,與 TensorFlow 的靜態計算圖不同,PyTorch 的計算圖是動態的,可以根據計算需要實時改變計算圖[28]。Deeplearning4j 是用 Java 實現的深度學習框架,該框架中的網絡模型是可組合的,即 CNN、SAE、RNN 等淺層神經網絡可以相互疊加,組合成不同類型的深度網絡,同時與 Hadoop 和 Spark 緊密結合,運行效率高且支持大規模分布式運算[29]。
2 深度學習在生物醫學分析中的具體應用
隨著生物醫學大數據時代的到來,深度學習方法在生物醫學領域中的應用逐漸增多。近年來許多研究團隊取得了很大的進展,進一步推動了生物醫學領域的發展。本節主要從醫學數據分析和生物數據分析兩個方面介紹近五年生物醫學數據分析領域應用深度學習技術的研究進展,重點綜述了醫學數據分析領域中利用醫學圖像輔助疾病診斷,包括深度學習方法在醫學圖像分割和醫學圖像分類識別中的應用。
2.1 醫療輔助診斷中的深度學習應用
疾病輔助診斷是深度學習在醫學數據分析上的主要應用之一,深度學習技術能夠基于患者疾病的相關數據,預測異常病變,且其判斷不易受到主觀因素的干擾,不僅能夠減輕醫生工作的負擔,還能提升醫生診斷的效率和準確率。2016 年,Lipton 等[30]將 LSTM 用于兒科重癥監護病房的臨床數據分類,主要包括血糖、心率、舒張壓和收縮壓等時間序列數據,利用 LSTM 處理序列數據的能力輔助診斷,實驗獲得了良好的結果,證明 LSTM 優于受過訓練的多層感知器,對疾病的早期診斷有很大幫助。2018 年,Haque 等[31]利用因果卷積網絡(causal CNN,C-CNN)通過面部表情、語言和交談的文本記錄診斷抑郁癥,該模型通過多模態輸入將語音識別、計算機視覺和自然語言處理等技術結合輔助醫生診斷,準確率達到 83.3%,召回率達到 82.6%,并且該模型可以部署到手機上,使得抑郁癥的診斷更加方便高效。
深度學習在計算機視覺領域中的應用發展非常迅速,研究人員相繼提出圖像處理的有關算法,此外隨著醫療設備的不斷改進,醫學圖像的獲取也越來越容易,如計算機斷層掃描(computed tomography,CT)、磁共振成像(magnetic resonance imaging,MRI)等,因此利用醫學圖像分析輔助疾病診斷的方式日益增多,其中主要包括醫學圖像分割和醫學圖像分類識別。
2.1.1 醫學圖像分割
醫學圖像分割是醫學圖像分析的基礎,對后續的疾病定量分析和分類識別都十分重要,近五年的主要代表成果如表 1 所示。

2016 年,Kamnitsas 等[32]提出了一種雙路徑的 11 層三維 CNN 用于腦病變分割的挑戰任務,對具有創傷性腦損傷、腦腫瘤和缺血性中風患者的 MRI 數據進行了分析評估,兩條路徑在多個尺度上處理輸入圖像,分別獲取不同的特征并融合分析,其實驗結果在 2015 年的腦腫瘤分割(brain tumor segmentation,BRATS)和缺血性中風病變分割(Ischemic Stroke Lesion Segmentation,ISLES)比賽中獲得了最高排名。Wang 等[33]提出了中心聚焦卷積神經網絡(central focus CNN,CF-CNN),用于分割來自 CT 圖像中的肺結節,通過在池化層中加入中心聚焦的策略來保留特征圖中央的特征,解決了肺結節與其周圍環境之間存在類似視覺特征導致分割困難的問題,該方法在肺部圖像數據庫聯盟與圖像數據庫資源計劃(Lung Image Database Consortium and Image Database Resource Initiative,LIDC-IDRI)和醫院采集的數據集上的準確率分別為 82.15% 和 80.02%,表現出了優越的分割性能,并與放射科醫師診斷結果的一致性進行了比較,差異僅為 1.98%。2018 年,Zhao 等[34]通過將全卷積神經網絡(fully CNN,FCNN)和條件隨機場(conditional random field,CRF)集成在一個統一的框架中,提出了一種基于深度學習的新型腦腫瘤分割模型,在模型訓練過程中將 CRF 作為 RNN 訓練得到 CRF-RNN,然后將 FCNN 和 CRF-RNN 集成進行微調,這種方法可以逐層切割腦圖像,獲得具有外觀和空間一致性的分割結果,其實驗結果在 BRATS-2016 上排名第一。
U-Net 是 CNN 的變體,基于 FCNN 改進和數據增強模式使得它能夠對少量樣本數據進行訓練,目前在醫學圖像分割領域表現較好。2018 年,Alom 等[35]以 U-Net 架構為基礎改進了循環卷積神經網絡(recurrent CNN,RCNN)和循環殘差卷積神經網絡(recurrent residual CNN,RRCNN),分別稱為 RU-Net 和 R2U-Net,并將兩種網絡模型應用在視網膜血管分割、皮膚癌病變分割和肺部病變分割實驗中。實驗結果表明,與包括 U-Net 和殘差 U-Net 在內的現有方法相比,所提出的 RU-Net 和 R2U-Net 模型在具有相同網絡參數數量的分割任務中表現出更好的性能。2019 年,葉海等[36]提出了基于 FCNN 的胎兒腦部超聲圖像分割算法,將醫院采集的 12 609 張超聲圖像作為數據集,在原始 U-Net 中加入空洞卷積實現胎兒腦部超聲圖像中顱骨光環的分割與提取,并和 U-Net 進行對比分析,原始 U-Net 模型在下采樣過程中經過池化所丟失的信息在上采樣過程中無法彌補,而空洞卷積可以有效地提升感受野,并且不需要減少圖像大小,避免了池化過程中的信息損失,所以改進后的方法能夠更好地學習顱骨光環的紋理和邊緣等特征。實驗結果表明經過空洞卷積改進過的分割方法在精確率上比原始方法高 9.6%。
目前深度學習在醫學圖像分割上的應用主要集中在二維圖像分割,然而有些病例在二維圖像上沒有明顯征象,如動脈瘤。隨著深度學習技術的發展,醫學圖像分割正在逐步向三維圖像分割發展,三維網絡模型可以利用要分割組織的三維連通性,結合圖像層間信息,得到更精細的分割結果。
2.1.2 醫學圖像分類識別
醫學圖像分類識別通過在給定的數據集上訓練模型來完成新數據上的特定任務。相比傳統的醫學圖像識別方法,深度學習能夠挖掘到醫學圖像中潛在的非線性關系,自動提取高級的抽象特征進行分類識別,近五年的主要代表成果如表 2 所示。

2016 年,Anthimopoulos 等[37]利用深度卷積神經網絡(deep CNN,DCNN)對間質性肺疾病(interstitial lung disease,ILD)的肺紋進行分類研究,通過將肺部 CT 圖像分為 7 類,包括 6 種不同的 ILD 類型和健康組織,用 DCNN 來提取肺組織的低級紋理特征,該方法在 14 696 個 CT 圖像數據上達到最優結果,準確率達到了 85.5%。2017 年,Shen 等[38]提出了一種多因素卷積神經網絡(multi-crop CNN,MC-CNN),研究肺結節惡性腫瘤可疑性分類問題,該模型通過在池化層中加入多因素策略,使得池化層能夠對特征圖進行多尺度特征提取,同時能夠簡化訓練過程,縮短訓練時間,在 LIDC-IDRI 數據集上分類準確率達到了 87.14%,該方法不僅可以實現肺結節可疑性分類,還有助于模擬結節惡性腫瘤。Esteva 等[39]研究自動分類皮膚損傷,用 129 450 個臨床圖像數據訓練 CNN,并與 21 名皮膚科醫生的測試結果進行對比分析,實驗表明 CNN 分類的結果和醫生的診斷結果相近。
2018 年,Mohsen 等[40]將離散小波變換與深度神經網絡(deep neural network,DNN)相結合,將腦部 MRI 分為正常和 3 種類型的惡性腦腫瘤,包括膠質母細胞瘤、肉瘤和支氣管肺癌轉移瘤,與 SVM 等傳統分類方法相比表現出了更高的精度。Xie 等[41]提出了一種融合多特征的肺結節分類算法,在判定水平上使用紋理和形狀等信息來區分惡性肺結節和良性肺結節,使用 DCNN 自動學習結節特征表示,將深度模型學習的圖像表示與決策級別的傳統視覺特征相結合,在 LIDC-IDRI 數據集上評估的結果顯示該算法提高了結節分類的性能,優于 MC-CNN 等方法。2019 年,Mao 等[42]提出 ImageGCN,一種用于多關系圖像建模的 GCN 框架,使用原始像素特征和相關圖像的特征來學習圖像的表示,并將其應用于胸部 X 線圖像,其中豐富的關系信息可用于疾病識別,通過對肺部 X 線數據庫(ChestX-ray14)中的 14 種疾病進行分類的對比試驗可以發現,該方法優于亞歷克斯網絡(AlexNet)、牛津大學視覺幾何組(Visual Geometry Group,VGG)提出的 VGGNet、殘差網絡(residual network,ResNet)等 CNN 模型。鉏家歡等[43]提出了一種融合圖像和指標的阿爾茨海默病多分類診斷模型,采用阿爾茨海默病神經影像學計劃(Alzheimer’s Disease Neuroimaging Initiative,ADNI)中的數據進行多分類實驗,包括正常、輕度認知障礙和阿爾茨海默病三類數據,該模型將 VGGNet 進行改進用于大腦三正交平面 MRI 圖像特征向量的提取,并和由人口統計學信息、生物學檢測等組成的指標特征向量通過典型相關分析進行線性融合,進一步提高了多分類的有效性,在阿爾茨海默病多分類上的正確率可達到 86.7%。劉振宇等[44]構建了用于白內障分類的數據集,包含 16 239 張眼部晶體圖像,分為正常、早期和白內障三類數據,并通過旋轉、平移和鏡像等方式進行數據擴增,然后用 Inception-V3 模型和遷移學習的方法進行訓練,實驗結果為模型的準確率達到 94.85%,召回率達到 92.27%,為臨床診斷起到了更好的輔助作用。
心電圖(electrocardiogram,ECG)能展現心臟興奮的電活動過程、心肌受損的程度和心房心室的功能結構情況,對心臟病理相關研究具有重要的參考價值,對心臟疾病的診斷有很大幫助。2017 年,Acharya 等[45]利用 DCNN 來自動診斷心肌梗死,將 ECG 數據集劃分為有無噪聲兩部分,在有噪聲的數據集上的結果為 93.53% 的準確度、93.71% 的靈敏度和 92.83% 的特異度,在無噪聲的數據集上的結果為 95.22% 的準確度、95.49% 的靈敏度和 94.19% 的特異度,這些結果表明該方法可以被引入臨床環境,幫助臨床醫生診斷心肌梗死。李嶺海[46]利用常見疾病患者的超聲心動圖,使用尺度不變特征變換(scale-invariant feature transform,SIFT)、加速穩健特征(speeded up robust features,SURF)、KAZE 算法和 CNN 分別提取所有患者超聲切面圖像的特征,然后比較測試圖像特征值和訓練圖像特征值的距離,計算識別的準確率,實驗結果為 SIFT 準確率為 62%、SURF 準確率為 71%、KAZE 準確率為 54%、CNN 準確率為 98%,表明傳統算法提取的是圖像的淺層特征,不能確切地反映圖像的本質,而 CNN 將每個卷積層提取的特征進行組合,提取圖像的高維特征,更利于分類識別。
還有一種較為重要的數據是腦電圖(electroencephalogram,EEG),它對于各種顱內病變,如腦卒中、腦炎、腦瘤和癲癇等有很大的研究價值。2018 年,Acharya 等[47]利用一個 13 層的 CNN 對 EEG 數據進行分析,用于癲癇的診斷,得到的平均準確度為 88.7%、特異度為 90%、靈敏度為 95%,該模型是 DCNN 在基于 EEG 的癲癇發作檢測中的首次應用。
近幾年深度學習在醫學數據中的應用一直在如火如荼地進行,但是醫學領域數據的獨特性也在制約著其發展,醫療數據難以獲取這一特性導致深度學習方法所需的數據不足或者數據類別不均衡,從而影響深度學習方法的最后結果,因此如何利用小樣本數據集結合深度學習方法是未來的研究方向之一,例如利用 GAN 生成數據以彌補數據不足,以及使用不依賴于標注數據的無監督深度學習算法等。
2.2 生物數據分析中的深度學習應用
相比醫學問題,生物學中數據分析問題更加復雜。目前,深度學習技術在生物數據分析中的應用主要包括基因組學和蛋白質結構分析等領域,近五年的主要代表成果如表 3 所示。

2016 年,Quang 等[48]提出了一種將 CNN 和雙向長短期記憶網絡(bi-directional LSTM,BLSTM)組合的框架 DanQ,用于預測 DNA 序列的功能,DanQ 中的 CNN 提取序列矩陣圖中的特征,BLSTM 提取序列矩陣圖之間的方向和空間距離特征,最后通過損失函數和真實目標的比較獲得非編碼 DNA 序列中表觀遺傳標記的概率,根據表觀遺傳變化實現對非編碼 DNA 序列功能的預測,實驗結果表明 DanQ 優于 LR 和 DeepSEA 方法。2018 年 Pan 等[49]提出了一種基于深度學習預測序列結構基序的方法(inferring sequence-structure motifs using deep learning,iDeepS),使用 CNN 和 BLSTM 同時識別 RNA 序列的結合序列和結構基序,實驗中使用 CNN 提取抽象特征,使用 BLSTM 提取由 CNN 識別的結合序列和結構基序之間的前后相關性,最后將兩個輸出結果加權之后輸入到分類層,預測 RNA 結合蛋白(RNA binding protein,RBP)的結合位點。該方法在具有代表性的紫外交聯免疫沉淀結合高通量測序(crosslinking-immunprecipitation and high-throughput sequencing,CLIP-Seq)數據集上進行了驗證,實驗的 AUC 值達到了 0.86,表明 iDeepS 可以可靠地預測 RBP 結合位點,并且優于 DeepBind 等方法。Liu 等[50]提出了深度開放預測網絡(deep openness prediction network,Deopen),一種基于 DCNN 和前饋神經網絡的開源框架,可以自動學習 DNA 序列的調控編碼并預測染色質可及性,通過將 Deopen 框架中 CNN 和前饋網絡的輸出連接起來形成混合特征向量,再利用 softmax 分類器進行預測,在微球核酸酶序列(micrococcal nuclease sequence,MNase-Seq)數據集和脫氧核糖核酸酶序列(deoxyribonuclease sequence,DNase-Seq)數據集上選取基準模型和 Deopen 方法進行對比分析,通過精確二項檢驗和曼-惠特尼秩和檢驗,分析得出 Deopen 方法更具有統計學意義。李洪順等[51]提出了一種只利用序列信息預測 RNA 結合蛋白的深度學習模型,該模型由 CNN 和 LSTM 結合而成,利用 CNN 局部感知的優勢去探測序列中的 motif 信息,利用 LSTM 學習 motif 與 motif 之間的依賴關系,實驗使用通用蛋白質數據庫(Universal Protein,UniProt)中的數據作為訓練集,使用蛋白質數據庫(Protein Data Bank,PDB)的數據作為驗證集,實驗結果表明該方法優于 SVM 等機器學習方法。2019 年,Rossi 等[52]采取端到端的方式,利用 GCN 對非編碼 RNA 數據進行分類識別,該模型在 13 個類別分類實驗中達到了 85.73%的準確率,并且該實驗模型還結合了邊緣感知卷積和基于注意力的池化機制,使得它在非編碼 RNA 分類的挑戰性任務中達到了目前最優的結果。
除了基因組學和蛋白質結構預測之外,深度學習方法在生物數據分析上的應用還有很多,比如生物數據建模、癌細胞的檢測和藥物研發等。然而生物數據復雜的特性使得現有的深度學習技術也難以快速高效地進行生物數據分析,因此開發專用于生物領域的深度學習工具是未來的主要發展方向之一,這樣可以使研究人員更有效地進行數據分析處理,提高工作效率。
3 總結與展望
隨著人工智能和大數據的發展,深度學習技術受到了越來越多研究人員的關注。本文對深度學習方法作了簡要介紹,包括 CNN、RNN、GAN、GNN 等,回顧了近五年深度學習在生物醫學數據分析中的具體應用。由于生物醫學數據的特殊性,深度學習技術在生物醫學數據分析領域還有巨大的發展空間。
生物數據復雜多變、特征多樣、維度較高,深度學習技術在生物領域進一步的發展要將多模態信息進行融合并充分利用,例如將組學數據、圖像、信號、電子記錄等協同使用,然后結合專用于生物領域的深度學習技術,不僅能夠有效地避免單模態數據實驗的缺陷,還能快速高效地進行生物數據分析。
對于醫學數據分析,一方面,專業的醫療機構以高精度為首要目標,利用最新的現代化大型服務器進行數據分析,高性能的 GPU 代表著超高的計算效率,可以分析更加復雜的深度模型,因此在研究過程中可以逐漸增加模型的深度。同時,還需要不斷優化模型。常用的優化算法有自適應動量估計(adaptive moment estimation,Adam)等,通過自動調節學習速率等參數去更好地逼近目標函數,獲得更優異的分析結果。以 CNN 的發展為例,從 AlexNet 到 VGGNet,再到 ResNet,模型的層數不斷疊加,使用的優化算法復雜程度不斷增加,對機器計算能力的要求也越來越高,只有裝載多 GPU 的大型機器才能滿足計算要求。另一方面,普通家用的醫學數據分析儀器以普適性及便攜式為首要目標,通過微處理技術,將壓縮后的深度學習模型集成在小型儀器或個人計算機上。常用的壓縮模型的方法有卷積核分解和模型剪枝優化等。模型剪枝通過永久刪除不重要的連接來減少相應參數和計算,使剪枝后的網絡能夠繼承原網絡的關鍵信息并保持性能。此外,改變卷積方式也是一種不錯的方法,例如移動網絡(MobileNet),使用深度可分離卷積構建輕量級的深度神經網絡,雖然精度有所降低,但是減少了卷積核的冗余表達,減少了計算量和參數數量,適用于小型儀器。
深度學習技術以其深厚的理論價值和廣闊的市場前景在生物醫學數據分析中占據越來越重要的地位,隨著人工智能、智慧城市、微處理技術等理念的發展,生物醫學領域的深度學習技術將會在醫用和家用兩個領域發揮巨大作用,因此開發具有更高精度和更深層次的深度模型算法以及簡單高效適用于微型儀器的算法都是未來的主要發展方向。
利益沖突聲明:本文全體作者均聲明不存在利益沖突。
引言
21 世紀被稱為信息時代,信息傳播與處理的速度都以幾何級數的方式爆炸增長,隨之而來的便是大數據時代。隨著網絡的發展,越來越多大型的公開數據庫可供研究人員使用,例如美國臨床試驗數據庫、中國的神州基因組數據云等。在大數據時代背景下,隨著生物醫學數據采集技術的快速發展,研究者可以用更多的方式來更加全面地進行生物醫學數據分析研究。傳統的生物醫學數據挖掘和分析方法面對海量增長的數據可能會顯得效率較低,因為一方面生物醫學大數據維度更高,計算更復雜,另一方面不同類型的生物醫學數據的處理方式復雜多變,對模型的數據處理能力要求更高。近年來深度學習在自然語言處理、計算機視覺、語音識別以及基因組學和蛋白質結構等領域取得了突破性的進展,由于其具有強大的特征提取能力,非常適合處理生物醫學大數據統計分析等相關問題,于是得到了越來越多的生物醫學研究人員的關注[1-5]。
深度學習起源于人工神經網絡,多層感知器就是一種經典的深度學習模型[6]。深度學習模型具有自動學習特征的特點,在訓練過程中自動整合提取到的數據特征,通過組合低層特征形成更加抽象的高層特征。作為機器學習的一個領域,深度學習也分為監督學習和無監督學習,但和傳統的機器學習模型如決策樹(decision tree,DT)、支持向量機(support vector machine,SVM)等相比更具靈活性[7-8]。
本文首先介紹了深度學習方法及工具框架,隨后總結了近五年深度學習技術在生物醫學數據分析中的具體應用,最后給出了未來深度學習在生物醫學數據分析領域可能的發展方向。
1 深度學習方法及工具
1.1 深度學習方法
深度學習方法包含多種深度學習模型,其中基礎模型有深度信念網絡(deep belief network,DBN)和堆棧自編碼器(stacked automatic encoder,SAE),但現在生物醫學數據分析領域更常用的模型是卷積神經網絡(convolutional neural network,CNN)、循環神經網絡(recurrent neural network,RNN)、生成式對抗網絡(generative adversarial network,GAN)和圖神經網絡(graph neural network,GNN)等[9-14]。本節將詳細介紹這些模型的基本單元、工作原理和訓練過程等。
從神經學角度來說,CNN 的設計靈感來自動物視覺皮層對外界事物的感知,感受野的發現對 CNN 的意義重大[15]。CNN 在圖像識別領域有著廣泛的應用,它主要包括輸入層、卷積層、池化層、全連接層和輸出層等,模型訓練過程中的核心操作是卷積過程和池化過程。卷積過程主要是特征提取的過程,池化過程主要是數據降維的過程,卷積池化過程中用到了權值共享原理,減少了模型的訓練參數。CNN 是通過卷積層和池化層的堆疊,然后加上全連接層和輸入輸出層構成的。CNN 的訓練過程與傳統神經網絡類似,參照了反向傳播算法,分為前向傳播階段和后向傳播階段。在不同的應用領域,CNN 有著不同的變體,例如常見的分類網絡,如谷歌網絡(GoogLeNet);還有常見的分割網絡,如 U 型網絡(U-Net)等[16-17]。圖 1 展示了一個簡單的 CNN 模型,它具有兩個卷積層、兩個池化層、一個全連接層和輸入輸出層。

RNN 是用來處理和預測序列數據的深度學習模型,廣泛應用于語音識別、自然語言處理、圖像描述生成等領域。RNN 能充分利用序列數據前后信息,每個隱藏層的輸入包括上一層的輸出和上一時刻該隱藏層的輸出,網絡會對前面的信息記憶并應用于計算當前輸出。RNN 采用時間反向傳播算法訓練,但普通 RNN 在處理長序列問題時可能會遇到梯度消失或梯度爆炸等問題[18-19]。解決這一問題的方法是采用長短期記憶網絡結構(long short-term memory,LSTM),該模型是在 RNN 的基礎上加入了三個門結構,分別是輸入門、遺忘門和輸出門,使不同時期記憶信息的尺度動態變化,從而能夠處理長序列問題[20]。LSTM 是目前最為常用的 RNN 模型,結構如圖 2 所示,其中 Ct-1 是上一時刻的長期狀態,ht-1 為上一時刻的輸出,Ct 為當前時刻的狀態,ht 為當前時刻的輸出。

GAN 模型包含兩部分,分別是生成模型和判別模型。生成模型用來捕捉樣本數據的分布,用服從某一分布的噪聲生成一個類似真實訓練數據的樣本;判別模型充當一個二分類器,估計輸入樣本來自于真實數據的概率,如果樣本來自于真實數據,判別模型輸出較大概率,否則輸出較小概率。GAN 的訓練過程為先固定一方,然后更新另一方的網絡權重,交替優化網絡,從而形成競爭對抗,直到兩個網絡達到一個動態平衡,最終生成模型獲得了和真實數據幾乎相同的樣本。GAN 在圖像生成領域有著廣泛的應用,可以在數據量不足的情況下生成數據,適用于訓練數據較少時進行數據擴增。由于隱私等問題,生物醫學領域中數據的獲取可能較難,顯然 GAN 可以在小數據樣本的情況下生成數據以彌補不足。圖 3 展示了一個簡單的 GAN 模型。

圖數據包含十分豐富的關系型信息,例如句子的依賴樹、圖像的場景圖等,從這些非結構化數據中進行推理學習都需要圖推理模型。圖 4 展示了一個簡單的 GNN 模型。GNN 依靠圖中節點之間的信息傳遞來捕捉圖中的依賴關系。GNN 相對于傳統的神經網絡有獨特的優勢,標準的 CNN 和 RNN 不能處理圖輸入這種非順序排序的特征表示。用傳統的 CNN 和 RNN 來處理圖數據,只能遍歷圖中節點所有可能的出現順序作為模型的輸入,這樣的計算量對模型來說是難以承受的。然而 GNN 的輸出不隨節點的輸入順序轉移,GNN 分別在每個節點上傳播,忽略了節點之間輸入的順序。另外,圖中的連接線表示兩個節點之間的依賴關系。在傳統的神經網絡中,這種依賴關系只能通過節點的特征表示來體現。GNN 可以依賴周圍的狀態來更新節點的狀態。近年來,很多新的 GNN 變體應運而生,特別是圖卷積網絡(graph convolutional network,GCN)在生物醫學領域中已有諸多應用[21]。

1.2 深度學習工具
由于深度學習模型的運算過程中包含了大量的線性代數計算、概率統計計算和最優化計算,導致不同模型代碼之間的計算過程有很多相似之處,所以有關研究人員開發了不同的深度學習框架,方便他人開發利用各種模型。本節分析了八種常見的深度學習框架,基本可以滿足研究人員的需求。
Deep learning toolbox 是 MATLAB 軟件中的深度學習工具箱,其包含了 SAE、DBN、CNN 等模型,代碼簡單,適合初學者學習[22]。Caffe 是模塊化的深度學習框架,速度極快,由 C++語言編寫,也適用于 Python,在圖像處理方面表現優越[23]。Theano 是一個高效運算的 Python 庫,用來定義、優化和評估涉及多維數組的數學表達式[24]。TensorFlow 是使用數據流圖進行數值計算的開源庫,最初由 Google 研究人員開發,并一直開源給公眾,現在已經開發出 TensorFlow 2.0 版本,是目前使用人數最多的開源框架。TensorFlow 的主要優點是分布式計算,特別是在應用大量圖形處理器(graphics processing unit,GPU)的場合,所以 TensorFlow 目前主要被應用于工業領域中[25]。MXNet 也是由 C++語言實現的,同時提供了 Python、R 等多種語言接口,它也支持多個 GPU 分配訓練網絡,編程效率和運行效率都非常高[26]。Keras 是一個低限度的、模塊化的神經網絡庫,它把 Theano、TensorFlow、MXNet 包裝成了更具人性化的應用程序接口,是一種較為簡單的框架[27]。PyTorch 是由 Facebook 開源的神經網絡框架,與 TensorFlow 的靜態計算圖不同,PyTorch 的計算圖是動態的,可以根據計算需要實時改變計算圖[28]。Deeplearning4j 是用 Java 實現的深度學習框架,該框架中的網絡模型是可組合的,即 CNN、SAE、RNN 等淺層神經網絡可以相互疊加,組合成不同類型的深度網絡,同時與 Hadoop 和 Spark 緊密結合,運行效率高且支持大規模分布式運算[29]。
2 深度學習在生物醫學分析中的具體應用
隨著生物醫學大數據時代的到來,深度學習方法在生物醫學領域中的應用逐漸增多。近年來許多研究團隊取得了很大的進展,進一步推動了生物醫學領域的發展。本節主要從醫學數據分析和生物數據分析兩個方面介紹近五年生物醫學數據分析領域應用深度學習技術的研究進展,重點綜述了醫學數據分析領域中利用醫學圖像輔助疾病診斷,包括深度學習方法在醫學圖像分割和醫學圖像分類識別中的應用。
2.1 醫療輔助診斷中的深度學習應用
疾病輔助診斷是深度學習在醫學數據分析上的主要應用之一,深度學習技術能夠基于患者疾病的相關數據,預測異常病變,且其判斷不易受到主觀因素的干擾,不僅能夠減輕醫生工作的負擔,還能提升醫生診斷的效率和準確率。2016 年,Lipton 等[30]將 LSTM 用于兒科重癥監護病房的臨床數據分類,主要包括血糖、心率、舒張壓和收縮壓等時間序列數據,利用 LSTM 處理序列數據的能力輔助診斷,實驗獲得了良好的結果,證明 LSTM 優于受過訓練的多層感知器,對疾病的早期診斷有很大幫助。2018 年,Haque 等[31]利用因果卷積網絡(causal CNN,C-CNN)通過面部表情、語言和交談的文本記錄診斷抑郁癥,該模型通過多模態輸入將語音識別、計算機視覺和自然語言處理等技術結合輔助醫生診斷,準確率達到 83.3%,召回率達到 82.6%,并且該模型可以部署到手機上,使得抑郁癥的診斷更加方便高效。
深度學習在計算機視覺領域中的應用發展非常迅速,研究人員相繼提出圖像處理的有關算法,此外隨著醫療設備的不斷改進,醫學圖像的獲取也越來越容易,如計算機斷層掃描(computed tomography,CT)、磁共振成像(magnetic resonance imaging,MRI)等,因此利用醫學圖像分析輔助疾病診斷的方式日益增多,其中主要包括醫學圖像分割和醫學圖像分類識別。
2.1.1 醫學圖像分割
醫學圖像分割是醫學圖像分析的基礎,對后續的疾病定量分析和分類識別都十分重要,近五年的主要代表成果如表 1 所示。

2016 年,Kamnitsas 等[32]提出了一種雙路徑的 11 層三維 CNN 用于腦病變分割的挑戰任務,對具有創傷性腦損傷、腦腫瘤和缺血性中風患者的 MRI 數據進行了分析評估,兩條路徑在多個尺度上處理輸入圖像,分別獲取不同的特征并融合分析,其實驗結果在 2015 年的腦腫瘤分割(brain tumor segmentation,BRATS)和缺血性中風病變分割(Ischemic Stroke Lesion Segmentation,ISLES)比賽中獲得了最高排名。Wang 等[33]提出了中心聚焦卷積神經網絡(central focus CNN,CF-CNN),用于分割來自 CT 圖像中的肺結節,通過在池化層中加入中心聚焦的策略來保留特征圖中央的特征,解決了肺結節與其周圍環境之間存在類似視覺特征導致分割困難的問題,該方法在肺部圖像數據庫聯盟與圖像數據庫資源計劃(Lung Image Database Consortium and Image Database Resource Initiative,LIDC-IDRI)和醫院采集的數據集上的準確率分別為 82.15% 和 80.02%,表現出了優越的分割性能,并與放射科醫師診斷結果的一致性進行了比較,差異僅為 1.98%。2018 年,Zhao 等[34]通過將全卷積神經網絡(fully CNN,FCNN)和條件隨機場(conditional random field,CRF)集成在一個統一的框架中,提出了一種基于深度學習的新型腦腫瘤分割模型,在模型訓練過程中將 CRF 作為 RNN 訓練得到 CRF-RNN,然后將 FCNN 和 CRF-RNN 集成進行微調,這種方法可以逐層切割腦圖像,獲得具有外觀和空間一致性的分割結果,其實驗結果在 BRATS-2016 上排名第一。
U-Net 是 CNN 的變體,基于 FCNN 改進和數據增強模式使得它能夠對少量樣本數據進行訓練,目前在醫學圖像分割領域表現較好。2018 年,Alom 等[35]以 U-Net 架構為基礎改進了循環卷積神經網絡(recurrent CNN,RCNN)和循環殘差卷積神經網絡(recurrent residual CNN,RRCNN),分別稱為 RU-Net 和 R2U-Net,并將兩種網絡模型應用在視網膜血管分割、皮膚癌病變分割和肺部病變分割實驗中。實驗結果表明,與包括 U-Net 和殘差 U-Net 在內的現有方法相比,所提出的 RU-Net 和 R2U-Net 模型在具有相同網絡參數數量的分割任務中表現出更好的性能。2019 年,葉海等[36]提出了基于 FCNN 的胎兒腦部超聲圖像分割算法,將醫院采集的 12 609 張超聲圖像作為數據集,在原始 U-Net 中加入空洞卷積實現胎兒腦部超聲圖像中顱骨光環的分割與提取,并和 U-Net 進行對比分析,原始 U-Net 模型在下采樣過程中經過池化所丟失的信息在上采樣過程中無法彌補,而空洞卷積可以有效地提升感受野,并且不需要減少圖像大小,避免了池化過程中的信息損失,所以改進后的方法能夠更好地學習顱骨光環的紋理和邊緣等特征。實驗結果表明經過空洞卷積改進過的分割方法在精確率上比原始方法高 9.6%。
目前深度學習在醫學圖像分割上的應用主要集中在二維圖像分割,然而有些病例在二維圖像上沒有明顯征象,如動脈瘤。隨著深度學習技術的發展,醫學圖像分割正在逐步向三維圖像分割發展,三維網絡模型可以利用要分割組織的三維連通性,結合圖像層間信息,得到更精細的分割結果。
2.1.2 醫學圖像分類識別
醫學圖像分類識別通過在給定的數據集上訓練模型來完成新數據上的特定任務。相比傳統的醫學圖像識別方法,深度學習能夠挖掘到醫學圖像中潛在的非線性關系,自動提取高級的抽象特征進行分類識別,近五年的主要代表成果如表 2 所示。

2016 年,Anthimopoulos 等[37]利用深度卷積神經網絡(deep CNN,DCNN)對間質性肺疾病(interstitial lung disease,ILD)的肺紋進行分類研究,通過將肺部 CT 圖像分為 7 類,包括 6 種不同的 ILD 類型和健康組織,用 DCNN 來提取肺組織的低級紋理特征,該方法在 14 696 個 CT 圖像數據上達到最優結果,準確率達到了 85.5%。2017 年,Shen 等[38]提出了一種多因素卷積神經網絡(multi-crop CNN,MC-CNN),研究肺結節惡性腫瘤可疑性分類問題,該模型通過在池化層中加入多因素策略,使得池化層能夠對特征圖進行多尺度特征提取,同時能夠簡化訓練過程,縮短訓練時間,在 LIDC-IDRI 數據集上分類準確率達到了 87.14%,該方法不僅可以實現肺結節可疑性分類,還有助于模擬結節惡性腫瘤。Esteva 等[39]研究自動分類皮膚損傷,用 129 450 個臨床圖像數據訓練 CNN,并與 21 名皮膚科醫生的測試結果進行對比分析,實驗表明 CNN 分類的結果和醫生的診斷結果相近。
2018 年,Mohsen 等[40]將離散小波變換與深度神經網絡(deep neural network,DNN)相結合,將腦部 MRI 分為正常和 3 種類型的惡性腦腫瘤,包括膠質母細胞瘤、肉瘤和支氣管肺癌轉移瘤,與 SVM 等傳統分類方法相比表現出了更高的精度。Xie 等[41]提出了一種融合多特征的肺結節分類算法,在判定水平上使用紋理和形狀等信息來區分惡性肺結節和良性肺結節,使用 DCNN 自動學習結節特征表示,將深度模型學習的圖像表示與決策級別的傳統視覺特征相結合,在 LIDC-IDRI 數據集上評估的結果顯示該算法提高了結節分類的性能,優于 MC-CNN 等方法。2019 年,Mao 等[42]提出 ImageGCN,一種用于多關系圖像建模的 GCN 框架,使用原始像素特征和相關圖像的特征來學習圖像的表示,并將其應用于胸部 X 線圖像,其中豐富的關系信息可用于疾病識別,通過對肺部 X 線數據庫(ChestX-ray14)中的 14 種疾病進行分類的對比試驗可以發現,該方法優于亞歷克斯網絡(AlexNet)、牛津大學視覺幾何組(Visual Geometry Group,VGG)提出的 VGGNet、殘差網絡(residual network,ResNet)等 CNN 模型。鉏家歡等[43]提出了一種融合圖像和指標的阿爾茨海默病多分類診斷模型,采用阿爾茨海默病神經影像學計劃(Alzheimer’s Disease Neuroimaging Initiative,ADNI)中的數據進行多分類實驗,包括正常、輕度認知障礙和阿爾茨海默病三類數據,該模型將 VGGNet 進行改進用于大腦三正交平面 MRI 圖像特征向量的提取,并和由人口統計學信息、生物學檢測等組成的指標特征向量通過典型相關分析進行線性融合,進一步提高了多分類的有效性,在阿爾茨海默病多分類上的正確率可達到 86.7%。劉振宇等[44]構建了用于白內障分類的數據集,包含 16 239 張眼部晶體圖像,分為正常、早期和白內障三類數據,并通過旋轉、平移和鏡像等方式進行數據擴增,然后用 Inception-V3 模型和遷移學習的方法進行訓練,實驗結果為模型的準確率達到 94.85%,召回率達到 92.27%,為臨床診斷起到了更好的輔助作用。
心電圖(electrocardiogram,ECG)能展現心臟興奮的電活動過程、心肌受損的程度和心房心室的功能結構情況,對心臟病理相關研究具有重要的參考價值,對心臟疾病的診斷有很大幫助。2017 年,Acharya 等[45]利用 DCNN 來自動診斷心肌梗死,將 ECG 數據集劃分為有無噪聲兩部分,在有噪聲的數據集上的結果為 93.53% 的準確度、93.71% 的靈敏度和 92.83% 的特異度,在無噪聲的數據集上的結果為 95.22% 的準確度、95.49% 的靈敏度和 94.19% 的特異度,這些結果表明該方法可以被引入臨床環境,幫助臨床醫生診斷心肌梗死。李嶺海[46]利用常見疾病患者的超聲心動圖,使用尺度不變特征變換(scale-invariant feature transform,SIFT)、加速穩健特征(speeded up robust features,SURF)、KAZE 算法和 CNN 分別提取所有患者超聲切面圖像的特征,然后比較測試圖像特征值和訓練圖像特征值的距離,計算識別的準確率,實驗結果為 SIFT 準確率為 62%、SURF 準確率為 71%、KAZE 準確率為 54%、CNN 準確率為 98%,表明傳統算法提取的是圖像的淺層特征,不能確切地反映圖像的本質,而 CNN 將每個卷積層提取的特征進行組合,提取圖像的高維特征,更利于分類識別。
還有一種較為重要的數據是腦電圖(electroencephalogram,EEG),它對于各種顱內病變,如腦卒中、腦炎、腦瘤和癲癇等有很大的研究價值。2018 年,Acharya 等[47]利用一個 13 層的 CNN 對 EEG 數據進行分析,用于癲癇的診斷,得到的平均準確度為 88.7%、特異度為 90%、靈敏度為 95%,該模型是 DCNN 在基于 EEG 的癲癇發作檢測中的首次應用。
近幾年深度學習在醫學數據中的應用一直在如火如荼地進行,但是醫學領域數據的獨特性也在制約著其發展,醫療數據難以獲取這一特性導致深度學習方法所需的數據不足或者數據類別不均衡,從而影響深度學習方法的最后結果,因此如何利用小樣本數據集結合深度學習方法是未來的研究方向之一,例如利用 GAN 生成數據以彌補數據不足,以及使用不依賴于標注數據的無監督深度學習算法等。
2.2 生物數據分析中的深度學習應用
相比醫學問題,生物學中數據分析問題更加復雜。目前,深度學習技術在生物數據分析中的應用主要包括基因組學和蛋白質結構分析等領域,近五年的主要代表成果如表 3 所示。

2016 年,Quang 等[48]提出了一種將 CNN 和雙向長短期記憶網絡(bi-directional LSTM,BLSTM)組合的框架 DanQ,用于預測 DNA 序列的功能,DanQ 中的 CNN 提取序列矩陣圖中的特征,BLSTM 提取序列矩陣圖之間的方向和空間距離特征,最后通過損失函數和真實目標的比較獲得非編碼 DNA 序列中表觀遺傳標記的概率,根據表觀遺傳變化實現對非編碼 DNA 序列功能的預測,實驗結果表明 DanQ 優于 LR 和 DeepSEA 方法。2018 年 Pan 等[49]提出了一種基于深度學習預測序列結構基序的方法(inferring sequence-structure motifs using deep learning,iDeepS),使用 CNN 和 BLSTM 同時識別 RNA 序列的結合序列和結構基序,實驗中使用 CNN 提取抽象特征,使用 BLSTM 提取由 CNN 識別的結合序列和結構基序之間的前后相關性,最后將兩個輸出結果加權之后輸入到分類層,預測 RNA 結合蛋白(RNA binding protein,RBP)的結合位點。該方法在具有代表性的紫外交聯免疫沉淀結合高通量測序(crosslinking-immunprecipitation and high-throughput sequencing,CLIP-Seq)數據集上進行了驗證,實驗的 AUC 值達到了 0.86,表明 iDeepS 可以可靠地預測 RBP 結合位點,并且優于 DeepBind 等方法。Liu 等[50]提出了深度開放預測網絡(deep openness prediction network,Deopen),一種基于 DCNN 和前饋神經網絡的開源框架,可以自動學習 DNA 序列的調控編碼并預測染色質可及性,通過將 Deopen 框架中 CNN 和前饋網絡的輸出連接起來形成混合特征向量,再利用 softmax 分類器進行預測,在微球核酸酶序列(micrococcal nuclease sequence,MNase-Seq)數據集和脫氧核糖核酸酶序列(deoxyribonuclease sequence,DNase-Seq)數據集上選取基準模型和 Deopen 方法進行對比分析,通過精確二項檢驗和曼-惠特尼秩和檢驗,分析得出 Deopen 方法更具有統計學意義。李洪順等[51]提出了一種只利用序列信息預測 RNA 結合蛋白的深度學習模型,該模型由 CNN 和 LSTM 結合而成,利用 CNN 局部感知的優勢去探測序列中的 motif 信息,利用 LSTM 學習 motif 與 motif 之間的依賴關系,實驗使用通用蛋白質數據庫(Universal Protein,UniProt)中的數據作為訓練集,使用蛋白質數據庫(Protein Data Bank,PDB)的數據作為驗證集,實驗結果表明該方法優于 SVM 等機器學習方法。2019 年,Rossi 等[52]采取端到端的方式,利用 GCN 對非編碼 RNA 數據進行分類識別,該模型在 13 個類別分類實驗中達到了 85.73%的準確率,并且該實驗模型還結合了邊緣感知卷積和基于注意力的池化機制,使得它在非編碼 RNA 分類的挑戰性任務中達到了目前最優的結果。
除了基因組學和蛋白質結構預測之外,深度學習方法在生物數據分析上的應用還有很多,比如生物數據建模、癌細胞的檢測和藥物研發等。然而生物數據復雜的特性使得現有的深度學習技術也難以快速高效地進行生物數據分析,因此開發專用于生物領域的深度學習工具是未來的主要發展方向之一,這樣可以使研究人員更有效地進行數據分析處理,提高工作效率。
3 總結與展望
隨著人工智能和大數據的發展,深度學習技術受到了越來越多研究人員的關注。本文對深度學習方法作了簡要介紹,包括 CNN、RNN、GAN、GNN 等,回顧了近五年深度學習在生物醫學數據分析中的具體應用。由于生物醫學數據的特殊性,深度學習技術在生物醫學數據分析領域還有巨大的發展空間。
生物數據復雜多變、特征多樣、維度較高,深度學習技術在生物領域進一步的發展要將多模態信息進行融合并充分利用,例如將組學數據、圖像、信號、電子記錄等協同使用,然后結合專用于生物領域的深度學習技術,不僅能夠有效地避免單模態數據實驗的缺陷,還能快速高效地進行生物數據分析。
對于醫學數據分析,一方面,專業的醫療機構以高精度為首要目標,利用最新的現代化大型服務器進行數據分析,高性能的 GPU 代表著超高的計算效率,可以分析更加復雜的深度模型,因此在研究過程中可以逐漸增加模型的深度。同時,還需要不斷優化模型。常用的優化算法有自適應動量估計(adaptive moment estimation,Adam)等,通過自動調節學習速率等參數去更好地逼近目標函數,獲得更優異的分析結果。以 CNN 的發展為例,從 AlexNet 到 VGGNet,再到 ResNet,模型的層數不斷疊加,使用的優化算法復雜程度不斷增加,對機器計算能力的要求也越來越高,只有裝載多 GPU 的大型機器才能滿足計算要求。另一方面,普通家用的醫學數據分析儀器以普適性及便攜式為首要目標,通過微處理技術,將壓縮后的深度學習模型集成在小型儀器或個人計算機上。常用的壓縮模型的方法有卷積核分解和模型剪枝優化等。模型剪枝通過永久刪除不重要的連接來減少相應參數和計算,使剪枝后的網絡能夠繼承原網絡的關鍵信息并保持性能。此外,改變卷積方式也是一種不錯的方法,例如移動網絡(MobileNet),使用深度可分離卷積構建輕量級的深度神經網絡,雖然精度有所降低,但是減少了卷積核的冗余表達,減少了計算量和參數數量,適用于小型儀器。
深度學習技術以其深厚的理論價值和廣闊的市場前景在生物醫學數據分析中占據越來越重要的地位,隨著人工智能、智慧城市、微處理技術等理念的發展,生物醫學領域的深度學習技術將會在醫用和家用兩個領域發揮巨大作用,因此開發具有更高精度和更深層次的深度模型算法以及簡單高效適用于微型儀器的算法都是未來的主要發展方向。
利益沖突聲明:本文全體作者均聲明不存在利益沖突。