陳 蓓,徐國(guó)偉,王文超,孫小妹,孫培冬,丁彥蕊
(1.無(wú)錫市濱湖區(qū)環(huán)境監(jiān)測(cè)站,江蘇 無(wú)錫 214072;2.江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇 無(wú)錫214122;3.江南大學(xué)化學(xué)與材料工程學(xué)院,江蘇 無(wú)錫 214122)
·環(huán)境預(yù)警·
PSO和SVM混合算法確定太湖入湖河流水質(zhì)主要影響因子
陳 蓓1,徐國(guó)偉1,王文超2,孫小妹2,孫培冬3,丁彥蕊2
(1.無(wú)錫市濱湖區(qū)環(huán)境監(jiān)測(cè)站,江蘇 無(wú)錫 214072;2.江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇 無(wú)錫214122;3.江南大學(xué)化學(xué)與材料工程學(xué)院,江蘇 無(wú)錫 214122)
以影響太湖入湖河流水質(zhì)的24個(gè)因子值為研究對(duì)象,將粒子群優(yōu)化算法(PSO)與支持向量機(jī)算法(SVM)相結(jié)合。PSO算法用于優(yōu)化SVM算法的參數(shù)c和g,有利于快速、高效地確定c和g的全局最優(yōu)值;SVM算法基于最優(yōu)的c和g,分別以24,21,18,15,12,9和6個(gè)因子作為特征向量預(yù)測(cè)水質(zhì)的污染程度。結(jié)果表明,當(dāng)特征向量為9個(gè)影響因子時(shí)預(yù)測(cè)率最高。其參數(shù)c=18.56,g=1.35,對(duì)應(yīng)的預(yù)測(cè)率為:全局預(yù)測(cè)率92.59%,重度污染水質(zhì)預(yù)測(cè)率88.89%,輕度污染水質(zhì)預(yù)測(cè)率94.45%。因此,通過(guò)PSO和SVM混合算法,可以確定影響太湖入湖河流水質(zhì)的主要因子,利用這些主要因子對(duì)水質(zhì)進(jìn)行預(yù)測(cè)預(yù)警,不但可以節(jié)省時(shí)間,而且可以得到精確的結(jié)果。
粒子群優(yōu)化算法;支持向量機(jī);水體水質(zhì);影響因子
自2001年以來(lái),無(wú)錫市濱湖區(qū)環(huán)境監(jiān)測(cè)站對(duì)流入太湖的多條河流進(jìn)行了氨氮(NH3-N)、總氮(TN)、高錳酸鹽指數(shù)(CODMn)、總磷(TP)、石油類、鎘(Cd)、鉛(Pb)、砷(As)、溶解氧(DO)、汞(Hg)、硒(Se)、pH 值、水溫、銅(Cu)、氟化物(F-)、硫化物、電導(dǎo)率、5日生化需氧量(BOD5)、化學(xué)需氧量(CODCr)、鋅(Zn)、揮發(fā)酚、氰化物(CN-)、六價(jià)鉻(Cr6+)、陰離子表面活性劑(LAS)共計(jì)24個(gè)河流水質(zhì)影響因子的檢測(cè)。由于河流水體的水質(zhì)狀況是由上述多個(gè)水質(zhì)指標(biāo)組成的復(fù)雜系統(tǒng),在眾多的因子中,有的因子是影響水體水質(zhì)的主要因子,有的因子之間存在錯(cuò)綜復(fù)雜的關(guān)系。因此,在分析過(guò)程中可能會(huì)出現(xiàn)因?yàn)橹笜?biāo)間存在共線性問(wèn)題而無(wú)法得到正確結(jié)論的情況。為了更好地評(píng)價(jià)水體的水質(zhì),需要確定影響水質(zhì)的主要因子,并以此進(jìn)行水體水質(zhì)的監(jiān)控和預(yù)警。
目前評(píng)價(jià)水體水質(zhì)的方法主要有主成分分析法和綜合污染指數(shù)法。主成分分析法是判斷影響水質(zhì)的主要因子的方法之一[1-5]。河流水質(zhì)系統(tǒng)是一個(gè)由多因子構(gòu)成的復(fù)雜系統(tǒng),其綜合評(píng)價(jià)的數(shù)量化指標(biāo)很多。主成分分析法是利用降維的思想,把多指標(biāo)轉(zhuǎn)化為少數(shù)幾個(gè)綜合指標(biāo),這樣可以在原始數(shù)據(jù)信息量丟失最小的情況下,減少評(píng)價(jià)指標(biāo),同時(shí)客觀地確定權(quán)重,減少人為干預(yù)。然而主成分分析法是一種線性降維技術(shù),表現(xiàn)為其主成分是原始變量的線性組合。而在實(shí)際的水質(zhì)預(yù)測(cè)中,各指標(biāo)間有時(shí)存在非線性關(guān)系,主成分與原始數(shù)據(jù)之間也呈現(xiàn)非線性關(guān)系,線性的降維不能真實(shí)地反映出指標(biāo)間的關(guān)系。綜合污染指數(shù)法是另一種判斷影響水質(zhì)的主要因子的方法[6]。綜合污染指數(shù)是各項(xiàng)評(píng)價(jià)指標(biāo)的污染指數(shù)之和,污染分擔(dān)率是其中某項(xiàng)指標(biāo)的污染分指數(shù)占綜合污染指數(shù)的比例,分擔(dān)率最大的指標(biāo)為首要污染物。然而該方法沒(méi)有考慮因子之間的相關(guān)性。
筆者采用基于粒子群優(yōu)化算法(PSO)和支持向量機(jī)算法(SVM)的混合算法,利用PSO優(yōu)化SVM算法的參數(shù)c和g,有利于快速、高效地確定c和g的全局最優(yōu)值;接著將測(cè)定的河流水質(zhì)的24種影響因子,隨機(jī)分為含有 24,21,18,15,12,9 及6種影響因子的數(shù)據(jù)集,分別以這些影響因子為特征向量,對(duì)水質(zhì)進(jìn)行預(yù)測(cè),通過(guò)預(yù)測(cè)率高低確定太湖入湖河流水質(zhì)的主要影響因子。該方法能夠準(zhǔn)確地從影響水質(zhì)的各種因子中識(shí)別出主要因子,為河流水質(zhì)預(yù)警提供了有力證據(jù)。
研究對(duì)象是無(wú)錫市濱湖區(qū)環(huán)境監(jiān)測(cè)站測(cè)定的24條太湖入湖河流水質(zhì)影響因子,時(shí)間為2001年1月—2009年12月,共篩選出256個(gè)樣本。
1.2.1 數(shù)據(jù)的歸一化
由于測(cè)定的24個(gè)因子的數(shù)值范圍差別很大,所以有必要對(duì)數(shù)據(jù)進(jìn)行歸一化。筆者采用映射函數(shù)將所有的數(shù)據(jù)都映射到0~1的范圍。
1.2.2 PSO 和 SVM 預(yù)測(cè)
PSO是受人工生命研究結(jié)果的啟發(fā),通過(guò)模擬鳥群覓食過(guò)程中的遷徙和群聚行為而提出的一種基于群體智能的全局隨機(jī)搜索算法,是一種通過(guò)疊代搜尋最優(yōu)值的優(yōu)化工具,在多目標(biāo)優(yōu)化、分類、模式識(shí)別等方面有廣泛的應(yīng)用[7-9]。
SVM是建立在統(tǒng)計(jì)學(xué)習(xí)理論的VC維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理基礎(chǔ)上的,根據(jù)有限的樣本信息在模型的復(fù)雜性和學(xué)習(xí)能力之間尋求最佳折衷,以期獲得最好的推廣能力的方法。在解決小樣本、非線性及高維模式識(shí)別中表現(xiàn)出許多特有的優(yōu)勢(shì)[10-12]。
將PSO和SVM算法結(jié)合,利用PSO優(yōu)化SVM的參數(shù),根據(jù)SVM的預(yù)測(cè)率對(duì)影響水質(zhì)的主要因素進(jìn)行識(shí)別。
太湖入湖河流水質(zhì)主要影響因子的分析過(guò)程涉及到的分類問(wèn)題是一個(gè)二分類的線性不可分問(wèn)題。訓(xùn)練集為{(x1,y1),(x2,y2),…,(xn,yn)},其中 xi∈Tn為輸入向量,輸出向量為 yi∈{0,1},用一個(gè)超平面將訓(xùn)練集劃分開(kāi),該超平面為W·X+b=0,W和b決定了超平面的位置,W·X為兩個(gè)向量的內(nèi)積。為了得到最優(yōu)的劃分,該問(wèn)題被轉(zhuǎn)化為求最優(yōu)化的超平面。
式中:ξi——松弛因子;c——對(duì)錯(cuò)分樣本的懲罰因子。
令f(X)=W·X+b,上式的優(yōu)化問(wèn)題可轉(zhuǎn)化為:
對(duì)于非線性可分問(wèn)題,可以通過(guò)一個(gè)映射函數(shù)(核函數(shù)),將低維的輸入空間Tn映射到高維的特征空間H,使線性可分。問(wèn)題就可以被描述為,Ψ:Tn→H映射到高維空間H中,根據(jù)泛函數(shù)的有關(guān)理論,只要一種核函數(shù)滿足Mercer條件,它就對(duì)應(yīng)某一空間中的內(nèi)積,則核函數(shù)K(Xi,Xj)=Ψ(Xi)·Ψ(Xj),則優(yōu)化問(wèn)題轉(zhuǎn)化為:
從上式可以看出,不需要知道H和Ψ,只需要知道合適的核函數(shù)K和c就可以確定支持向量。
該處使用的核函數(shù)為徑向基(RBF)核:K(Xi,Xj)=exp(-g||Xi-Xj||)2。RBF核在低維、高維、小樣本、大樣本等情況下都是通用的,是比較理想的分類依據(jù)函數(shù),也是SVM默認(rèn)的核函數(shù)。
將徑向基函數(shù)帶入上式,最優(yōu)化問(wèn)題就轉(zhuǎn)化為下面的最小化問(wèn)題。
參數(shù)c的作用是在確定數(shù)據(jù)的子空間中調(diào)節(jié)學(xué)習(xí)機(jī)器置信區(qū)間范圍,不同數(shù)據(jù)子空間中最優(yōu)化的c不同。核參數(shù)g的改變實(shí)際上隱含地改變了映射函數(shù),從而改變樣本空間分布的復(fù)雜程度,也就決定了線性分類達(dá)到的最小誤差。
使用PSO算法的主要目的是尋找SVM的參數(shù)c和g的最優(yōu)值,以實(shí)現(xiàn)整個(gè)過(guò)程的最優(yōu)化。
優(yōu)化過(guò)程分為如下步驟:
(1)數(shù)據(jù)集的劃分
首先是將數(shù)據(jù)集劃分為訓(xùn)練集和預(yù)測(cè)集。將數(shù)據(jù)集分成10份,取其中1份作為預(yù)測(cè)集,剩下的作為訓(xùn)練集,如此循環(huán)10次。然后賦值給訓(xùn)練集和預(yù)測(cè)集以及相關(guān)標(biāo)簽值。
(2)PSO算法進(jìn)行參數(shù)優(yōu)化
PSO算法是基于群體的行為,根據(jù)對(duì)環(huán)境的適應(yīng)度將群體中的個(gè)體移動(dòng)到好的區(qū)域。具體過(guò)程如下:
①初始化粒子群微粒的位置和速度,并初始化SVM的參數(shù)。
②評(píng)價(jià)粒子群中每個(gè)微粒的適應(yīng)度。
③對(duì)每個(gè)微粒,將它的適應(yīng)度值和經(jīng)歷過(guò)的最好位置pbest作比較,選擇好的作為當(dāng)前最好位置pbest。
④對(duì)每個(gè)微粒,將它的適應(yīng)度和經(jīng)歷過(guò)的全局最好位置gbest作比較,如果它的適應(yīng)度更好則重新設(shè)置gbest。
⑤利用粒子速度更新方程變化微粒的位置和速度,進(jìn)行多次迭代,尋找全局最優(yōu)的適應(yīng)度值。
⑥分類器評(píng)價(jià)。
算法的評(píng)價(jià)分為局部預(yù)測(cè)率和全局預(yù)測(cè)率,只有兩種預(yù)測(cè)率都較高時(shí)所構(gòu)建的分類器才可靠。
局部預(yù)測(cè)率:
式中:N——數(shù)據(jù)集中所有樣本的個(gè)數(shù);ρ——水質(zhì)的種類(輕度污染和重度污染兩類);ni——第i類水質(zhì)樣本的個(gè)數(shù);Ti——第i類水質(zhì)樣本中成功預(yù)測(cè)的樣本的個(gè)數(shù)。通過(guò)權(quán)衡局部預(yù)測(cè)率和總預(yù)測(cè)率來(lái)確定分類的條件。
以太湖入湖的十幾條河流水質(zhì)的近千個(gè)影響因子的監(jiān)測(cè)數(shù)據(jù)為依據(jù)進(jìn)行處理,分別以24,21,18,15,12,9和 6 個(gè)因子作為特征向量,利用 PSO算法優(yōu)化參數(shù),構(gòu)建預(yù)測(cè)水質(zhì)污染的分類器。不同因子作為特征向量時(shí)的預(yù)測(cè)效果見(jiàn)表1。
表1 不同因子作為特征向量時(shí)的預(yù)測(cè)效果 %
續(xù)表1%
以預(yù)測(cè)率的高低來(lái)判斷影響因子集合與水質(zhì)優(yōu)劣的相關(guān)性。
當(dāng)輸入特征向量是9個(gè)因子(NH3-N、TN、CODMn、TP、石油類、Cd、Pb、As、DO)時(shí)局部預(yù)測(cè)率和全局預(yù)測(cè)率都相對(duì)較好。因此,以這9個(gè)因子作為SVM的特征向量,利用PSO算法優(yōu)化SVM的參數(shù)c和g,結(jié)果見(jiàn)表2。
表2 9個(gè)因子作為特征向量時(shí)的參數(shù)和對(duì)應(yīng)預(yù)測(cè)率
由表2可以看出,c和g不同時(shí),所得到的預(yù)測(cè)率也不同,全局預(yù)測(cè)率最高為92.59%,污染水質(zhì)預(yù)測(cè)率最高為100%,未污染水質(zhì)預(yù)測(cè)率最高為94.45%,考慮到全局預(yù)測(cè)率和局部預(yù)測(cè)率的平衡,選擇參數(shù) c=18.56,g=1.35,對(duì)應(yīng)的預(yù)測(cè)率為:全局預(yù)測(cè)率92.59%,污染水質(zhì)預(yù)測(cè)率88.89%,未污染水質(zhì)預(yù)測(cè)率94.45%。
從預(yù)測(cè)率可知,構(gòu)建的支持向量機(jī)分類器對(duì)輕度污染水質(zhì)和重度污染水質(zhì)都有較好的預(yù)測(cè)能力。該支持向量機(jī)分類器的最終決策函數(shù)由少數(shù)的支持向量確定,其優(yōu)點(diǎn)是:①方法使用簡(jiǎn)單,具有較好的魯棒性;②復(fù)雜度低,運(yùn)行速度快;③具有較好的推廣能力;④該方法不同于其他的機(jī)器學(xué)習(xí)算法,它需要的先驗(yàn)干預(yù)很少。因此該分類器適合于環(huán)境監(jiān)測(cè)站對(duì)水質(zhì)狀況進(jìn)行監(jiān)測(cè),并為實(shí)時(shí)作出預(yù)警提供有力支持。
筆者將PSO和SVM算法結(jié)合,利用PSO優(yōu)化了SVM的參數(shù)c和g,接下來(lái)SVM利用優(yōu)化的參數(shù),分別以 24,21,18,15,12,9 和 6 個(gè)影響水質(zhì)的因子為特征向量,分別構(gòu)建了分類器。發(fā)現(xiàn)以不同影響因子個(gè)數(shù)作為特征向量時(shí),預(yù)測(cè)率有很大差別,這表明,并不是影響因子越多,預(yù)測(cè)率越高,相反,只要幾個(gè)關(guān)鍵因子就可以將重度污染水質(zhì)和輕度污染水質(zhì)分類,當(dāng)然,當(dāng)因子過(guò)少時(shí),有的重要因子會(huì)丟失,同樣會(huì)產(chǎn)生不高的預(yù)測(cè)率。因此通過(guò)PSO和SVM的混合算法,可以確定影響太湖入湖河流水質(zhì)的主要因子,利用這些主要因子對(duì)水質(zhì)進(jìn)行預(yù)測(cè)預(yù)警,不但可以節(jié)省時(shí)間,而且可以得到精確的結(jié)果。在以后的河流監(jiān)控過(guò)程中,也只需要對(duì)這些主要因子進(jìn)行重點(diǎn)監(jiān)控即可。
[1]劉德林,劉賢趙.主成分分析在河流水質(zhì)綜合評(píng)價(jià)中的應(yīng)用[J].水土保持研究,2006,13(3):124-128.
[2]伊元榮,海米提·依米提,王濤,等.主成分分析法在城市河流水質(zhì)評(píng)價(jià)中的應(yīng)用[J].干旱區(qū)研究,2008,25(4):497-501.
[3]左一鳴,崔廣柏,顧令宇.太湖水質(zhì)指標(biāo)因子分析[J].遼寧工程技術(shù)大學(xué)學(xué)報(bào):自然科學(xué)版,2006,25(2):312-314.
[4]魯斐,李磊.主成分分析法在遼河水質(zhì)評(píng)價(jià)中的應(yīng)用[J].水利科技與經(jīng)濟(jì),2006,10(10):660-662.
[5]王曉鵬.河流水質(zhì)綜合評(píng)價(jià)之主成分分析方法[J].數(shù)理統(tǒng)計(jì)與管理,2000,31(3):49-52.
[6]劉春燕.深圳市河流水質(zhì)評(píng)價(jià)指標(biāo)篩選方案探討[J].干旱環(huán)境監(jiān)測(cè),2010,24(1):47-50.
[7]KENNEDY J,EBERHART R.Particle Swarm Optimization[C].Proceedings of IEEE International Conference on Neural Networks.IV.1995:1942-1948.
[8]SHEN Q,MEI Z,YE B X.Simultaneous genes and training samples selection by modified particle swarm optimization for gene expression data classification[J].Computers in Biology and Medicine,2009,39(7):646-649.
[9]PEDERSEN M E H,CHIPPERFIELD A J.Simplifying particle swarm optimization[J].Applied Soft Computing,2010,10(2):618-628.
[10]VAPNIK V.The nature of statistical learning theory[M].New York:Springer,1995.
[11]HUA S,SUN Z.Support vector machine approach for protein subcellular localization prediction[J].Bioinformatics,2001,17(8):721-728.
[12]PARK K J,KANEHISA M.Prediction of protein subcellular locations by support vector machines using compositions of amino acids and amino acid pairs[J].Bioinformatics,2003,19(13):1656-1663.
Study on the Key Factors Influenced the Water Quality of Rivers Flowing into Taihu Lake Using PSO and SVM Hybrid Algorithm
CHEN Bei1,XU Guo-wei1,WANG Wen-chao2,SUN Xiao-mei2,SUN Pei-dong3,DING Yan-rui2
(1.Binhu District Environmental Monitoring Station,Wuxi,Jiangsu 214072,China;2.School of IOT Engineering,Jiangnan University,Wuxi,Jiangsu 214122,China;3.School of Chemical and Material Engineering,Jiangnan University,Wuxi,Jiangsu 214122,China)
24 factors that influenced the water quality of rivers flowing into Taihu Lake was studied by combining the PSO and the SVM algorithm.The PSO is used to optimize the parameters c and g in SVM,so that the global optimum value of c and g could be searched efficiently and rapidly.Then we use SVM algorithm and take 24,21,18,15,12,9 and 6 influence factors as feature vectors to predict water quality based on the optimal c and g.The results showed that the prediction accuracy is the highest when 9 influence factors is the feature vector.The values of parameter c and g are 18.56 and 1.35 respectively.The corresponding prediction accuracies are computed as follows:the global prediction accuracy is 92.59%,the prediction accuracy of severe pollution water quality is 88.89%,the lightly polluted water quality is 94.45%.Therefore,warning prediction of water quality using these factors through the method of PSO and SVM hybrid algorithm is time saving and accurate.
Particle swarm optimization;supported vector machines;water quality;impact factor
X11
A
1674-6732(2012)-02-0007-04
10.3969/j.issn.1674-6732.2012.02.002
2011-06-14
江蘇省環(huán)境監(jiān)測(cè)科研基金項(xiàng)目(0902)。
陳蓓(1966—),女,高級(jí)工程師,本科,從事環(huán)境監(jiān)測(cè)工作。