朱浩華 丁雪琴 劉光燦
(南京信息工程大學(xué)江蘇省大數(shù)據(jù)分析技術(shù)重點(diǎn)實(shí)驗室 江蘇 南京 210044)
四川省區(qū)域之間的降水量分布相差甚大,最多的年降水量區(qū)域能達(dá)到1 700毫米以上,最少的區(qū)域不足400毫米,與長江中下游地區(qū)均勻分布的降雨量形成了鮮明的對比。山洪形成與降雨歷時關(guān)系密切,高強(qiáng)度的集中降雨是引發(fā)山洪的主要原因。降水預(yù)測是預(yù)防山洪及給出解決措施的重要方式。近些年,我國正致力于西部大開發(fā),做好該地的長期降雨預(yù)報無疑為國家制定長遠(yuǎn)的開發(fā)政策、發(fā)展當(dāng)?shù)氐慕?jīng)濟(jì)及旅游業(yè)等提供了一個好的依據(jù)。
施行健等人提出的TrajGRU網(wǎng)絡(luò)可以動態(tài)學(xué)習(xí)網(wǎng)絡(luò)遞歸結(jié)構(gòu),這種軌跡GRU在sythetic MovingMNIST++數(shù)據(jù)集和HKO- 7基準(zhǔn)上都比ConvGRU效果好的。Shi等人將CNN嵌入RNN模塊中,提出了卷積LSTM,提高了預(yù)測時間長度,但無法保持細(xì)節(jié)。Jason Hickey在降水短時預(yù)測問題上提出了基于機(jī)器學(xué)習(xí)模型的新研究,該模型主要是對未來短時間內(nèi)的天氣進(jìn)行高度局部化的「非物理」預(yù)測,該方法雖然還處于早期發(fā)展階段,但已經(jīng)優(yōu)于傳統(tǒng)模型。
常規(guī)的預(yù)報手段[1-5]過于繁瑣、周期性長,天氣狀況的突變使得預(yù)測不夠準(zhǔn)確。近些年來發(fā)展的深度神經(jīng)網(wǎng)絡(luò)[6-7]建立在這樣一個假設(shè)之上:通過使用許多觀察樣本來填充一個超參數(shù)化的網(wǎng)絡(luò),可以學(xué)習(xí)所需的進(jìn)化規(guī)律。然而,在實(shí)踐中,獲取大量的訓(xùn)練樣本并不總是可行的。因此,我們考慮一種不同的方法:序列張量補(bǔ)全(STC)。它是從一個序列結(jié)構(gòu)的采樣項中恢復(fù)潛在的張量,可以任意分配缺失項的位置,無縫地將時間序列的未來值集成到缺失數(shù)據(jù)的框架中,進(jìn)而可以引申到視頻幀的預(yù)測、圖像缺失部分的預(yù)測。
傳統(tǒng)的降雨預(yù)測方法對降雨頻繁的西南地區(qū)的預(yù)測效果微乎其微。圖1所示為四川自貢地區(qū)某天部分地區(qū)的真實(shí)降雨情況??梢钥闯?,真實(shí)降雨較為分散且稀少,而SCMOC、SPCC的權(quán)威預(yù)測為大片降雨且廣泛。并且在權(quán)威方法的預(yù)測數(shù)據(jù)中顯示,經(jīng)常有預(yù)測不到的地區(qū),以及某些時段未被預(yù)測到。因此,本文采用一種基于張量補(bǔ)全[8]的方法來對未采集到的地區(qū)及時段來進(jìn)行預(yù)測。根據(jù)由二階張量組成的序列,進(jìn)行數(shù)據(jù)建模成三階張量來進(jìn)行對序列的補(bǔ)全及預(yù)測,如圖2所示。
(a) GT(真實(shí)降雨) (b) SCMOC (c) SPCC圖1 某地區(qū)真實(shí)降雨情況
圖2 對二階張量的序列進(jìn)行數(shù)據(jù)建模為三階張量
(離散)卷積的概念是信號處理中最基本的概念,它的定義具有多種變體,具體取決于所使用的邊界條件。當(dāng)n=1時,即將X∈Rm和K∈Rk(k≤m)轉(zhuǎn)換為X×K∈Rm的循環(huán)卷積過程:
所謂的邊界條件是指假定對于i≤s情況下,[X]i-s=[X]i-s+m。
假定k≤m,較小的張量K稱為內(nèi)核,卷積運(yùn)算是線性的,可以轉(zhuǎn)換為矩陣乘法:
X×K=Ak(X)K?X,K
式中:Ak(X)是張量的卷積矩陣,卷積矩陣始終與某個內(nèi)核大小k相關(guān)聯(lián)。根據(jù)循環(huán)卷積,向量X=[x1,x2,…,xm]T的卷積矩陣是尺寸為m×k的截斷循環(huán)矩陣:
在k=m的特殊情況中,卷積矩陣Am(X)實(shí)際上是一個m×m的循環(huán)矩陣。在n≥1的n階張量的一般情況下,假設(shè)X∈Rm1×m2×…×mn和K∈Rk1×k2×…×kn是兩個實(shí)數(shù)值n階張量,其中kj≤mj,?1≤j≤n且K叫做內(nèi)核。將X和K循環(huán)卷積為X×K∈Rm1×m2×…×mn的過程:
上述卷積過程可以轉(zhuǎn)化為矩陣乘積,設(shè)vec(·)為張量的向量化,于是得到:
vec(X×K)=Ak(X)vec(K) ?X,K
(1)
為了獲得更好的數(shù)據(jù)恢復(fù)效果,進(jìn)一步提出了卷積核范數(shù)。卷積核范數(shù)的定義是張量的卷積特征值[10]總和,由式(1)中給出的關(guān)系,卷積特征值確實(shí)只不過是卷積矩陣的奇異值,因此所謂的卷積核范數(shù)正是卷積矩陣的核范數(shù):
卷積核范數(shù)最小化[9](Convolution Nuclear Norm Minimization,CNNM)是卷積核范數(shù)衍生的一種方法,稱作卷積核范數(shù)最小化,通過解決以下凸優(yōu)化問題以完成張量補(bǔ)全:
(2)
CNNM是一般的情況,實(shí)際上等同于將CNNM中的內(nèi)核大小設(shè)置為和目標(biāo)L0一樣。根據(jù)數(shù)據(jù)結(jié)構(gòu)選擇合適的內(nèi)核大小,在恢復(fù)精度上,CNNM表現(xiàn)得比一些特殊情況要好。CNNM保證了恢復(fù)目標(biāo)L0的精度,只要L0在某些頻域中具有稀疏(或近于稀疏)表征即可。實(shí)際上,CNNM的理論是對一般情況的概括,能夠解釋為什么控制內(nèi)核的大小可能會有效果。式(2)中的優(yōu)化問題是凸的,并且能夠通過ADMM[11-12]來解決。
但是降雨情況得到的數(shù)據(jù)一般為非負(fù)數(shù)值,CNNM算法雖然能得到較好的預(yù)測效果,但是預(yù)測到的結(jié)果會有負(fù)值產(chǎn)生,因此本文提出非負(fù)約束的卷積核范數(shù)最小化(CNNM-NC):
s.t.Lij≥0
求解后得到:
基于L1范數(shù)的離散傅里葉變換(DFTL1[9])是CNNM的一種特殊情況,記M∈Rm1×m2×…×mn是由某些時間張量值序列形成的n階數(shù)據(jù)張量,記L0∈Rm1×m2×…×mn為滿足一些正則條件的潛在張量,且L0≈M。假設(shè)給定M中條目的子集和采樣集Ω∈{1,2,…,m1}×{1,2,…,m2}×…×{1,2,…,mn}組成觀察到的條目的位置。
給定一個觀測集合,DFTL1試圖通過尋找張量來恢復(fù)L0,這個張量不僅具有最稀疏的傅里葉表示法,而且能夠最小化觀測項的平方損失:
(3)
同理,降雨情況得到的數(shù)據(jù)一般為非負(fù)數(shù)值,DFTL1預(yù)測到的結(jié)果也會有負(fù)值產(chǎn)生,因此本文提出非負(fù)約束的基于L1范數(shù)的離散傅里葉變換(DFTL1-NC):
s.t.Lij≥0
求解后得到:
當(dāng)L≥0時,L=(λΡΩ+τσ*σ)-1(σ*(τZ-Y)+λΡΩ(M));當(dāng)L<0時,L=0。
盡管DFTL1和DFTL1-NC在理論上和計算上都是有效的,但是它的缺點(diǎn)就是在張量的每個方向上都是被同等對待的。當(dāng)這種方法應(yīng)用于異構(gòu)數(shù)據(jù),比如圖像和視頻的時候,會產(chǎn)生不期望得到的偽像。
每當(dāng)內(nèi)核K具有和張量X相同的大小,即kj=mj,?1≤j≤n,生成的卷積矩陣Am(X)將通過DFT對角化。n=1和n=2的情況是眾所周知的,并且在文獻(xiàn)中已廣泛應(yīng)用[13-14],其結(jié)論適用于n≥1的情況[15]。
準(zhǔn)確來說,令X的DFT為σ(X)=X×1U1…×nUn,其中U=U1?U2?…?Un,?為Kronecker乘積。UAm(X)UH是一個對角矩陣,UAm(X)UH=mΣ,其中Σ=diag(ρ1,ρ2,…,ρm)??梢缘玫剑?/p>
vec(σ(X))=Uvec(σX)=U[Am(X)]:,1=[UAm(X)]:,1=[ΣU]:,1=[ρ1,ρ2,…,ρm]T
卷積矩陣Am(X)的特征值實(shí)際是由σ(X)給出的傅里葉頻率。因此,對任何X∈Rm1×m2×…×mn,可以得到:
(4)
λ>0是超參數(shù)。盡管是實(shí)值且凸的,但上述問題很難以可伸縮的方式解決。因此,式(4)僅用于理論分析的目的。最重要的是,DFTL1與LRMC有著緊密的聯(lián)系。DFTL1的核心是從矩陣條目的子集中恢復(fù)低秩矩陣Am(L0)∈Rm×m的方法。
值得注意的是,在kj≤mj的一般情況下,卷積矩陣Ak(X)是一個高矩陣而不是平方。但是,此類卷積矩陣無法通過DFT對角化。
本文采用的數(shù)據(jù)為四川自貢地區(qū)2018年10月—2019年3月期間,每日每隔三個小時,共8個時段每天的降雨分布情況。數(shù)據(jù)大小為229×170,數(shù)據(jù)來源中國氣象網(wǎng)站,序列控制良好。采用的數(shù)據(jù)大小為截取出的50×50區(qū)域,共截取兩個區(qū)域,區(qū)域1為行60~110、列59~109的區(qū)域,區(qū)域2為行0~50,列179~229的區(qū)域2。
取數(shù)據(jù)集中若干段,每段八天共64個時間段,用前七天56個連續(xù)的時間段來預(yù)測最后一天8個連續(xù)的時間段的降雨分布情況,并將實(shí)驗結(jié)果與SCMOC、SPCC作比較。
本文采用均方誤差(MSE)與結(jié)構(gòu)相似度(SSIM)作為評價指標(biāo)分,實(shí)驗環(huán)境為Intel(R) Xeon(R) CPU,256 GB內(nèi)存的E5- 2660 v3 @ 2.60 GHz服務(wù)器,使用MATLAB R2016b平臺對實(shí)驗進(jìn)行編程實(shí)現(xiàn)。
實(shí)驗結(jié)果如圖3、圖4所示。
圖3 區(qū)域1的2019年1月25日的8個時段預(yù)測效果圖
圖4 區(qū)域2的2018年12月3日的8個時段預(yù)測效果圖
除了上述的部分可視化結(jié)果外,本文通過均方誤差和結(jié)構(gòu)相似度兩項評價指標(biāo)對實(shí)驗效果進(jìn)行評估,完整的結(jié)果通過表1、表2展示出來,表格中的數(shù)據(jù)對應(yīng)上文的連續(xù)八個時段的預(yù)測圖。
表1 區(qū)域12019年1月25日的MSE(均方誤差)、SSIM(結(jié)構(gòu)相似度)實(shí)驗結(jié)果對比
表2 區(qū)域22018年12月3日的MSE(均方誤差)、SSIM(結(jié)構(gòu)相似度)實(shí)驗結(jié)果對比
表中均方誤差(MSE)是指參數(shù)估計值與參數(shù)真值之差平方的期望值,MSE可以評價數(shù)據(jù)的變化程度,MSE的值越小,說明預(yù)測模型描述實(shí)驗數(shù)據(jù)具有更好的精確度,一般用來檢測預(yù)測值與真實(shí)值之間的偏差,其計算如式(5)所示。
(5)
結(jié)構(gòu)相似度(SSIM)是評價圖像的一個常用標(biāo)準(zhǔn),是一種衡量兩幅圖像相似程度的指標(biāo),其計算如式(6)所示。
(6)
根據(jù)實(shí)驗結(jié)果表明,CNNM-NC在大多數(shù)時段的預(yù)測效果比SPCC、SCMOC的效果要好,而DFTL1-NC的表現(xiàn)效果較差,這是由于在用于異構(gòu)數(shù)據(jù)時,會產(chǎn)生偽像數(shù)據(jù)。因此采用基于張量補(bǔ)全的CNNM-NC方法,可以得到較好預(yù)測效果。
本文采用的CNNM-NC方法,相較于權(quán)威的中央氣象臺的預(yù)報指導(dǎo)產(chǎn)品(SCMOC)和各省的訂正預(yù)報產(chǎn)品(SPCC)兩種方法得到較好的預(yù)測效果,降雨預(yù)測可以轉(zhuǎn)化為可識別性的未來看不見的問題。本文采用的CNNM-NC方法,對于無降雨的預(yù)測精確率極高,對于有降雨的預(yù)測相較于權(quán)威的SCMOC、SPPC方法效果較好。雖然實(shí)驗主要集中于短時間序列,但是采用的DFTL1-NC和CNNM-NC本質(zhì)上是基于張量補(bǔ)全的方法,在長時間序列中應(yīng)該也可以得到較為準(zhǔn)確的預(yù)測結(jié)果,且CNNM-NC在一般情況下的數(shù)據(jù)預(yù)測情況是優(yōu)于DFTL1-NC的,因此可以投入更廣泛的使用。