喬小丹, 鄭文剛,2, 張 馨, 單飛飛, 王明飛, 梁 棟
(1.北京市農(nóng)林科學(xué)院智能裝備技術(shù)研究中心,北京 100097; 2.北京市農(nóng)林科學(xué)院,北京 100097;3.安徽大學(xué)電子信息工程學(xué)院,安徽合肥 230601)
溫濕度對(duì)農(nóng)作物生長(zhǎng)發(fā)育具有重要作用,作物長(zhǎng)期處于脅迫環(huán)境下易產(chǎn)生疾病甚至死亡,會(huì)造成嚴(yán)重的經(jīng)濟(jì)損失。日光溫室由于保溫效果好、環(huán)境易調(diào)控,在北方地區(qū)得到廣泛應(yīng)用。然而,溫室小氣候中各環(huán)境因子具有強(qiáng)耦合性、大時(shí)滯及非線性等特點(diǎn),不利于開(kāi)展精準(zhǔn)化環(huán)境調(diào)控。預(yù)測(cè)控制因可以動(dòng)態(tài)預(yù)測(cè)系統(tǒng)行為在溫室控制中得到廣泛的應(yīng)用。預(yù)測(cè)模型是預(yù)測(cè)調(diào)控的前提條件,構(gòu)建以溫室環(huán)境為輸出變量的預(yù)測(cè)模型,對(duì)實(shí)現(xiàn)溫室精準(zhǔn)高效調(diào)控尤為重要。
近年來(lái),由于深度神經(jīng)網(wǎng)絡(luò)能處理多變量間的冗余交叉及時(shí)序性特征,在溫室環(huán)境預(yù)測(cè)領(lǐng)域內(nèi)逐漸成為研究熱點(diǎn)。劉琦等采用Elman神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)作物冠層不同位置的溫度、濕度,該預(yù)測(cè)模型的溫、濕度RMSE分別小于0.8 ℃、1.5%,但該網(wǎng)絡(luò)采用梯度下降法求解損失函數(shù),難以達(dá)到全局最優(yōu)。趙全明等提出了基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)與門(mén)控循環(huán)單元神經(jīng)網(wǎng)絡(luò)(GRU)相結(jié)合的溫濕度預(yù)測(cè)方法,其預(yù)測(cè)指標(biāo)RMSE、MAE分別為0.211 ℃、2.731%和0.140 ℃、1.713%,具有較好的預(yù)測(cè)能力,但在應(yīng)用中發(fā)現(xiàn)CNN網(wǎng)絡(luò)在提取特征時(shí)易破壞時(shí)間序列原有的完整性,降低了模型預(yù)測(cè)精度。Jung等通過(guò)將LSTM與RNN結(jié)合,解決了RNN梯度爆炸的問(wèn)題,并與人工神經(jīng)網(wǎng)絡(luò)(ANN)、非線性自回歸外生模型(NARX)進(jìn)行比對(duì),測(cè)試結(jié)果表明,RNN-LSTM為最佳模型,但因LSTM內(nèi)部結(jié)構(gòu)復(fù)雜,RNN-LSTM模型運(yùn)行效率降低。對(duì)于上述預(yù)測(cè)模型存在的缺點(diǎn),亟須采取相應(yīng)措施進(jìn)行改進(jìn)。本研究提出適用于日光溫室的基于長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)和門(mén)控循環(huán)單元神經(jīng)網(wǎng)絡(luò)相結(jié)合(LSTM-GRU)的溫濕度預(yù)測(cè)模型。首先通過(guò)溫室數(shù)據(jù)采集系統(tǒng)獲取室內(nèi)外歷史氣候數(shù)據(jù)及卷膜開(kāi)度歷史數(shù)據(jù),再利用線性插值法填充缺失數(shù)據(jù),卡爾曼濾波算法去除噪聲,數(shù)據(jù)歸一化處理后,按時(shí)間序列輸入LSTM-GRU模型中進(jìn)行預(yù)測(cè)。試驗(yàn)結(jié)果表明,該模型可實(shí)現(xiàn)日光溫室內(nèi)溫濕度的高精度預(yù)測(cè),為溫室調(diào)控系統(tǒng)提供精準(zhǔn)決策。
試驗(yàn)在北京市昌平區(qū)國(guó)家精準(zhǔn)農(nóng)業(yè)示范基地進(jìn)行,研究對(duì)象為以色列國(guó)家盛產(chǎn)的羅拉番茄,周期為開(kāi)花到果實(shí)成熟期,試驗(yàn)收集2020年3—4月、2020年6—7月、2021年3—4月和2021年6—7月共4茬8個(gè)月數(shù)據(jù)。室內(nèi)環(huán)境數(shù)據(jù)利用國(guó)家農(nóng)業(yè)智能裝備技術(shù)研究中心(以下簡(jiǎn)稱(chēng)中心)研發(fā)的溫室云環(huán)境數(shù)據(jù)采集器對(duì)空氣溫度()、空氣相對(duì)濕度()、光照強(qiáng)度()進(jìn)行監(jiān)測(cè);室外歷史數(shù)據(jù)采用中心研發(fā)的遠(yuǎn)程墑情監(jiān)測(cè)站監(jiān)測(cè)室外溫度()、室外濕度()、平均風(fēng)速()、風(fēng)向()和有效降水量();卷膜開(kāi)度()歷史數(shù)據(jù)使用中心研發(fā)的卷膜控制器進(jìn)行監(jiān)測(cè)。上述采集到的數(shù)據(jù)由各設(shè)備經(jīng)GPRS無(wú)線模塊傳輸?shù)皆贫诉M(jìn)行存儲(chǔ)和下載,采集間隔為30 min,24 h連續(xù)采集,共計(jì)收集11 520條實(shí)測(cè)數(shù)據(jù),溫室數(shù)據(jù)采集系統(tǒng)見(jiàn)圖1。
1.2.1 缺失數(shù)據(jù)處理 傳感器在數(shù)據(jù)采集過(guò)程中因網(wǎng)絡(luò)傳輸質(zhì)量和設(shè)備故障等問(wèn)題,易出現(xiàn)數(shù)據(jù)缺失情況,會(huì)對(duì)模型預(yù)測(cè)精度產(chǎn)生較大的影響。本研究利用文獻(xiàn)[13]的處理方案:當(dāng)缺失時(shí)間數(shù)據(jù)跨度較大時(shí),采用天氣狀況相同的數(shù)據(jù)進(jìn)行填補(bǔ);缺失數(shù)據(jù)較少時(shí),利用線性插值法進(jìn)行填充,從而獲得完整的數(shù)據(jù)集,計(jì)算公式如下:
(1)
式中:+表示+時(shí)刻的缺失值,和+代表和+時(shí)刻的原始數(shù)據(jù)。
1.2.2 數(shù)據(jù)去噪處理 由于系統(tǒng)噪聲干擾及高濕環(huán)境的影響,數(shù)據(jù)可能會(huì)在極短的時(shí)間內(nèi)產(chǎn)生跳變、峰刺。為此,本研究利用Python語(yǔ)言編寫(xiě)卡爾曼濾波算法對(duì)異常數(shù)據(jù)進(jìn)行去噪處理。
卡爾曼濾波主要分為預(yù)測(cè)階段和更新階段,預(yù)測(cè)階段利用上一時(shí)刻的最優(yōu)估計(jì)來(lái)預(yù)測(cè)當(dāng)前時(shí)刻狀態(tài),更新階段利用當(dāng)前時(shí)刻觀測(cè)值來(lái)修正預(yù)測(cè)階段的預(yù)測(cè)值,以此來(lái)獲得當(dāng)前時(shí)刻的最優(yōu)估計(jì)。
本研究基于卡爾曼濾波算法去噪處理前后的數(shù)據(jù)如圖2所示。圖2-a、圖2-c分別為室內(nèi)溫濕度的原始數(shù)據(jù),并標(biāo)注了噪聲點(diǎn)。圖2-b、圖2-d為室內(nèi)溫濕度去噪后的數(shù)據(jù),與原始數(shù)據(jù)相比,平穩(wěn)性得到增強(qiáng)。
1.2.3 歸一化處理 為消除不同量綱對(duì)預(yù)測(cè)模型產(chǎn)生影響,本研究采用min-max標(biāo)準(zhǔn)化方法對(duì)數(shù)據(jù)進(jìn)行歸一化,提高模型的收斂速度和預(yù)測(cè)精度。
(2)
式中:表示第個(gè)測(cè)量值;代表測(cè)量值的最大值;代表測(cè)量值的最小值;′代表標(biāo)準(zhǔn)化后的測(cè)量值。
1.2.4 相關(guān)性分析 為驗(yàn)證溫室環(huán)境各特征向量間相關(guān)性對(duì)模型預(yù)測(cè)精度的影響,利用origin軟件得出變量間的皮爾遜相關(guān)性系數(shù),并使用Microsoft Excel 2010畫(huà)出相關(guān)性熱力圖,如圖3所示。參考文獻(xiàn)[16]的相關(guān)系數(shù)與相關(guān)程度定義形式,如表1所示。室內(nèi)空氣溫度與室外空氣溫度為強(qiáng)相關(guān),與室內(nèi)光照強(qiáng)度、室外空氣相對(duì)濕度及卷膜開(kāi)度為中等程度相關(guān),與風(fēng)向、有效降水量及室外平均風(fēng)速為極弱相關(guān);室內(nèi)空氣相對(duì)濕度與室內(nèi)光照強(qiáng)度、室外空氣溫濕度及卷膜開(kāi)度為中等程度相關(guān),與風(fēng)向、有效降水量及室外平均風(fēng)速為極弱相關(guān)。
表1 相關(guān)系數(shù)與相關(guān)程度
試驗(yàn)計(jì)算機(jī)處理器為Inter? Corei3-4130 CPU @3.40 GHz 3.40 GHz,4.00 GB內(nèi)存,Windows10(64-bit)操作系統(tǒng)。試驗(yàn)以Tensorflow1.5深度學(xué)習(xí)框架(CPU)作為后端支持,集成開(kāi)發(fā)環(huán)境為Pycharm 2019a,編程語(yǔ)言為Python3.6,建立溫濕度預(yù)測(cè)模型。
LSTM作為RNN網(wǎng)絡(luò)的特殊變體,內(nèi)部通過(guò)引入自循環(huán)設(shè)計(jì)來(lái)產(chǎn)生長(zhǎng)梯度路徑,自循環(huán)的權(quán)重會(huì)隨著每次迭代而改變;加入遺忘門(mén)、輸入門(mén)及輸出門(mén),使得誤差在傳播過(guò)程中無(wú)需逐層歸因,部分誤差還可直接傳遞給下一層網(wǎng)絡(luò),有效地解決了RNN長(zhǎng)期依賴(lài)、梯度消失及梯度爆炸等問(wèn)題;也可有效利用現(xiàn)有時(shí)間序列數(shù)據(jù)來(lái)預(yù)測(cè)未來(lái)特定時(shí)間長(zhǎng)度內(nèi)的數(shù)據(jù)。但LSTM模型存在對(duì)室內(nèi)溫濕度的非線性變化及時(shí)序性關(guān)系難以有效處理、運(yùn)行時(shí)間長(zhǎng)等問(wèn)題。典型LSTM網(wǎng)絡(luò)結(jié)構(gòu)見(jiàn)圖4。
GRU是在LSTM基礎(chǔ)上改進(jìn)的循環(huán)神經(jīng)網(wǎng)絡(luò),不僅解決了傳統(tǒng)RNN長(zhǎng)期依賴(lài)、梯度爆炸和梯度消失等問(wèn)題,同時(shí)通過(guò)簡(jiǎn)化LSTM網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)減少了其訓(xùn)練所需參數(shù),提高了模型的訓(xùn)練速度。但在應(yīng)用中發(fā)現(xiàn),因內(nèi)部參數(shù)變少導(dǎo)致模型難以達(dá)到理想的訓(xùn)練效果。GRU網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
本研究提出將LSTM和GRU網(wǎng)絡(luò)相結(jié)合的算法,整體提高了深度學(xué)習(xí)模型預(yù)測(cè)精度。LSTM-GRU模型主要包括以下4個(gè)部分。
2.4.1 數(shù)據(jù)預(yù)處理及數(shù)據(jù)集劃分 將室內(nèi)空氣溫濕度、室內(nèi)光照強(qiáng)度、室外空氣溫濕度、室外平均風(fēng)速、室外風(fēng)向、有效降水量及卷膜開(kāi)度歷史數(shù)據(jù)按時(shí)間序列保存在csv格式的文件中,再對(duì)數(shù)據(jù)集進(jìn)行歸一化處理,并按9 ∶1比例將數(shù)據(jù)集隨機(jī)劃分為訓(xùn)練集和測(cè)試集進(jìn)行訓(xùn)練和測(cè)試。
2.4.2 網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)設(shè)置 設(shè)置LSTM網(wǎng)絡(luò)為1層,神經(jīng)元數(shù)目為16,激活函數(shù)選取Relu;GRU網(wǎng)絡(luò)選取2層,神經(jīng)元數(shù)目均為16,激活函數(shù)采用Relu;LSTM-GRU時(shí)間步長(zhǎng)設(shè)置為16;Dense神經(jīng)元個(gè)數(shù)為8,LSTM-GRU網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。
2.4.3 建模過(guò)程 模型不僅要學(xué)習(xí)溫濕度深層次的時(shí)域特征表達(dá),而且要整體把握溫濕度變化趨勢(shì)。輸入時(shí)序數(shù)據(jù)首先流入以一對(duì)一形式展開(kāi)的LSTM層,輸出為每個(gè)時(shí)間步記憶狀態(tài)更新的序列,再流入同樣以一對(duì)一形式展開(kāi)的第1層GRU中,輸出長(zhǎng)度不變且每個(gè)時(shí)間步記憶狀態(tài)更新的序列,實(shí)現(xiàn)模型準(zhǔn)確記憶每個(gè)時(shí)段內(nèi)溫濕度的目標(biāo);同時(shí),為整體把握溫濕度變化趨勢(shì),將第1層GRU輸出序列流入以多對(duì)一形式展開(kāi)的第2層GRU中,輸出最后一個(gè)時(shí)間步的更新記憶狀態(tài);為防止網(wǎng)絡(luò)層堆疊不穩(wěn)定,再利用全連接神經(jīng)網(wǎng)絡(luò)(Dense)層進(jìn)行調(diào)節(jié),最后將全連接層的輸出經(jīng)反歸一化后得到下一個(gè)預(yù)測(cè)周期(30 min)的溫濕度預(yù)測(cè)值。
2.4.4 模型評(píng)估 為評(píng)估模型的預(yù)測(cè)能力和精確度,本研究使用決定系數(shù)()、均方根誤差(RMSE)和平均絕對(duì)誤差(MAE)對(duì)預(yù)測(cè)模型進(jìn)行分析,值越大, RMSE和MAE越小, 表明預(yù)測(cè)模型預(yù)測(cè)結(jié)果更加精確,計(jì)算公式如下:
(3)
(4)
(5)
為驗(yàn)證去噪處理對(duì)預(yù)測(cè)結(jié)果的影響,本研究利用卡爾曼濾波進(jìn)行數(shù)據(jù)去噪處理。將原始數(shù)據(jù)和去噪數(shù)據(jù)分別代入LSTM-GRU模型中進(jìn)行訓(xùn)練,結(jié)果如表2所示。溫濕度預(yù)測(cè)模型在去噪后提高了3.2%、5.5%,RMSE降低了68.2%、49.0%,較大地提高了整個(gè)模型的溫濕度預(yù)測(cè)性能。
表2 去噪前后預(yù)測(cè)結(jié)果對(duì)比
為驗(yàn)證訓(xùn)練樣本量對(duì)預(yù)測(cè)結(jié)果的影響,將數(shù)據(jù)樣本劃分為2020年3—4月數(shù)據(jù)、2020年全部數(shù)據(jù)、2020年度全部數(shù)據(jù)和2021年3—4月數(shù)據(jù)、2020—2021年度全部數(shù)據(jù)共4個(gè)數(shù)據(jù)集(以下簡(jiǎn)稱(chēng)A、B、C、D數(shù)據(jù)集),將每個(gè)數(shù)據(jù)集按照9 ∶1比例隨機(jī)劃分為訓(xùn)練集和測(cè)試集,并依次導(dǎo)入模型進(jìn)行訓(xùn)練和測(cè)試,結(jié)果如圖7所示,其中柱狀圖對(duì)應(yīng)左軸坐標(biāo),點(diǎn)線圖對(duì)應(yīng)右軸坐標(biāo)。由圖7可知,從數(shù)據(jù)集到數(shù)據(jù)集的溫濕度預(yù)測(cè)指標(biāo)和僅下降了6.3%、9.9%和6.2%、7.2%,而模型訓(xùn)練時(shí)間卻分別增加327.99、332.06 s,與和下降程度相比,訓(xùn)練效率降低更為明顯。這是由于訓(xùn)練樣本量增加雖然可充分挖掘序列間關(guān)系特征,但當(dāng)添加2021年3—4月數(shù)據(jù)樣本后,整個(gè)樣本中包含了過(guò)多相似特征導(dǎo)致序列間冗余性大幅度增加,降低了模型運(yùn)行效率,模型預(yù)測(cè)精度提升卻不明顯。因此,本研究選用數(shù)據(jù)集為代表進(jìn)行預(yù)測(cè)模型訓(xùn)練,有效地提高了運(yùn)行效率。
為驗(yàn)證溫室環(huán)境各特征向量間相關(guān)性對(duì)模型預(yù)測(cè)精度的影響,分別添加相關(guān)性強(qiáng)、中、極弱特征向量開(kāi)展測(cè)試試驗(yàn)。針對(duì)空氣溫度預(yù)測(cè),首先選取強(qiáng)相關(guān)的室外溫度進(jìn)行訓(xùn)練,再添加中等程度相關(guān)的光照度、室外濕度及卷膜開(kāi)度,最后添加有效降水量、室外平均風(fēng)速及風(fēng)向等極弱相關(guān)量。通過(guò)定量分析模型預(yù)測(cè)指標(biāo),結(jié)果(表3)發(fā)現(xiàn),添加極弱相關(guān)特征向量后溫度預(yù)測(cè)指標(biāo)、僅降低了11.1%、12.0%,而模型訓(xùn)練時(shí)間卻增加64.64 s。針對(duì)空氣濕度預(yù)測(cè),首先選取中等程度相關(guān)的光照度、室外溫濕度及卷膜開(kāi)度進(jìn)行訓(xùn)練,而后添加極弱相關(guān)的有效降水量、室外平均風(fēng)速及風(fēng)向。通過(guò)定量分析模型預(yù)測(cè)指標(biāo),結(jié)果如表4所示,添加極弱相關(guān)特征向量后濕度預(yù)測(cè)指標(biāo)、僅降低了10.8%、9.6%,而模型訓(xùn)練時(shí)間卻增加53.55 s。
綜上所述,由于極弱相關(guān)性輸入特征向量添加,提高了特征向量間冗余和耦合,模型在捕捉數(shù)據(jù)間高層次特征的同時(shí),降低了模型的運(yùn)行效率。因此,本研究選取中等程度相關(guān)以上的特征向量進(jìn)行溫濕度模型訓(xùn)練,不僅有效降低了模型運(yùn)行時(shí)間,而且能較好地反映室內(nèi)溫濕度變化趨勢(shì)。
表3 不同輸入特征向量下空氣溫度預(yù)測(cè)指標(biāo)
表4 不同輸入特征向量下空氣濕度預(yù)測(cè)指標(biāo)
為驗(yàn)證不同模型對(duì)溫濕度的預(yù)測(cè)效果,分別將BP神經(jīng)網(wǎng)絡(luò)、LSTM神經(jīng)網(wǎng)絡(luò)、GRU神經(jīng)網(wǎng)絡(luò)和LSTM-GRU模型預(yù)測(cè)結(jié)果進(jìn)行對(duì)比分析,結(jié)果如圖8所示。圖8-a、圖8-b顯示上述各模型在 ±0.5 ℃ 內(nèi)的溫度預(yù)測(cè)誤差占總誤差的比例分別為87.8%、91.3%、92.4%和93.9%;在±5%內(nèi)的濕度預(yù)測(cè)誤差占總誤差的比例分別為86.6%、89.7%、91.4%和92.0%,圖中實(shí)線為零基準(zhǔn)線,虛線為誤差區(qū)間。圖8-c、圖8-d表示室內(nèi)溫度預(yù)測(cè)指標(biāo)的和達(dá)到0.431、0.352 ℃,較BP神經(jīng)網(wǎng)絡(luò)下降了49.1%、47.6%,較LSTM下降了20.4%、21.2%,較GRU下降了18.0%、18.8%;室內(nèi)相對(duì)濕度預(yù)測(cè)指標(biāo)和達(dá)到4.794%、3.579%,較BP神經(jīng)網(wǎng)絡(luò)下降了20.9%、23.2%,較LSTM下降了15.3%、12.5%,較GRU下降了14.3%、9.9%。結(jié)果表明,本研究提出的LSTM-GRU模型具有較高的擬合精度,能夠準(zhǔn)確得到下一個(gè)預(yù)測(cè)周期(30 min)后的溫濕度變化趨勢(shì),為溫室調(diào)控系統(tǒng)提供準(zhǔn)確的決策依據(jù)。
針對(duì)已有溫室環(huán)境預(yù)測(cè)模型存在運(yùn)行時(shí)間長(zhǎng)、預(yù)測(cè)精度低等不足,本研究提出了基于LSTM-GRU的日光溫室溫濕度預(yù)測(cè)模型。首先通過(guò)溫室數(shù)據(jù)采集系統(tǒng)獲取室內(nèi)外歷史氣候數(shù)據(jù)及卷膜開(kāi)度歷史數(shù)據(jù),再利用線性插值法填充缺失數(shù)據(jù),卡爾曼濾波算法去除噪聲,數(shù)據(jù)歸一化處理后,將數(shù)據(jù)輸入預(yù)測(cè)模型中進(jìn)行訓(xùn)練和測(cè)試。結(jié)果表明,溫濕度預(yù)測(cè)模型在去噪后,分別降低了68.1%、48.9%;預(yù)測(cè)模型的最佳輸入樣本量包含溫室環(huán)境特征多少及相關(guān)性程度制約,樣本中存在過(guò)多相似特征及相關(guān)性弱的特征向量都可能導(dǎo)致模型運(yùn)行效率降低,預(yù)測(cè)精度提升卻不明顯。本研究以2020年度數(shù)據(jù)代表2020—2021年2年度數(shù)據(jù)進(jìn)行預(yù)測(cè),溫濕度模型僅上升16.9%、20.4%,時(shí)間卻減少327.99、332.06 s;以中等程度相關(guān)以上的特征向量代替全部特征向量預(yù)測(cè),溫濕度模型僅上升12.5%、13.6%,時(shí)間卻減少64.64、53.55 s;將LSTM-GRU模型與BP神經(jīng)網(wǎng)絡(luò)、LSTM模型、GRU模型進(jìn)行對(duì)比,其溫度評(píng)價(jià)指標(biāo)、分別下降了49.1%、 20.4%、18.0%和47.6%、21.2%、18.8%,濕度評(píng)價(jià)指標(biāo)、分別下降了20.9%、15.3%、14.3%和23.2%、12.5%、9.9%,表明LSTM-GRU模型優(yōu)于上述3個(gè)模型,具有較好的預(yù)測(cè)能力,可作為溫室環(huán)境控制系統(tǒng)的決策手段。