王祖銘,李永剛,馬雪中,方舸
1 南京理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院(江蘇南京 210018);2 南京中醫(yī)藥大學(xué)附屬醫(yī)院(江蘇南京 210029);3 南京中醫(yī)藥大學(xué)附屬醫(yī)院紫東院區(qū)(江蘇南京 210046)
泌尿系統(tǒng)結(jié)石是泌尿外科的常見(jiàn)病與多發(fā)病,其發(fā)病率在泌尿外科住院患者中占據(jù)首位[1-2]。2020 年《中國(guó)泌尿外科和男科疾病診斷治療指南》[3]發(fā)布的泌尿系統(tǒng)結(jié)石流行病學(xué)調(diào)查顯示,中國(guó)成年人泌尿系統(tǒng)結(jié)石發(fā)病率為1%~5%,年新發(fā)率為(150~200)/10 萬(wàn)人,與美國(guó)、泰國(guó)一起被列為世界上3 大結(jié)石高發(fā)區(qū)[2]。體外沖擊波碎石的原理是在X 線或超聲影像定位下將聲透鏡聚焦的沖擊波導(dǎo)入體內(nèi),覆蓋結(jié)石,結(jié)石在一定沖擊波能量下受到多種沖擊波效應(yīng)的影響而發(fā)生裂解、粉碎[4]。經(jīng)過(guò)40 多年的發(fā)展,目前我國(guó)二級(jí)及以上中、西醫(yī)醫(yī)院及??漆t(yī)院基本都配置了專業(yè)的體外沖擊波碎石設(shè)備,隨著設(shè)備的不斷改進(jìn)和經(jīng)驗(yàn)的不斷積累,體外沖擊碎石治療技術(shù)日臻成熟,成為目前臨床治療直徑小于20 mm 或表面積小于300 mm2泌尿系統(tǒng)結(jié)石的標(biāo)準(zhǔn)方法[3]。目前,在我國(guó)現(xiàn)行醫(yī)保體系下,體外沖擊波碎石治療并未被列入住院手術(shù)項(xiàng)目,而是門(mén)診治療項(xiàng)目,由患者全額自費(fèi)承擔(dān)治療費(fèi)用,這意味著患者可能面臨因不適用體外沖擊波碎石治療而導(dǎo)致碎石失敗,不僅使其承受健康、時(shí)間及經(jīng)濟(jì)方面的多重?fù)p失,還可能會(huì)因此引發(fā)醫(yī)患糾紛。因此在泌尿系結(jié)石患者進(jìn)行取石治療前,快速、科學(xué)、有效地對(duì)患者體外沖擊波碎石治療效果及并發(fā)癥進(jìn)行分析和預(yù)測(cè),不僅可以使患者更直觀、更充分地了解治療方式及其利弊,而且可以最大限度地避免患者損失,降低醫(yī)療服務(wù)成本,具有重要的臨床指導(dǎo)意義?;诖?,本研究提出一種粒子群優(yōu)化算法隨機(jī)森林(particle swarm optimizationrandom forest,PSO-RF)模型,并用于體外沖擊波治療泌尿系統(tǒng)結(jié)石的療效預(yù)測(cè),以期為體外沖擊波治療泌尿系統(tǒng)結(jié)石提供新的選擇和思路。
選取2018 年至2021 年1 江蘇省中醫(yī)院泌尿外科確診的原發(fā)性泌尿系統(tǒng)結(jié)石患者1 150 例為研究對(duì)象,其中男871 例,年齡8~81 歲,平均(44.38±13.54)歲,女279 例,年齡7~90 歲,平均(46.31±14.08)歲。本研究納入的研究對(duì)象均符合《中國(guó)泌尿外科和男科疾病診斷治療指南》[3]中的確診和分類標(biāo)準(zhǔn),其中,左輸尿管上段結(jié)石患者247 例,左腎下盞結(jié)石患者185 例,右輸尿管上段結(jié)石患者181 例,右腎下盞結(jié)石患者119 例,左輸尿管下段結(jié)石患者100 例,右輸尿管下段結(jié)石患者78 例,左腎盂結(jié)石患者54 例,其他結(jié)石患者186 例。本研究為回顧性研究,不涉及倫理、患者個(gè)人信息及隱私等安全問(wèn)題。
本研究中,治療設(shè)備采用Dornier Lithotripter S Ⅱ體外沖擊波碎石機(jī)。
1.2.1 隨機(jī)森林模型
集成學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一種大類,其基本思想是將多個(gè)分類器組合,從而構(gòu)建一個(gè)預(yù)測(cè)效果更佳的集成分類器。集成算法大致可分為3 種類型:Bagging、Boosting 和Stacking。機(jī)器學(xué)習(xí)包括回歸和分類兩種任務(wù),而隨機(jī)森林(random forest,RF)可以同時(shí)勝任這兩種任務(wù)。其中,分類任務(wù)是對(duì)離散值進(jìn)行預(yù)測(cè),回歸任務(wù)是對(duì)連續(xù)值進(jìn)行預(yù)測(cè)[5-6]。
在RF 中,個(gè)體學(xué)習(xí)器采用決策樹(shù)(decision tree,DT)算法,該算法性能的優(yōu)劣對(duì)RF 的學(xué)習(xí)能力具有重要影響。DT 的生成就是遞歸構(gòu)建二叉樹(shù)的過(guò)程,本研究通過(guò)基尼指數(shù)最小化準(zhǔn)則進(jìn)行特征選擇,生成二叉樹(shù)。定義訓(xùn)練數(shù)據(jù)集為D,回歸樹(shù)為f(x),生成算法如下。
第一步,選擇最優(yōu)切分變量j與切分點(diǎn)s,遍歷變量j,計(jì)算。
記錄達(dá)到最小值時(shí)的對(duì)應(yīng)位置(j,s)。
第二步,用選定的對(duì)應(yīng)位置(j,s)劃分區(qū)域,并決定相應(yīng)的輸出值。
第三步,重復(fù)第一步和第二步,直至滿足停止條件。
第四步,將輸入空間劃分為M 個(gè)區(qū)域R1、R2……RM,生成DT。
第五步,重復(fù)第一步至第四步,直至生成RF。
基尼指數(shù)可以選擇最優(yōu)特征,同時(shí)決定該特征的最優(yōu)二值切分點(diǎn)?;嶂笖?shù)表示集合D 的不確定性,基尼指數(shù)越大,樣本的不確定性越大。
則在特征A 的條件下,定義集合D 的基尼指數(shù)為:
1.2.2 粒子群優(yōu)化算法
粒子群優(yōu)化算法(particle swarm optimization,PSO)最初是受自然界鳥(niǎo)群捕食行為啟發(fā)而提出的能夠在全局范圍內(nèi)較好地進(jìn)行參數(shù)尋優(yōu)的集群智能尋優(yōu)算法。在數(shù)學(xué)上,將鳥(niǎo)群的覓食空間抽象為所研究問(wèn)題的潛在解的空間,該空間為N維,空間內(nèi)粒子數(shù)為n,整個(gè)空間內(nèi)的全部粒子X(jué)={x1,x2,x3,…,xn},某個(gè)問(wèn)題的潛在解為第i個(gè)粒子的位置xi,每個(gè)粒子都知道自己目前為止發(fā)現(xiàn)的最好位置,即最優(yōu)解pbesti和當(dāng)前解,若當(dāng)前解優(yōu)于個(gè)體記錄的歷史最優(yōu)解,則更新最優(yōu)解pbesti為當(dāng)前解。同時(shí),個(gè)體也知道整個(gè)群體中所有粒子發(fā)現(xiàn)的最優(yōu)解gbesti。若個(gè)體當(dāng)前解優(yōu)于群體最優(yōu)解gbesti,則更新gbesti。粒子的運(yùn)動(dòng)由自身和群體的歷史經(jīng)驗(yàn),以及當(dāng)前位置決定[7-8]。粒子通過(guò)下列公式更新自己的速度和位置,速度計(jì)算公式如下:
其中i=1,2,…,N,N為群體中粒子的總數(shù),即所研究問(wèn)題的潛在解的個(gè)數(shù)。
在公式(5)中,ω 為慣性權(quán)重,表示上一代粒子的速度對(duì)當(dāng)代粒子速度的影響,一般隨著進(jìn)化過(guò)程的線性遞減;c1和c2為學(xué)習(xí)因子,通常都取固定值2,r1和r2是兩個(gè)介于[0,1]的隨機(jī)數(shù),c1*r1*(pbesti-xi)代表粒子從當(dāng)前位置指向歷史最優(yōu)位置的矢量,反映了粒子的自身經(jīng)驗(yàn)對(duì)其運(yùn)動(dòng)行為的影響;c2*r2*(gbesti-xi)代表粒子從當(dāng)前位置指向群體最好位置的矢量,反映了粒子間的信息共享。
ω 值越大,探索新區(qū)域的能力越強(qiáng),全局尋優(yōu)能力越強(qiáng),但是局部尋優(yōu)能力越弱。反之,全局尋優(yōu)能力越弱,局部尋優(yōu)能力強(qiáng)。較大的ω 有利于全局搜索,跳出局部極值,不至于陷入局部最優(yōu);而較小的ω 有利于局部搜索,使算法快速收斂到最優(yōu)解。因此ω 不宜為固定常數(shù),在粒子優(yōu)化過(guò)程中一般采用線性遞減權(quán)值策略,一般初始化為0.9,遞減到0.4,如公式7 所示。
其中,Gk為最大迭代次數(shù),ωini為初始慣性權(quán)值,ωend為迭代至最大進(jìn)化代數(shù)時(shí)的慣性權(quán)值。
1.2.3 PSO-RF 模型優(yōu)化過(guò)程
RF 模型中很多參數(shù)的組合可實(shí)現(xiàn)局部最優(yōu),不同的選擇組合直接影響整個(gè)模型的建立和分類效果。在模型的建立、訓(xùn)練和預(yù)測(cè)過(guò)程中,使用的樣本數(shù)據(jù)通常為隨機(jī)選擇,常規(guī)條件下,RF 缺少特定的規(guī)則選擇辦法,多數(shù)使用經(jīng)驗(yàn)論。本研究將PSO 優(yōu)化算法融入RF 模型,對(duì)RF 模型中的參數(shù)進(jìn)行迭代計(jì)算,并快速選擇適用于RF 模型的優(yōu)化參數(shù),以提高RF 模型的訓(xùn)練和識(shí)別效率。
引入Kappa系數(shù),評(píng)估模型輸出結(jié)果的一致性和有效性。對(duì)于分類問(wèn)題,Kappa系數(shù)用于表述分類模型的精確度,Kappa系數(shù)越大,模型的分類精度越高,定義Kappa系數(shù)為:
其中,Po表示總體分類精度,Pe表示各類別對(duì)應(yīng)的預(yù)測(cè)值樣本數(shù)與真實(shí)值樣本數(shù)的乘積,在數(shù)值上,Pe可表述為:
其中,αi表示第i類的樣本數(shù)量,βi表示預(yù)測(cè)為第i類的正確樣本數(shù)量,c表示分類類別數(shù),n表示樣本個(gè)數(shù)。
Kappa系數(shù)作為適應(yīng)度值,其優(yōu)化過(guò)程如下:
第一步,初始化。隨機(jī)設(shè)定一組粒子種群,初始化位置和速度,迭代次數(shù),終止條件,在特定的范圍內(nèi)隨機(jī)選擇Kappa。
第二步,計(jì)算每個(gè)粒子的適應(yīng)度值。
第三步,將粒子當(dāng)前位置設(shè)置為初始個(gè)體極值,取適應(yīng)度值最大的粒子對(duì)應(yīng)的個(gè)體極值,作為最初的全局極值。
第四步,計(jì)算迭代第m次更新的位置和速度,分別為xi和vi,個(gè)體極值PmBest={PmBest1,PmBest2,PmBest3,…,PmBesti},從該個(gè)體極值中尋求最優(yōu)極值,作為全局最優(yōu)極值P mBest,并與第m-1 次迭代的P(m-1)gBest進(jìn)行比較,如果更優(yōu),則更換,否則保留P(m-1)gBest為PmgBest不變。
第五步,更新粒子位置和速度;根據(jù)PSO 理論對(duì)新粒子的位置和速度進(jìn)行計(jì)算和更新,包括慣性權(quán)重,學(xué)習(xí)因子等。
第六步,根據(jù)Kappa系數(shù)和迭代次數(shù)判斷是否滿足終止條件,若滿足終止條件,則結(jié)束循環(huán),否則跳轉(zhuǎn)至第二步。
第七步,運(yùn)用最佳超參數(shù),重新構(gòu)建新的RF模型。PSO-RF 模型流程如圖1 所示。
圖1 PSO-RF 模型流程圖
1.2.4 模型預(yù)測(cè)性能評(píng)價(jià)指標(biāo)
各模型通過(guò)訓(xùn)練集訓(xùn)練獲得最終預(yù)測(cè)模型后,需要用測(cè)試集對(duì)模型的性能進(jìn)行評(píng)估,以體現(xiàn)模型對(duì)新數(shù)據(jù)的預(yù)測(cè)效果。常見(jiàn)的模型預(yù)測(cè)性能評(píng)價(jià)指標(biāo)有識(shí)別準(zhǔn)確率、AUC、精確率、召回率及F1 分?jǐn)?shù),對(duì)所建立的預(yù)測(cè)模型和粒子群優(yōu)化算法優(yōu)化后的模型進(jìn)行性能評(píng)價(jià)。定義TP 為真正例,即實(shí)際為正,預(yù)測(cè)為正;FP 為假正例,實(shí)際為負(fù),但預(yù)測(cè)為正;FN 為假反例,實(shí)際為正,但預(yù)測(cè)為負(fù);TN 為真反例,實(shí)際為負(fù),預(yù)測(cè)為負(fù)。則準(zhǔn)確率、AUC、精確率、召回率及F1 分?jǐn)?shù)計(jì)算方法如公式(10)所示。
其中,AUC等于ROC 曲線在假正例率的積分。
使用PSO 算法對(duì)RF 模型進(jìn)行優(yōu)化,其實(shí)質(zhì)在于對(duì)RF 模型的決策樹(shù)個(gè)數(shù)、決策樹(shù)最大深度、葉子節(jié)點(diǎn)最小樣本數(shù)、節(jié)點(diǎn)劃分最小樣本數(shù)進(jìn)行優(yōu)化求解。隨機(jī)劃分70%的樣本集,作為模型求解數(shù)據(jù)集,剩余30%的樣本集作為下文的測(cè)試集。PSO-RF 模型的具體構(gòu)建方法和步驟為:首先,將求解數(shù)據(jù)集隨機(jī)10 等分,取5 折交叉驗(yàn)證的Kappa系數(shù)作為適應(yīng)度函數(shù);其次,隨機(jī)生成RF決策樹(shù)個(gè)數(shù)為100、決策樹(shù)最大深度為5、葉子節(jié)點(diǎn)最小樣本數(shù)為50、節(jié)點(diǎn)劃分最小樣本數(shù)為0;再次,將RF 節(jié)點(diǎn)分裂評(píng)價(jià)準(zhǔn)則選擇gini 函數(shù),劃分時(shí)考慮的最大特征比例選擇auto 模式,節(jié)點(diǎn)劃分不純度的閾值設(shè)定為0;最后,在PSO 算法模型中,設(shè)置初始粒子種群數(shù)為50,粒子種群的維度D 計(jì)算為39,最大迭代次數(shù)設(shè)置為150 次,慣性權(quán)重設(shè)置為0.9,個(gè)體學(xué)習(xí)因子和群體學(xué)習(xí)因子均為2。PSO-RF 模型建立和求解的過(guò)程如圖2 所示。最終經(jīng)PSO 算法優(yōu)化后的RF 模型最優(yōu)參數(shù)值如下:決策樹(shù)個(gè)數(shù)為142、決策樹(shù)最大深度為10、葉子節(jié)點(diǎn)最小樣本數(shù)為26、節(jié)點(diǎn)劃分最小樣本數(shù)為0。
圖2 最優(yōu)適應(yīng)度個(gè)體隨機(jī)森林參數(shù)變化
對(duì)納入本研究的1 150 例患者按照7∶3 的比例隨機(jī)分為訓(xùn)練集和測(cè)試集。選取傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(back propagation,BP)[9-10]、支持向量機(jī)(support vector machine,SVM)[11]、決策樹(shù)(decision tree,DT)[12-13]進(jìn)行建模,以及本研究提出的PSO-RF模型對(duì)目標(biāo)患者標(biāo)簽進(jìn)行分類預(yù)測(cè),通過(guò)虛擬化操作統(tǒng)一數(shù)據(jù)量綱,以數(shù)據(jù)集70%的數(shù)據(jù)量作為各算法的訓(xùn)練集,其余30%作為模型測(cè)試集。選取分類預(yù)測(cè)準(zhǔn)確率、AUC、精確率、召回率及F1 分?jǐn)?shù)作為模型輸出表現(xiàn)的評(píng)價(jià)指標(biāo),并使用MATLAB 2019a 對(duì)各模型進(jìn)行搭建、訓(xùn)練和測(cè)試,記錄真正例、假正例、假反例及真反例的個(gè)數(shù),并計(jì)算各模型的預(yù)測(cè)準(zhǔn)確率、精確率、召回率及F1分?jǐn)?shù),如表1所示。
表1 各模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效的預(yù)測(cè)結(jié)果
由表1 可知,PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效的預(yù)測(cè)準(zhǔn)確率相比BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT 模型分別提高了4.3%、6.9%及11.0%,相比SVM 模型及DT 模型,差異有統(tǒng)計(jì)學(xué)意義(P<0.05);PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效預(yù)測(cè)的召回率相比BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT 模型分別提高了6.7%、9.1%及13.7%,差異有統(tǒng)計(jì)學(xué)意義(P<0.05);PSORF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效預(yù)測(cè)的精確率相比BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT模型分別提高了5.2%、14.5%及13.2%,相比SVM模型及DT 模型,差異有統(tǒng)計(jì)學(xué)意義(P<0.05);PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效預(yù)測(cè)的F1 分?jǐn)?shù)相比BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT 模型分別提高了4.1%、12.1%及10.3%,相比SVM 模型及DT 模型,差異有統(tǒng)計(jì)學(xué)意義(P<0.05)。繪制BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型、DT 模型及PSO-RF 模型的ROC 曲線,如圖3 所示,計(jì)算各模型曲線的AUC分別為0.65、0.71、0.63 及0.74,PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石療效的預(yù)測(cè)價(jià)值較BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT 模型更高。
圖3 各模型的ROC 曲線
使用70%的樣本集對(duì)各模型進(jìn)行訓(xùn)練,重復(fù)該過(guò)程20 次,并記錄BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型、DT模型及PSO-RF模型對(duì)訓(xùn)練集訓(xùn)練使用的時(shí)間,如圖4 所示。PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石患者的訓(xùn)練時(shí)間相比BP 神經(jīng)網(wǎng)絡(luò)模型降低,差異有統(tǒng)計(jì)學(xué)意義(t=9.81,P<0.05)。
圖4 各模型時(shí)間復(fù)雜度的比較
泌尿系統(tǒng)結(jié)石的成因比較復(fù)雜,至今仍未明確。根據(jù)現(xiàn)有的結(jié)石治療指南所規(guī)范的體外沖擊波治療的適應(yīng)證和禁忌證,以及近些年體外沖擊波治療泌尿系結(jié)石療效的研究,一些研究機(jī)構(gòu)與醫(yī)院臨床雖然自身已經(jīng)建立了一套預(yù)測(cè)方法[14-17],但在目前的臨床實(shí)踐中,大部分醫(yī)師受限于技術(shù)、經(jīng)驗(yàn)等因素,仍無(wú)法根據(jù)這些指南推測(cè)體外沖擊波治療的成功率,無(wú)法合理制訂體外沖擊波碎石方案,并預(yù)估術(shù)后并發(fā)癥的發(fā)生概率等。而且體外沖擊波碎石治療成功與否,取決于治療前后的數(shù)十種因素,這些因素之間的關(guān)系及對(duì)體外沖擊波碎石療效的影響尚未完全明確[18-20],因此結(jié)合數(shù)據(jù)挖掘技術(shù)的計(jì)算機(jī)輔助預(yù)測(cè)體外沖擊波療效具有重要臨床意義。
本研究針對(duì)泌尿系統(tǒng)結(jié)石臨床治療過(guò)程中的痛點(diǎn)、難點(diǎn)等問(wèn)題,提出了一種基于PSO 算法優(yōu)化RF 模型的預(yù)測(cè)方法。該方法將RF 模型中的決策樹(shù)個(gè)數(shù)、決策樹(shù)最大深度、葉子節(jié)點(diǎn)最小樣本數(shù)及節(jié)點(diǎn)劃分最小樣本數(shù)進(jìn)行優(yōu)化求解,該過(guò)程既保留了RF 模型準(zhǔn)確率高,還引入了隨機(jī)性,且具備不容易過(guò)擬合、抗噪聲能力強(qiáng)等特點(diǎn),又兼顧了PSO算法的優(yōu)點(diǎn),極大地提高了RF 模型的效率。通過(guò)泌尿系統(tǒng)結(jié)石患者的年齡、身高、體重、性別、結(jié)石位置、結(jié)石大小、體外沖擊次數(shù)等特征值進(jìn)行無(wú)監(jiān)督訓(xùn)練學(xué)習(xí),PSO-RF 模型對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石治療效果的預(yù)測(cè)準(zhǔn)確率、精確率、召回率、F1 分?jǐn)?shù)、AUC分別為84.0%、85.6%、81.4%、78.8%及0.74,相比傳統(tǒng)BP 神經(jīng)網(wǎng)絡(luò)模型、SVM 模型及DT 模型,PSO-RF 模型具有更高的預(yù)測(cè)準(zhǔn)確率、召回率、精確率、F1 分?jǐn)?shù)和AUC,對(duì)體外沖擊波治療泌尿系統(tǒng)結(jié)石效果具有更高的預(yù)測(cè)價(jià)值,可為體外沖擊波治療泌尿系統(tǒng)結(jié)石提供新的選擇和思路。