張標(biāo)標(biāo) 吳俊宏 馬仕強(qiáng) 柯飚挺
(1.浙江遠(yuǎn)圖互聯(lián)科技股份有限公司 浙江省杭州市 310030 2.浙江理工大學(xué)自控系 浙江省杭州市 310018)
門診是患者在醫(yī)院就醫(yī)過(guò)程中最早、最頻繁接觸的場(chǎng)所,是醫(yī)院展示為社會(huì)服務(wù)的重要窗口。廣大人民群眾對(duì)醫(yī)院服務(wù)質(zhì)量與醫(yī)療技術(shù)水平好壞的主觀感受主要來(lái)自門診就診的感受。醫(yī)院門診就診效率的高低,不僅直接影響著醫(yī)院的服務(wù)質(zhì)量評(píng)價(jià),同時(shí)影響病人對(duì)醫(yī)院服務(wù)的滿意度[1]。目前國(guó)內(nèi)大型綜合性醫(yī)院門診普遍現(xiàn)狀:病人集中多[2]、診療環(huán)節(jié)多[3]、人群雜、病種多[4]、醫(yī)生變換多[5]、診療時(shí)間少[6]。通過(guò)有效的門診流量分析,醫(yī)院可以發(fā)現(xiàn)其中的阻滯環(huán)節(jié)以及所屬各科室部門的時(shí)間利用情況,為管理者制定決策、采取措施提供依據(jù)。因此,醫(yī)院門診量的正確預(yù)測(cè)為醫(yī)院管理層在醫(yī)療資源合理調(diào)配和醫(yī)療護(hù)理提供科學(xué)決策依據(jù)。我國(guó)學(xué)者在醫(yī)院門診量預(yù)測(cè)方面研究歷來(lái)十分重視,研究的論文較多,比較典型的有:史文宗等人[7]運(yùn)用Parais-Winsten 的參數(shù)估計(jì)法建立了一階自回歸模型,預(yù)測(cè)醫(yī)院未來(lái)一年內(nèi)門診量預(yù)測(cè)值和區(qū)間預(yù)測(cè)值。但該模型存在一定程度的缺陷,它把門診量單純地視為線性變化趨勢(shì)。實(shí)際上,醫(yī)院門診量有很多人為因素的影響,比如患者存在門診預(yù)約的爽約不確定行為。朱順痣等人[8]提出構(gòu)建ARMAX 統(tǒng)計(jì)模型與神經(jīng)網(wǎng)絡(luò)模型相結(jié)合混合模型預(yù)測(cè)門診量,混合模型可以同時(shí)獲取數(shù)據(jù)的線性與非線性特性,因此具有一定的效果。武權(quán)等人[9]采用灰色模型和霍爾特雙參數(shù)線性指數(shù)平滑預(yù)測(cè)模型的方法對(duì)醫(yī)院門診量進(jìn)行擬合與誤差分析,由于時(shí)間序列隨機(jī)與非線性特點(diǎn),誤差波動(dòng)較大。綜述以往研究工作,在醫(yī)院門診量預(yù)測(cè)方面有三種方法,
(1)統(tǒng)計(jì)方法,這種方法依靠以往歷史數(shù)據(jù),采用數(shù)據(jù)回歸方法進(jìn)行模擬,若在門診量線性變化時(shí),則具有相當(dāng)準(zhǔn)確性。(2)采用BP 等傳統(tǒng)神經(jīng)網(wǎng)絡(luò)算法抽取門診量變化非線性特征。(3)統(tǒng)計(jì)方法與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相結(jié)合模型,這種方法既發(fā)揮統(tǒng)計(jì)方法提取線性特征,又發(fā)揮人工智能方法提取非線性特征。
在醫(yī)院短時(shí)門診量應(yīng)用中取得較好的效果。BP 算法存在缺陷:學(xué)習(xí)速率低,收斂速度慢; 梯度下降算法導(dǎo)致計(jì)算過(guò)程中出現(xiàn)局部極值;網(wǎng)絡(luò)適應(yīng)能力較差,計(jì)算不穩(wěn)定。本文采用改進(jìn)粒子群算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)應(yīng)用于門診量預(yù)測(cè)。通過(guò)某醫(yī)院實(shí)時(shí)門診數(shù)據(jù)進(jìn)行檢驗(yàn),結(jié)果計(jì)算穩(wěn)定,數(shù)據(jù)精確、可行。能夠較為準(zhǔn)確地預(yù)測(cè)醫(yī)院門診量,從而為醫(yī)院調(diào)控年、月高峰期醫(yī)療門診提供更加準(zhǔn)確決策依據(jù)。
標(biāo)準(zhǔn)粒子群算法是一種基于群體智能理論的隨機(jī)全局優(yōu)化技術(shù),算法基本概念來(lái)源于對(duì)鳥群捕食行文的研究。鳥群能夠確定食物在附近,根據(jù)向距離食物最近的鳥的附近區(qū)域飛行尋找。鳥兒尋找食物的整個(gè)過(guò)程可以看作粒子群算法尋找最優(yōu)解的過(guò)程。每個(gè)粒子依照當(dāng)前位置、當(dāng)前速度、當(dāng)前位置與自己以前最優(yōu)位置間的距離、當(dāng)前位置與群體中其他粒子最優(yōu)位置間的距離等四個(gè)要素確定或改變自己搜尋方向。粒子根據(jù)這些信息進(jìn)行迭代循環(huán),直到找到最佳位置為止。假設(shè)m 粒子組成一個(gè)種群X={x1,…,xl,…,xm},其中第i 個(gè)粒子位置為xi=(xi1,xi2,…,xin)T,第i 個(gè)粒子速度為vi=(vi1,vi2,…, vin)T;群體中粒子的個(gè)體極值為pi=(pi1,pi2,…,pin)T,群體中粒子的全局最優(yōu)極值為Pg=(pg1,pg2,…,pgn)T。當(dāng)進(jìn)行到第j 次迭代時(shí),種群中的每個(gè)粒子按照式(1)和式(2)改變自己當(dāng)前的速度和位置。
式中:m 表示群體規(guī)模;n 表示搜索空間的維數(shù);j 表示算法迭代的次數(shù);c1和c2為加速常數(shù);r1和r2為[0,1]之間的隨機(jī)數(shù)。表示第j 次迭代粒子m 當(dāng)前速度的第n 維分量;第j 次迭代粒子m 當(dāng)前位置的第n 維分量;表示第j-1 次迭代粒子m 個(gè)體當(dāng)前最好位置pbest 的第n 維分量;表示第j-1 次迭代粒子m 個(gè)體當(dāng)前最好位置gbest 的第n 維分量。 根據(jù)每個(gè)粒子的適應(yīng)度情況進(jìn)行更新。如果其個(gè)體當(dāng)前適應(yīng)值優(yōu)于pbest,則將該粒子的當(dāng)前位置設(shè)置為pbest;若其當(dāng)前適應(yīng)值優(yōu)于全局最優(yōu)位置gbest,則更新gbest 為當(dāng)前粒子的位置。根據(jù)本文提出的改進(jìn)公式(1)和(2)對(duì)每個(gè)粒子的速度和位置進(jìn)行更新。若適應(yīng)值達(dá)到誤差精度要求或滿足最大迭代次數(shù),終止迭代輸出pbest 和gbest。
粒子群算法參數(shù)設(shè)置包括種群規(guī)模、粒子維數(shù)、粒子活動(dòng)范圍、壓縮因子、慣性權(quán)重、加速常數(shù)、最大加速度、最大迭代次數(shù)以及精度要求等。
利用粒子群算法的全局搜索能力優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)方法就是更新連接權(quán)值與閾值,提高網(wǎng)絡(luò)學(xué)習(xí)速度,優(yōu)化網(wǎng)絡(luò)性能。
對(duì)于一個(gè)含有單隱含層的三層神經(jīng)網(wǎng)絡(luò),粒子群優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和閾值時(shí),需要將粒子向量定義為其中S1為輸入層單元節(jié)點(diǎn)數(shù),S2為隱含層單元節(jié)點(diǎn)數(shù),S3為輸出層單元節(jié)點(diǎn)數(shù),輸入層到隱含層的連接權(quán)值矩陣為隱含層到輸出層的連接權(quán)矩陣為根據(jù)粒子的維度空間與神經(jīng)網(wǎng)絡(luò)連接權(quán)值的映射關(guān)系可以得到粒子的搜索空間維數(shù)D=(S1+1)×S2+(S2+1)×S3。粒子群個(gè)體適應(yīng)函數(shù)選為神經(jīng)網(wǎng)絡(luò)的均方誤差指標(biāo)方程其中M 為訓(xùn)練集A 樣本個(gè)數(shù),lp為網(wǎng)絡(luò)輸出層神經(jīng)元個(gè)數(shù),為第i 個(gè)樣本的第j 期望輸出值,yj,i為第i 個(gè)樣本的第j 實(shí)際輸出值。
由于標(biāo)準(zhǔn)粒子群算法存在搜索精度不高、易發(fā)散等缺點(diǎn),需要對(duì)其進(jìn)行算法改進(jìn)。常規(guī)改進(jìn)算法有壓縮因子算法與慣性權(quán)重法??紤]粒子群迭代過(guò)程是一個(gè)非線性過(guò)程,本文對(duì)學(xué)習(xí)因子以及慣性因子作如下改進(jìn):
最大慣性因子ωmax=0.9,最小慣性因子ωmin=0.3。慣性因子變化公式:
BP 神經(jīng)網(wǎng)絡(luò)輸入層節(jié)點(diǎn)數(shù)10,隱含層為18,輸出層為1。神經(jīng)網(wǎng)絡(luò)采用自適應(yīng)學(xué)習(xí)速率動(dòng)量梯度下降反向算法(traindx),最大訓(xùn)練次數(shù)6000,目標(biāo)誤差0.0000001,初始學(xué)習(xí)速率0.01,動(dòng)量因子0.9。
標(biāo)準(zhǔn)粒子群算法參數(shù):種群規(guī)模40,最大迭代數(shù)100,學(xué)習(xí)因子C1=C2=1.499,慣性權(quán)重 ω=0.7298。
改進(jìn)粒子群算法參數(shù):種群規(guī)模與最大迭代數(shù)保持不變。學(xué)習(xí)因子C1=C2=2.0,學(xué)習(xí)因子的變化公式見公式(3);最大慣性因子ωmax=0.9,最小慣性因子ωmin=0.3,慣性因子變化公式見公式(4)。
表1:樣本數(shù)據(jù)集
圖1:在三種算法條件下樣本個(gè)體預(yù)測(cè)值與真實(shí)值比較
根據(jù)粒子的維度空間與BP 神經(jīng)網(wǎng)絡(luò)連接權(quán)值的映射關(guān)系可以得到粒子的搜索空間維數(shù)D=(S1+1)×S2+(S2+1)×S3=217。
表1 為浙江省某一縣級(jí)醫(yī)院在2017年各科室1月-12月門診人次數(shù)據(jù)。
從表1 可以看出,各科室病人流量隨季節(jié)有所波動(dòng)變化,全年門診量排名前三位分別是內(nèi)科、老專家科、外科,每月門診病人相對(duì)較多。婦產(chǎn)科門診量全年波動(dòng)相對(duì)平穩(wěn)。精神科門診病人相對(duì)數(shù)量較少,但是隨著社會(huì)競(jìng)爭(zhēng)加劇,就業(yè)壓力增大,精神科門診病人數(shù)量會(huì)有所增長(zhǎng)。為了減少數(shù)據(jù)本身誤差風(fēng)險(xiǎn),加快網(wǎng)絡(luò)學(xué)習(xí)與收斂速度,對(duì)表1 數(shù)據(jù)進(jìn)行歸一化預(yù)處理:將表1 樣本數(shù)據(jù)集形成一個(gè)矩陣Am1×n1,設(shè)定ymax=1,ymin=-1,對(duì)于Am1×n1中任何一個(gè)元素xij,其歸一化后數(shù)值
訓(xùn)練集與測(cè)試集:按照順序選取1月-10月數(shù)據(jù)作為訓(xùn)練集;選取11月數(shù)據(jù)作為測(cè)試集。選取12月數(shù)據(jù)作為結(jié)果驗(yàn)證。輸入向量的選擇:選取8 個(gè)影響因素,即內(nèi)科、外科、婦產(chǎn)科、兒科、中醫(yī)科、精神科、五官科、老專家科等。
從圖1 中可以看出,BP 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果誤差明顯大,采用標(biāo)準(zhǔn)粒子群算法(標(biāo)準(zhǔn)PSO)預(yù)測(cè)結(jié)果與改進(jìn)后粒子群算法(改進(jìn)PSO)的預(yù)測(cè)結(jié)果與實(shí)際數(shù)值比較吻合。 但是改進(jìn)后粒子群算法預(yù)測(cè)結(jié)果更加精確。圖2 為在三種算法條件下,樣本個(gè)體所表現(xiàn)出各預(yù)測(cè)值與其真實(shí)值的絕對(duì)誤差。BP 神經(jīng)網(wǎng)絡(luò)與標(biāo)準(zhǔn)PSO-BP 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值誤差均高于改進(jìn)PSO-BP 神經(jīng)網(wǎng)絡(luò),除了樣本4(兒科)中,改進(jìn)PSO-BP 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值誤差略高于標(biāo)準(zhǔn)標(biāo)準(zhǔn)PSO-BP 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值誤差。
圖2 樣本內(nèi)個(gè)體在各種算法計(jì)算下所獲得的預(yù)測(cè)值與真實(shí)值絕對(duì)誤差比較,圖3 標(biāo)準(zhǔn)PSO- BP 算法與改進(jìn)PSO-BP 算法收斂情況比較。
如圖3 為標(biāo)準(zhǔn)粒子群-BP 神經(jīng)網(wǎng)絡(luò)算法(標(biāo)準(zhǔn)PSO)與改進(jìn)后的粒子群-BP 神經(jīng)網(wǎng)絡(luò)算法(改進(jìn)PSO)的擬合函數(shù),從圖2 可知,隨著迭代的進(jìn)行,采用改進(jìn)后的粒子群-BP 神經(jīng)網(wǎng)絡(luò)算法(改進(jìn)PSO)可以誤差收斂更小。主要是迭代計(jì)算采用了一個(gè)非線性變化函數(shù),此外采用自適應(yīng)加速因子。
本文通過(guò)采用BP 神經(jīng)網(wǎng)絡(luò)、標(biāo)準(zhǔn)粒子群算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)以及改進(jìn)粒子群算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)模型分別對(duì)醫(yī)院月預(yù)測(cè)計(jì)算,改進(jìn)粒子群算法結(jié)果較標(biāo)準(zhǔn)粒子群算法-BP 與BP 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果有進(jìn)一步改善。因此采用改進(jìn)粒子群算法模型預(yù)測(cè)方法具有精度更高、自適應(yīng)更好的優(yōu)點(diǎn),并且能夠充分逼近非線性映射。在醫(yī)院門診量時(shí)序預(yù)測(cè)中具有較高實(shí)際應(yīng)用價(jià)值。
圖2
圖3