當前位置:文思屋>學習教育>畢業論文>

基於人工神經網路的肺癌診斷研究

文思屋 人氣:2.35W
基於人工神經網路的肺癌診斷研究
提 要 目的:利用人工神經網路模型BP演算法的多層前饋網路模型原理,建立用於肺癌診斷的神經網路模型。方法:利用人工神經網路的函式逼近功能模型,建立輸入到輸出的函式對映關係。結果:該模型可較好地反映系統的動態性和資料的時序關聯性。對肺癌診斷資料的應用結果顯示肺癌病人的正確檢出率為96.2%,誤診率為3.8%;非肺癌病人的正確檢出率為88%,誤診率為12%。結論:基於人工神經網路的肺癌診斷方法具有較高的準確性。

  肺癌的診斷問題各國醫學界已作了一些研究,並取得了某些實際的成果。但是,由於肺癌的多種型別以及多種相關因素,使得現有的診斷在準確性和實用性方面都存在著相當的侷限性,如建模複雜困難。由於對影響罹病與否的各種因子的作用機制瞭解得不是很清楚,如何建立診斷模型,以及如何確定新建立的模型在何種程度上與實際情況相吻合還是一個問題;容錯能力不強,適用範圍不廣;依賴於某個病例庫新建立起來的醫學模型往往具有很強的侷限性,用於新的病例庫時誤差有時較大。另外,由於醫學方面的原因,我們收集到的資料有時不完整,而現有的研究方法所建立起的醫學模型由於容錯性差,對這些不完整的資料通常都難以處理。以非線性大規模並行分佈處理為特點的人工神經網路理論突破了傳統的線性處理模式,以其高度的並行性,良好的容錯性和自適應能力成為人們研究其賴以生存的非線性世界,探索和研究某些複雜大系統的有力工具。

原理與方法

  神經網路是一個具有高度非線性的超大規模連續時間動力系統。是由大量的處理單元(神經元)廣泛互連而形成的網路。它是在現代神經科學研究成果的基礎上提出的,反映了腦功能的基本特徵。但它並不是人腦的真實描寫,而只是它的某種抽象、簡化與模擬。網路的資訊處理由神經元之間的相互作用來實現;知識與資訊的儲存表現為網路元件互連間分散式的物理聯絡;網路的學習和計算決定於各神經元連線權系的動態演化過程。因此神經元構成了網路的基本運算單元。每個神經元具有自己的閾值。每個神經元的輸入訊號是所有與其相連的神經元的輸出訊號和加權後的和。而輸出訊號是其淨輸入訊號的非線性函式。如果輸入訊號的加權集合高於其閾值,該神經元便被啟用而輸出相應的值。在人工神經網路中所儲存的是單元之間連線的加權值陣列。
  神經網路的工作過程主要由兩個階段組成,一個階段是工作期,此時各連線權值固定,計算單元的狀態變化,以求達到穩定狀態。另一階段是學習期(自適應期,或設計期),此時各計算單元狀態不變,各連線權值可修改(通過學習樣本或其他方法),前一階段較快,各單元的狀態亦稱短期記憶(STM),後一階段慢的多,權及連線方式亦稱長期記憶(LTM)〔1〕。
  根據網路的拓撲結構和學習規則可將人工神經網路分為多種型別,如不含反饋的前向神經網路、層內有相互結合的前向網路、反饋網路、相互結合型網路等〔2〕。本文的人工神經網路模型是採用BP演算法的多層前饋網路。

  該模型的特點是訊號由輸入層單向傳遞到輸出層,同一層神經元之間互不傳遞資訊,每個神經元與鄰近層所有神經元相連,連線權用Wij表示。各神經元的作用函式為Sigmoid函式,設神經網路輸入層的p個節點,輸出層有q個節點,k-1層的任意節點用l表示,k層的任意節點用j表示,k+1層的任意節點用l表示。Wij為k-1層的第i個神經元與k層的第j個神經元相連線的權值。k-1層的節點i輸出為O(k-1)i,k層節點j的輸出為:

k層節點j的`輸出為:

Okj=f(netkj)

  設訓練樣本為(X,Ye),X為p維向量,加到輸入層;Ye為q維向量,對應於期望輸出;網路的實際輸出Y也是q維向量。網路在接受樣本對的訓練過程中,採用BP演算法,其權值調整量為:

ΔWij=-ηδkjO(k-1)i

其中,對於輸出層為:

δkj=yj(1-yj)(yej-yj)

對於非輸出層為:

η為訓練步長,取0<η<1。
  用樣本集合反覆訓練網路,並不斷修改權值,直到使實際輸出向量達到要求,訓練過程結束〔3〕。
  上述人工神經網路可以完成多種資訊處理任務,如從二進位制資料中提取相關知識,完成最近鄰模式分類,實現資料聚集等。而本文要用的是其極強的數學逼近對映能力,即開發合適的函式f:ARn→BRn,以自組織的方式響應以下的樣本集合:(x1,y1),(x2,y2)…,(xm,ym),其中yi=f(xi)。這裡描述的是一般的數學抽象,像識別與分類這些計算都可以抽象為這樣的一種近似數學對映。
  所謂診斷,實質上是一個分類問題。即根據候診者的症狀,醫學檢查結果(如體溫、心跳等)等一些情況,它們可以用一向量(e1,e2,…,em)來表示,將其歸類為病人或非病人。這也可以轉化為尋找一差別函式f使得:
  (1)f(e1,e2,…,em)>ε, (e1,e2,…,em)∈T
  (2)f(e1,e2,…,em)>ε, (e1,e2,…,em)T
  其中集合T表示患病。
  因此,病情診斷最終也可作為一類函式的逼近問題。
  而許多研究已表明,前向神經網路可作為非線性逼近的標準型。對於實數空間的任一函式,只要它滿足一定的條件,一定存在唯一的具有單一隱層的前向網路作為它的最優最佳逼近。而含有兩個隱含層的前向網路可在任意的平方誤差內逼近某一實函式〔3〕。

診斷步驟

  肺癌病例資料選自1981~1994年在某醫院住院的病人,共計551例。其中486例(88%)經病理學、細胞學診斷證實為肺癌。每一病例都包括多項資料,其中用於診斷的資料項有:病人的一般情況(如年齡、性別等),家族史、既往史、吸菸史、術後病理、X射線檢查、CT檢查、纖維支氣管鏡檢查、PAT痰檢等多達58項。因此,原則上 58項資料應作為神經網路的輸入項,而神經網路的輸出值就是病人是否患肺癌的結果。
  1.網路訓練集的確定:在最原始的551例病人資料中存在著各種各樣的差別,如性別差異(419例男性,132例女性),診斷結果的差異(486例經證實為肺癌),所患肺癌種類的差異(鱗癌、小細胞癌、大細胞癌等),患病程度上的差異(早、中晚期的不同)等等。顯然,訓練資料集應最大限度地保證兼顧各種病例情況。經過仔細篩選,選擇了含有460個病例的集合作為肺癌診斷用的網路的訓練集。
  2.神經網路輸入和輸出資料的預處理
  按照人工神經網路的理論,神經網路的輸入輸出資料都應該屬於(0,1)區間的實數,為此我們需對原始資料進行如下的規一化處理:

其中xi為原始資料項,而Max=max{xi∶xi∈X},Min=min{xi∶xi∈X}。這裡X為原始資料集。經過(7)式變換後,yi將在(0,1)區間。因此,可作為神經網路的輸入輸出。
  3.應用神經網路進行肺癌診斷
  將描述病人各種情況的資料作為前向網路的輸入資料加到其輸入端,並按(1)~(6)式計算各神經元的輸入和輸出,同時調整神經元之間的連線權值以使網路的輸出和實際的病例情況相符。即當病人確實患肺癌時網路的輸出結果也恰好指示為肺癌,反之亦然。如果對所有的訓練樣本集網路的輸出基本上(95%或更高)能保證與實際結果一致,則訓練過程結束。我們認為神經網路已建立起病人的各種因素與他是否是肺癌患者之間的函式對映關係。對於一個新的候診病人來說,只要將他的情況輸入到訓練好的神經網路中去,根據網路的輸出結果就可以知道他是否已患肺癌。

表1 基於不同發病因素的診斷網路模型 
類  型  訓練集精度  測試集精度  
基於遺傳因素的診斷網  53.8%  46.3%  
基於個人生活習慣的診斷網  57.1%  44.9%  
基於病症的診斷網  89.4%  83.3%  
基於醫學檢查結果的診斷網  98.5%  92.6% 

    上述結果表明不同型別的因素應分開來考慮。於是我們將58項輸入資料分成四類,這四類有各自的BP診斷網,依次稱為診斷一、診斷二、診斷三、診斷四。它們先單獨測定,然後再將它們各自的結果綜合起來得出最後的判斷。
  上述四種診斷網路所得結果的可靠性各不相同。其中,根據醫學檢查結果所作的診斷準確性最高,因此在最後的綜合分析中要重點考慮它的診斷結果,我們給它設一個相對最高的權值。其次,根據病人的症狀所作的診斷往往也具有較高的準確性,因此給它的權值也較高,但比醫學檢查結果的稍低。其他兩類因素在有關肺癌的診斷中僅具參考作用,因而所設的權值相對較小。
  最後的結果O為:
O=a1.O1+a2.O2+a3.O3+a4.O4
a1+a2+a3+a4=1 

  其中Oi,ai,i=1,2,3,4分別為各診斷網的輸出及其對應的權值。
  當O>0.5時最後的診斷結果為患肺癌,反之則正常。對所有的病例資料經上述方法的診斷結果見表2。
表2 神經網路對肺癌診斷結果分析 


神經網路
診斷結果  訓練資料  測試資料  
肺癌患者  非肺癌患者  肺癌患者  非肺癌患者  
+  460  2  25  3  
-  0  38  1  22 


    其中對於訓練集,肺癌病人的正確檢出率為100%,非肺癌病人誤診率為5%。對於測試集,肺癌病人的正確檢出率為96.2%;非肺癌患者正確檢出率為88%,誤診率為12%。
討 論

  1.本研究所採用的人工神經網路的肺癌診斷方法的結果較好地符合了已知資料,具有較高的準確性,特別是對於肺癌患者一般都能準確地做出診斷,有利於肺癌的早期發現和治療。
  2.要想進一步提高該方法的準確性,應該注意收集更多更全面的病例資料。人工神經網路主要是利用它能自動從資料集中抽取函式的關係的功能。如果我們所使用的資料越多越全面,則其中所蘊含的事物本身的規律性就越強,利用人工神經網路從中所抽取的函式關係就越具有普遍性,因而就更準確。
  3.實現對肺癌的診斷的關鍵在於準確找到罹患肺癌的判定函式,可利用前向網路的函式逼近功能來實現。但是這裡涉及到兩個問題。首先,由於差別函式和預測率函式都是利用人工神經網路從已知的病例資料集中抽取出來的,它實際反映的是這些資料集中輸入輸出對的對映關係。因此要想保證診斷具有較高的準確性,就應該使用來建立函式關係的這些資料集(稱訓練集)具有充分的代表性,即這些資料應基本蘊含肺癌診斷的醫學原理。這就涉及到如何選擇網絡合理的訓練集及關鍵的輸入項。另一個問題涉及到神經網路本身的要求,即網路的輸入輸出資料值都應在區間(0,1)中。這可以通過資料的編碼和歸一化來實現。
  4.由於某些原因有些病人的病例資料不完整,約佔總病例資料的10%左右。顯然,如果按照傳統的方法來建立肺癌病人的診斷模型〔4〕,這些有缺項的資料是不太好處理的,但是由於人工神經網路有較強的容錯性,輸入資料在某些項上的錯誤對網路最終結果的正確性影響不大。

參考文獻

  1.焦李成.神經網路系統理論.第1版.西安:西安電子科技大學出版社,1995,3
   Zhenni,Tham Ming T,Morris ilayer Feedforward Neural Networks:A Canonical form Approximation of Nonlinearity,Int rol,1992,56(3):655~672.
  3.莊鎮泉,等.神經網路與神經計算機.北京:科學出版社,1992.
  4.郭海強,等.肺癌診斷模型的研究.中國衛生統計,1997,14(5):11
 

作者:不詳