,
大腸癌是常見的消化道惡性腫瘤,包括結腸癌和直腸癌。近年來,隨著人們生活方式和生活環(huán)境的改變,大腸癌在我國的發(fā)病率和死亡率呈現(xiàn)快速上升的趨勢[1]。大腸癌屬本虛標實之證,既有臟腑氣血虧虛,又有氣滯、血瘀、痰凝、濕毒等標實的情況[2]。目前中醫(yī)證候診斷標準存在證名不統(tǒng)一、證型的診斷標準沒有考慮到疾病的影響,構成證的基本元素模糊不清,標準制定主要依據(jù)中醫(yī)理論、文獻及專家咨詢帶有很大主觀成分等諸多問題,而臨床上病例往往諸證夾雜,臨床醫(yī)師治療經(jīng)驗不同,很難統(tǒng)一“標準”,“標準”在臨床實踐上也難以應用實施[3]。因此,利用計算機技術對中醫(yī)藥信息進行規(guī)范化的研究十分必要。
隨著人工智能的發(fā)展,神經(jīng)網(wǎng)絡技術也不斷成熟。由于其分類能力強且具有智能性,人工神經(jīng)網(wǎng)絡在醫(yī)學診斷、預后、生存分析、臨床決策支持、模式識別等領域得到廣泛應用[4]。而BP(Back Propagation)算法是基于梯度下降的,自身的缺陷也不可避免。如網(wǎng)絡權值和閾值隨機設定,當解空間多個局部極小時容易陷入局部極小而無法跳出[5]。此外,網(wǎng)絡輸出自變量之間多數(shù)情況下并非獨立而存在冗余信息,會導致網(wǎng)絡訓練陷入過擬合狀態(tài)且延長建模時間。本文針對傳統(tǒng)BP算法用于分類建模時的缺陷,擬采用遺傳算法(Genetic Algorithm,GA)優(yōu)化后的GABP(Genetic Algorithm Back Propagation)模型構建大腸癌的虛實證型分類器,以期促進對大腸癌虛實證型分類的統(tǒng)一標準研究。通過對優(yōu)化后的神經(jīng)網(wǎng)絡進行前后對比分析,提升大腸癌分類器的有效識別能力,對制定大腸癌中醫(yī)臨床診斷標準具有指導意義。
本文所用數(shù)據(jù)共338例,其中150例來源于廣東省中醫(yī)院臨床病案,其余188例來源于中國知網(wǎng)全文數(shù)據(jù)庫、萬方數(shù)據(jù)知識服務平臺及維普全文數(shù)據(jù)庫文獻數(shù)據(jù)。納入標準為經(jīng)細胞學或病理學檢查診斷為結直腸癌或者已通過腸鏡報告檢查診斷為大腸癌及經(jīng)手術切除原發(fā)病灶的大腸癌患者,排除病理診斷不明確且具有多原發(fā)性腫瘤或既往有惡性腫瘤的患者。綜合上述納入、排除標準,最終篩選出符合條件的218例大腸癌患者數(shù)據(jù),其年齡分布于25~80歲,男性患者108例,女性患者110例。
1.2.1 癥狀量化
在專家指導下,綜合臨床與文獻兩部分數(shù)據(jù),選出與大腸癌患者密切相關的28項體征,包括大便膿血、脈沉、舌苔白、納呆等癥狀。為突出中醫(yī)術語的嚴謹規(guī)范性,按照《中醫(yī)癥狀鑒別診斷學》(第二版)[6]標準依據(jù),對癥狀的分類進行初步劃分,并將已經(jīng)規(guī)范好的大腸癌常見癥狀進行賦值量化,有該癥狀為1,無該癥狀為0。為防止量化過程中人工錄入產(chǎn)生錯亂,數(shù)據(jù)錄入采用雙邊獨立錄入并進行一致性檢驗。
1.2.2 證型量化
參照2008年中華中醫(yī)藥學會發(fā)布的《中醫(yī)診療指南》中提出的診斷、辨證標準,同時參照1992年全國大腸中醫(yī)科研協(xié)作會議制定的證型劃分標準和2004年楊金坤主編的《現(xiàn)代中醫(yī)腫瘤學》[7],結合本文所收集的實際病例情況,在多位專家進行判定之后,決定將本文篩選出的218例大腸癌患者歸為脾失健運、脾虛夾瘀、濕熱內(nèi)蘊、氣滯血瘀、瘀毒內(nèi)阻、氣血虧虛、脾腎陽虛、肝脾不調(diào)8種證型??紤]到分屬于這8種證型的樣本數(shù)據(jù)量較小,可能會對后續(xù)建模的分類效果有一定影響,因而將這8種證型進一步分為虛證與實證兩種類型,且將虛證賦為1,實證賦為2,同樣在賦值后對錄入的數(shù)據(jù)進行一致性檢驗。
人工神經(jīng)網(wǎng)絡是由大量的功能和形式比較簡單的神經(jīng)元互相連接而構成的復雜網(wǎng)絡系統(tǒng),網(wǎng)絡可以看作是從輸入到輸出的一個非線性映射[8]。BP神經(jīng)網(wǎng)絡具有的非線性映射能力能夠保證其成功實現(xiàn)各種簡單或復雜分類,它將信息分布式存儲于連結權系數(shù)中,使網(wǎng)絡具有較高的容錯性和魯棒性[9]。遺傳算法是模擬自然界優(yōu)勝劣汰生物進化過程的全局優(yōu)化搜索算法,采用群體進化的方式對目標函數(shù)空間進行并行式搜索,根據(jù)個體適應度大小選擇個體,保留競爭力強的基因,是一種搜索效率高、魯棒性強的優(yōu)化方法[10]。遺傳算法廣泛應用在機器學習、自適應控制、組合優(yōu)化等領域,并取得了很好的效果[11]。本文結合遺傳算法與BP神經(jīng)網(wǎng)絡的特點,首先利用遺傳算法對自變量進行優(yōu)化篩選,利用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡的權值和閾值提高篩選效率,最終通過優(yōu)化BP神經(jīng)網(wǎng)絡的結構和系數(shù)構建大腸癌虛實證型分類器,探討大腸癌證型分類的有效方法。
利用遺傳算法選擇特征維必須經(jīng)過輸入變量編碼、初始種群產(chǎn)生、適應度計算、交叉變異選擇、優(yōu)化輸出等過程[12]。由于BP算法本質(zhì)上為梯度下降法,所要優(yōu)化的目標函數(shù)非常復雜,容易出現(xiàn)局部最優(yōu)、收斂速度慢等問題,而遺傳算法是多點搜索,能夠避免局部最優(yōu)。此外,利用遺傳算法取代一些其他的優(yōu)化算法,是因為遺傳算法的尋優(yōu)能力可以獲取最佳權重。利用遺傳算法進行自變量降維與網(wǎng)絡初始權值與閾值的優(yōu)化步驟如下。
本文在利用遺傳算法進行自變量篩選的過程中,染色體編碼采用二進制法,即將個體編碼為一個二進制串。根據(jù)研究中的28項體征,此處染色體編碼長度為28,染色體的每一位對應一個輸入特征維,若染色體某一位值為1,說明該位置上相對應的輸入自變量參與建模,若為0則不參與。而在利用遺傳算法進行BP網(wǎng)絡權值和閾值的優(yōu)化過程中,我們對初始種群采取實數(shù)編碼,每個個體由一組實數(shù)串組成。當BP網(wǎng)絡結構確定時,個體編碼長度也隨權值和閾值個數(shù)確定。本文將種群大小初始化為20,最大進化代數(shù)設置為100,遺傳算法以這20個個體作為初始點進行迭代。
BP神經(jīng)網(wǎng)絡的誤差絕對值越小越好,而在遺傳算法中,適應度值越大越好[13],因此采用以BP神經(jīng)網(wǎng)絡目標函數(shù)的倒數(shù)作為適應度函數(shù)。本文選取測試集數(shù)據(jù)誤差平方和的倒數(shù)作為適應度函數(shù),以便使遺傳算法朝向適應度函數(shù)增大的方向進化。
選擇交叉變異是遺傳算法的核心。本文選擇操作采用輪盤賭法,首先產(chǎn)生0與1之間的隨機數(shù)確定種群中個體被選中次數(shù),然后根據(jù)上述適應度函數(shù)計算,選擇適應度大的進入下一代種群。對于交叉操作,降維過程選擇單點交叉算子,變異點位置是隨機產(chǎn)生的,且該位置上的基因值由0變成1或1變?yōu)?。在權值和閾值優(yōu)化過程中,交叉操作采用交叉算子,利用一對個體根據(jù)給定的概率重組產(chǎn)生新的種群后代。
按照遺傳算法進行層層迭代之后,當?shù)螖?shù)達到最大進化代數(shù)時,進化終止,最終輸出的此種群中適應度最好的個體對應輸入變量的基因編號為1、4、5、9、13、14、18、20、22、27,分別對應于大腸癌的腹瀉、里急后重、大便秘結、脈沉、脈細、脈滑、舌紫、舌胖、舌苔白、納差等10項體征,篩選出來參與建模的自變量不到原來總輸入的一半,即收集統(tǒng)計的28項體征輸入自變量之間并非獨立,存在冗余信息,經(jīng)遺傳算法降維是非常必要的。遺傳算法優(yōu)化降維的過程如圖1所示。由圖1可知,最優(yōu)個體是在種群進化到第35代后得到的。由于遺傳算法存在一些隨機因素,故種群的平均適應度函數(shù)均值在穩(wěn)定中出現(xiàn)微小波動。
圖1 種群適應度函數(shù)進化曲線
BP神經(jīng)網(wǎng)絡對網(wǎng)絡初始權值和閾值的依賴性比較強,以往大多隨機選取易陷入局部最優(yōu)。遺傳算法是一種全局優(yōu)化的自適應概率搜索算法,可以得到全局最優(yōu)[14]。本文利用遺傳算法對神經(jīng)網(wǎng)絡的初始權值和閾值進行優(yōu)化尋優(yōu),基本流程如圖2所示。
BP神經(jīng)網(wǎng)絡是信號沿著前項傳播,誤差沿著反方向傳播,不斷調(diào)整權值與閾值使網(wǎng)絡趨于收斂構建的過程。由于由輸入層、隱藏層、輸出層構成的3層BP神經(jīng)網(wǎng)絡可以逼近任意函數(shù),故本文選取BP的3層拓撲結構進行大腸癌虛實分類器的構建。輸入層由經(jīng)遺傳算法降維優(yōu)化的10項體征設定,輸出層由虛實兩種證型作為輸出。由于BP神經(jīng)網(wǎng)絡隱藏層節(jié)點通常由經(jīng)驗公式及誤差對比調(diào)整得出,本文考慮到樣本量偏少,為充分利用數(shù)據(jù)集,利用MATLAB(matrix&laboratory)中的crossvalind函數(shù)采用五折交叉驗證確定GABP神經(jīng)網(wǎng)絡建模過程中的最佳隱含層神經(jīng)元個數(shù),程序根據(jù)數(shù)據(jù)集實際情況設定最佳神經(jīng)元個數(shù)在10-28之間循環(huán)尋找。結果顯示當隱含層神經(jīng)元個數(shù)為15時,網(wǎng)絡的分類效果最好,故GABP神經(jīng)網(wǎng)絡模型的隱層個數(shù)確定為15個。因此本文中BP神經(jīng)網(wǎng)絡的基本模型確定為10-15-2,且隱含層和輸出層的傳遞函數(shù)都取s函數(shù)。
圖2遺傳算法優(yōu)化神經(jīng)網(wǎng)絡流程
在進行網(wǎng)絡訓練之前,將虛實證型分別標記為“1”“2”。由于經(jīng)BP神經(jīng)網(wǎng)絡輸出的為非二值結果,即網(wǎng)絡的期望輸出只能取1或2作為已標記的大腸癌虛實證型分類,故在程序中進行四舍五入的設定,即當網(wǎng)絡預測輸出值介于0.5~1.5之間時視為虛證,若該值介于1.5~2.5之間時則視為實證,統(tǒng)計預測結果并輸出正判率。
將經(jīng)遺傳算法優(yōu)化計算后篩選的輸入自變量對應的數(shù)據(jù)提取出來建立新的BP神經(jīng)網(wǎng)絡。為了使訓練的網(wǎng)絡不失一般性,隨機選取165例數(shù)據(jù)作為訓練集,剩余的53例作為測試集,設定最大迭代次數(shù)為1000,允許誤差界值設為0.001。當2次迭代結果的誤差小于該值時,系統(tǒng)結束迭代計算,輸出結果,并統(tǒng)計正判率。三次仿真結果的虛實兩證型的正判率及建模時間如表1所示。
表1 傳統(tǒng)BP與GABP的3次仿真分類結果
經(jīng)傳統(tǒng)BP神經(jīng)網(wǎng)絡模型和遺傳算法優(yōu)化改進的BP神經(jīng)網(wǎng)絡模型(GABP)實現(xiàn)的的大腸癌虛實證型分類器結果平均值見表2。兩種模型樣本總量均為218例,其中訓練樣本選取總樣本的75%(本文中選取165例),測試樣本占總樣本的25%(本研究中選取53例)。從表2可以看出,經(jīng)遺傳算法優(yōu)化改進后的BP神經(jīng)網(wǎng)絡分類效果明顯優(yōu)于傳統(tǒng)BP神經(jīng)網(wǎng)絡,這是因為經(jīng)遺傳算法優(yōu)化改進后,不僅克服了傳統(tǒng)BP網(wǎng)絡存在的缺陷,而且利用遺傳降維有效提取了輸入維度的信息,從而實現(xiàn)了高效的分類。此外,在利用兩種模型構建分類器時,實證正判率明顯低于虛證正判率,這是因為在218例總樣本中,虛證有143例,而實證僅有75例,且在測試構建好的網(wǎng)絡模型時,隨機選取的測試集虛實證型的不均勻分布也會影響分類的最終效果。如果可以克服樣本證型數(shù)量分布不平衡,實驗分類效果可能更佳。
表2 分類模型結果對比
實驗結果表明,BP神經(jīng)網(wǎng)絡分類器可在一定程度上克服中醫(yī)癥狀與證型之間的不確定性與模糊性,能獲得較高的分類正判率。引入遺傳算法后對證型分類的效果有進一步的提高,說明人工神經(jīng)網(wǎng)絡與遺傳算法相結合能有效將大腸癌表面體征與內(nèi)在證候特征有機結合起來對大腸癌證型進行預測分類,具有較強的研究價值與應用意義,對大腸癌中醫(yī)的臨床診斷有一定的借鑒意義。不足之處在于,本文是通過遺傳算法將自變量降維和優(yōu)化BP神經(jīng)網(wǎng)絡的初始權值和閾值來提高網(wǎng)絡性能的,也可利用遺傳算法過程中不同編碼方式達到優(yōu)化效果。此外,為驗證經(jīng)遺傳算法優(yōu)化改進后的BP神經(jīng)網(wǎng)絡的分類效果,我們也構建了LVQ(Learning Vector Quantization)神經(jīng)網(wǎng)絡用來進行對比。利用LVQ神經(jīng)網(wǎng)絡無需對數(shù)據(jù)進行歸一化,而只需通過計算輸入向量與隱含層神經(jīng)元間的距離,便可完成模式識別構建大腸癌分類器。實驗結果顯示,LVQ神經(jīng)網(wǎng)絡得到的虛證正判率達到81.5118%,實證正判率達到67.4537%,略優(yōu)于傳統(tǒng)BP的分類效果,但依舊低于經(jīng)遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡分類效果。對比實驗很好地表明了雖然LVQ神經(jīng)網(wǎng)絡也是一種很好的分類算法,但GABP模型用于大腸癌虛實證型的分類擁有更高的分析速度與準確度。