駱 陽(yáng),張 旗
(1.浙江省氣象信息網(wǎng)絡(luò)中心,浙江杭州 310000;2.浙江省氣象服務(wù)中心,浙江杭州 310000)
在海量數(shù)據(jù)中,如何獲取對(duì)決策有利的有價(jià)值數(shù)據(jù)以及通過(guò)海量歷史數(shù)據(jù)來(lái)分析未來(lái)的發(fā)展趨勢(shì)等,已經(jīng)成為數(shù)據(jù)分析領(lǐng)域的重要研究方向[1]。在這樣的需求背景下,數(shù)據(jù)挖掘技術(shù)應(yīng)運(yùn)而生。氣象數(shù)據(jù)[2]是一種時(shí)間序列數(shù)據(jù),氣象數(shù)據(jù)挖掘是通過(guò)對(duì)氣象數(shù)據(jù)進(jìn)行分析和挖掘,來(lái)發(fā)現(xiàn)其中的規(guī)律和趨勢(shì),從而為氣象預(yù)測(cè)、氣象災(zāi)害預(yù)警等提供支持和幫助的技術(shù)。當(dāng)前領(lǐng)域涌現(xiàn)出了諸多優(yōu)秀的研究成果,例如文獻(xiàn)[3]中提出的基于時(shí)間序列的體育產(chǎn)業(yè)數(shù)據(jù)挖掘方法,文獻(xiàn)[4]中提出的時(shí)間序列數(shù)據(jù)深度挖掘模型。但這兩種方法存在著樣本對(duì)于挖掘規(guī)則的置信度和支持度較低的問(wèn)題,因此提出基于模糊關(guān)聯(lián)規(guī)則的海量氣象數(shù)據(jù)動(dòng)態(tài)挖掘方法。
氣象數(shù)據(jù)中噪聲含量往往較高,為了有效去除噪聲,結(jié)合EMD和MIC設(shè)計(jì)時(shí)間序列數(shù)據(jù)去噪算法[5]。
1)對(duì)原始的氣象數(shù)據(jù)信號(hào)實(shí)施EMD 分解。具體步驟如下:
步驟1:假設(shè)Ht表示原始的氣象數(shù)據(jù)信號(hào)序列,根據(jù)Ht的波動(dòng)特征確定全部局部極值點(diǎn),將極值點(diǎn)均值n0(t)作為原始?xì)庀髷?shù)據(jù)[6]信號(hào)的均值包絡(luò)線。
步驟3:重復(fù)步驟1、2,在迭代l次后,新信號(hào)序列符合經(jīng)驗(yàn)?zāi)B(tài)分解的定義,則可以用式(2)表示Ht的一階經(jīng)驗(yàn)?zāi)B(tài)分解結(jié)果:
通過(guò)式(3)去掉其中的高頻成分:
步驟4:重復(fù)步驟1、2、3,獲取第二個(gè)經(jīng)驗(yàn)?zāi)B(tài)分解分量IMF2,t。不斷分解直至殘余分量fm,t等于一個(gè)常數(shù)或變成單調(diào)函數(shù)[7]。用式(4)表示最終的EMD 分解結(jié)果:
式中,m表示總分解次數(shù)。
2)對(duì)于噪聲含量比信號(hào)含量大的IMF 分量,將其稱為噪聲主導(dǎo)分量,反之則稱為信號(hào)主導(dǎo)分量。此時(shí)通過(guò)一個(gè)階數(shù)g就可以實(shí)現(xiàn)二者的區(qū)分。通過(guò)MIC 值確定g的取值:
3)確定g值后,對(duì)噪聲主導(dǎo)分量實(shí)施閾值處理,去除其中的高頻噪聲,文中選擇小波軟閾值函數(shù)進(jìn)行主要噪聲成分的降噪處理[8]。
通過(guò)Sqtwolog 固定閾值準(zhǔn)則來(lái)選取閾值,具體如式(6)所示:
式中,B表示待分析信號(hào)的對(duì)應(yīng)序列長(zhǎng)度;φ表示高斯白噪聲標(biāo)準(zhǔn)差。其中,φ是通過(guò)經(jīng)驗(yàn)小波系數(shù)求出的[9]。
4)假設(shè)pj表示濾波處理后的高頻分量,對(duì)信號(hào)主導(dǎo)分量與pj進(jìn)行重構(gòu),獲取去噪后的氣象數(shù)據(jù)信號(hào)序列,如式(7)所示:
通過(guò)上述過(guò)程,能夠在保證不丟失有價(jià)值的信息前提下完成時(shí)序數(shù)據(jù)中噪聲的去除。
由于氣象數(shù)據(jù)序列跨度較長(zhǎng),存在不同程度的數(shù)值缺失問(wèn)題,因此設(shè)計(jì)基于結(jié)合生成對(duì)抗網(wǎng)絡(luò)與時(shí)間指數(shù)的GAN-TRTI 缺失值補(bǔ)全函數(shù),進(jìn)行氣象時(shí)間序列缺失值的填補(bǔ),使氣象數(shù)據(jù)變得更加完整[10]。
設(shè)計(jì)的GAN-TRTI 缺失值補(bǔ)全函數(shù)主要使用WGAN-GP 模型,該模型能夠提高收斂速度,避免發(fā)生陷入局部最優(yōu)的問(wèn)題,提升網(wǎng)絡(luò)訓(xùn)練時(shí)的穩(wěn)定性。將其與TRLSTM-AE 相結(jié)合在缺失數(shù)據(jù)集上對(duì)原始數(shù)據(jù)的分布進(jìn)行學(xué)習(xí),從而補(bǔ)全缺失值。該系統(tǒng)由判別器與生成器兩部分構(gòu)成。其中,生成器由編碼器與解碼器構(gòu)成,二者均由三層LSTM 網(wǎng)絡(luò)構(gòu)成。在各隱藏層網(wǎng)絡(luò)中,LSTM 神經(jīng)元總數(shù)大于輸出層、輸入層的神經(jīng)元個(gè)數(shù)。生成器的數(shù)據(jù)生成過(guò)程可以用式(8)來(lái)表示:
式中,s()· 表示編碼器映射函數(shù);表示預(yù)填補(bǔ)數(shù)據(jù);q()· 表示解碼器映射函數(shù);表示生成的完整氣象數(shù)據(jù)序列[11]。
在生成時(shí),上一時(shí)刻的輸出和當(dāng)前時(shí)刻的輸入共同構(gòu)成生成器當(dāng)前時(shí)刻的輸出,循環(huán)生成后,組合即得完整的氣象數(shù)據(jù)序列。
判別器由兩部分構(gòu)成:LSTM 網(wǎng)絡(luò)與全連接層,其輸入為生成的補(bǔ)全數(shù)據(jù),包括生成器生成的填補(bǔ)值與原始?xì)庀髷?shù)據(jù)中的未缺失部分,其最終輸入為各輸入值的真實(shí)概率。其損失包括對(duì)抗損失與梯度懲罰項(xiàng)。
通過(guò)GAN-TRTI[12]缺失值補(bǔ)全函數(shù)實(shí)施氣象時(shí)間序列缺失值填補(bǔ)的具體操作如下:
1)固定生成器參數(shù),將x~ 輸入其中。
2)獲取生成補(bǔ)全數(shù)據(jù)后在判別器中輸入,實(shí)施二分類訓(xùn)練。訓(xùn)練時(shí)在數(shù)據(jù)缺失掩碼矩陣α中實(shí)施訓(xùn)練標(biāo)簽的采樣。當(dāng)判別器能夠分辨輸入樣本的真假時(shí),即可停止訓(xùn)練。
3)訓(xùn)練生成器。訓(xùn)練時(shí)利用判別器判斷生成樣本的真假。首先固定判別器參數(shù),串接判別器和生成器,構(gòu)成聯(lián)合判別函數(shù)[13]。在函數(shù)中輸入預(yù)填充時(shí)序數(shù)據(jù)進(jìn)行訓(xùn)練。當(dāng)判別器無(wú)法分辨生成數(shù)據(jù)的真假時(shí),即可停止訓(xùn)練。填補(bǔ)后的數(shù)據(jù)可以用式(10)表示:
至此完成氣象時(shí)間序列缺失值的填補(bǔ)。
結(jié)合模糊關(guān)聯(lián)規(guī)則[14]與粒子群優(yōu)化算法[15-16]設(shè)計(jì)海量數(shù)據(jù)動(dòng)態(tài)挖掘算法,實(shí)現(xiàn)海量氣象數(shù)據(jù)的動(dòng)態(tài)挖掘。算法運(yùn)行步驟具體如下:
2)計(jì)算種群C中各粒子的支持度Sj、置信度Cj,從而計(jì)算得出適應(yīng)度Fj,則以下關(guān)系式成立:
式中,Sj(X?Y)表示第j個(gè)粒子的支持度;X表示規(guī)則的前項(xiàng)集;u表示事務(wù)項(xiàng)集的個(gè)數(shù);Y表示規(guī)則的后項(xiàng)集;z(·) 表示判斷函數(shù);Cj(X?Y)表示第j個(gè)粒子的置信度;Sj(X?Y)min表示最小支持度;Cj(X?Y)min表示最小置信度;Fj(X?Y)表示第j個(gè)粒子的適應(yīng)度。
3)根據(jù)Fj(X?Y)更新種群與各粒子的最優(yōu)歷史位置,分別用gb、wbj來(lái)表示。
4)對(duì)滿足Fj(X?Y)<1 的粒子執(zhí)行MmO 變異操作,生成新的粒子群C′。
5)計(jì)算C′中各粒子的支持度、置信度、適應(yīng)度Fj。
6)根據(jù)Fj更新C′中的gb、wbj,分別用來(lái)表示。
7)獲得新的粒子群:C"=C?C′。
9)消除C"內(nèi)的重復(fù)粒子,在規(guī)則集中消除重復(fù)規(guī)則。
10)確認(rèn)是否能夠終止。當(dāng)可以終止時(shí),直接結(jié)束算法,輸出數(shù)據(jù)動(dòng)態(tài)挖掘結(jié)果;當(dāng)無(wú)法終止時(shí),更新各粒子的速度和位置,拉回搜索空間外部的粒子,返回步驟2),直至達(dá)到終止條件。
利用設(shè)計(jì)的基于模糊關(guān)聯(lián)規(guī)則的海量氣象數(shù)據(jù)動(dòng)態(tài)挖掘方法在實(shí)驗(yàn)數(shù)據(jù)集中挖掘關(guān)聯(lián)規(guī)則數(shù)據(jù),以此測(cè)試所提方法的性能。
利用基于EMD 和MIC 的時(shí)間序列數(shù)據(jù)去噪算法實(shí)施實(shí)驗(yàn)數(shù)據(jù)集的去噪處理。接著利用基于結(jié)合生成對(duì)抗網(wǎng)絡(luò)與時(shí)間指數(shù)的GAN-TRTI 缺失值補(bǔ)全函數(shù)實(shí)施實(shí)驗(yàn)數(shù)據(jù)集的缺失值填補(bǔ)。填補(bǔ)后實(shí)驗(yàn)數(shù)據(jù)集的均方誤差達(dá)到0.12,說(shuō)明達(dá)到了良好的填充性能。最后利用設(shè)計(jì)的海量數(shù)據(jù)動(dòng)態(tài)挖掘算法實(shí)施溫度、氣壓、降水量之間關(guān)聯(lián)規(guī)則數(shù)據(jù)的動(dòng)態(tài)挖掘。挖掘中的參數(shù)設(shè)置為:
初始種群粒子數(shù)5 685 個(gè),加速因子2 個(gè),最終設(shè)計(jì)方法挖掘到的規(guī)則數(shù)為230 條。
觀察設(shè)計(jì)方法的數(shù)據(jù)動(dòng)態(tài)挖掘性能表現(xiàn),包括測(cè)試樣本對(duì)于挖掘規(guī)則的平均置信度與平均支持度等挖掘結(jié)果。
在測(cè)試中,為取得更好的實(shí)驗(yàn)效果,將時(shí)間序列數(shù)據(jù)深度挖掘模型與基于時(shí)間序列的體育產(chǎn)業(yè)數(shù)據(jù)挖掘方法作為對(duì)比方法,共同進(jìn)行性能測(cè)試,并分別用方法1、方法2 來(lái)表示。
對(duì)于三種方法來(lái)說(shuō),樣本對(duì)于挖掘規(guī)則的平均置信度和平均支持度測(cè)試數(shù)據(jù)如圖1、圖2 所示。
圖2 平均支持度
根據(jù)圖1 測(cè)試結(jié)果,在設(shè)計(jì)方法的挖掘結(jié)果中,樣本對(duì)于挖掘規(guī)則的平均置信度較高,在后期平均置信度呈現(xiàn)出平穩(wěn)的態(tài)勢(shì),穩(wěn)定在92%左右。而方法1、方法2 的平均置信度相對(duì)設(shè)計(jì)方法低,最大置信度也比設(shè)計(jì)方法低,隨著挖掘的規(guī)則數(shù)不斷增加,其平均置信度也不斷降低,以此證明這兩種方法的數(shù)據(jù)挖掘效果并不好。
圖2 測(cè)試結(jié)果表明,在設(shè)計(jì)方法的挖掘結(jié)果中,樣本對(duì)于挖掘規(guī)則的平均支持度與最大支持度均高于兩種對(duì)比方法,說(shuō)明設(shè)計(jì)方法的動(dòng)態(tài)挖掘性能更好。結(jié)合平均置信度的測(cè)試結(jié)果,進(jìn)一步證明了設(shè)計(jì)方法有著優(yōu)越的挖掘性能。
文中利用模糊關(guān)聯(lián)規(guī)則與粒子群優(yōu)化算法,實(shí)現(xiàn)了對(duì)海量氣象數(shù)據(jù)中關(guān)聯(lián)規(guī)則的動(dòng)態(tài)挖掘,并取得了一定的研究成果,同時(shí)也有助于后續(xù)數(shù)據(jù)處理與分析。然而,由于時(shí)間和精力有限,所取得的研究成果較為初步,今后將對(duì)該方法進(jìn)行更深入的細(xì)節(jié)研究。