(云南省水文水資源局紅河分局,云南紅河661100)
水庫型城市集中式飲用水水源地作為中國集中式飲用水水源地重要類型之一,不但承擔著城市居民生活供水任務,而且在城市防洪、工農(nóng)業(yè)供水等方面發(fā)揮著重要作用。近年來,隨著經(jīng)濟社會發(fā)展和人類活動加劇,一些水庫型城市集中式飲用水水源地水質(zhì)受到不同程度污染,傳統(tǒng)單因子水質(zhì)評價法(亦稱一票否決法)以最劣指標類別作為最終評價結(jié)果,不能客觀、科學反映水源地水質(zhì)綜合狀況。因此,開展水庫型水源地水質(zhì)綜合評價,對于保障城市居民飲用水源安全,科學實施水源地防污治污以及落實最嚴格水資源管理制度均具有重要意義。目前,水源地水質(zhì)綜合評價方法主要有卡爾森指數(shù)法[1]、模糊綜合評價法[2]、支持向量機法[3]、投影尋蹤法[4]、物元可拓法[5]等,均在水源地水質(zhì)綜合評價中取得較好的評價效果。隨機森林(random forest,RF)是由Leo Breiman提出的一種集成機器學習方法,主要利用Bootsrap重抽樣方法從原始樣本中抽取多個樣本,對每個Bootsrap樣本進行決策樹建模,然后組合多棵決策樹通過投票方式獲得最終評價結(jié)果[6],可以看成由很多弱分類器(決策樹)集成的強分類器,能有效避免“過擬合”和“欠擬合”現(xiàn)象的發(fā)生,已在各領域及水質(zhì)綜合評價[7-8]中得到應用。然而,在實際應用中,合理選取RF模型決策樹數(shù)量ntree和分裂屬性個數(shù)mtry2個參數(shù)對于提高RF模型預測或分類性能至關重要。目前普遍采用試湊法[9-10]或網(wǎng)絡搜索法[6,11]確定決策樹數(shù)量、分裂屬性個數(shù),但取值效果往往不理想。近年來,隨著群體仿生智能算法研究的不斷深入,其已被嘗試用于RF模型決策樹數(shù)量、分裂屬性個數(shù)的優(yōu)化,如周博翔等人[12]利用蜜蜂交配算法優(yōu)化隨機森林參數(shù),構(gòu)建HBMO-RF模型用于人體姿態(tài)識別;王杰等人[13]提出基于粒子群優(yōu)化(PSO)算法的加權(quán)隨機森林分類模型,并通過實驗數(shù)據(jù)驗證了該模型的分類效果;趙東等人[14]采用果蠅優(yōu)化算法(FOA)對RF關鍵參數(shù)進行優(yōu)化,構(gòu)建FOA-RF模型對蟲害數(shù)據(jù)進行預測。但基于群體仿生智能算法優(yōu)化決策樹數(shù)量、分裂屬性個數(shù)的RF模型用于水質(zhì)綜合評價的文獻并不多見。
為進一步拓展群體仿生智能算法優(yōu)化RF 2個關鍵參數(shù)的應用范疇,本文提出一種基于隨機漂移粒子群(random drift particle swarm optimization,RDPSO)算法優(yōu)化的RF評價方法,利用RDPSO算法優(yōu)化RF決策樹數(shù)量和分裂屬性個數(shù)2個關鍵參數(shù),構(gòu)建RDPSO-RF水源地水質(zhì)綜合評價模型,并構(gòu)建基于RDPSO算法優(yōu)化的回歸支持向量機(SVR)模型作對比分析,以云南省紅河州17個水庫型飲用水水源地水質(zhì)綜合評價為例進行實例研究。通過選取水源地水質(zhì)綜合評價因子,依據(jù)GB 3838—2002《地表水環(huán)境質(zhì)量標準》在各評價因子等級閾值間隨機內(nèi)插和隨機選取樣本對RDPSO-RF、RDPSO-SVR模型進行訓練和測試;利用測試好的RDPSO-RF、RDPSO-SVR對實例水質(zhì)綜合類別進行評價,旨在驗證RDPSO -RF模型用于水庫型水源地水質(zhì)綜合評價的可行性和有效性。
隨機漂移粒子群(RDPSO)算法是孫俊等人受PSO算法的軌跡分析和金屬導體中自由電子定向漂移運動、隨機無規(guī)則熱運動啟發(fā)而提出來的一種具有較強全局搜索的群體智能算法。RDPSO算法中自由電子的定向漂移運動類似于粒子的局部搜索,隨機無規(guī)則熱運動類似于粒子的全局搜索[15]。參考文獻[15-17],RDPSO算法數(shù)學描述如下。
(1)
(2)
式(2)可表示如下:
(3)
(4)
(5)
(6)
(7)
(8)
式中N——群體規(guī)模。將式(6)改寫為:
(9)
綜上,RDPSO算法中粒子速度和位置更新公式表示為:
(10)
(11)
隨機森林(RF)算法是由Leo Breiman[18]提出的基于決策樹分類器的融合算法,該算法通過隨機的方法建立一個由許多決策樹組成的森林,每棵決策樹之間沒有關聯(lián);每棵決策樹均采用bootstrap方法進行采樣,隨機產(chǎn)生k個訓練集,利用每個訓練集生成對應的決策樹;然后再從所有M個決策屬性中隨機抽取m個屬性進行評價;在訓練過程中,一般m的取值維持不變;訓練結(jié)束后,當測試樣本輸入時,每棵決策樹均對測試樣本進行評價,并將所有決策樹中出現(xiàn)最多的投票結(jié)果作為最終評價結(jié)果,具體算法步驟見文獻[13-19]。假設對于一個測試樣本x,第l棵決策樹的輸出為ftree,l(x)=i,i=1,2,…,c,即為其對應的輸出值,l=1,2,…,L,L為RF中的決策樹棵數(shù),則RF的輸出可表示為:
fRF(x)=argmax{I(ftree,l(x)=i)},i=1,2,…,c
(12)
式中I(·)——滿足括號中表達式的樣本個數(shù)。
研究表明,決策樹數(shù)量ntree和分裂屬性個數(shù)mtry的合理選取是提高RF評價精度的關鍵,ntree設置過小易使RF訓練不充分而導致模型“欠擬合”,設置太大又易使RF過度訓練而導致“過擬合”;同樣,mtry設置太小易使RF過度訓練而導致“過擬合”,設置太大會使得RF訓練不充分而導致模型“欠擬合”?!斑^擬合”“欠擬合”均會降低RF模型的分類性能[20]。本文基于Matlab軟件環(huán)境和randomforest工具箱,利用RDPSO算法尋優(yōu)RF關鍵參數(shù)決策樹數(shù)量(ntree)和分裂屬性個數(shù)(mtry)。
Step1基于水源地水質(zhì)評價因子和GB 3838—2002《地表水環(huán)境質(zhì)量標準》分級閾值構(gòu)造RF模型訓練及測試樣本,進行歸一化處理,并合理劃分訓練樣本和測試樣本。設定決策樹數(shù)量ntree和分裂屬性個數(shù)mtry搜尋范圍。
Step2確定適應度函數(shù)。本文選用訓練樣本均方誤差作為適應度函數(shù),描述如下:
(13)
Step3設置RDPSO算法群體大小N,最大迭代次數(shù)T,最大、最小熱敏系數(shù)α,常數(shù)c1和c2。設置當前迭代次數(shù)t=0,初始化粒子位置和速度。
Step4計算漂移系數(shù)β,依據(jù)式(8)更新群體平均最優(yōu)位置。
Step5基于式(13)計算目標適應度值,更新全局最優(yōu)位置G和粒子局部最優(yōu)位置P。
Step6根據(jù)式(10)、(11)更新粒子的速度和位置。
Step7判斷算法迭代終止條件是否滿足,若滿足則轉(zhuǎn)至Step8,否則令t=t+1,并執(zhí)行Step4—7。
Step8輸出最優(yōu)適應度值和最優(yōu)粒子個體空間位置,即待優(yōu)化問題的最優(yōu)適應度值及最優(yōu)解。
Step9利用RDPSO算法優(yōu)化獲得的決策樹數(shù)量ntree和分裂屬性個數(shù)mtry代入RDPSO-RF模型對測試樣本進行評價。
Step10利用測試好的RDPSO-RF模型對紅河州17個水庫型水源地水質(zhì)進行綜合評價。
紅河州位于云南省東南部,北連昆明,東接文山,西鄰玉溪,南與越南接壤,北回歸線橫貫東西。紅河州是云南省第四大經(jīng)濟體,經(jīng)濟總量和部分社會經(jīng)濟指標居中國30個少數(shù)民族自治州之首。全州國土面積32 931 km2,轄4市9縣,多年平均水資源量214.03億m3。紅河州4市9縣共有城市集中式飲用水水源地25個,其中,水庫型城市集中式飲用水水源地17個,河流型8個,龍?zhí)缎偷叵滤?個。本文以云南省水文水資源局紅河分局2017年監(jiān)測的17個水庫型城市集中式飲用水水源地水質(zhì)綜合評價為例進行實例研究,選取對水體影響較大的NH3-N、TN、CODMn、BOD5、TP、氟化物和糞大腸菌群的年均值作為水質(zhì)綜合評價影響因子,利用RDPSO-RF及RDPSO-SVR模型分別對其進行綜合評價。水質(zhì)監(jiān)測數(shù)據(jù)及分級標準見表1、2。
表1 2017年紅河州各水源地7項水質(zhì)評價因子監(jiān)測值
表2 7項水質(zhì)評價因子分級標準值及限值
注:由于GB 3838—2002《地表水環(huán)境質(zhì)量標準》中氟化物Ⅰ~Ⅲ類和Ⅳ~Ⅴ類分級閾值相同,不甚合理,筆者對其分級閾值進行劃分
a) 構(gòu)建樣本。采用隨機內(nèi)插的方法在7個評價因子分級標準閾值間生成40組樣本(7個評價因子最小值均設置為0),共隨機內(nèi)插得到200組樣本,隨機選取150組作為訓練樣本,50組作為測試樣本,將1~5作為Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ類水質(zhì)類別的模擬輸出,并對各評價因子進行[0,1]歸一化處理。
b) 參數(shù)設置。RDPSO算法最大迭代次數(shù)T=100,最大、最小熱敏系數(shù)α分別設置為0.9、0.3(參考文獻[15-17],并經(jīng)反復調(diào)試確定,當最大、最小熱敏系數(shù)α分別設置為0.9、0.3時RDPSO算法尋優(yōu)效果最佳),常數(shù)c1、c2均設置為2。RF、SVR待優(yōu)化參數(shù)搜索空間設置為:RF決策樹數(shù)量ntree∈[2,400],分裂屬性個數(shù)mtry∈[2,10];SVR懲罰因子C∈[0.1,1000],核函數(shù)參數(shù)g∈[0.1,1000],不敏感系數(shù)ε∈[0.0001,1],交叉驗證參數(shù)V=5。
c) 模型構(gòu)建及評價?;谏鲜龇治龊蚆atlabR2011b軟件環(huán)境,分別構(gòu)建7輸入1輸出的水源地水質(zhì)綜合評價模型。選取平均相對誤差絕對值MRE和最大相對誤差絕對值MaxRE作為評價指標。
利用上述構(gòu)造樣本對RDPSO-RF、RDPSO-SVR模型進行訓練及測試,測試結(jié)果見表3。并給出RDPSO-RF、RDPSO-SVR模型的進化過程和測試樣本相對誤差,見圖1、2。
表3 2種模型樣本評價結(jié)果 %
a)RDPSO-RF進化過程 b)RDPSO-SVR進化過程圖1 RDPSO-RF、RDPSO-SVR模型進化過程
圖2 RDPSO-RF、RDPSO-SVR模型監(jiān)測樣本相對誤差效果
從表3及圖1、2可以看出,RDPSO-RF模型訓練樣本的MRE、MaxRE分別為0.33%、7.26%,優(yōu)于對比模型RDPSO-SVR的1.12%、14.10%;測試樣本的MRE、MaxRE分別為0.90%、4.83%,優(yōu)于對比模型RDPSO-SVR的3.07%、17.40%;最優(yōu)適應度值0.000 15,同樣優(yōu)于對比模型RDPSO-SVR的0.012 51??梢?,無論是訓練樣本還是測試樣本,RDPSO-RF模型評價精度均優(yōu)于RDPSO-SVR模型,具有較好的評價精度和泛化能力。
利用上述測試好的RDPSO-RF、RDPSO-SVR模型對表1中紅河州17個水庫型集中式飲用水水源地水質(zhì)進行綜合評價,并與單因子評價法評價結(jié)果進行比較,見表4。利用表2中各評價因子等級閾值輸出值劃分水質(zhì)綜合評價等級。經(jīng)模擬,RDPSO-RF模型劃分依據(jù)為:Ⅰ類<1.39、Ⅱ類∈[1.39,2.17)、Ⅲ類∈[2.17,3.10)、Ⅳ類∈[3.10,4.03)、Ⅴ類∈[4.03,5.00)和劣Ⅴ類≥5.00。RDPSO-SVR模型劃分依據(jù)為:Ⅰ類<1.54、Ⅱ類∈[1.54,2.52)、Ⅲ類∈[2.52,3.18)、Ⅳ類∈[3.18,4.19)、Ⅴ類∈[4.19,4.59)和劣Ⅴ類≥4.59。
表4 紅河州水庫型集中式飲用水水源地水質(zhì)綜合評價結(jié)果及比較
a) RDPSO-RF模型的評價結(jié)果比單因子評價法評價結(jié)果低1個等級(除洗灑水庫低2個等級外)。其中,莊寨水庫評價為Ⅳ類,從表1來看,莊寨水庫總氮Ⅴ類、總磷Ⅲ類、糞大腸菌群和氨氮Ⅱ類,莊寨水庫存在一定程度的污染,水質(zhì)綜合評價為Ⅳ類,符合客觀實際;五里沖水庫(總氮Ⅳ類、總磷Ⅱ類、其余Ⅰ類)、菲白水庫(總氮Ⅳ類、總磷和糞大腸菌群Ⅱ類、其余Ⅰ類)、檳榔寨水庫(總氮Ⅳ類、總磷Ⅱ類、其余Ⅰ類)、板橋河水庫(總氮Ⅳ類、高錳鹽指標和總磷Ⅱ類、其余Ⅰ類)、洗灑水庫(總氮Ⅴ類、總磷Ⅱ類、其余Ⅰ類)5個水源地總氮存一定的超標現(xiàn)象,但其余指標均不劣于Ⅱ類,總體評價為Ⅲ類符合水庫水質(zhì)現(xiàn)狀;其余11個水庫各評價因子水質(zhì)不劣于Ⅲ類或Ⅱ類,水質(zhì)綜合評價牌Ⅱ~Ⅰ類之間較為客觀。
b) RDPSO-RF模型與RDPSO-SVR模型評價結(jié)果基本相同,但大魚塘水庫、俄垤水庫和洗灑水庫評價結(jié)果存在差異。對于大魚塘水庫,總磷Ⅲ類,氨氮、總氮、高錳酸鹽指數(shù)和糞大腸菌群Ⅱ類,水質(zhì)綜合評價為Ⅰ類顯然不符合客觀實際,評價為Ⅱ類與水質(zhì)現(xiàn)狀較為接近;對于俄垤水庫,總磷Ⅲ類,總氮和糞大腸菌群Ⅱ類,水質(zhì)綜合評價為Ⅱ類符合水質(zhì)現(xiàn)狀;對于洗灑水庫,總氮Ⅴ類,總磷Ⅱ類,其余Ⅰ類,其影響水質(zhì)綜合評價的因素較少,水質(zhì)綜合模輸出3.06,雖然水質(zhì)綜合評價為Ⅲ類,但較接近Ⅳ類臨界值3.10,評價結(jié)果符合現(xiàn)狀水質(zhì)。表明RDPSO-RF模型較RDPSO-SVR模型具有更高的評價精度。
c) RDPSO-RF模型不但可以科學、客觀評價各集中式飲用水水源地水質(zhì)綜合類別,而且可從模型輸出值大小客觀反映17個水庫型水源地水質(zhì)相對優(yōu)劣程度。
a) 依據(jù)隨機漂移粒子群(RDPSO)算法良好的全局搜索能力和隨機森林(RF)強分類集成器二者的優(yōu)點,提出RDPSO-RF水源地水質(zhì)綜合評價模型,并給出RDPSO-RF模型的構(gòu)建方法和實現(xiàn)步驟,進一步拓展了群體仿生智能算法優(yōu)化RF模型關鍵參數(shù)的應用范疇。
b) 基于GB 3838—2002《地表水環(huán)境質(zhì)量標準》指標分級閾值構(gòu)造樣本對RDPSO-RF、RDPSO-SVR模型進行訓練和測試,并利用測試好的RDPSO-RF、RDPSO-SVR對實例水質(zhì)綜合類別進行評價,樣本構(gòu)造方法和模型檢驗方法具有一定的參考意義。
c) 通過RDPSO-RF、RDPSO-SVR模型對測試樣本檢驗和對實例17個水源地水質(zhì)進行綜合評價,結(jié)果表明,RDPSO-RF模型評價精度遠優(yōu)于RDPSO-SVR模型,具有較好的評價精度和泛化能力。將RDPSO-RF模型用于集中式飲用水水源地水質(zhì)綜合評價是可行和有效的,可為相關評價研究提供參考。