特征表達是基于磁共振成像(MRI)的帕金森病(PD)計算機輔助診斷系統診斷準確性的重要決定因素。深度多項式網絡(DPN)是一種新的有監督深度學習算法,對于小數據集具有良好的特征表達能力。本文提出一種面向 PD 計算機輔助診斷的棧式 DPN(SDPN)集成學習框架,以有效提高基于小數據的 PD 輔助診斷準確性。本框架對所提取的 MRI 特征的每一個特征子集分別通過 SDPN 得到新的特征表達,然后采用支持向量機(SVM)對每個子集進行分類,再對所有分類器進行集成學習,得到最終的 PD 診斷結果。通過對公開的帕金森病數據庫 PPMI 進行實驗,基于腦網絡特征的分類精度、敏感度和特異性分別為 90.15%、85.48% 和 93.27%;而基于多視圖腦區特征的分類精度、敏感度和特異性分別為 87.18%、86.90% 和 87.27%。與在 PPMI 數據庫中的 MRI 數據集進行實驗的其他算法研究相比,本文所提出的算法獲得了更好的分類結果。本文研究表明了所提出的 SDPN 集成學習框架的有效性,具有應用于 PD 計算機輔助診斷的可行性。
引用本文: 陳璐, 施俊, 彭博, 戴亞康. 基于棧式深度多項式網絡集成學習框架的帕金森病計算機輔助診斷. 生物醫學工程學雜志, 2018, 35(6): 928-934, 942. doi: 10.7507/1001-5515.201709030 復制
引言
帕金森病(Parkinson’s disease,PD)是一種在老年人群中常見的慢性進行性運動障礙性疾病。隨著我國人口老齡化的加劇,PD 的患病率呈逐年上升的趨勢,給患者家庭和社會造成了嚴重的負擔。PD 的早期準確診斷對于盡早介入干預和治療具有重要的意義。目前,以磁共振成像(magnetic resonance imaging,MRI)為代表的神經影像技術已經在臨床中應用于 PD 的診斷,并且提供了可靠的生物標志物[1-2]。
隨著人工智能技術的飛速發展,基于神經影像的 PD 計算機輔助診斷也已經成為研究的熱點[1-7]。其中,Salvatore 等[4]將 T1 MRI 圖像中的所有體素值作為原始特征,然后采用主成分分析(principal component analysis,PCA)進行降維,提取低維度特征,最終由支持向量機(support vector machine,SVM)作為分類器實現了對 PD 的輔助診斷。該算法的不足之處在于原始特征維度太高,存在小樣本問題,即使通過 PCA 降維也不能很好地解決此問題。Peng 等[7]最近提出的結合 MRI 的多個感興趣區域(region of interest,ROI)特征、腦網絡(brain network)特征以及多水平(multi-level)特征的 PD 分類算法,通過三階段特征選擇和多核學習分類,在公開的帕金森病數據庫 Parkinson’ s Progression Markers Initiative dataset(PPMI)上取得了最優的分類性能,但該算法的不足是特征類型較多導致特征提取以及之后的特征選擇處理過程非常復雜。
特征表達是決定基于 MRI 的 PD 計算機輔助診斷(computer-aided diagnosis,CAD)性能的關鍵之一。深度學習技術作為目前最有效的特征表達學習方法,已在醫學影像領域取得了巨大的成功[8-10]。針對神經影像數據,基于深度學習的特征表達學習可以分成兩類[11-12]:一是對原始圖像直接采用卷積神經網絡(convolutional neural networks,CNN)進行端到端的特征學習;二是先從原始圖像提取特征,然后采用如棧式自編碼器(stacked auto-encoder,SAE)、受限玻爾茲曼機 (restricted Boltzmann machine,RBM) 和深度置信網絡 (deep belief networks,DBN) 等深度學習算法進行特征的二次表達學習,此方法更為簡單易用,計算復雜度較小。目前,深度學習技術在基于 MRI 的 PD 輔助診斷中的研究尚處于起步階段。
深度多項式網絡(deep polynomial networks,DPN)是一種有監督的深度學習方法,該算法通過訓練樣本多項式變換后的近似基來構建網絡,并能夠利用該深度網絡得到預測子對測試樣本進行測試[13-14]。與 SAE、RBM、DBN 等深度學習算法相比,DPN 主要有以下優點:① DPN 是有監督的深度學習方法,能夠結合訓練樣本的標簽信息降低訓練錯誤,訓練錯誤率隨著網絡深度遞減,并且不容易產生過擬合現象,通過這種有監督的方式構建深度網絡能為整個網絡性能提供保障,產生有效的特征表達;② DPN 算法適合小樣本數據集,當訓練樣本數較少時,DPN 構建的網絡具有較少的節點,能夠通過網絡獲取更緊致的特征表達;③ 輸入參數少,DPN 采用逐層學習調參的模式,而不是常用深度學習算法的反向調參模式,因而不依賴于復雜的探索式方法,計算復雜度較低,易于實施。
對于小樣本數據集,DPN 取得了較 SAE 和 DBN 更為優異的性能[14-15]。此外,我們還提出了棧式 DPN(stacked DPN,SDPN)算法,通過對 DPN 進行堆疊獲得更深的網絡,從而學習更為高層次的特征表達,實驗結果表明了 SDPN 在小樣本醫學超聲圖像特征表達中的有效性[14-15]。神經影像的 CAD 研究通常是基于小樣本數據進行,而所提取的特征卻往往是高維特征。例如,文獻[7]中的腦網絡特征的維度達到了 2 000 維以上,會導致維災問題,因此,該算法采用了非常復雜的特征選擇方法來提高最終的分類效果。由于(S)DPN 的最終特征輸出是所有網絡層所學習特征的串聯,其特征維度也較高,直接應用于神經影像高維特征的二次表達學習,也存在小樣本維災問題。而子空間集成學習則是解決高維小樣本問題的方法之一。
針對上述問題,本文提出一種基于 SDPN 的集成學習框架應用于 PD 的診斷。本算法首先將 MRI 的高維特征構成多個特征子空間,然后采用 SDPN 對每個子空間特征進行特征二次學習,并進行分類,最終對多個分類器進行集成學習,獲得 PD 診斷結果。
1 方法
圖 1 所示為針對 PD 輔助診斷的基于 SDPN 的集成學習框架,主要包括三個模塊:MRI 特征子空間劃分、基于 SDPN 的深度特征學習以及集成學習分類。具體步驟如下:

(1)提取 MRI 特征,并構成 n 個特征子空間。在本文中,測試兩種子空間構成方法:一是將高維特征按照一定的規則劃分為 n 個子空間;二是將 n 個不同類型(視圖)的特征直接構成 n 個子空間;
(2)采用 SDPN 算法分別對每一個子空間的特征進行二次學習,從而對 n 個子空間都產生新的特征表達;
(3)采用 SVM 分類器分別對每一個子空間的新特征進行分類;
(4)對 n 個分類器進行集成學習,產生最終的 PD 診斷結果。在本文所提出的框架中,分別測試了兩種集成學習算法:邊緣分布優化(margin distribution optimization,MDO)算法[16]和多核增強學習(multiple kernel boosting,MKB)算法[17]。
1.1 基于 SDPN 的特征深度學習
圖 2 所示為一個以 4 層 DPN 網絡為例的結構圖。以下對 DPN 的原理進行簡單闡述,具體算法細節請參考文獻[13]。

首先,對輸入數據進行第一層多項式表達時,近似基可表示為如下公式:
![]() |
而每一維特征均可表示為:
![]() |
其中,
表示兩個數據進行內積,1為全 1 向量,d 為樣本的特征維度,m 為訓練樣本數,j為節點數
。我們通過 W 將
映射為一組線性獨立的
輸出,通過對訓練樣本進行奇異值分解法求解 W,從而使上述每個節點的向量線性獨立。令
,F1 表示
大小的矩陣,即 F1 表示為第一層網絡的輸出。
當構建出第一層網絡之后,后面任意第 n 層網絡可表示為:
![]() |
其中,
為第一層網絡的多項式表達,
為第 (n–1) 層網絡的多項式表達,
也為多項式,其最多為 (n ? 1) 階多項式的表達。我們將 n 層的輸出
定義為:
![]() |
其中,
表示 Hadmard 積,其每一列所形成的基都可以由小于 n 的多項式進行 Hadmard 積獲得,可表示為:
![]() |
同樣,第 n 層構建的近似基仍需要獲得一組線性獨立的輸出,我們利用正交化的方式求解線性獨立的W,從而獲得該層網絡的近似基。最終的 DPN 特征輸出則是所有網絡層特征的串聯結果。DPN 網絡的參數相較于其他網絡的參數少很多,因此,對數據數量的要求也隨之降低,同時減少過擬合;而對于第一層的輸入特征,通過奇異值分解方法,把高維的冗余數據變換到有效的低維數據表達,因此,DPN 適用于小樣本高維數據。
在 DPN 的基礎上,我們進一步提出了 SDPN 算法[15]。圖 3 所示為一個由兩級基 DPN 單元構成的 SDPN。一個 SDPN 由多個基 DPN 單元通過層疊的方式形成一個更深層網絡,其中前一個基 DPN 單元的輸出作為后一個基 DPN 單元的輸入,每個基 DPN 單元都是一個簡單的模塊,均可對現有輸入特征進行深度學習得到更緊致靈活的特征。

1.2 集成學習算法
1.2.1 MDO 算法
MDO 是一種針對多分類器的分類結果進行集成的算法,具體算法細節可參考文獻[16]。
對于兩分類問題,給定一組樣本
,
和分類器數 s,不同分類器 s 的識別結果形成一個空間
。令
為尺度權重向量,并且有
。
給定樣本
,不同分類器的識別輸出為
,判別函數為
。樣本xi的邊界可以定義為:
![]() |
如果
,則樣本
被正確分類;如
,則樣本
被錯誤分類;如果
0,則我們無法確定樣本
的標簽。整體邊界反映了分類器融合中的錯誤分類程度。具有正邊界的樣本被正確分類。通常我們應該通過尺度權重學習使整體邊界越大越好。邊界最大化通常轉化為損失最小化問題。
如果樣本xi的整體邊界
,則樣本xi的整體損失為:
![]() |
我們采用平方差,對于樣本集 S 的整體平方損失為:
![]() |
為了學習最優尺度權重向量w,我們需要最小化公式(8)中的整體平方損失。受 AdaBoost 原理的啟發,利用約束 L1-正則化最小二乘優化方法最小化整體損失并求出最優尺度權重向量w,從而求得最終的分類線以實現增強分類器。
1.2.2 MKB 算法
MKB 算法的原理簡介如下,具體算法細節可參考文獻[17]。
在多核學習(multiple kernel learning,MKL)中,
為核函數集,則多個核函數的組合可以定義為:
![]() |
其中,
為權重。決策函數表示為
![]() |
其中,
中
為拉格朗日乘子,并且
。
MKB 算法將標準 MKL 公式轉換為多個單核 SVM 分類器的實際輸出的線性組合。即訓練 L 個具有不同
參數的 SVM 分類器,然后通過經典的 AdaBoost 方法來求解權重
。為了避免求解非常復雜的計算
的優化問題,增強算法的決策函數表示為
![]() |
其中,J 表示算法中的迭代次數,并且這里符號 l 由 j 代替以表示迭代的索引而不是核函數。公式(11)表示每個 SVM 被認為是弱分類器,并且最終強分類器 Y(x) 是所有弱分類器的加權組合。在 J 次迭代之后,計算所有
和
,并且最終實現增強的分類器。
2 實驗和結果
2.1 實驗數據處理
本文采用公開的 PPMI 數據庫對所提出的算法進行測試,選取 69 例 PD 患者和 103 例正常對照組被試者的 MRI 數據。由于 Peng 等[7]所提出的算法在 PPMI 取得了最優的結果,為了便于對比,本文所有數據以及所提取的特征均與文獻[7]一致。表 1 所示為本文所用數據的相關信息。

為了驗證本文所提出算法的有效性和靈活性,我們提取了兩種類型的特征進行實驗:一種是高維度的腦網絡特征;二是基于 ROI 的多視圖(multi-view)特征。腦網絡特征已經體現出其表征腦疾病的有效性,本文中的腦網絡特征是基于腦皮層厚度和腦皮層表面積的相關信息所構建出的高維度特征,共計 3 003 維。多視圖特征是由灰質區域體積、白質區域體積和腦脊液區域體積三種 ROI 特征構成,三個 ROI 特征的維度均為 90 維。具體有關腦網絡特征和多視圖特征的提取可參考文獻[7]。
2.2 實驗設計
本文所提出的算法框架,SDPN 對原始特征直接進行特征學習,然后分別結合 MDO 和 MKB 集成學習算法實現分類,記為 SDPN-MDO 和 SDPN-MKB。為了驗證本文所提出算法的有效性,本文選擇了多種算法進行對比實驗,具體如下:① 對腦網絡特征或串聯的多視圖特征直接采用 SVM 分類,該方法記為 SVM;② 對子空間特征采用 MKB 算法進行集成學習分類,該方法記為 MKB,其中對腦網絡特征采用隨機子空間方法將特征分成 5 個子空間,而多視圖特征仍然保持為 3 個子空間;③ 基于對比算法 ② 中一樣的子空間,采用 MDO 算法進行集成學習分類,該方法記為 MDO;④ 對原始腦網絡特征或者是串聯的多視圖特征直接采用 SAE 進行二次特征學習,然后對所產生的新特征用 SVM 分類,該方法記為 SAE-SVM;⑤ 對子空間特征(腦網絡子空間或者是多視圖特征)分別采用 SAE 進行二次特征學習,然后再用 MKB 算法進行集成學習分類,該方法記為 SAE-MKB;⑥ 對子空間特征(腦網絡子空間或者是多視圖特征)分別采用 SAE 進行二次特征學習,然后再用 MDO 算法進行集成學習分類,該方法記為 SAE-MDO;⑦ 對原始腦網絡特征或者是串聯的多視圖特征直接采用 SDPN 進行二次學習,然后對所產生的新特征用 SVM 分類,該方法記為 SDPN-SVM。需要注意的是,由于兩類原始特征中均存在冗余特征,導致直接采用 SVM 進行分類的效果不佳,因此在對比實驗 ①、② 和 ③ 中,我們采用 t 檢驗對原始特征進行特征選擇處理,將組間比較 P < 0.05 的特征作為選擇后的特征。最終經過選擇以后得到的腦網絡特征維度為 110 維,而多視圖特征的灰質、白質和腦脊液 ROI 區域特征的維度分別為 11 維、5 維和 7 維,然后再進行 SVM、MKB 和 MDO 對比實驗。
為了避免隨機劃分訓練集和測試集引起的抽樣偏差問題,實驗采用 10 折交叉驗證(10-fold cross validation)。選擇分類精度、敏感度和特異性作為評價指標,并且畫出受試者工作特征(receiver operating characteristic curve,ROC)曲線,計算 ROC 曲線下面積(area under curve,AUC)。分類結果以 10 次驗證結果均值±標準差的形式給出。
2.3 實驗結果
表 2 是基于腦網絡特征的各種算法分類結果,圖 4 所示為 AUC 曲線結果。可以發現對 SDPN 學習以后的特征進行分類,包括 SDPN-SVM、SDPN-MKB 和 SDPN-MDO,其分類精度、敏感度和特異性都超過了 80%,而 SDPN-MDO 獲得了最優的分類性能,其分類精度、敏感度和特異性分別為 90.15%±6.72%、85.48%±11.69% 和 93.27%±7.89%;SVM-MKB 則獲得了次高的結果,其分類精度、敏感度和特異性分別為 89.53%±3.47%、85.48%±9.55% 和 92.18%±5.96%,以及 0.912 的 AUC 值。SDPN-MDO 和 SDPN-MKB 與對比算法 ①~⑥ 進行配對 t 檢驗,P 值均小于 0.05,即與未經過 SDPN 學習的特征和分類算法的分類結果相比,均有顯著提高。此外,雖然 SAE-SVM、SAE-MKB 和 SAE-MDO 算法比對應的對未經過深度學習的特征進行 SVM、MKB 和 MDO 分類的結果有所提高,但三種算法與基于 SDPN 的對應算法進行配對 t 檢驗,P 值均小于 0.05,說明三種算法與基于 SDPN 的對應算法相比,性能上仍有較大的差距。


表 3 是基于多視圖特征的各種算法分類結果,圖 5 所示為 AUC 曲線結果。與表 2 結果類似,基于 SDPN 特征的三種算法的分類精度、敏感度和特異性結果大多超過了 80%。SDPN-MDO 獲得了最高分類精度和敏感度,分別為 87.18% ± 5.91% 和 86.90% ± 14.25%,同時獲得了次高的特異性(87.09% ± 9.52%);而 SVM-MKB 則獲得了最高的特異性(87.27% ± 8.12%)和 AUC 值(0.864),以及次高的分類精度和敏感度,分別為 85.89% ± 4.23% 和 84.05% ± 10.53%。SDPN-MDO 和 SVM-MKB 的結果較未經過 SDPN 學習的 6 種對比算法的分類結果均有明顯提高(P<0.05)。而基于 SAE 的結果也與表 2 類似。


本文所提算法還與同樣在 PPMI 進行實驗的 Salvatore 等[4]和 Peng 等[7]的算法結果進行了對比,這兩種算法是目前針對基于 MRI 的 PD 分類效果較為顯著的算法。由表 4 可知,本文所提出算法的結果優于 Salvatore 和 Peng 的算法。特別是我們采用了與 Peng 等[7]同樣的數據集,SDPN-MDO 在腦網絡特征上所得到的分類精度和特異性相較于 Peng 的結果更高,表明了本文所提出算法的有效性。

本文提出的算法框架利用 SDPN 算法有效學習基于 MRI 的腦網絡特征和多視圖特征,二次學習之后的特征利用集成學習方法分類,通過以上對比實驗結果充分表明了本文所提出的基于 SDPN 集成學習框架的有效性。文獻[4]和文獻[7]中提取了高維度的特征,但只是簡單地通過 PCA 或者是特征選擇算法進行了降維,最終特征的表達能力并沒有提高。特別是文獻[4]的方法采用原始三維 MRI 圖像的所有體素特征作為原始特征,其特征維度非常高,即使采用 PCA 降維,其效果也是有限的。而特征表達是決定機器學習算法性能的關鍵因素,深度學習算法(包括本文所采用的 SDPN 算法)能獲得更高級的特征表達,有效提高特征的表達能力[18]。此外,本文的算法框架具有以下的特點和優點,從而使得輔助診斷的效果更為出色:① SDPN 是有監督的深度學習方法,與無監督的深度學習算法相比,SDPN 能夠充分利用標簽信息進行訓練并得到特征的高層深度表達;② SDPN 算法適合小樣本數據集,當訓練樣本數較少時,SDPN 構建的網絡具有較少的節點,能夠通過網絡獲取更緊致的特征表達;③ SDPN 在進行中間層學習的時候僅用到了部分節點,即中間層中的每個節點被限制為僅連接到少數其他節點,而不是前一層中的所有節點,因此可以防止過度擬合,同時也減少了計算復雜度;④ 對經過 SDPN 二次學習獲得的高維或者多視圖的特征,集成學習進一步提升了分類器的性能,從而獲得了很好的分類效果。
3 結論
本文提出一種基于 SDPN 的集成學習框架,通過 SDPN 增強特征表達能力,并分別結合兩種集成學習算法提升了分類性能。其主要創新點為:① 提出了一種基于 SDPN 的集成學習框架應用于 PD 診斷,能有效解決小樣本的高維特征問題;② 所提出的框架能靈活地應用于高維特征和多視圖特征等不同的特征類型數據的分類。實驗結果表明我們所提出的算法框架對高維度的腦網絡特征和低維度的多視圖特征均有很好的分類性能,具有應用于 PD 計算機輔助診斷的潛在可行性。
引言
帕金森病(Parkinson’s disease,PD)是一種在老年人群中常見的慢性進行性運動障礙性疾病。隨著我國人口老齡化的加劇,PD 的患病率呈逐年上升的趨勢,給患者家庭和社會造成了嚴重的負擔。PD 的早期準確診斷對于盡早介入干預和治療具有重要的意義。目前,以磁共振成像(magnetic resonance imaging,MRI)為代表的神經影像技術已經在臨床中應用于 PD 的診斷,并且提供了可靠的生物標志物[1-2]。
隨著人工智能技術的飛速發展,基于神經影像的 PD 計算機輔助診斷也已經成為研究的熱點[1-7]。其中,Salvatore 等[4]將 T1 MRI 圖像中的所有體素值作為原始特征,然后采用主成分分析(principal component analysis,PCA)進行降維,提取低維度特征,最終由支持向量機(support vector machine,SVM)作為分類器實現了對 PD 的輔助診斷。該算法的不足之處在于原始特征維度太高,存在小樣本問題,即使通過 PCA 降維也不能很好地解決此問題。Peng 等[7]最近提出的結合 MRI 的多個感興趣區域(region of interest,ROI)特征、腦網絡(brain network)特征以及多水平(multi-level)特征的 PD 分類算法,通過三階段特征選擇和多核學習分類,在公開的帕金森病數據庫 Parkinson’ s Progression Markers Initiative dataset(PPMI)上取得了最優的分類性能,但該算法的不足是特征類型較多導致特征提取以及之后的特征選擇處理過程非常復雜。
特征表達是決定基于 MRI 的 PD 計算機輔助診斷(computer-aided diagnosis,CAD)性能的關鍵之一。深度學習技術作為目前最有效的特征表達學習方法,已在醫學影像領域取得了巨大的成功[8-10]。針對神經影像數據,基于深度學習的特征表達學習可以分成兩類[11-12]:一是對原始圖像直接采用卷積神經網絡(convolutional neural networks,CNN)進行端到端的特征學習;二是先從原始圖像提取特征,然后采用如棧式自編碼器(stacked auto-encoder,SAE)、受限玻爾茲曼機 (restricted Boltzmann machine,RBM) 和深度置信網絡 (deep belief networks,DBN) 等深度學習算法進行特征的二次表達學習,此方法更為簡單易用,計算復雜度較小。目前,深度學習技術在基于 MRI 的 PD 輔助診斷中的研究尚處于起步階段。
深度多項式網絡(deep polynomial networks,DPN)是一種有監督的深度學習方法,該算法通過訓練樣本多項式變換后的近似基來構建網絡,并能夠利用該深度網絡得到預測子對測試樣本進行測試[13-14]。與 SAE、RBM、DBN 等深度學習算法相比,DPN 主要有以下優點:① DPN 是有監督的深度學習方法,能夠結合訓練樣本的標簽信息降低訓練錯誤,訓練錯誤率隨著網絡深度遞減,并且不容易產生過擬合現象,通過這種有監督的方式構建深度網絡能為整個網絡性能提供保障,產生有效的特征表達;② DPN 算法適合小樣本數據集,當訓練樣本數較少時,DPN 構建的網絡具有較少的節點,能夠通過網絡獲取更緊致的特征表達;③ 輸入參數少,DPN 采用逐層學習調參的模式,而不是常用深度學習算法的反向調參模式,因而不依賴于復雜的探索式方法,計算復雜度較低,易于實施。
對于小樣本數據集,DPN 取得了較 SAE 和 DBN 更為優異的性能[14-15]。此外,我們還提出了棧式 DPN(stacked DPN,SDPN)算法,通過對 DPN 進行堆疊獲得更深的網絡,從而學習更為高層次的特征表達,實驗結果表明了 SDPN 在小樣本醫學超聲圖像特征表達中的有效性[14-15]。神經影像的 CAD 研究通常是基于小樣本數據進行,而所提取的特征卻往往是高維特征。例如,文獻[7]中的腦網絡特征的維度達到了 2 000 維以上,會導致維災問題,因此,該算法采用了非常復雜的特征選擇方法來提高最終的分類效果。由于(S)DPN 的最終特征輸出是所有網絡層所學習特征的串聯,其特征維度也較高,直接應用于神經影像高維特征的二次表達學習,也存在小樣本維災問題。而子空間集成學習則是解決高維小樣本問題的方法之一。
針對上述問題,本文提出一種基于 SDPN 的集成學習框架應用于 PD 的診斷。本算法首先將 MRI 的高維特征構成多個特征子空間,然后采用 SDPN 對每個子空間特征進行特征二次學習,并進行分類,最終對多個分類器進行集成學習,獲得 PD 診斷結果。
1 方法
圖 1 所示為針對 PD 輔助診斷的基于 SDPN 的集成學習框架,主要包括三個模塊:MRI 特征子空間劃分、基于 SDPN 的深度特征學習以及集成學習分類。具體步驟如下:

(1)提取 MRI 特征,并構成 n 個特征子空間。在本文中,測試兩種子空間構成方法:一是將高維特征按照一定的規則劃分為 n 個子空間;二是將 n 個不同類型(視圖)的特征直接構成 n 個子空間;
(2)采用 SDPN 算法分別對每一個子空間的特征進行二次學習,從而對 n 個子空間都產生新的特征表達;
(3)采用 SVM 分類器分別對每一個子空間的新特征進行分類;
(4)對 n 個分類器進行集成學習,產生最終的 PD 診斷結果。在本文所提出的框架中,分別測試了兩種集成學習算法:邊緣分布優化(margin distribution optimization,MDO)算法[16]和多核增強學習(multiple kernel boosting,MKB)算法[17]。
1.1 基于 SDPN 的特征深度學習
圖 2 所示為一個以 4 層 DPN 網絡為例的結構圖。以下對 DPN 的原理進行簡單闡述,具體算法細節請參考文獻[13]。

首先,對輸入數據進行第一層多項式表達時,近似基可表示為如下公式:
![]() |
而每一維特征均可表示為:
![]() |
其中,
表示兩個數據進行內積,1為全 1 向量,d 為樣本的特征維度,m 為訓練樣本數,j為節點數
。我們通過 W 將
映射為一組線性獨立的
輸出,通過對訓練樣本進行奇異值分解法求解 W,從而使上述每個節點的向量線性獨立。令
,F1 表示
大小的矩陣,即 F1 表示為第一層網絡的輸出。
當構建出第一層網絡之后,后面任意第 n 層網絡可表示為:
![]() |
其中,
為第一層網絡的多項式表達,
為第 (n–1) 層網絡的多項式表達,
也為多項式,其最多為 (n ? 1) 階多項式的表達。我們將 n 層的輸出
定義為:
![]() |
其中,
表示 Hadmard 積,其每一列所形成的基都可以由小于 n 的多項式進行 Hadmard 積獲得,可表示為:
![]() |
同樣,第 n 層構建的近似基仍需要獲得一組線性獨立的輸出,我們利用正交化的方式求解線性獨立的W,從而獲得該層網絡的近似基。最終的 DPN 特征輸出則是所有網絡層特征的串聯結果。DPN 網絡的參數相較于其他網絡的參數少很多,因此,對數據數量的要求也隨之降低,同時減少過擬合;而對于第一層的輸入特征,通過奇異值分解方法,把高維的冗余數據變換到有效的低維數據表達,因此,DPN 適用于小樣本高維數據。
在 DPN 的基礎上,我們進一步提出了 SDPN 算法[15]。圖 3 所示為一個由兩級基 DPN 單元構成的 SDPN。一個 SDPN 由多個基 DPN 單元通過層疊的方式形成一個更深層網絡,其中前一個基 DPN 單元的輸出作為后一個基 DPN 單元的輸入,每個基 DPN 單元都是一個簡單的模塊,均可對現有輸入特征進行深度學習得到更緊致靈活的特征。

1.2 集成學習算法
1.2.1 MDO 算法
MDO 是一種針對多分類器的分類結果進行集成的算法,具體算法細節可參考文獻[16]。
對于兩分類問題,給定一組樣本
,
和分類器數 s,不同分類器 s 的識別結果形成一個空間
。令
為尺度權重向量,并且有
。
給定樣本
,不同分類器的識別輸出為
,判別函數為
。樣本xi的邊界可以定義為:
![]() |
如果
,則樣本
被正確分類;如
,則樣本
被錯誤分類;如果
0,則我們無法確定樣本
的標簽。整體邊界反映了分類器融合中的錯誤分類程度。具有正邊界的樣本被正確分類。通常我們應該通過尺度權重學習使整體邊界越大越好。邊界最大化通常轉化為損失最小化問題。
如果樣本xi的整體邊界
,則樣本xi的整體損失為:
![]() |
我們采用平方差,對于樣本集 S 的整體平方損失為:
![]() |
為了學習最優尺度權重向量w,我們需要最小化公式(8)中的整體平方損失。受 AdaBoost 原理的啟發,利用約束 L1-正則化最小二乘優化方法最小化整體損失并求出最優尺度權重向量w,從而求得最終的分類線以實現增強分類器。
1.2.2 MKB 算法
MKB 算法的原理簡介如下,具體算法細節可參考文獻[17]。
在多核學習(multiple kernel learning,MKL)中,
為核函數集,則多個核函數的組合可以定義為:
![]() |
其中,
為權重。決策函數表示為
![]() |
其中,
中
為拉格朗日乘子,并且
。
MKB 算法將標準 MKL 公式轉換為多個單核 SVM 分類器的實際輸出的線性組合。即訓練 L 個具有不同
參數的 SVM 分類器,然后通過經典的 AdaBoost 方法來求解權重
。為了避免求解非常復雜的計算
的優化問題,增強算法的決策函數表示為
![]() |
其中,J 表示算法中的迭代次數,并且這里符號 l 由 j 代替以表示迭代的索引而不是核函數。公式(11)表示每個 SVM 被認為是弱分類器,并且最終強分類器 Y(x) 是所有弱分類器的加權組合。在 J 次迭代之后,計算所有
和
,并且最終實現增強的分類器。
2 實驗和結果
2.1 實驗數據處理
本文采用公開的 PPMI 數據庫對所提出的算法進行測試,選取 69 例 PD 患者和 103 例正常對照組被試者的 MRI 數據。由于 Peng 等[7]所提出的算法在 PPMI 取得了最優的結果,為了便于對比,本文所有數據以及所提取的特征均與文獻[7]一致。表 1 所示為本文所用數據的相關信息。

為了驗證本文所提出算法的有效性和靈活性,我們提取了兩種類型的特征進行實驗:一種是高維度的腦網絡特征;二是基于 ROI 的多視圖(multi-view)特征。腦網絡特征已經體現出其表征腦疾病的有效性,本文中的腦網絡特征是基于腦皮層厚度和腦皮層表面積的相關信息所構建出的高維度特征,共計 3 003 維。多視圖特征是由灰質區域體積、白質區域體積和腦脊液區域體積三種 ROI 特征構成,三個 ROI 特征的維度均為 90 維。具體有關腦網絡特征和多視圖特征的提取可參考文獻[7]。
2.2 實驗設計
本文所提出的算法框架,SDPN 對原始特征直接進行特征學習,然后分別結合 MDO 和 MKB 集成學習算法實現分類,記為 SDPN-MDO 和 SDPN-MKB。為了驗證本文所提出算法的有效性,本文選擇了多種算法進行對比實驗,具體如下:① 對腦網絡特征或串聯的多視圖特征直接采用 SVM 分類,該方法記為 SVM;② 對子空間特征采用 MKB 算法進行集成學習分類,該方法記為 MKB,其中對腦網絡特征采用隨機子空間方法將特征分成 5 個子空間,而多視圖特征仍然保持為 3 個子空間;③ 基于對比算法 ② 中一樣的子空間,采用 MDO 算法進行集成學習分類,該方法記為 MDO;④ 對原始腦網絡特征或者是串聯的多視圖特征直接采用 SAE 進行二次特征學習,然后對所產生的新特征用 SVM 分類,該方法記為 SAE-SVM;⑤ 對子空間特征(腦網絡子空間或者是多視圖特征)分別采用 SAE 進行二次特征學習,然后再用 MKB 算法進行集成學習分類,該方法記為 SAE-MKB;⑥ 對子空間特征(腦網絡子空間或者是多視圖特征)分別采用 SAE 進行二次特征學習,然后再用 MDO 算法進行集成學習分類,該方法記為 SAE-MDO;⑦ 對原始腦網絡特征或者是串聯的多視圖特征直接采用 SDPN 進行二次學習,然后對所產生的新特征用 SVM 分類,該方法記為 SDPN-SVM。需要注意的是,由于兩類原始特征中均存在冗余特征,導致直接采用 SVM 進行分類的效果不佳,因此在對比實驗 ①、② 和 ③ 中,我們采用 t 檢驗對原始特征進行特征選擇處理,將組間比較 P < 0.05 的特征作為選擇后的特征。最終經過選擇以后得到的腦網絡特征維度為 110 維,而多視圖特征的灰質、白質和腦脊液 ROI 區域特征的維度分別為 11 維、5 維和 7 維,然后再進行 SVM、MKB 和 MDO 對比實驗。
為了避免隨機劃分訓練集和測試集引起的抽樣偏差問題,實驗采用 10 折交叉驗證(10-fold cross validation)。選擇分類精度、敏感度和特異性作為評價指標,并且畫出受試者工作特征(receiver operating characteristic curve,ROC)曲線,計算 ROC 曲線下面積(area under curve,AUC)。分類結果以 10 次驗證結果均值±標準差的形式給出。
2.3 實驗結果
表 2 是基于腦網絡特征的各種算法分類結果,圖 4 所示為 AUC 曲線結果。可以發現對 SDPN 學習以后的特征進行分類,包括 SDPN-SVM、SDPN-MKB 和 SDPN-MDO,其分類精度、敏感度和特異性都超過了 80%,而 SDPN-MDO 獲得了最優的分類性能,其分類精度、敏感度和特異性分別為 90.15%±6.72%、85.48%±11.69% 和 93.27%±7.89%;SVM-MKB 則獲得了次高的結果,其分類精度、敏感度和特異性分別為 89.53%±3.47%、85.48%±9.55% 和 92.18%±5.96%,以及 0.912 的 AUC 值。SDPN-MDO 和 SDPN-MKB 與對比算法 ①~⑥ 進行配對 t 檢驗,P 值均小于 0.05,即與未經過 SDPN 學習的特征和分類算法的分類結果相比,均有顯著提高。此外,雖然 SAE-SVM、SAE-MKB 和 SAE-MDO 算法比對應的對未經過深度學習的特征進行 SVM、MKB 和 MDO 分類的結果有所提高,但三種算法與基于 SDPN 的對應算法進行配對 t 檢驗,P 值均小于 0.05,說明三種算法與基于 SDPN 的對應算法相比,性能上仍有較大的差距。


表 3 是基于多視圖特征的各種算法分類結果,圖 5 所示為 AUC 曲線結果。與表 2 結果類似,基于 SDPN 特征的三種算法的分類精度、敏感度和特異性結果大多超過了 80%。SDPN-MDO 獲得了最高分類精度和敏感度,分別為 87.18% ± 5.91% 和 86.90% ± 14.25%,同時獲得了次高的特異性(87.09% ± 9.52%);而 SVM-MKB 則獲得了最高的特異性(87.27% ± 8.12%)和 AUC 值(0.864),以及次高的分類精度和敏感度,分別為 85.89% ± 4.23% 和 84.05% ± 10.53%。SDPN-MDO 和 SVM-MKB 的結果較未經過 SDPN 學習的 6 種對比算法的分類結果均有明顯提高(P<0.05)。而基于 SAE 的結果也與表 2 類似。


本文所提算法還與同樣在 PPMI 進行實驗的 Salvatore 等[4]和 Peng 等[7]的算法結果進行了對比,這兩種算法是目前針對基于 MRI 的 PD 分類效果較為顯著的算法。由表 4 可知,本文所提出算法的結果優于 Salvatore 和 Peng 的算法。特別是我們采用了與 Peng 等[7]同樣的數據集,SDPN-MDO 在腦網絡特征上所得到的分類精度和特異性相較于 Peng 的結果更高,表明了本文所提出算法的有效性。

本文提出的算法框架利用 SDPN 算法有效學習基于 MRI 的腦網絡特征和多視圖特征,二次學習之后的特征利用集成學習方法分類,通過以上對比實驗結果充分表明了本文所提出的基于 SDPN 集成學習框架的有效性。文獻[4]和文獻[7]中提取了高維度的特征,但只是簡單地通過 PCA 或者是特征選擇算法進行了降維,最終特征的表達能力并沒有提高。特別是文獻[4]的方法采用原始三維 MRI 圖像的所有體素特征作為原始特征,其特征維度非常高,即使采用 PCA 降維,其效果也是有限的。而特征表達是決定機器學習算法性能的關鍵因素,深度學習算法(包括本文所采用的 SDPN 算法)能獲得更高級的特征表達,有效提高特征的表達能力[18]。此外,本文的算法框架具有以下的特點和優點,從而使得輔助診斷的效果更為出色:① SDPN 是有監督的深度學習方法,與無監督的深度學習算法相比,SDPN 能夠充分利用標簽信息進行訓練并得到特征的高層深度表達;② SDPN 算法適合小樣本數據集,當訓練樣本數較少時,SDPN 構建的網絡具有較少的節點,能夠通過網絡獲取更緊致的特征表達;③ SDPN 在進行中間層學習的時候僅用到了部分節點,即中間層中的每個節點被限制為僅連接到少數其他節點,而不是前一層中的所有節點,因此可以防止過度擬合,同時也減少了計算復雜度;④ 對經過 SDPN 二次學習獲得的高維或者多視圖的特征,集成學習進一步提升了分類器的性能,從而獲得了很好的分類效果。
3 結論
本文提出一種基于 SDPN 的集成學習框架,通過 SDPN 增強特征表達能力,并分別結合兩種集成學習算法提升了分類性能。其主要創新點為:① 提出了一種基于 SDPN 的集成學習框架應用于 PD 診斷,能有效解決小樣本的高維特征問題;② 所提出的框架能靈活地應用于高維特征和多視圖特征等不同的特征類型數據的分類。實驗結果表明我們所提出的算法框架對高維度的腦網絡特征和低維度的多視圖特征均有很好的分類性能,具有應用于 PD 計算機輔助診斷的潛在可行性。