本發(fā)明涉及環(huán)境檢測領(lǐng)域中道邊空氣污染物濃度相關(guān)問題,具體涉及一種基于重構(gòu)深度學(xué)習(xí)的道邊空氣污染物濃度預(yù)測方法。
背景技術(shù):
城市污染物主要是由交通排放產(chǎn)生的,主要污染物有一氧化碳CO、二氧化碳CO2、氮氧化物NOx等。CO是穩(wěn)定的物質(zhì),不會在空氣中與其他污染物或物質(zhì)發(fā)生化學(xué)反應(yīng),NO能與臭氧O3反映生成NO2,而NO2也能轉(zhuǎn)變?yōu)镹O。CO不僅有毒,且與CO2均為溫室氣體,產(chǎn)生的溫室效應(yīng)對全球環(huán)境有重要危害,NO2是造成肺功能損害的主要物質(zhì),因此對道邊空氣污染物濃度進(jìn)行實(shí)時預(yù)測對環(huán)境管理和交通規(guī)劃具有重要意義。
受經(jīng)濟(jì)水平和科研能力的限制,我國空氣質(zhì)量監(jiān)測工作起步較晚,自上世紀(jì)七十年代開始到現(xiàn)在,經(jīng)過四十多年的發(fā)展,目前我國很多省市已經(jīng)建立起空氣質(zhì)量監(jiān)測系統(tǒng),但針對道邊空氣污染物濃度的檢測仍存在很大的進(jìn)步空間。其中的主要原因有:一、目前用于道邊空氣污染物濃度檢測的設(shè)備主要為空氣監(jiān)測站,該設(shè)備價格昂貴,只能在城市內(nèi)布設(shè)有限數(shù)量的站點(diǎn),然而城市路網(wǎng)龐大,拓?fù)浣Y(jié)構(gòu)和周圍環(huán)境復(fù)雜,通過檢測設(shè)備實(shí)現(xiàn)城市各區(qū)域道邊空氣污染物濃度的實(shí)時預(yù)測可行性很低。二、基于設(shè)備全面檢測的低可行性,各國學(xué)者力圖通過預(yù)測方法來解決這個問題,目前國內(nèi)外針對道邊空氣污染物濃度的研究中,采用的方法主要分兩大類:1、高斯模型以及后續(xù)的以高斯模型為基礎(chǔ)的一系列線源模型,這類方法針對不同狀態(tài)的道路需采用不同的模型,且對復(fù)雜道路的模型準(zhǔn)確性不高;2、基于神經(jīng)網(wǎng)絡(luò)的道邊污染物濃度檢測,這類方法能通過識別輸入、輸出數(shù)據(jù)之間簡單的非線性關(guān)系,但在學(xué)習(xí)輸入、輸出數(shù)據(jù)內(nèi)部之間更本質(zhì)的特征映射方面有很大局限性,每個神經(jīng)網(wǎng)絡(luò)只能表征一種污染物與輸入的關(guān)系,在實(shí)時性和遷移性上存在很大缺陷。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明技術(shù)解決問題:克服現(xiàn)有技術(shù)的不足,提供一種基于重構(gòu)深度學(xué)習(xí)的道邊空氣污染物濃度預(yù)測方法,能夠?qū)崿F(xiàn)具有良好遷移性的更高精度的實(shí)時預(yù)測。
本發(fā)明技術(shù)解決方案:一種基于重構(gòu)深度學(xué)習(xí)的道邊空氣污染物濃度預(yù)測方法包括以下步驟:
步驟1:基于重構(gòu)深度學(xué)習(xí)方法,根據(jù)道邊空氣污染物的時空分布特點(diǎn),構(gòu)建深度重構(gòu)Elman模型;所述污染物包括一氧化碳CO、二氧化碳CO2、氮氧化物NOx;
步驟2:根據(jù)限制玻耳茲曼機(jī)的特征,從道邊空氣污染物濃度數(shù)據(jù)集中隨機(jī)選取部分?jǐn)?shù)據(jù),完成深度重構(gòu)Elman模型的初始化;
1)對道路空氣污染物濃度數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行歸一化處理,并將數(shù)據(jù)集按照60%、20%、20%的比例劃分為訓(xùn)練集、驗(yàn)證集、測試集。
2)對限制玻爾茲曼機(jī)設(shè)置合適的重構(gòu)誤差閾值,利用訓(xùn)練集中的輸入數(shù)據(jù)對限制玻爾茲曼機(jī)進(jìn)行訓(xùn)練,其中可視層單元個數(shù)為14,隱含層單元個數(shù)為37,
關(guān)于狀態(tài)的損失函數(shù)J1(v,h,θ)為:
其中,vi為影響道邊空氣污染物濃度的因素之一即可視層的第i個單元的狀態(tài),hj為vi的另一種表達(dá)即隱藏層的第j個單元的狀態(tài),θ={R,a,b},a、b分別為可視單元和隱含單元的偏差向量,ai表示可視層的第i個單元的偏差,bj表示隱含層的第j個單元的偏差,R是權(quán)重矩陣,Rij表示可視層的第i個單元與隱含層的第j個單元的連接權(quán)重,N、L分別為可視單元和隱含單元的數(shù)量,Σ為求和符號,J1(v,h,θ)為限制玻爾茲曼機(jī)關(guān)于狀態(tài)v、h、θ的損失函數(shù)。
限制玻爾茲曼機(jī)參數(shù)的梯度求解方法如下:
其中,p(v;θ)是可視單元的概率,p(hj=1|v;θ)是隱含單元的條件概分布,logp(v,θ)為p(v;θ)的對數(shù)似然估計(jì),log表示取對數(shù)操作,是求偏導(dǎo)符號,Σ為求和符號,ΔRij、Δai、Δbi分別是對數(shù)似然估計(jì)對權(quán)重參數(shù)、可視單元偏差、隱含單元偏差的偏導(dǎo)數(shù),vi為影響道邊空氣污染物濃度的因素之一即可視層的第i個單元的狀態(tài),Rij表示可視層的第i個單元與隱含層的第j個單元的連接權(quán)重,ai表示可視層的第i個單元的偏差,bj表示隱含層的第j個單元的偏差,θ={R,a,b}。
3)初始化Elman網(wǎng)絡(luò)。其中,用限制玻爾茲曼機(jī)中訓(xùn)練好的矩陣R初始化輸入層權(quán)重W2,中間層權(quán)重W1和承接層權(quán)重W3用零矩陣初始化。
步驟3:采用梯度下降算法,對深度重構(gòu)Elman模型進(jìn)行訓(xùn)練,得到能夠?qū)Φ肋吙諝馕廴疚餄舛冗M(jìn)行實(shí)時預(yù)測的深度重構(gòu)Elman模型,以實(shí)時的路網(wǎng)信息、氣象信息、交通信息因素作為模型的輸入,模型輸出為對應(yīng)的實(shí)時道邊空氣污染物濃度。所述污染物包括一氧化碳CO、二氧化碳CO2、氮氧化物NOx,所述路網(wǎng)信息包括路段車道數(shù)、道路綠化程度、道路建筑物高度、建筑物與道邊距離;所述氣象信息包括溫度、濕度、天氣、風(fēng)速、風(fēng)向;所述交通信息車種比例、車流量、通過時間、停止時間、擁塞時間。具體方法如下:
1)根據(jù)深度重構(gòu)Elman模型的非線性狀態(tài)空間表達(dá)式計(jì)算第p次迭代輸出的道邊空氣污染物濃度y(p),
主網(wǎng)絡(luò)輸入層、中間層、承接層、輸出層的單元個數(shù)分別為14、37、37、3,次網(wǎng)絡(luò)可視層、隱含層的單元個數(shù)分別為14、37,其非線性狀態(tài)空間表達(dá)式為:
y(p)=g(W1(p)H(p))
H(p)=f(W2(p)u+W3(p)Xc(p))
Xc(p)=αH(p-1)
其中,y(p)為第p次迭代輸出的道邊空氣污染物濃度,H(p)為中間層第p次迭代輸出,H(p-1)為中間層第p-1次迭代輸出,Xc(p)為隱含層第p次迭代輸出,p為迭代次數(shù),g和f分別為激活函數(shù)purelin和sigmoid,α是承接層的自循環(huán)系數(shù),W1(p)、W2(p)、W3(p)分別為深度重構(gòu)Elman模型的中間層、輸入層、承接層第p次迭代的權(quán)重參數(shù),u為輸入層輸入即路網(wǎng)信息、氣象信息、交通信息因素。
2)根據(jù)梯度下降算法計(jì)算道邊空氣污染物濃度損失函數(shù)J2(p),
若污染物濃度損失函數(shù)的值小于初始化中設(shè)置的誤差閾值或者迭代次數(shù)p值大于等于初始化中設(shè)置的最大迭代次數(shù),則訓(xùn)練結(jié)束,進(jìn)入步驟(5),否則進(jìn)去步驟(3),
其中,J2(p)是道邊空氣污染物濃度損失函數(shù),yd是道邊空氣污染物濃度期望輸出,p是迭代次數(shù),y(p)是第p次迭代輸出的道邊空氣污染物濃度,T是轉(zhuǎn)置符號。
3)根據(jù)梯度下降算法計(jì)算道邊空氣污染物濃度損失函數(shù)關(guān)于深度重構(gòu)Elman模型的權(quán)重參數(shù)的偏導(dǎo)數(shù),計(jì)算方法如下:
其中,J2(p)是道邊空氣污染物濃度損失函數(shù),n表示輸入層的第n個單元,l表示中間層的第l個單元,k表示隱含層的第k個單元,p是迭代次數(shù),是求偏導(dǎo)符號,是道邊空氣污染物濃度損失函數(shù)關(guān)于的偏導(dǎo)數(shù),η1、η2、η3分別是的學(xué)習(xí)率,分別是深度重構(gòu)Elman模型的中間層到輸出層權(quán)重參數(shù)、輸入層到中間層權(quán)重參數(shù)、承接層到中間層權(quán)重參數(shù)。
4)然后根據(jù)權(quán)重參數(shù)的偏導(dǎo)數(shù)對權(quán)重參數(shù)進(jìn)行更新,更新規(guī)則如下:
W1(p+1)=W1(p)+ΔW1(p)
W2(p+1)=W2(p)+ΔW2(p)
W3(p+1)=W3(p)+ΔW3(p)
更新完畢后,返回步驟1)。
5)訓(xùn)練結(jié)束,模型的權(quán)重參數(shù)確定,此時的模型即為能夠?qū)Φ肋吙諝馕廴疚餄舛冗M(jìn)行實(shí)時預(yù)測的深度重構(gòu)Elman模型,將實(shí)時的路網(wǎng)信息、氣象信息、交通信息因素輸入到模型中,模型即可輸出預(yù)測的實(shí)時道邊空氣污染物濃度結(jié)果。
本發(fā)明的優(yōu)點(diǎn)在于:本發(fā)明考慮到目前道邊空氣污染物濃度實(shí)時預(yù)測的重要性和方法的重大局限性,不同于以往的簡單預(yù)測方法,基于道邊空氣污染物濃度的誘發(fā)因素的多樣性、以及歷史數(shù)據(jù)相關(guān)性特征,基于重構(gòu)深度學(xué)習(xí)的具有歷史記憶能力的深度重構(gòu)Elman模型,由于該模型具有深層特征映射和局部記憶能力,能夠?qū)W習(xí)到道邊空氣污染物濃度與其受影響因素之間的本質(zhì)特征映射,能夠?qū)W習(xí)到路網(wǎng)信息(路段車道數(shù)、道路綠化程度、道路建筑物高度、建筑物與道邊距離)、氣象信息(溫度、濕度、天氣、風(fēng)速、風(fēng)向)、交通信息(車種比例、車流量、通過時間、停止時間、擁塞時間)等因素與道邊空氣污染物濃度之間的本質(zhì)特征映射,并且能夠通過該模型實(shí)現(xiàn)對一氧化碳CO、二氧化碳CO2、氮氧化物NOx的更高精度得實(shí)時預(yù)測,且具有很好的遷移性。
附圖說明
圖1為本發(fā)明方法的流程示意圖;
圖2為深度重構(gòu)Elman模型的結(jié)構(gòu)示意圖。
具體實(shí)施方式
如圖1所示,本發(fā)明具體實(shí)現(xiàn)如下:
一、基于道邊空氣污染物濃度的誘發(fā)因素的多樣性、以及歷史數(shù)據(jù)相關(guān)性特征,結(jié)合限制波爾茲曼機(jī)和Elman網(wǎng)絡(luò)的特點(diǎn),構(gòu)建具有前饋連接和反饋連接結(jié)構(gòu),含有局部記憶能力,主網(wǎng)絡(luò)由輸入層、承接層、中間層和輸出層構(gòu)成,用于主網(wǎng)絡(luò)初始化的次網(wǎng)絡(luò)含有一個可視層和一個隱含層,輸入層、輸出層、可視層單元個數(shù)分別為14、3、14的深度重構(gòu)Elman模型。
如圖2所示,圖左邊為次網(wǎng)絡(luò),圖右邊為主網(wǎng)絡(luò),N為次網(wǎng)絡(luò)可視層可視單元數(shù)量,主網(wǎng)絡(luò)輸入層的單元個數(shù)與次網(wǎng)絡(luò)可視單元數(shù)量相同,L為次網(wǎng)絡(luò)隱含層隱含單元的數(shù)量、主網(wǎng)絡(luò)中間層和承接層單元個數(shù)與次網(wǎng)絡(luò)隱含層單元個數(shù)相同,M為主網(wǎng)絡(luò)輸出單元個數(shù),u1,u2...uN表示主網(wǎng)絡(luò)輸入層的輸入即路網(wǎng)信息、氣象信息、交通信息因素,z-1代表時延,p為迭代次數(shù),y(p)為第p次迭代主網(wǎng)絡(luò)輸出層的輸出即道邊空氣污染物濃度,H(p)為主網(wǎng)絡(luò)中間層第p次迭代輸出,Xc(p)為隱含層第p次迭代輸出,f為激活函數(shù)purelin,α是承接層的自循環(huán)系數(shù),W1(p)、W2(p)、W3(p)分別為主網(wǎng)絡(luò)的中間層、輸入層、承接層第p次迭代的權(quán)重參數(shù),R為次網(wǎng)絡(luò)權(quán)重參數(shù)。
二、對建立的道路濃度數(shù)據(jù)集進(jìn)行預(yù)處理
1)對道路濃度數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行歸一化處理,以提高模型訓(xùn)練速度和精度,針對數(shù)據(jù)集中數(shù)據(jù)的特點(diǎn),采用min-max標(biāo)準(zhǔn)化方法:
其中,x為道路濃度數(shù)據(jù)集中的數(shù)據(jù),xmin為x的最小值,xmax為x的最大值,x'為對x歸一化處理后的值。
2)為提高模型的泛化能力,將道路濃度數(shù)據(jù)集按照60%、20%、20%的比例劃分為訓(xùn)練集、驗(yàn)證集、測試集。
三、對限制玻爾茲曼機(jī)訓(xùn)練,完成輸入層權(quán)重W2的初始化
1)對限制玻爾茲曼機(jī)設(shè)置學(xué)習(xí)率和合適的重構(gòu)誤差閾值,學(xué)習(xí)速率在0.01-0.1之間取值,重構(gòu)誤差閾值在0.001-0.00001之間取值,用零矩陣對限制玻爾茲曼機(jī)的參數(shù)矩陣進(jìn)行初始化。
2)利用訓(xùn)練集中的輸入數(shù)據(jù)對限制玻爾茲曼機(jī)進(jìn)行訓(xùn)練,根據(jù)下式求解參數(shù)ΔRij,ai,bj的梯度。
其中
這里,ΔRij、Δai、Δbi分別是對數(shù)似然估計(jì)對權(quán)重參數(shù)、可視單元偏差、隱含單元偏差的偏導(dǎo)數(shù),是求偏導(dǎo)符號,log表示取對數(shù)操作,logp(v,θ)為p(v;θ)的對數(shù)似然估計(jì),p(v;θ)是可視單元的概率,Rij表示可視層的第i個單元與隱含層的第j個單元的連接權(quán)重,ai表示可視層的第i個單元的偏差,bj表示隱含層的第j個單元的偏差,vi為影響道邊空氣污染物濃度的因素之一即可視層的第i個單元的狀態(tài),Σ為求和符號,p(hj=1|v;θ)是隱含單元的條件概分布,θ={R,a,b},exp表示以自然常數(shù)e為底的指數(shù)函數(shù),v表示可視層單元,h表示隱藏層單元,N表示可視層單元數(shù)量。
3)利用下式對Rij(t)、ai(t)、bj(t)進(jìn)行參數(shù)更新:
Rij(t)=Rij(t-1)+φΔRij
ai(t)=ai(t-1)+φΔai
bj(t)=bj(t-1)+φΔbj
其中,φ是限制玻爾茲曼機(jī)學(xué)習(xí)率,t是限制玻爾茲曼機(jī)迭代次數(shù),Rij表示可視層的第i個單元與隱含層的第j個單元連接權(quán)重,ai表示可視層的第i個單元的偏差,bj表示隱含層的第j個單元的偏差。
4)根據(jù)下式計(jì)算重構(gòu)誤差:
e=([vi]d-[vi]m)T([vi]d-[vi]m)
其中,[vi]d是利用道邊空氣污染物濃度數(shù)據(jù)集部分輸入初始化的值,[vi]m是通過限制玻耳茲曼機(jī)重構(gòu)的vi,T是轉(zhuǎn)置。
5)檢查重構(gòu)誤差與設(shè)置的重構(gòu)誤差閾值之間的大小,若重構(gòu)誤差大于設(shè)置的閾值,則返回步驟2)繼續(xù),若重構(gòu)誤差小于設(shè)置的閾值,則限制玻耳茲曼機(jī)的訓(xùn)練結(jié)束,用Rij對Elman網(wǎng)絡(luò)輸入層權(quán)重W2進(jìn)行初始化。
四、初始化Elman網(wǎng)絡(luò)
1)設(shè)置合適的Elman網(wǎng)絡(luò)的誤差閾值、最大迭代次數(shù)Emax、承接層自循環(huán)系數(shù)α和學(xué)習(xí)速率η1,η2,η3,誤差閾值在0.001-0.00001之間取值,最大迭代次數(shù)一般取1000,學(xué)習(xí)速率在0.01-0.1之間取值,自循環(huán)系數(shù)一般設(shè)置為0.001。
2)用零矩陣初始化Elman網(wǎng)絡(luò)中間層權(quán)重W1和承接層權(quán)重W3,設(shè)置用零向量初始化承接層Xc。
3)根據(jù)數(shù)據(jù)集的特點(diǎn),將輸入層和輸出層單元個數(shù)分貝設(shè)置為14、3,中間層和承接成單元的個數(shù)是由實(shí)驗(yàn)確定的,根據(jù)實(shí)驗(yàn)誤差不斷調(diào)整中間層和承接層單元個數(shù),找到性能最優(yōu)的單元個數(shù)。
五、采用梯度下降法,結(jié)合數(shù)據(jù)集對Elman網(wǎng)絡(luò)進(jìn)行訓(xùn)練
1)根據(jù)下式計(jì)算輸出y(p):
y(p)=g(W1(p)H(p))
H(p)=f(W2(p)u+W3(p)Xc(p))
Xc(p)=αH(p-1)
其中,y(p)為第p次迭代輸出的道邊空氣污染物濃度,H(p)為中間層第p次迭代輸出,H(p-1)為中間層第p-1次迭代輸出,Xc(p)為隱含層第p次迭代輸出,p為迭代次數(shù),g和f分別為激活函數(shù)purelin和sigmoid,α是承接層的自循環(huán)系數(shù),W1(p)、W2(p)、W3(p)分別為深度重構(gòu)Elman模型的中間層到輸出層權(quán)重參數(shù)、輸入層到中間層權(quán)重參數(shù)、承接層到中間層的第p次迭代的權(quán)重參數(shù),u為輸入層輸入即路網(wǎng)信息、氣象信息、交通信息因素。
2)根據(jù)下式計(jì)算目標(biāo)損失函數(shù):
其中,J2(p)是道邊空氣污染物濃度損失函數(shù),yd是道邊空氣污染物濃度期望輸出,p是迭代次數(shù),y(p)是第p次迭代輸出的道邊空氣污染物濃度,T是轉(zhuǎn)置符號。
若目標(biāo)損失函數(shù)的值小于設(shè)置的誤差閾值或者p值大于等于設(shè)置的最大迭代次數(shù),則跳過步驟3)直接到步驟4),若目標(biāo)損失函數(shù)的值大于設(shè)置的誤差閾值,則進(jìn)入步驟3)。
3)根據(jù)下式計(jì)算權(quán)重的偏導(dǎo)數(shù):
其中,J2(p)是道邊空氣污染物濃度損失函數(shù),n表示輸入層的第n個單元,l表示中間層的第l個單元,k表示隱含層的第k個單元,p是迭代次數(shù),是求偏導(dǎo)符號,是道邊空氣污染物濃度損失函數(shù)關(guān)于的偏導(dǎo)數(shù),η1、η2、η3分別是的學(xué)習(xí)率,分別是深度重構(gòu)Elman模型的中間層到輸出層權(quán)重參數(shù)、輸入層到中間層權(quán)重參數(shù)、承接層到中間層權(quán)重參數(shù)。
然后,根據(jù)權(quán)重的偏導(dǎo)數(shù)對權(quán)重系數(shù)進(jìn)行更新:
W1(p+1)=W1(p)+ΔW1(p)
W2(p+1)=W2(p)+ΔW2(p)
W3(p+1)=W3(p)+ΔW3(p)
更新完畢后,返回步驟1)。
4)訓(xùn)練結(jié)束,模型的權(quán)重參數(shù)確定,此時的模型即為能夠?qū)Φ肋吙諝馕廴疚餄舛冗M(jìn)行實(shí)時預(yù)測的深度重構(gòu)Elman模型,將實(shí)時的路網(wǎng)信息、氣象信息、交通信息因素輸入到模型中,模型即可輸出預(yù)測的實(shí)時道邊空氣污染物濃度結(jié)果。
六、對訓(xùn)練得到的深度重構(gòu)Elman模型進(jìn)行分析和對比
經(jīng)分析和對比,相比于其他已有的方法,用深度重構(gòu)Elman模型可以更好地對道邊污染物濃度進(jìn)行實(shí)時預(yù)測,且具有很好的遷移性。
提供以上實(shí)施例僅僅是為了描述本發(fā)明的目的,而并非要限制本發(fā)明的范圍。本發(fā)明的范圍由所附權(quán)利要求限定。不脫離本發(fā)明的精神和原理而做出的各種等同替換和修改,均應(yīng)涵蓋在本發(fā)明的范圍之內(nèi)。