趙曉東 徐浩然 郭志萍* 任改莎
1(河北科技大學信息化建設與管理中心 河北 石家莊 050011) 2(河北科技大學信息科學與工程學院 河北 石家莊 050011) 3(石家莊市鹿泉區氣象局 河北 石家莊 050200)
近年來,隨著經濟水平的提高和城市的快速發展,大氣中臭氧濃度越來越高,臭氧作為一種氧化劑,也是光化學煙霧污染的重要因素[1]。但是不同于其他類型的污染物,臭氧是一種二次污染物,來自于大氣中復雜的光化學反應,主要前體物為氮氧化物和非甲烷烴[2]。根據相關研究顯示,臭氧濃度的升高會對人體健康產生危害,例如刺激眼睛、呼吸不暢,嚴重的會患上多種呼吸道疾病甚至窒息。植物在高濃度臭氧環境中會使光合作用不能正常進行,導致植物凋謝[3-4]。因此,提前準確地預報臭氧濃度有著重要意義。
目前臭氧濃度預測分為兩種,一種是通過分析并建立所有影響臭氧生成的因素與最終臭氧濃度之間關系來達到預測的目的,適用于短時間的臭氧濃度預測,另一種,是將一段時間內的臭氧濃度數值按時間排成序列,通過分析建立序列之間的關系來進行臭氧濃度預測,適用于長時間的臭氧濃度預測,臭氧濃度預測問題也就轉變成了模糊時間序列預測的問題。目前臭氧濃度預測都是短時間的臭氧濃度預測,可以預測出未來幾小時的臭氧濃度,大多使用的都是數值模擬、多元線性回歸等方法,預測精度較低。神經網絡的方法被證實可以提高臭氧預測精度[5],但是在長時間的臭氧濃度預測研究比較少。模糊時間序列預測問題有自回歸移動平均、粒子群優化、自動聚類和神經網絡等解決方法。1965年,Zadeh教授對經典集合理論進行拓展,提出模糊集合理論,被稱為一型模糊集,但是一型模糊集合在隸屬度函數的選擇上存在無法達成統一等問題。Zadeh教授進一步提出了二型模糊集合[6],將一型模糊集中的元素再次模糊為[0,1]區間上的數,可以解決不確定性更強的問題,但是其存在運算量過于龐大,效率低下,很難滿足實際需求。Karnik等[7]提出了KM質心降型方法,并提出了區間二型模糊集的概念,區間二型模糊集合通過使次隸屬度函數都為1的方法簡化運算過程,使其能在實際問題上得到應用[8]。由于神經網絡具有自學習、魯棒性好且容易操作等優點,Rutkowska[9]將二者相結合,提出了區間二型模糊神經網絡模型的概念;由于其具有良好的線性逼近能力,人們將其用到了醫療診斷、風電功率預測、上證指數預測、電力負荷預測等方面[10-13]。大多數區間二型模糊神經網絡都是用梯度下降法、最小二乘算法和高斯牛頓法等去調節系統參數及權重,存在迭代速度過慢、計算復雜等問題。作為高斯牛頓法的優化算法,LM算法有迭代速度快、效率高等優點[14]。
綜上所述,針對臭氧濃度預測難,長時間數據預測不準等問題,本文在區間二型模糊神經網絡基礎上,使用LM算法來調整神經網絡參數及權重,提出一種用于臭氧濃度預測的區間二型模糊神經網絡系統。通過基于高斯核函數的模糊C均值聚類算法進行模糊規則的篩選,篩選出的規則被用來進行區間二型模糊神經網絡系統的設計。最后用2018年石家莊市國家基本氣象站臭氧數據集進行神經網絡的訓練與測試,通過仿真研究進行驗證并與使用梯度下降法的系統比較。
FCM算法就是尋找數據集、聚類中心以及數據對中心隸屬度所組成的目標函數的最小化,假設數據集合為x={x1,x2,…,xn},將其分為C個聚類類別,并求出每組聚類中心Vj(j=1,2,…,n)使目標函數達到最小。目標函數公式如下:
(1)

U={uij}表示隸屬度函數,uij有以下約束條件:
(2)
(3)
對式(2)和式(3)使用拉格朗日算子,構建新的目標函數為:
(4)
對所有參量求導,使它們的導數等于0,對三個聯立方程求解可得聚類中心vi的更新公式及隸屬度矩陣uij的更新公式:
(5)
(6)
式中:i=1,2,…,c;j=1,2,…,n。
在傳統的模糊C均值算法中使用歐氏距離作為距離測量方式,歐氏距離是兩點在空間之中的真實距離。但是為了提高測量精度,本文用高斯核函數來代替歐氏距離。高斯核函數具有在空間中線性區分數據的能力,且具有提取數據局部特點的能力。
(7)

模糊規則中的前件集合或者后件集合屬于二型模糊集合的模糊邏輯系統被稱為二型模糊邏輯系統(Type-2 Fuzzy Logic Systems),系統由模糊器、模糊規則、模糊推理和解模糊器四部分組成。

圖1 二型模糊邏輯系統結構框圖
準確值數據經過模糊器模糊化處理后變成模糊集,輸入到模糊推理中,模糊推理的具體步驟由模糊規則決定,模糊規則采用了“if-then”規則,經模糊推理后輸出模糊集,模糊集經過解模糊器再輸出準確值,整個過程結束。通過模糊C均值算法進行規則篩選,去除多余的規則,有效降低計算復雜度。
區間二型模糊邏輯系統與二型模糊邏輯系統類似,主要區別是前件或后件集合為一型集合或二型集合。前件集合表示的是從模糊器到模糊推理的模糊輸入集合,后件集合表示的是從模糊推理到解模糊器的模糊輸出集合,整個系統也可以簡單理解為由兩個一型模糊邏輯系統組成,根據前件集合和后件集合的不同,區間二型TSK模糊系統分為A1-C1、A2-C0及A2-C1三種類型。通常,為了減少計算復雜度,大多數研究者傾向于對神經網絡的后件部分采用確定的數據,前件采用區間二型模糊集,即A2-C0型,但是從其他文獻來看,A2-C0型的準確度略低于A2-C1型,因此本文采用A2-C1型區間二型模糊神經網絡。
二型模糊集合中的每個元素的隸屬度不是確定的值,而是用一個模糊集合來表示,這個模糊集合里的元素的隸屬度又由其相應的模糊集合來表示,元素的隸屬度值與模糊集合之間的關系用隸屬度函數來說明,所以有兩個隸屬度函數,區間二型模糊集合中的次隸屬度函數為1,隸屬度函數主要有三角形、梯形和高斯型等。其中高斯型隸屬函數是普遍使用的,本文采用不確定標準差的高斯型的主隸屬度函數:
(8)
(9)


圖2 區間二型模糊集合高斯隸屬度函數
為了進一步降低算法計算度,先對模糊規則進行篩選,去掉多余的類別,本文采用模糊C均值算法進行規則篩選。假設共有n條規則,篩選出k條有效規則。
第一步:設置目標函數閾值ε、模糊加權指數m和算法最大迭代次數。
第二步:建立初始化隸屬度矩陣U和數據類別的聚類中心。
第三步:由式(6)和式(5)更新模糊聚類隸屬度矩陣和聚類中心。
第四步:判斷收斂條件,若兩次目標函數數據值之間的差值小于所規定的閾值ε,則跳到第五步。否則跳到第三步。
第五步:停止迭代,根據所得到的隸屬度矩陣,取樣本隸屬度最大值所對應類作為樣本聚類的結果。
流程如圖3所示。

圖3 模糊C均值規則篩選流程
本文設計的A2-C1型區間二型模糊神經網絡結構如圖4所示,共有六層。

圖4 A2-C1型區間二型模糊神經網絡系統結構框圖
該系統有n個輸入,1個輸出,共有K條規則,該區間二型模糊神經網絡系統第i條規則如下:


第一層:輸入層:
x=(x1,x2,…,xn)Ti=1,2,…,n
第二層:計算隸屬度:
第三層:計算每條規則的激發強度:
第四層:計算每條規則激發強度的權重:
第五層:計算輸出的上、下隸屬度:
第六層:輸出層:
目前,BP算法是最為常用的神經網絡算法,但其存在著收斂速度慢、計算復雜、對初始條件敏感等問題,需要對其進行優化。目前常用的優化方法有兩種,梯度下降法(Gradient decent method)和高斯牛頓法(Gauss-Newton method)。梯度下降法的實質就是找到梯度下降最大的點,然后進行迭代,反復尋找比較各點的梯度,最終找到最小值,但是尋找各點的最小單位的選取會直接影響最終結果,最小單位過大,會找不到最小值點,最小單位過小,會導致迭代時間過長。牛頓法是一種采用二階泰勒級數展開的最小二乘最優解的迭代方法,然而該算法需要尋找hessian矩陣,對于有著大量可調參數的復雜系統是不適用的,高斯牛頓法是將牛頓法中的hessian矩陣的2階偏導數舍棄后實現的,該方法的迭代規則如下:
x(t+1)=x(t)-[JT(x(t))J(x(t))]-1JT(x(t))e(x(t))
式中:J是雅可比矩陣(Jacobian matrix)。
從迭代規則中看出,J(x(k))JT(x(k))可能變為單數或接近單數。為了解決這個問題,對高斯-牛頓算法的迭代規則進行修改:
x(k+1)=x(k)-[J(x(k))JT(x(k))+
μ(k)I]-1×J(x(k))e(x(k))
式中:I是恒等式矩陣,μ(k)為正值,避免了奇異矩陣求逆。從迭代規則來看,如果μ(k)為零,則兩個迭代規則類似,如果選擇一個較大的μ(k)值,可以忽略J(x(k))JT(x(k))值。因此,建議μ(k)從一個較小的值開始加速收斂,多次迭代后,增加μ(k)避免奇異性。此方法就是LM算法,當μ(k)值很大時,該算法近似于梯度下降法,當μ(k)值很小時,該算法接近高斯牛頓法。系統增量Δx如下:
Δx=-[J(x(k))JT(x(k))+μ(k)I]-1×
J(x(k))e(x(k))
更新規則要求計算Δx,在計算上是比較困難的,因為矩陣大小是n×n,n是系統中要更新的參數個數,為了減小計算量,建議將系統的參數分成若干組,并分別計算每組的Jacobian矩陣和LM學習速率,這將極大地減少每組中J(x(k))JT(x(k))+μ(k)I的大小,這樣,用于訓練區間二型模糊神經網絡系統的LM更新規則為:

c=[c11,…,cik,…,cIK]Ts=[s11,…,sik,…,sIK]T
式中:i1為第1個區間二型模糊集輸入數;i2為第2個區間二型模糊集輸入數;ij為第j個區間二型模糊集輸入數。此外,推出以下公式:
LM訓練算法流程為:
(1) 給出訓練允許期望值ε和初始化參數。
(2) 計算系統輸出和目標函數E(x)。
(3) 若E(x)<ε,表明算法收斂,跳到最后一步,否則繼續。
(4) 計算Jacobian矩陣和Δx,計算目標函數E(x(k+1))。
(5) 若E(x(k+1)) (6) 算法結束。 石家莊地區為本文的研究范圍,石家莊市西側為太行山區,東側為滹沱河沖積平原,溫帶季風型氣候,夏季高溫且光照充足,冬季氣溫低、陽光輻射減小,且處于采暖期,霧霾數值增加導致紫外線輻射減小,高溫度和高陽光輻射會促進臭氧的產生,因此夏季成為臭氧污染最為嚴重的季節[15]。另外,隨著經濟的發展,人為的氮氧化物排放也有所增加,導致臭氧濃度迅速增加,城市中的機動車排放的氮氧化物和工廠排放的VOC、氮氧化物成為光化學污染的重要根源。 圖5 石家莊市2013年—2015年臭氧季節變化 選取2018年5月到8月石家莊國家基本氣象站臭氧最大8小時滑動平均濃度值共計120個,用MATLAB對120個數據序列進行繪制,如圖6所示。 圖6 臭氧數據序列圖 本實驗用前四個數據預測下一個數據,共構成119組數據對,前100組用于訓練系統,后19組用來測試系統,首先進行模糊篩選,確定下來15個模糊中心,即15個模糊類別。 本文選用四個輸入和一個輸出,第k條規則如下: 該系統各初始化參數如下: 式中:rand()為隨機數。 圖7為用LM算法訓練的T2FLS的原始數據和預測數據跟隨圖。 圖7 實際數據與LM算法測試數據跟蹤效果圖 為了驗證使用LM算法的模型是否比使用其他算法預測精度更高,使用相同的模糊規則、初始參數和迭代次數,分別用BP算法和GD算法調節模糊神經網絡前后件參數,與使用LM算法預測結果比較如圖8和圖9所示。 圖8 實際數據與LM算法、GD算法測試數據跟蹤效果 圖9 實際數據與LM算法、BP算法測試數據跟蹤對比效果 通過圖8和圖9來看,使用LM算法訓練的模型預測結果表現好于使用GD算法和BP算法的預測模型。GD算法的表現也好于BP算法,使用LM算法的系統訓練誤差和GD算法的系統訓練誤差如圖10和圖11所示。 圖10 使用LM算法的系統訓練誤差 圖11 使用GD算法的系統訓練誤差 從圖10和圖11來看,在200次的迭代過程之后,使用LM算法的模型的均方誤差在4.8左右,使用GD算法的模型均方誤差在5.9左右,在相同的迭代次數下,LM算法比GD算法訓練的模型誤差要小,LM算法訓練的模型要優于GD算法模型。表1展示了三種算法的均方誤差值。 表1 三種算法的均方誤差值 從上述實驗結果來看,使用LM算法的預測模型較GD算法、BP算法在數據的訓練和測試效果表現更好,均方根誤差值也比GD算法、BP算法要小,這表明LM算法在調節系統參數方面比LM算法、BP算法要好,也說明了使用LM算法的區間二型模糊神經網絡系統是可行的。 本文研究了基于區間二型模糊神經網絡的臭氧濃度預測問題,在區間二型模糊神經網絡的基礎上提出利用LM算法進行神經網絡參數的調整,設計出用于臭氧濃度預測的區間二型模糊神經網絡系統,同時用模糊C均值算法進行模糊規則篩選,降低神經網絡系統的復雜度。利用石家莊市氣象站臭氧數據集進行訓練和測試,進行仿真預測,并與使用BP算法、梯度下降算法的系統做比較,仿真結果表明該系統應用到臭氧濃度預測中是可行的,所設計的系統與使用梯度下降法和BP算法的系統相比有著更高的預測精度。未來的研究中可以繼續對現有算法進行優化,進一步提高預測精度或者進行相關算法參數的穩定性分析,使系統更加穩定運行。3 實驗與結果
3.1 石家莊地區臭氧趨勢

3.2 實驗數據訓練及結果









4 結 語