陳 立,陳賢富
(中國科學(xué)技術(shù)大學(xué) 微電子學(xué)院,安徽 合肥230027)
近年來,各國經(jīng)常發(fā)生化工廠爆炸事故、危險品倉庫發(fā)生火災(zāi)爆炸等引發(fā)的有毒氣體泄露[1],嚴(yán)重影響人們的生命財產(chǎn)安全。 2018 年12 月18 日,江蘇南通一化工廠設(shè)備爆裂,設(shè)備內(nèi)的氮氣以及氟化氫泄漏,造成作業(yè)人員中毒死亡。 2019 年中國江蘇鹽城、美國休斯敦的化工廠爆炸均造成了大面積的有毒氣體的泄露。 2020 年11 月9 日1,浙江衢州中天東方氟硅材料有限公司發(fā)生火災(zāi)事故,該起火災(zāi)燃燒物質(zhì)主要是氯硅烷,屬于高沸物,燃燒產(chǎn)物有毒。目前被廣泛使用的大氣擴(kuò)散模型主要分為兩大類,一類是基于數(shù)理計算的,一類是基于機(jī)器學(xué)習(xí)的。 數(shù)理計算的典型代表有高斯擴(kuò)散模型[2]、計算流體力學(xué)(CFD)模型等。 Mazzoldi[3]用高斯擴(kuò)散模型模擬二氧化碳運輸和儲存設(shè)施泄漏的情況。高斯擴(kuò)散模型使用簡單的數(shù)學(xué)表達(dá)式,易于計算,耗時少,但只適用于平坦地形上暢通無阻的氣體流動,在復(fù)雜環(huán)境下的預(yù)測往往不準(zhǔn)確。 PONTIGGIA M[4]用CFD 模型模擬城市地區(qū)大氣中液化石油氣(LPG)擴(kuò)散進(jìn)行后果評估。 CFD 基于有限元計算,能較為精準(zhǔn)地預(yù)測濃度擴(kuò)散,但計算耗時長。 2019 年中國科學(xué)技術(shù)大學(xué)的程云芳[5]用機(jī)器學(xué)習(xí)算法粒子群-支持向量機(jī)模型,對苯儲罐泄漏的濃度進(jìn)行了危險位置的短距離預(yù)測。這些方法仍基于傳統(tǒng)的機(jī)器學(xué)習(xí)方法。
因此,本文提出了一種利用深度學(xué)習(xí)[6]技術(shù)進(jìn)行有毒氣體擴(kuò)散預(yù)測的方法。 首先根據(jù)有毒氣體擴(kuò)散原理,對經(jīng)典的公開數(shù)據(jù)集草原牧場數(shù)據(jù)集的樣本數(shù)據(jù)進(jìn)行特征選取,將選擇的特征參數(shù)輸入到基于GRU 的3 層神經(jīng)網(wǎng)絡(luò)模型,最后得到預(yù)測點濃度值。 實驗結(jié)果表明該模型的平均絕對誤差(MAE)、均方誤差(RMSE)和相關(guān)系數(shù)(r)均優(yōu)于BP 神經(jīng)網(wǎng)絡(luò)模型。
GRU 神經(jīng)網(wǎng)絡(luò)由CHUNG J[7]等于2014 年提出,是一種改進(jìn)型循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)。 與人工神經(jīng)網(wǎng)絡(luò)(ANN)的全連接不同,RNN[8-9]的隱藏層之間相互連接。 ANN[10]的輸出是相互獨立的,而RNN 的輸出不僅受當(dāng)前輸入特征的影響,而且受前一時刻的輸出影響,所以RNN 具有更好的時間序列性能。 但是,RNN 卻很難得到很好的訓(xùn)練。 主要原因是RNN會產(chǎn)生梯度消失和梯度爆炸。 因此更多的是使用它的變體形式,GRU 就是其中一種變體。 GRU 和RNN具有相似的結(jié)構(gòu),區(qū)別在于隱藏層的存儲單元結(jié)構(gòu)。GRU 的結(jié)構(gòu)圖如圖1 所示。
圖1 GRU 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
GRU[11]有兩個門,即一個重置門和一個更新門。重置門決定了新的輸入信息與前面的記憶信息如何結(jié)合,更新門決定了之前記憶保存到當(dāng)前時間步的信息。 GRU 信息處理過程公式如下所示:
其中,rt、zt分別為重置門和輸出門,Wr、Wz、tanh 分別為對應(yīng)的權(quán)值和激勵函數(shù)。 當(dāng)前輸入值、輸出值分別為xt、ht。
草原牧場數(shù)據(jù)集[12]是在1956 年7 月至8 月進(jìn)行的經(jīng)典的野外實驗數(shù)據(jù)集。 實驗地點位于內(nèi)布拉斯加州奧尼爾東北約5 英里處。 釋放發(fā)生在距離地面高度為0.46 m 的點源,SO2作為示蹤劑, 每10 min抽樣測量一次濃度值。 水平方向以180°弧度為中心,利用高度為1.5 m 的采樣器,在順風(fēng)處的5 個弧度處采樣(50 m,100 m,200 m,400 m,800 m)。 該實驗收集了下風(fēng)向距離、風(fēng)速、風(fēng)向等多個特征數(shù)據(jù)。對數(shù)據(jù)集進(jìn)行整理分析得到68 個不同版本數(shù)據(jù),每個版本均有多個觀測值,合計8 173 條有效樣本。 部分特征參數(shù)如表1 所示。
分析特征數(shù)據(jù),有的特征數(shù)值非常大,有的特征數(shù)值非常小,為避免數(shù)值較高的特征在模型中所占作用較強,相對數(shù)值較低的特征被削弱作用,需要對數(shù)據(jù)進(jìn)行歸一化操作,本文使用最常用的MinMax 歸一化[13],它將所有特征都線性映射到0~1 之間,計算公式如下:
表1 部分特征參數(shù)
式中表示標(biāo)準(zhǔn)化后的特征矩陣,其中xi表示第i列的特征矩陣,max(xi)、min(xi)分別表示當(dāng)前特征矩陣的最大值、最小值。
在訓(xùn)練模型之前需要將標(biāo)準(zhǔn)化后的數(shù)據(jù)集劃分為訓(xùn)練集和測試集,由于GRU 是時間相關(guān)的,因此將草原牧場數(shù)據(jù)集數(shù)據(jù)按時間先后排序。 選擇前58 個版本的7 480 條樣本數(shù)據(jù)作為訓(xùn)練集,后10 個版本693 條數(shù)據(jù)作為測試集。 首先將風(fēng)速、風(fēng)向等19 個參數(shù)作為特征值輸入,經(jīng)過具有GRU 結(jié)構(gòu)的3 層神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練,最終以濃度值作為輸出。再將測試集的特征參數(shù)作為輸入,經(jīng)過訓(xùn)練好的模型,得到測試集的預(yù)測濃度值。
硬件平臺為Intel Core i5-8250U CPU 和8 GB RAM 的Windows 64 操作系統(tǒng),使用Python 編寫程序。
本文選取平均絕對誤差(MAE)、均方根誤差(RMSE)[14]和相關(guān)系數(shù)(r)[15]來評估模型的性能。 平均絕對誤差可以避免誤差相互抵消的問題,因而可以準(zhǔn)確反映實際預(yù)測誤差的大小。均方根誤差表示預(yù)測值與與其真實值之間的偏差, 因此MAE 和RMSE 越小越好。 相關(guān)系數(shù)描述了預(yù)測值與真實值之間的相關(guān)程度,所以r越接近于1,表示模型效果越好。
基于GRU 的神經(jīng)網(wǎng)絡(luò)模型的預(yù)測結(jié)果如圖2所示,從圖中可以看出,本文方法預(yù)測結(jié)果未出現(xiàn)負(fù)數(shù)濃度值,且對于峰值點濃度值的預(yù)測較好,可以有效地預(yù)測有毒氣體擴(kuò)散濃度。
圖2 GRU 神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果
為了證明基于GRU 的神經(jīng)網(wǎng)絡(luò)模型方法的性能,將該方法與基于BP 神經(jīng)網(wǎng)絡(luò)模型的方法進(jìn)行對比。 BP 模型的預(yù)測結(jié)果如圖3 所示,從圖中看出BP 模型的預(yù)測結(jié)果在低濃度值時出現(xiàn)了負(fù)數(shù)濃度值,并且在濃度值較高的點誤差較大。
表2 記錄了通過多次實驗兩種不同模型預(yù)測結(jié)果的平均值,從表中可以看出,基于GRU 神經(jīng)網(wǎng)絡(luò)模型的MAE、RMSE 均低于BP 神經(jīng)網(wǎng)絡(luò)模型,r值更接近于1,評價指標(biāo)值均優(yōu)于BP 模型。
圖3 BP 神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果
表2 不同模型預(yù)測結(jié)果的對比
對于毒害氣體擴(kuò)散濃度預(yù)測問題, 本文提出了基于GRU 模型的有毒氣體擴(kuò)散模型,實現(xiàn)快速、高效的有毒氣體濃度預(yù)測。 此模型在草原牧場數(shù)據(jù)集上進(jìn)行了驗證。 結(jié)果表明,本文方法對毒氣擴(kuò)散有更高的預(yù)測精度。 在未來工作中,期待將模型擴(kuò)展到實際應(yīng)用中。