方麗英,陳培煜,王 普,李 爽,楊建棟,萬 敏
(北京工業大學電子信息與控制工程學院,北京 100124)
從非小細胞肺癌隨訪數據中挖掘各項檢查指標與腫瘤進展情況之間的關系并建立相應的模型,對醫生在患者治療過程中進行決策具有重要作用。患者的各項指標與腫瘤進展情況存在一個模糊的關系,中醫通過醫生自身積累的經驗進行判別,而本文使用基于粒子群參數尋優的支持向量機建立指標與腫瘤進展之間的關系模型,并對新檢查的各項指標進行腫瘤進展分類預測。本文研究的數據為非小細胞肺癌患者的治療與隨訪數據,數據內容包括臨床癥狀、中醫證候、理化檢查、影像檢查等數據。數據主要包含數值型、分類型和序號型數據。
最近幾年,支持向量機(Support Vector Machine,SVM)在分類預測中應用越來越廣泛,其中涉及圖像壓縮[1]、飛行控制預測[2]、交通流預測[3]、巖爆分類[4]等。它采用結構風險最小化原則,泛化能力較強,能有效解決小樣本、非線性等分類和回歸問題,并可以找到全局最優解,克服了神經網絡陷入局部最優解的難題。然而支持向量機的中訓練參數的選擇對其分類性能有較大的影響,因此如何確定模型參數對建模研究具有很深的意義。遺傳算法和粒子群優化(Particle Swarm Optimization,PSO)算法被廣泛應用于各種優化問題,與遺傳算法相比,粒子群算法在大部分領域中已經被證明擁有更高的效率[5]。在基本粒子群優化算法的基礎上,很多改進的算法也得到了廣泛的應用。文獻[6]使用量子行為粒子群優化算法在搜索空間中得到了最優解;文獻[7]運用混沌粒子群優化算法動態的更改粒子群模型以取得最優的參數。針對模型參數優化問題,本文提出一種改進的粒子群算法優化支持向量機的訓練參數,使分類模型可以獲得最優的訓練參數,從而提高分類準確率。
PSO算法由文獻[8]提出,是一種全局優化進化算法,它源于對簡化社會模型的模擬。PSO算法屬于進化算法的一種,類似于遺傳算法,它也是從隨機解出發,通過迭代尋找最優解,并通過適應度來評價解的品質,但比遺傳算法規則更為簡單,它沒有遺傳算法的交叉(Crossover)和變異(Mutation)操作,而是通過追隨當前搜索到的最優值來尋找全局最優。PSO算法作為一種并行優化算法,可以用于解決大量非線性、不可微和多峰值的復雜問題優化,并已被廣泛用于科學和工程領域,如函數優化、神經網絡訓練、模式分類和模糊系統控制等領域。
在PSO算法中,用粒子的位置表示待優化問題的解,每個粒子的性能指標由目標函數的適應度值來確定。PSO算法首先初始化一組粒子,包括粒子的位置和速度,然后通過迭代尋找最優解,在每次迭代過程中通過個體極值和全局極值來更新每個粒子的位置和速度。在D維的搜索空間中,由m個粒子組成粒子種群,其中,第i個粒子的速度為v(t),位置為x(t),該粒子當前搜索到的最優位置為p(t),該種群當前的最優位置為g(t),PSO算法的公式如下:

其中,w為慣性權重常量,w值較大可使算法具有較強的全局搜索能力,w值較小則算法傾向于局部搜索,一般可以初始化w為0.9,但隨迭代次數增加時減小w為0.4,這樣在全局搜索的同時可以使算法快速收斂于某一區域;c1和c2為2個學習因子分別為局部權重和社會權重,一般取值為2;r1和r2為(0,1)范圍內的隨機常量。
由于基本粒子群優化算法會有陷入局部最優解的情況[9],因此每次優化的結果與初始化種群有關。分析PSO模型,可以發現粒子位置有粒子自身最優解和種群最優解決定,即使用了兩級的粒子隸屬,從模型的角度看,如果在粒子和種群之間再增加一層子種群則可以使優化結果無限逼近于最優解,因此,本文提出一種改進的三層粒子群優化算法(three layer Particle Swarm Optimization,tlPSO),計算式如下:

其中,k(t)為當前在所屬的子種群中的最優解。
tlPSO算法的具體步驟如下:
(1)隨機初始化種群的位置和速度。每個粒子的p(0)為當前位置,并計算出當前適應度值,而子種群極值則為群中所有個體極值中最高的,記錄當前k(0)為當前最好位置,全局極值為所有個體極值中最高的,并將g(0)設置為該最好粒子的當前位置。
(2)計算每個粒子的適應度值。
(3)對每個粒子,將其適應值與個體極值作比較,如果較優,則更新當前的個體極值。
(4)對每個粒子,將其適應值與子種群極值進行比較,如果較優,則更新當前子種群極值。
(5)對每個粒子,將其適應值與全局極值進行比較,如果較優,則更新當前全局極值。(6)根據式(1)、式(2),更新每個粒子的位置和飛行速度。(7)如果沒有達到預定最大的迭代次數,則返回步驟(2),如達到則停止計算。
支持向量機由文獻[10]提出,可用于模式分類和非線性回歸。設定訓練樣本集T={xi,yi},i=1,2,…,n。其中,n為樣本數目;xi為輸入變量;yi為相應的目標值。SVM的基本思想是利用非線性函數φ將輸入空間數據x映射到高維特征空間,并在該空間利用函數f(x)=w·x+b進行線性回歸,用該超平面作為決策曲面,使得正例與反例之間的隔離邊緣最大化。引入松弛變量ε和懲罰參數C,則目標函數為:

其對偶問題為:

其中,e是全1矩陣;K(xi,xj)=φ(xi)Tφ(xj)為核函數,它的引入使得高維空間中的內積運算可以通過輸入空間中的函數來實現,從而避免了維度災難現象。但是對于如何在特定情況下選擇合適的核函數,一直是困擾研究者的一個難題。針對此問題,很多實驗和研究表明[11-12],在缺少過程先驗知識的情況下,選擇徑向基函數RBF比其他核函數預測性能更好。慣性因子C和RBF核參數g會影響分類結果的準確性,因此,本文利用PSO算法對SVM分類模型的參數進行優化。
利用訓練樣本集建立SVM模型,描述為yi=f(x0,x1,…,xn),其中,xi為多維輸入矢量,即各個檢查指標的值;yi為分類輸出,即患者腫瘤是否進展情況。
支持向量機模型中的懲罰因子C和RBF中的核參數g對模型的分類預測具有較大的影響,為獲取最優的SVM分類模型,需要對模型中的C和g進行參數尋優。PSO算法具有較好的全局搜索能力,并且優化模型簡潔需要調整的參數較少。因此,本文選用tlPSO進行模型參數的優化。具體步驟如下:(1)隨機初始化種群的位置和速度。參考tlPSO算法的步驟(1)。(2)把樣本分為訓練樣本和測試樣本,以每個粒子的位置作為SVM參數建立分類模型,計算測試樣本的準備率并以準群率作為每個粒子的適應度值。(3)使用tlPSO參數優化算法,得到分類模型的最優參數C和g。(4)利用建立的模型進行分類預測。tlPSO算法流程見圖1。

圖1 tlPSO算法流程
本文使用中晚期非小細胞肺癌患者的治療和隨訪數據作為實驗數據,根據數據特征選擇理化檢查、臨床癥狀、FACT評分值[13]作為模型的輸入,腫瘤進展情況作為模型的輸出。
理化檢查是指通過某些儀器設施對指標的含量等的檢測。具體包括血常規、血生化和腫瘤標志物三大項,分別檢測每項的各項指標并進行臨床意義的判定(1表示正常,2表示異常但無臨床意義;3表示異常且有臨場意義;4表示未查)。
臨床癥狀是指中醫中的通過望、聞、問、切四診方式而獲取的信息,包括咳嗽、咯痰、胸悶、舌脈象等指標,每個指標情況用無(0)、輕(1)、中(2)和重(3)進行描述。
FACT評分表是專門針對肺癌病人開發的生命質量量表,綜合考慮了患者身體功能、心理、情感以及家庭等多方面因素,通過患者自行打分,以總評分(FACT評分)作為患者當前生命質量的反映,能較全面地評價肺癌病人的生命質量。
本文使用的數據共包含1196個樣本,每位患者有31個條件屬性:10個理化檢查指標,20個臨床癥狀指標和FACT評分值。
對分類算法的性能評價主要以敏感性指標(Sensitivity)、特異性指標(Specificity)和正確率(ACC)這3個指標為衡量標準。在計算這些指標之前先介紹圖2中的混淆矩陣,其中,TP表示真陽性的樣本數,例如醫生診斷結果和模型診斷結果都是腫瘤進展的樣本數;FN是假陰性,即模型診斷是腫瘤進展但醫生診斷確無進展的樣本數;TN是真陽性,即模型診斷結果是無進展而且醫生診斷也無進展的樣本數;FP是假陽性,即模型診斷是無進展但醫生診斷有進展的病例數。

圖2 腫瘤進展混淆矩陣
根據混淆矩陣,敏感性、特異性和正確率定義如下:

對1196例數據隨機分成訓練樣本和測試樣本,然后算出這3個指標,但是這樣的隨機分發會造成偏差,缺少一般性,使得對算法的性能不能充分評價。而十折交叉檢驗(10-flod CVs)可以避免此問題。把數據隨機分成10組,以第1組為測試樣本,其余9組為訓練樣本,同時算下敏感性、特異性和正確率3個指標。以此類推,計算另外9組數值,求出平均值,得到模型的敏感性、特異性和正確率。
由于實驗數據中存在大量缺失數據和冗余數據,因此使用文獻[14]方法,對實驗數據進行缺失值處理和特征選擇。利用SVM作為分類模型,同時使用4種不同的參數尋優的方法做比較。表1中4類分類模型的參數尋優分別使用經驗參數尋優、基于GA的參數尋優、基于PSO的參數尋優、基于QPSO(量子粒子群優化算法)[6]的參數尋優和本文提出的tlPSO參數尋優,比較各個參數尋優的方法在分類器敏感性、特異性、正確率和時間效率上的差別。實驗中PSO、QPSO和tlPSO每個種群都使用60個粒子,最大迭代次數為1000,PSO算法參數c1=c2=2,w=0.7,QPSO算法參數β根據迭代次數的增加從1減少到0.5,tlPSO算法參數c1=c2=c3=1.49,w根據迭代次數的增加從0.9變化到0.4,GA算法的初始種群表為50,最大迭代次數為1000。表中從上往下依次為分類模型、參數尋優后模型的懲罰因子C和核參數g、敏感性、特異性、正確率和時間。

表1 5種模型的性能比較
由表1可以得出以下結論:(1)在敏感性、特異性和分類準確率方面,tlPSO-SVM準確率最高,GA-SVM的敏感性和分類準確率其次,PSO-SVM和QPSO-SVM具有較高的特異性,未經過參數優化的SVM分類性能最低。(2)在參數優化方面,經過參數優化的支持向量機具有更好的分類效果。(3)在效率方面,自定義參數的SVM模型由于沒有經過參數優化效率最高,tlPSO-SVM模型相對于PSO-SVM模型增加了一層屬性在進化計算的時候增加了復雜度,因此,效率有所降低。(4)GA-SVM和PSO-SVM在準確率上相比要高一點,但是由于GA算法的計算相對復雜,因此效率比PSO算法低。(5)QPSO-SVM相對于PSO-SVM和tlPSOSVM在準確率上有所減少,但算法效率有所提高。綜上所述,tlPSO可以提高分類模型的性能,但同時也降低了算法效率。而在離線模式下,該算法則具有較好的效果。
本文對基本粒子群優化算法進行改進,提出tlPSO算法,將分類模型由基本的兩層模型增加到三層模型,并對模型進行參數優化。通過對非小細胞肺癌數據的研究,結合tlPSO算法,建立腫瘤進展的分類模型,在此基礎上對患者的腫瘤進展情況進行分類預測,由實驗可知該算法可以建立較優的分類模型。由于tlPSO-SVM模型較PSO-SVM模型增加了一層隸屬層,增加了算法時間復雜度。因此在在線模式下,算法運行時間較長,不具有很好的適用性,而在離線模式下,對算法效率無特別要求且具有較好的分類性能。下一步將改進tlPSO算法,提高算法效率,使分類模型具有更廣闊的應用空間。
[1]Li Bin,Zheng Daning,Sun Lifeng.Exploiting Multi-scale Support Vector Regression for Image Compression[J].Neurocomputing,2007,70(16/18):3068-3074.
[2]Shin J,Kim H J,Park S.Predictive Flight Control Using Adaptive Support Vector Regression[J].Neurocomputing,2010,73(4/6):1031-1037.
[3]Hong W C.Traffic Flow Forecasting by Seasonal SVR with Chaotic Simulated Annealing Algorithm[J].Neurocomputing,2011,74(12/13):2096-2107.
[4]馮夏庭,趙洪波.巖爆預測的支持向量機[J].東北大學學報:自然科學版,2002,23(1):57-59.
[5]Hassan R,Cohanim B,de Weck O.A Comparison of Particle Swarm Optimization and the Genetic Algorithm[C]//Proc.of the 1st AIAA Multidisciplinary Design Optimization Specialist Conference.Austin,USA:AIAA Press,2005:18-21.
[6]Sun Jun,Xu Wenbo,Feng Bin.A Global Search Strategy of Quantum-behaved Particle Swarm Optimization[C]//Proc.of 2004 IEEE Conference on Cybernetics and Intelligent Systems.Singapore:IEEE Press,2004:111-116.
[7]Li S,Zhao H,Ru Z.Deformation Prediction of Tunnel Surrounding Rock Mass Using CPSO-SVM Model[J].Journal of Central South University of Technology,2012,19(11):3311-3319.
[8]Eberhart K.Particle Swarm Optimization[C]//Proc.of 1995 IEEE International Conference on Neural Networks.Perth,Australia:IEEE Press,1995:942-948.
[9]Trelea I C.The Particle Swarm Optimization Algorithm:Convergence Analysis and Parameter Selection[J].Information Processing Letters,2003,85(6):317-325.
[10]Vapnik V N.The Nature of Statistical Learning Theory[M].New York,USA:Springer-Verlag,1995.
[11]Suwansawat S,Einstein H H.Artificial Neural Networks for Predicting the Maximum Surface Settlement Caused by EPB Shield Tunneling[J].Tunnelling and Underground Space Technology,2006,21(2):133-150.
[12]Choy K,Chan C.Modelling of River Discharges and Rainfall Using Radial Basis Function Networks Based on Support Vector Regression[J].International Journal of Systems Science,2003,34(1):763-773.
[13]萬崇華,張燦珍.肺癌患者生存質量測定量表FACT-L中文版[J].中國腫瘤,2000,9(3):109-110.
[14]Doquire G,Verleysen M.Feature Selection with Missing Data Using Mutual Information Estimators[J].Neurocomputing,2012,90(1):3-11.