梁志超,宋華魯,樊陽陽,齊康康,徐浩,王帥
(山東省農(nóng)業(yè)科學院農(nóng)業(yè)信息與經(jīng)濟研究所,山東 濟南 250100)
溫室氣候環(huán)境因子調(diào)控在我國農(nóng)業(yè)生產(chǎn)中扮演重要的角色,其中溫室氣候環(huán)境因子預(yù)測是當前溫室氣候環(huán)境控制的核心[1]。良好的溫室氣候環(huán)境因子預(yù)測模型不僅可以提高溫室大棚的作物產(chǎn)量,同時也能夠節(jié)省能源消耗。然而,目前很多溫室只能采集當前傳感器的數(shù)據(jù),并不能對溫室氣候環(huán)境的變化趨勢進行預(yù)測,容易產(chǎn)生溫室氣候環(huán)境調(diào)控效果較差的問題[2]。為解決溫室氣候環(huán)境因子調(diào)控滯后以及模型建立問題,許多國內(nèi)外學者進行了大量研究,并且已經(jīng)有實際應(yīng)用的案例[3]。如余朝剛等[4]、汪小旵等[5]基于BP 神經(jīng)網(wǎng)絡(luò)構(gòu)建的溫室氣候環(huán)境預(yù)測建模,現(xiàn)有的BP 神經(jīng)網(wǎng)絡(luò)學習速度慢、網(wǎng)絡(luò)推廣能力有限、容易陷入局部極小值等缺點[6],使得其在小氣候建模中的應(yīng)用受到限制。為此張建超等[7]、張園園等[8]提出了基于Elman 神經(jīng)網(wǎng)絡(luò)的氣候環(huán)境因子預(yù)測方法,對比傳統(tǒng)的BP 神經(jīng)網(wǎng)絡(luò)構(gòu)建的預(yù)測模型具有更好的預(yù)測效果。長短期記憶網(wǎng)絡(luò)(Long short term memory,LSTM)是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent neural network, RNN),能夠解決循環(huán)神經(jīng)網(wǎng)絡(luò)訓練時出現(xiàn)的梯度爆炸和梯度消失等問題,有效提高了循環(huán)神經(jīng)網(wǎng)絡(luò)的準確性,因而大量應(yīng)用到不同領(lǐng)域的預(yù)測模型中。MOON 等[9]通過建立的LSTM 預(yù)測模型有效地預(yù)測了在閉環(huán)無土栽培條件下作物根區(qū)營養(yǎng)液的電導率;JIMENEZ 等[10]在獲取的土壤基質(zhì)勢數(shù)據(jù)基礎(chǔ)上建立了LSTM 模型,有效地預(yù)測了土壤水分吸收情況,更好地節(jié)省了灌溉投入;周瑞等[11]在溫室氣候環(huán)境數(shù)據(jù)的基礎(chǔ)上建立了番茄目標產(chǎn)量的LSTM 預(yù)測模型,該模型具有較高的準確性;謝家興等[12]在氣象數(shù)據(jù)集基礎(chǔ)上,建立了柑橘果園蒸散量LSTM 預(yù)測模型,該模型具有較高的精度;謝秋菊等[13]采集了豬舍室內(nèi)的氣候環(huán)境數(shù)據(jù),在此基礎(chǔ)上建立了豬舍室內(nèi)的LSTM 環(huán)境預(yù)測模型,能夠比較精確地預(yù)測豬舍內(nèi)氣候環(huán)境因子變化趨勢。
通過國外內(nèi)預(yù)測模型的研究分析,筆者發(fā)現(xiàn)LSTM 神經(jīng)網(wǎng)絡(luò)模型因其較好的訓練性能以及預(yù)測精度,可以廣泛應(yīng)用到各個領(lǐng)域中,然而利用LSTM神經(jīng)網(wǎng)絡(luò)對溫室氣候環(huán)境因子預(yù)測的實際應(yīng)用案例相對較少。為此,本研究基于深度學習算法,結(jié)合傳感器監(jiān)測的大量歷史數(shù)據(jù),建立具有多層結(jié)構(gòu)的LSTM 溫室氣候環(huán)境因子變化預(yù)測模型,以期通過建立的預(yù)測模型,能夠為溫室環(huán)境調(diào)控提供一定的決策支持,更好地指導實際的生產(chǎn)實踐。
LSTM 由Hochreiter 等[14]發(fā)表于1997 年,2012年Alex Graves[15]對其進行了改良,并得以廣泛推廣。因其獨特的設(shè)計結(jié)構(gòu),在處理延遲和時間間隔非常長的事件預(yù)測中,LSTM 具有較大的優(yōu)勢。
LSTM 模型由輸入門、遺忘門、輸出門組成。輸入門將新的信息選擇性地記錄到細胞狀態(tài)中,遺忘門將細胞狀態(tài)中的信息選擇性地遺忘,輸出門控制需要輸出的信息并且更新細胞狀態(tài),LSTM 細胞模型結(jié)構(gòu)見圖1。
圖1 LSTM 細胞內(nèi)部模型
LSTM 細胞更新計算方法如下:
式中,I表示LSTM 細胞中的輸入門;f表示遺忘門;c表示當前細胞狀態(tài);o表示輸出門;h
基于LSTM 模型算法,構(gòu)建溫室氣候環(huán)境因子預(yù)測模型(圖2),構(gòu)建流程主要包括獲取模型數(shù)據(jù)、數(shù)據(jù)預(yù)處理、模型網(wǎng)絡(luò)訓練、氣候因子預(yù)測。
圖2 LSTM 預(yù)測模型構(gòu)建流程
(1)通過傳感器采集溫室中的溫度、濕度、二氧化碳濃度,組成原始數(shù)據(jù)集,對數(shù)據(jù)進行缺失補充以及歸一化處理,將原始數(shù)據(jù)劃分為預(yù)測模型的訓練集及測試集。
(2)對LSTM 模型設(shè)置初始化參數(shù),將訓練數(shù)據(jù)集輸入到模型中,不斷調(diào)整學習率、隱藏層節(jié)點數(shù)等模型參數(shù),直到獲取最優(yōu)的模型參數(shù)設(shè)置。
(3)將最優(yōu)網(wǎng)絡(luò)參數(shù)設(shè)置組合代入到LSTM 預(yù)測模型中,得到最終的溫室氣候環(huán)境因子預(yù)測模型。
試驗數(shù)據(jù)的預(yù)處理包括對異常值和缺失值處理、數(shù)據(jù)標準化處理。因為數(shù)據(jù)每5 s 獲取1 次,前后數(shù)據(jù)差異較小,所以對于缺失值和異常值均選取該值前后2 個時刻的平均值代替該時刻的值。為提高模型訓練的準確性、加快網(wǎng)絡(luò)訓練收斂速度,將數(shù)據(jù)進行了標準化處理。標準化處理所用公示如下:
式中,Xnorm為標準化處理之后的數(shù)據(jù);X代表原始的數(shù)據(jù);Xmax是原始數(shù)據(jù)集合中的最大值;Xmin為原始數(shù)據(jù)集合中的最小值。
采用平均絕對誤差(MAE)、均方根誤差(RMSE)、決定系數(shù)(R2)作為模型評價指標。
式中,yi表示真實值;y表示預(yù)測值;為平均值。
本研究所有數(shù)據(jù)來自山東省農(nóng)業(yè)科學院在濟陽基地建立的西紅柿溫室大棚中的環(huán)境監(jiān)測數(shù)據(jù),數(shù)據(jù)每5 min 更新1 次,數(shù)據(jù)采集類型包含溫室大棚中的濕度、溫度、二氧化碳濃度。本研究采集了2023年3 月17 日至5 月19 日共27 351 份數(shù)據(jù),將試驗數(shù)據(jù)劃分為2 個部分:訓練集、測試集,考慮數(shù)據(jù)規(guī)模以及測試集繪圖分析效果參照陳亮等[16]的方法,筆者將訓練集以及測試集數(shù)量比例劃分為90%與10%。濕度、溫度、二氧化碳訓練集、測試集的數(shù)據(jù)特征如表1 所示。溫室大棚中的數(shù)據(jù)采集裝置(中國深圳,矽遞,SenseCAP)如圖3 所示。
表1 訓練集與測試集的數(shù)據(jù)特征
圖3 溫室大棚數(shù)據(jù)采集器
在試驗仿真過程中,添加了dropout 正則化,用于減少過度擬合對LSTM 預(yù)測模型的影響,將丟棄率設(shè)置為0.2。本研究采用Adam 算法進行優(yōu)化,使用RMSE 以及MAE 來計算誤差。學習速率是LSTM模型的一個重要參數(shù),參數(shù)設(shè)置的過大或過小都會直接影響模型的訓練速度以及模型的穩(wěn)定性,隱含層節(jié)點數(shù)的大小設(shè)置則是導致過擬合的直接原因,其他參數(shù)設(shè)置則不會對模型構(gòu)建產(chǎn)生較大的影響。為此,本研究在不同學習率以及隱含層不同節(jié)點數(shù)的組合中尋找最優(yōu)的組合參數(shù),來獲取最優(yōu)的模型性能。將學習率設(shè)置為0.001、0.003、0.005、0.008、0.010,隱含層節(jié)點數(shù)的設(shè)置目前暫無較好的測算公式,結(jié)合本次試驗?zāi)P偷膹碗s度、訓練樣本數(shù)量,將隱含層節(jié)點數(shù)設(shè)置為150、250、500、600、650,將其兩兩組合,計算不同組合下的模型損失,RSME、MAE具體數(shù)值見表2、表3。
表2 不同參數(shù)組合下RSME 數(shù)值
表3 不同參數(shù)組合下MAE 數(shù)值
通過分析模型損失值可以看出,當學習速率設(shè)置為0.005,隱含層節(jié)點數(shù)設(shè)置為500 時,模型的RSME與MAE值均為最小,模型性能最優(yōu)。
使用本文1.6 模型參數(shù)改進中確定的模型最優(yōu)性能參數(shù),對試驗數(shù)據(jù)中的濕度、溫度、二氧化碳訓練集依次進行訓練,然后用測試集進行測試,依次計算模型的RMSE、MAE、R2誤差。濕度、溫度、二氧化碳的模型測試結(jié)果如圖4、圖5、圖6 所示。
圖4 LSTM 模型預(yù)測濕度結(jié)果(A)及真實值(B)
圖5 LSTM 模型預(yù)測溫度結(jié)果(A)及真實值(B)
圖6 LSTM 模型預(yù)測二氧化碳結(jié)果(A)及真實值(B)
濕度、溫度、二氧化碳的LSTM 模型損失數(shù)據(jù)如表4 所示。
表4 不同數(shù)據(jù)維度下的誤差值
從模型擬合結(jié)果以及模型損失數(shù)據(jù)來看,本研究LSTM 模型預(yù)測結(jié)果均較為準確,誤差較小。
為了更好地說明本文建立的LSTM 模型在溫室氣候環(huán)境因子預(yù)測中的優(yōu)越性,本研究同時建立了GRU、BP 神經(jīng)網(wǎng)絡(luò)模型,在相同輸入?yún)?shù)條件下進行了試驗并做了對比分析。
3 個算法在相同的運算環(huán)境的輸入?yún)?shù)條件下,濕度、溫度、二氧化碳濃度的擬合曲線如圖7、圖8、圖9 所示,3 個算法的模型誤差值如表5 所示。
表5 不同模型誤差值
圖7 不同網(wǎng)絡(luò)模型預(yù)測濕度結(jié)果對比
圖8 不同模型預(yù)測溫度結(jié)果對比
圖9 不同模型預(yù)測二氧化碳濃度結(jié)果對比
為了更好地說明模型擬合效果,在決定系數(shù)(R2)指標上,分別計算了不同數(shù)據(jù)維度下,LSTM 預(yù)測模型與BP 神經(jīng)網(wǎng)絡(luò)模型以及GRU 預(yù)測模型的數(shù)據(jù)對比如表6 所示。
表6 R2 對比分析
從圖7 至圖9 中可以看出,LSTM 和GRU 模型預(yù)測的變化趨勢一致,并且預(yù)測值更加接近真實值,而BP 神經(jīng)網(wǎng)絡(luò)模型預(yù)測結(jié)果偏差較大。在決定系數(shù)R2指標上,濕度、溫度、二氧化碳濃度3 個數(shù)據(jù)維度,LSTM 模型比BP 神經(jīng)網(wǎng)絡(luò)分別提升了4.55%、6.74%、6.10%,平均提升了5.80%;LSTM 模型比GRU 預(yù)測模型分別提升了2.22%、4.40%、4.82%,平均提升了3.81%。從模型擬合效果上看,LSTM 神經(jīng)網(wǎng)絡(luò)模型效果最好,模型最優(yōu)。
針對溫室中存在氣候環(huán)境因子無法預(yù)測變化趨勢的問題,本研究建立了基于LSTM 的神經(jīng)網(wǎng)絡(luò)預(yù)測模型。仿真試驗結(jié)果表明,LSTM 神經(jīng)網(wǎng)絡(luò)預(yù)測模型能充分地分析溫室內(nèi)溫度、濕度、二氧化碳濃度的變化規(guī)律,并較好地預(yù)測了溫室內(nèi)氣候環(huán)境因子的變化趨勢。
通過LSTM 的神經(jīng)網(wǎng)絡(luò)與GRU、BP 神經(jīng)網(wǎng)絡(luò)模型進行對比分析,結(jié)果表明,基于LSTM 的神經(jīng)網(wǎng)絡(luò)預(yù)測模型具有更高的預(yù)測精度和更好的擬合能力,該模型能夠為溫室環(huán)境調(diào)控提供一定的決策支持,具有較大的實際應(yīng)用價值。
通過與國外內(nèi)預(yù)測模型的研究分析,本研究基于LSTM 神經(jīng)網(wǎng)絡(luò)建立的溫室氣候環(huán)境因子預(yù)測模型,能夠較為準確地預(yù)測溫室內(nèi)濕度、溫度、二氧化碳濃度的變化趨勢,且具有較高的準確度,能夠為溫室內(nèi)氣候環(huán)境因子預(yù)測提供具體應(yīng)用案例。對比前人的研究結(jié)果[11-12],本研究的應(yīng)用場景相對簡單,后續(xù)可以基于該模型,考慮更為復雜、更為精細的實際應(yīng)用場景。
后續(xù)可以將LSTM 模型與溫室智能控制系統(tǒng)進行軟硬件融合,并將預(yù)測結(jié)果以語音播報、圖像等形式展現(xiàn)給用戶,更好地指導實際生產(chǎn)工作。