本發(fā)明屬于氣象預測領域,具體地說是基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法。
背景技術:
1、在o3濃度預測任務中,現(xiàn)有的時序預測方法主要有三類:基于傳統(tǒng)統(tǒng)計方法的預測模型,例如自回歸綜合移動平均模型(arima)、向量自回歸模型(var)等。這些模型只能利用歷史數(shù)據(jù),難以充分考慮影響o3濃度的氣象等多種因素,因此預測精度有限?;跈C器學習的預測模型,例如支持向量機模型(svr)、隨機森林模型(rf)等。這些模型相比統(tǒng)計模型能更好地處理非線性關系,但在處理多變量、強非線性的o3濃度預測問題時仍有不足?;谏疃葘W習的預測模型,例如長短期記憶網絡(lstm)、門控循環(huán)單元(gru)、卷積神經網絡(cnn)等。這些模型具有強大的非線性建模能力,是當前o3濃度預測的主流方法,但是未曾考慮數(shù)據(jù)當中的空間因素。
技術實現(xiàn)思路
1、針對現(xiàn)有技術的不足與未曾考慮空間因素,本發(fā)明提供一種基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,可更精準的預測多個區(qū)域的o3濃度。
2、本發(fā)明為實現(xiàn)上述目的所采用的技術方案是:基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,包括以下步驟:
3、步驟1、獲取污染物歷史濃度數(shù)據(jù)、國控站點地理位置信息以及氣象數(shù)據(jù),并對其進行數(shù)據(jù)預處理;
4、步驟2、構建基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測模型,根據(jù)預處理后的數(shù)據(jù)構建時空數(shù)據(jù)并作為模型的輸入數(shù)據(jù),以標簽數(shù)據(jù)為模型的輸出數(shù)據(jù),對模型進行預測學習迭代訓練,并反向調整網絡模型參數(shù)得到理想模型,使得理想模型能夠預測未來24小時不同區(qū)域的o3濃度;
5、步驟3、實時采集待測站點的污染物歷史濃度數(shù)據(jù)、國控站點地理位置信息以及氣象數(shù)據(jù)進行數(shù)據(jù)預處理,輸入理想模型自動預測未來24小時待測站點的o3濃度。
6、所述污染物歷史濃度數(shù)據(jù)包括pm2.5、o3、pm10、co、so2、no2;所述氣象數(shù)據(jù)包括氣溫、風速;所述國控站點地理位置信息為站點的經緯度數(shù)據(jù)。
7、所述數(shù)據(jù)預處理包括以下步驟:
8、步驟1.1、對污染物濃度數(shù)據(jù)和氣象數(shù)據(jù)進行數(shù)據(jù)清洗和歸一化處理;所述數(shù)據(jù)清洗包括填補缺失值和剔除異常值處理;
9、步驟1.2、根據(jù)國控站點地理位置信息構建鄰接矩陣;
10、所述填補缺失值包括:對每一個污染物及氣象字段對應的時間序列數(shù)據(jù),去除非數(shù)值值并使用插補方法插補數(shù)據(jù):a連續(xù)缺失3小時及以內的數(shù)據(jù),采用線性插值方法;b連續(xù)缺失4到6小時的數(shù)據(jù),采用三階樣條插值方法,且確保插值數(shù)據(jù)在上限閾值與下限值之間;c連續(xù)6個小時以上的缺失值,使用該小時的污染物濃度均值;所述剔除異常值處理為使用3σ檢測方法去除數(shù)據(jù)中的異常值。
11、所述構建鄰接矩陣包括:
12、定義鄰接矩陣用于表示任意兩個站點間距離,利用k最近鄰算法計算任意兩個站點間的距離,若該距離小于閾值則將這兩個站點在鄰接矩陣中對應的元素置1表示相鄰,否則置0。
13、所述歸一化處理為:按照如下公式對數(shù)據(jù)清洗后的污染物濃度數(shù)據(jù)、氣象數(shù)據(jù)和鄰接矩陣數(shù)據(jù)歸一化到[0,1]之間;
14、
15、其中x表示氣象污染物原始值,xscaler表示歸一化之后的值,xmax,xmin表示該特征的最大值和最小值。
16、所述時空數(shù)據(jù)形式為[n,t,d],n為站點序號,t為采樣周期時間,d為每個采樣時刻的歸一化后的污染物濃度和氣象數(shù)據(jù);
17、其中,以各個站點的最后24小時時間窗口的o3濃度數(shù)據(jù)[n,24,o3]作為該站點的預測標簽。
18、所述基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測模型結構包括:圖卷積網絡gcn、雙向長短期記憶網絡bilstm、注意力機制、時空數(shù)據(jù)特征全連接層;
19、將時空數(shù)據(jù)[n,t,d]和歸一化后的鄰接矩陣輸入臭氧濃度預測模型;經過圖卷積網絡gcn提取空間特征,得到具備空間特征的時序數(shù)據(jù);然后利用bilstm提取具備時空特征的時序數(shù)據(jù)的時間特征,輸出每個時刻點的隱藏狀態(tài);利用注意力機制處理這些隱藏狀態(tài);最后通過全連接層拼接時空特征,得到臭氧濃度預測結果。
20、圖卷積網絡gcn對輸入的鄰接矩陣進行處理,提取站點的空間經緯度特征z;
21、
22、其中,表示歸一化的鄰接矩陣,xl表示節(jié)點的特征矩陣,w0、w1表示神經網絡的可訓練參數(shù);
23、所述雙向長短期記憶網絡bilstm對輸入的預處理后的污染物濃度和氣象數(shù)據(jù)進行處理,提取時間特征;
24、進一步由注意力機制學習深度空間特征、時間特征;
25、將深度時間特征和時間特征進行展平操作,得到當前站點的時空數(shù)據(jù)的最終特征[1,n*f];其中1表示當前一個站點,n表示節(jié)點個數(shù),f表示經由模型學習得到的節(jié)點嵌入表示特征,其中包含o3濃度。
26、所述對模型進行預測學習迭代訓練包括:將模型輸入數(shù)據(jù)劃分為訓練集、驗證集和測試集,用訓練集數(shù)據(jù)進行訓練,用驗證集數(shù)據(jù)進行模型精度驗證,用測試集數(shù)據(jù)進行預測得到o3濃度。
27、本發(fā)明具有以下有益效果及優(yōu)點:
28、1.融合多源異構數(shù)據(jù)輸入,包括污染物濃度歷史數(shù)據(jù)、國控站點地理位置信息和氣象數(shù)據(jù),全面考慮影響因素。
29、2.采用雙分支架構分別處理不同類型輸入數(shù)據(jù),充分挖掘各自特征,最終進行特征融合,提高模型表達能力。
30、3.引入gcn捕捉站點空間相關性,并使用基于注意力機制的門控機制自適應學習不同gnc層的特征重要程度。
31、4.整體架構靈活可擴展,非線性建模能力強,預測精度和穩(wěn)健性優(yōu)于現(xiàn)有傳統(tǒng)模型和單一深度學習模型。
1.基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,包括以下步驟:
2.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述污染物歷史濃度數(shù)據(jù)包括pm2.5、o3、pm10、co、so2、no2;所述氣象數(shù)據(jù)包括氣溫、風速;所述國控站點地理位置信息為站點的經緯度數(shù)據(jù)。
3.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述數(shù)據(jù)預處理包括以下步驟:
4.根據(jù)權利要求3所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述填補缺失值包括:對每一個污染物及氣象字段對應的時間序列數(shù)據(jù),去除非數(shù)值值并使用插補方法插補數(shù)據(jù):a連續(xù)缺失3小時及以內的數(shù)據(jù),采用線性插值方法;b連續(xù)缺失4到6小時的數(shù)據(jù),采用三階樣條插值方法,且確保插值數(shù)據(jù)在上限閾值與下限值之間;c連續(xù)6個小時以上的缺失值,使用該小時的污染物濃度均值;所述剔除異常值處理為使用3σ檢測方法去除數(shù)據(jù)中的異常值。
5.根據(jù)權利要求3所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述構建鄰接矩陣包括:
6.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述歸一化處理為:按照如下公式對數(shù)據(jù)清洗后的污染物濃度數(shù)據(jù)、氣象數(shù)據(jù)和鄰接矩陣數(shù)據(jù)歸一化到[0,1]之間;
7.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述時空數(shù)據(jù)形式為[n,t,d],n為站點序號,t為采樣周期時間,d為每個采樣時刻的歸一化后的污染物濃度和氣象數(shù)據(jù);
8.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測模型結構包括:圖卷積網絡gcn、雙向長短期記憶網絡bilstm、注意力機制、時空數(shù)據(jù)特征全連接層;
9.根據(jù)權利要求1所述的基于gcn-bilstm-attention時空神經網絡的臭氧濃度預測方法,其特征在于,所述對模型進行預測學習迭代訓練包括:將模型輸入數(shù)據(jù)劃分為訓練集、驗證集和測試集,用訓練集數(shù)據(jù)進行訓練,用驗證集數(shù)據(jù)進行模型精度驗證,用測試集數(shù)據(jù)進行預測得到o3濃度。