任永泰,王如意
(1. 東北農(nóng)業(yè)大學(xué)理學(xué)院,黑龍江 哈爾濱 150030;2. 東北農(nóng)業(yè)大學(xué)工程學(xué)院,黑龍江 哈爾濱 150030)
水資源是工業(yè)、農(nóng)業(yè)以及畜牧業(yè)等多個(gè)領(lǐng)域發(fā)展的前提要求[1],但全球水資源分配不均使多個(gè)國(guó)家水資源較匱乏,且我國(guó)南北水資源分配嚴(yán)重不均。隨著國(guó)家不斷發(fā)展,人們生活水平提高,各個(gè)方面的需水量大大增高,而地球的水資源有限,其中農(nóng)業(yè)是用水量較大的一個(gè)行業(yè),若不合理運(yùn)用極可能導(dǎo)致附近水資源枯竭[2],預(yù)測(cè)農(nóng)業(yè)用水量,則可均勻分配且提前解決水源枯竭的問(wèn)題,進(jìn)而推動(dòng)農(nóng)業(yè)持續(xù)發(fā)展[3]。
喬俊飛等人[4]提出基于尖峰自組織模糊神經(jīng)網(wǎng)絡(luò)的農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法,該算法將用水量數(shù)據(jù)通過(guò)主成分分析進(jìn)行降維處理,同時(shí)計(jì)算出線性無(wú)關(guān)的用水量數(shù)據(jù)主成分變量,將其視為用水量預(yù)測(cè)模型的輸入數(shù)據(jù),其次構(gòu)建用水量預(yù)測(cè)模型,在尖峰強(qiáng)度和誤差指標(biāo)的要求下對(duì)隱含層神經(jīng)元進(jìn)行訓(xùn)練,并融合Leveberg-Marquardt算法將預(yù)測(cè)算法簡(jiǎn)化,進(jìn)而實(shí)現(xiàn)農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)。但是該算法在進(jìn)行農(nóng)業(yè)用水量預(yù)測(cè)前沒(méi)有對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,導(dǎo)致其中冗余數(shù)據(jù)以及缺失數(shù)據(jù)過(guò)多,因此在預(yù)測(cè)用水量過(guò)程中需要用大量時(shí)間篩選無(wú)用數(shù)據(jù),無(wú)法貼合實(shí)際值且極可能將缺失數(shù)據(jù)錯(cuò)誤預(yù)測(cè),進(jìn)而降低預(yù)測(cè)擬合度。鄧權(quán)龍等人[5]提出基于小波分析以及灰色預(yù)測(cè)模型的農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法,該算法首先利用小波分析方法在不同尺度下將農(nóng)業(yè)種植區(qū)域用水量時(shí)間序列進(jìn)行分解,在此基礎(chǔ)上通過(guò)灰色預(yù)測(cè)模型對(duì)農(nóng)業(yè)種植區(qū)域用水量進(jìn)行預(yù)測(cè),實(shí)現(xiàn)了農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)。但是,該算法沒(méi)有提前對(duì)數(shù)據(jù)進(jìn)行清洗以及歸一處理,無(wú)法生成較為簡(jiǎn)單且干凈完整的數(shù)據(jù),致使數(shù)據(jù)利用率較低,因此需要更多的數(shù)據(jù)進(jìn)行計(jì)算,不僅加大計(jì)算量,也過(guò)于浪費(fèi)時(shí)間,進(jìn)而升高預(yù)測(cè)復(fù)雜度。王亦斌等人[6]提出基于EMD-LSTM模型的農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法。該算法首先運(yùn)用中值濾波方法對(duì)用水量數(shù)據(jù)序列進(jìn)行濾波的預(yù)處理,其次利用EMD方法分解用水量數(shù)據(jù)序列,同時(shí)將分解后的特征序列利用LSTM模型預(yù)測(cè)農(nóng)業(yè)種植區(qū)域用水量,最終將所有數(shù)據(jù)序列的預(yù)測(cè)值進(jìn)行疊加,獲取完整的農(nóng)業(yè)用水預(yù)測(cè)值,實(shí)現(xiàn)農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)。但是,由于該算法沒(méi)有歸一化處理數(shù)據(jù)后再進(jìn)行用水量預(yù)測(cè),而是對(duì)數(shù)據(jù)進(jìn)行濾波處理后進(jìn)行預(yù)測(cè),雖減少了部分?jǐn)?shù)據(jù),但數(shù)據(jù)量仍較大,生成大量的計(jì)算極有可能出現(xiàn)不必要的錯(cuò)誤,進(jìn)而升高相對(duì)誤差,從而降低預(yù)測(cè)可靠度。
為解決上述方法中存在的問(wèn)題,提出農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法。
為保證農(nóng)業(yè)用水量預(yù)測(cè)值足夠準(zhǔn)確,需要提前對(duì)原始數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗等預(yù)處理,保證數(shù)據(jù)中無(wú)錯(cuò)誤數(shù)據(jù),同時(shí)確保數(shù)據(jù)完整,進(jìn)而提高預(yù)測(cè)精度[7]。
通常情況下對(duì)數(shù)據(jù)的簡(jiǎn)單篩選無(wú)法獲取簡(jiǎn)單且干凈完整的數(shù)據(jù),當(dāng)數(shù)據(jù)過(guò)于復(fù)雜,極容易將用水量極小的流量數(shù)值視為0,這時(shí)就可能將這種異常缺失數(shù)據(jù)忽略,進(jìn)而使得最終數(shù)據(jù)不完整,導(dǎo)致預(yù)測(cè)值準(zhǔn)確性大大降低,因此需要清洗數(shù)據(jù),清洗數(shù)據(jù)指的是刪除錯(cuò)誤數(shù)據(jù)以及缺失數(shù)據(jù)或者填補(bǔ)缺失數(shù)據(jù)[8],防止刪除了有用數(shù)據(jù),因此選用填補(bǔ)缺失數(shù)據(jù)的方式對(duì)數(shù)據(jù)進(jìn)行清洗,填補(bǔ)缺失數(shù)據(jù)即將全部完整的用水量數(shù)據(jù)的算數(shù)平均值當(dāng)成缺失數(shù)據(jù)的缺失值進(jìn)行填補(bǔ),但直接進(jìn)行填充大概率會(huì)對(duì)缺失數(shù)據(jù)以及其它數(shù)據(jù)的關(guān)系造成影響,其中尖峰部位的用水量數(shù)據(jù)極易出現(xiàn)誤差,因此需要對(duì)相鄰兩天內(nèi)的用水量數(shù)據(jù)均值進(jìn)行填補(bǔ),同時(shí)填補(bǔ)每個(gè)時(shí)間段相鄰兩個(gè)時(shí)間點(diǎn)的用水量數(shù)據(jù)的均值,則在K-最近鄰法性質(zhì)的基礎(chǔ)上根據(jù)水資源的周期特性得出的填補(bǔ)公式為
Xi=α1[(Xi-24*60/5+Xi+24*60/5)/2]+α2[(Xi-1+Xi+1)/2]
(1)
式中,Xi代表目前時(shí)間段內(nèi)用水量流量的代替值,Xi-1代表目前時(shí)間的前5分鐘用水量數(shù)據(jù),Xi-24*60/5代表頭一天同時(shí)刻的用水量數(shù)據(jù),Xi+24*60/5代表后一天同時(shí)刻的用水量數(shù)據(jù),α1和α2均代表填補(bǔ)公式的加權(quán)系數(shù),且兩個(gè)系數(shù)之和為1。
利用此公式即可將用水量數(shù)據(jù)中的缺失數(shù)據(jù)進(jìn)行填充,進(jìn)而獲取完整的用水量數(shù)據(jù)。
獲取到完整全面的數(shù)據(jù)后為簡(jiǎn)化用水量預(yù)測(cè)步驟需對(duì)數(shù)據(jù)進(jìn)行歸一化處理,數(shù)據(jù)的歸一化實(shí)質(zhì)是一種線性變換數(shù)據(jù),簡(jiǎn)化計(jì)算過(guò)程的同時(shí)提高數(shù)據(jù)訓(xùn)練速度,加強(qiáng)用水量預(yù)測(cè)效率[9]。首先在極值歸一化的基礎(chǔ)上將清洗后的數(shù)據(jù)壓縮至區(qū)間[0,1]內(nèi),在用水量序列中提取每段時(shí)間內(nèi)的用水量最大值和最小值,分別將其記為xmax和xmin,根據(jù)歸一化公式對(duì)用水量序列進(jìn)行處理后得到新的用水量序列表達(dá)式為
x′=(x-xmin)/(xmax-xmin)
(2)
式中,x表示原始用水量序列,x′表示歸一化處理后的用水量序列。
為準(zhǔn)確預(yù)測(cè)農(nóng)業(yè)種植區(qū)域用水量,利用灰色預(yù)測(cè)模型以及三次指數(shù)平滑預(yù)測(cè)模型疊加形式進(jìn)行預(yù)測(cè)[10]。
灰色預(yù)測(cè)是利用歷史信息和對(duì)未來(lái)信息的估計(jì)描述目前用水情況,灰色預(yù)測(cè)模型的優(yōu)點(diǎn)是可利用較少數(shù)量的數(shù)據(jù)進(jìn)行計(jì)算即可得出相關(guān)性極強(qiáng)、而離散性較小、且預(yù)測(cè)數(shù)值擬合程度高的用水量。
假設(shè)農(nóng)業(yè)初始用水量序列以及疊加一次后的序列分別為
(3)
其中,x0代表原始農(nóng)業(yè)種植區(qū)域用水量序列,x1代表經(jīng)過(guò)疊加后的農(nóng)業(yè)種植區(qū)域用水量序列,t表示常數(shù),且t=1,2,…,n。
根據(jù)x0和x1構(gòu)建出關(guān)于灰色預(yù)測(cè)模型的白化微分表達(dá)式為
dx1/dt+ax1=u
(4)
式中,u代表方程式的灰色作用量,a代表方程式的發(fā)展系數(shù)。
通過(guò)最小二乘法對(duì)灰色作用量和發(fā)展系數(shù)進(jìn)行求解,同時(shí)利用Laplace轉(zhuǎn)換法獲取時(shí)間回應(yīng),且將時(shí)間回應(yīng)進(jìn)行離散后得出的表達(dá)式為
(5)
消除式(5)中的疊加得到的表達(dá)式為
(6)
將時(shí)間回應(yīng)表達(dá)式進(jìn)行還原后即為構(gòu)建了灰色預(yù)測(cè)模型。
在預(yù)測(cè)農(nóng)業(yè)種植區(qū)域用水量時(shí)會(huì)出現(xiàn)用水量偏低情況,此時(shí)的用水量容易被忽略,而指數(shù)平滑預(yù)測(cè)算法就可預(yù)測(cè)用水量較少的情況,指數(shù)平滑預(yù)測(cè)算法包含一次、二次以及三次平滑預(yù)測(cè),由于農(nóng)業(yè)種植區(qū)域用水量處于一直下降的趨勢(shì),因此選用三次平滑預(yù)測(cè)模型進(jìn)行預(yù)測(cè)[11]。
假設(shè)目前用水量的時(shí)間序列是由n個(gè)歷史用水量數(shù)據(jù)構(gòu)成的,其表達(dá)式為
X={X(1),X(2),…,X(n)}
(7)
則根據(jù)時(shí)間序列X即可得出三次指數(shù)平滑預(yù)測(cè)模型表達(dá)式為
(8)
其中,S1(t)代表預(yù)測(cè)用水量的第t期中第一次指數(shù)平滑預(yù)測(cè)數(shù)值,S2(t)代表預(yù)測(cè)用水量第t期中的第二次指數(shù)平滑預(yù)測(cè)數(shù)值,S3(t)代表預(yù)測(cè)用水量第t期中的第三次指數(shù)平滑預(yù)測(cè)數(shù)值,α代表三次指數(shù)平滑預(yù)測(cè)模型中的權(quán)數(shù),且α在區(qū)間[0,1]之間,X(t)代表預(yù)測(cè)用水量第t期內(nèi)的實(shí)時(shí)用水?dāng)?shù)值,Y(T+t)代表預(yù)測(cè)過(guò)程中第(T+t)期中的農(nóng)業(yè)用水量預(yù)測(cè)值,a(t)、b(t)以及c(t)均代表預(yù)測(cè)模型中的平滑系數(shù)。
假設(shè){xt,t=1,2,…,N}是農(nóng)業(yè)種植區(qū)域用水量評(píng)價(jià)指標(biāo)序列的實(shí)時(shí)數(shù)值,令預(yù)測(cè)模型數(shù)量為m,則將m個(gè)預(yù)測(cè)模型中的同一時(shí)間t的預(yù)測(cè)值進(jìn)行組合后得到的預(yù)測(cè)值為xit,在加權(quán)算法平均組合預(yù)測(cè)原理的基礎(chǔ)上得出農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)模型組合模型的表達(dá)式為
(9)
用水量的不確定性處理即在貝葉斯定理的基礎(chǔ)上修改農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)值的先驗(yàn)概率密度[12]。
假設(shè)農(nóng)業(yè)種植區(qū)域用水量從開(kāi)始到結(jié)束的過(guò)程是k階馬爾科夫過(guò)程,且w0為前k天實(shí)際農(nóng)業(yè)種植區(qū)域用水量,令預(yù)見(jiàn)期為n,則n的預(yù)測(cè)變量wn的先驗(yàn)概率密度為g(wn|w0)。
當(dāng)預(yù)測(cè)用水量的時(shí)間是固定不變的,則利用組合預(yù)測(cè)模型得出的關(guān)于預(yù)測(cè)變量wn的預(yù)測(cè)值似然函數(shù)是f(sn|wn,w0),而似然函數(shù)雖可表示組合模型的用水量預(yù)測(cè)性能,但先驗(yàn)概率密度以及似然函數(shù)都不能對(duì)用水量最終的預(yù)測(cè)值進(jìn)行修改,因此關(guān)于w0得出最終用水量預(yù)測(cè)值的期望密度表達(dá)式為
(10)
則預(yù)測(cè)變量wn的后驗(yàn)密度表達(dá)式為
(11)
其中,φ代表預(yù)測(cè)變量wn農(nóng)業(yè)種植區(qū)域用水量不確定性的固定描述,k代表經(jīng)過(guò)歸一化后的常數(shù)。
最終利用式(11)即可求出最準(zhǔn)確的農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)值,同時(shí)將預(yù)測(cè)值進(jìn)行還原即可實(shí)現(xiàn)農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)。
由于簡(jiǎn)化了預(yù)測(cè)過(guò)程,將訓(xùn)練樣本數(shù)據(jù)進(jìn)行了歸一化處理,因此最后訓(xùn)練出的結(jié)果也具有歸一特性,不是真正的農(nóng)業(yè)種植區(qū)域用水量,需要對(duì)其進(jìn)行反歸一化處理,則反歸一化處理的數(shù)據(jù)公式為
x=xmin+y·(xmax-xmin)
(12)
式中,y代表所要預(yù)測(cè)的用水量的時(shí)間,x代表經(jīng)過(guò)反歸一化處理后的真實(shí)用水量預(yù)測(cè)值。
為驗(yàn)證所提方法的整體有效性,需要對(duì)農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法(所提算法)、基于尖峰自組織模糊神經(jīng)網(wǎng)絡(luò)的農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法(文獻(xiàn)[4]算法)和基于小波分析以及灰色預(yù)測(cè)模型的農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法(文獻(xiàn)[5]算法)進(jìn)行預(yù)測(cè)擬合度、預(yù)測(cè)復(fù)雜度和預(yù)測(cè)可靠度的測(cè)試。
利用三種不同的農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)算法在不同時(shí)間段內(nèi)進(jìn)行用水量的預(yù)測(cè),比較三種算法的擬合度,擬合度是檢驗(yàn)預(yù)測(cè)模型的重要指標(biāo),其實(shí)質(zhì)即為預(yù)測(cè)值與實(shí)際值的吻合程度,實(shí)驗(yàn)結(jié)果如圖1所示。
圖1 不同算法的預(yù)測(cè)擬合度
根據(jù)圖1可知,所提算法的擬合度最高,基本與實(shí)際用水量相同,文獻(xiàn)[4]算法的擬合程度過(guò)高,即過(guò)擬合,導(dǎo)致分配給農(nóng)業(yè)種植區(qū)域的水量過(guò)多,其它區(qū)域水量過(guò)少,進(jìn)而出現(xiàn)分類不均的問(wèn)題,而文獻(xiàn)[5]算法的擬合程度過(guò)低,極可能出現(xiàn)用水量不夠的問(wèn)題,只有所提算法最適合用水量的預(yù)測(cè),這是因?yàn)樗崴惴ㄔ谶M(jìn)行農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)前先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,消除冗余數(shù)據(jù),填補(bǔ)缺失數(shù)據(jù),使得預(yù)測(cè)過(guò)程中不需要一邊運(yùn)算一邊篩選數(shù)據(jù),直接將所有有用數(shù)據(jù)進(jìn)行填充,因此更加貼合實(shí)際值,進(jìn)而提高預(yù)測(cè)擬合度。
利用農(nóng)業(yè)種植區(qū)域用水量預(yù)測(cè)模型進(jìn)行預(yù)測(cè)時(shí)必須與數(shù)據(jù)量為基礎(chǔ)進(jìn)行計(jì)算,但大多預(yù)測(cè)模型要求的數(shù)據(jù)量過(guò)高,導(dǎo)致運(yùn)算量過(guò)大,造成預(yù)測(cè)過(guò)于復(fù)雜,在多次迭代下比較三種算法預(yù)測(cè)出準(zhǔn)確結(jié)果后所需的數(shù)據(jù)量。如圖2,每種算法中的不規(guī)則五邊形面積即為迭代后所需的所有數(shù)據(jù)量,
圖2 三種算法的預(yù)測(cè)復(fù)雜度
根據(jù)圖2的實(shí)驗(yàn)結(jié)果可知,所提算法的面積最小,文獻(xiàn)[5]算法的面積最大,文獻(xiàn)[4]算法的面積次之,說(shuō)明所提算法的復(fù)雜度最低,即最容易預(yù)測(cè)出農(nóng)業(yè)種植區(qū)域用水量,所提算法的復(fù)雜度如此低是因?yàn)樗崴惴ㄊ紫葘?duì)數(shù)據(jù)進(jìn)行清洗以及歸一化處理,提前生成較為簡(jiǎn)單且干凈完整的數(shù)據(jù),進(jìn)而將數(shù)據(jù)利用率發(fā)揮到極致,不僅節(jié)約時(shí)間,同時(shí)降低計(jì)算量,且利用較少數(shù)據(jù)即可預(yù)測(cè)出農(nóng)業(yè)種植區(qū)域用水量,因此降低預(yù)測(cè)復(fù)雜度。
相對(duì)誤差就是預(yù)測(cè)值與實(shí)際值中的絕對(duì)誤差與實(shí)際值之間的比值,根據(jù)相對(duì)誤差可直接反映出預(yù)測(cè)結(jié)果的可靠度,即偏離真實(shí)值的大小,三種算法的預(yù)測(cè)可靠度如圖3所示。
圖3 三種預(yù)測(cè)算法的預(yù)測(cè)可靠度
根據(jù)圖3的實(shí)驗(yàn)結(jié)果可知,所提算法在任何預(yù)測(cè)結(jié)果下的相對(duì)誤差都是最小的,其它兩種算法相對(duì)于所提算法其相對(duì)誤差都過(guò)高,尤其是文獻(xiàn)[5]算法的相對(duì)誤差,進(jìn)而證明所提算法的可靠度最高,因?yàn)樗崴惴▽?shù)據(jù)提前進(jìn)行歸一化處理,利用歸一化處理后的數(shù)據(jù)進(jìn)行農(nóng)業(yè)種植區(qū)域用水量的預(yù)測(cè),不僅會(huì)降低計(jì)算量,也可簡(jiǎn)化計(jì)算過(guò)程,避免出現(xiàn)不必要的錯(cuò)誤,進(jìn)而降低相對(duì)誤差,從而提高預(yù)測(cè)可靠度。
由于南北方蓄水量差異過(guò)大,因此需要控制農(nóng)業(yè)種植區(qū)域的用水量,但農(nóng)業(yè)中變化因素過(guò)多,導(dǎo)致農(nóng)業(yè)用水情況波動(dòng)較大,很多時(shí)候會(huì)出現(xiàn)蓄水量不夠或蓄水過(guò)多的問(wèn)題,為解決目前算法存在的問(wèn)題,提出農(nóng)業(yè)種植區(qū)域用水量數(shù)據(jù)化預(yù)測(cè)算法。該算法首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,其次構(gòu)建兩種農(nóng)業(yè)種植區(qū)域的用水量預(yù)測(cè)模型,并將兩種模型進(jìn)行組合,計(jì)算出用水量預(yù)測(cè)值,從而實(shí)現(xiàn)農(nóng)業(yè)種植區(qū)域的用水量預(yù)測(cè),解決預(yù)測(cè)擬合度低、復(fù)雜度高和可靠度低的問(wèn)題。但此算法還需進(jìn)一步加強(qiáng),消除模型本身局限性的影響,進(jìn)一步降低預(yù)測(cè)偏差,使得預(yù)測(cè)模型趨近完美。