徐奇剛 雷相東 鄭 宇 胡興國(guó) 雷淵才 何 瀟
(1. 中國(guó)林業(yè)科學(xué)研究院資源信息研究所 北京 100091;2. 國(guó)家林業(yè)和草原局華東調(diào)查規(guī)劃院 杭州 310000;3. 國(guó)家林業(yè)和草原局森林經(jīng)營(yíng)與生長(zhǎng)模擬實(shí)驗(yàn)室 北京 100091;4. 吉林省汪清林業(yè)局 汪清 133200)
隨著計(jì)算機(jī)計(jì)算能力的大幅提升以及機(jī)器學(xué)習(xí)算法的突飛猛進(jìn),森林生長(zhǎng)建模面臨新的機(jī)遇和挑戰(zhàn),既要滿足處理大數(shù)據(jù)建模的需求,同時(shí)對(duì)估計(jì)精度的要求也越來(lái)越高。從“最佳有用”原則出發(fā),機(jī)器學(xué)習(xí)算法,尤其是深度神經(jīng)網(wǎng)絡(luò)算法具有對(duì)數(shù)據(jù)分布不作要求、可處理非線性數(shù)據(jù)、能處理連續(xù)和分類變量、預(yù)測(cè)精度高、數(shù)據(jù)適應(yīng)力強(qiáng)等優(yōu)勢(shì),在林業(yè)建模領(lǐng)域的具有廣泛的應(yīng)用前景(Humphrieset al.,2018;雷相東,2019),常用機(jī)器學(xué)習(xí)算法,如多元自適應(yīng)回歸樣條、神經(jīng)網(wǎng)絡(luò)、隨機(jī)森林、支持向量機(jī)和增強(qiáng)回歸樹(shù)等已應(yīng)用于樹(shù)高-胸徑關(guān)系(梁瑞婷等,2021;李際平等,1996;陳佳琦等,2020)、單木直徑生長(zhǎng)(Ouet al.,2019;Vieiraet al.,2018;馬翔宇等,2009;Reiset al.,2016;浦瑞良等,1999)和枯死模型(Mezeiet al.,2014;Sproullet al.,2015;Oguroet al.,2015;Hasenaueret al.,2001)等森林生長(zhǎng)收獲預(yù)估領(lǐng)域。
然而,機(jī)器學(xué)習(xí)算法在林業(yè)建模應(yīng)用過(guò)程中存在一個(gè)潛在缺點(diǎn),即一個(gè)回歸模型的輸出可能不符合生物學(xué)邏輯。例如,在一個(gè)不被限制輸出的樹(shù)高生長(zhǎng)神經(jīng)網(wǎng)絡(luò)模型中,若未設(shè)置樹(shù)高的最大漸進(jìn)值,隨著年齡增長(zhǎng),模型可能會(huì)輸出一個(gè)不斷變大偏離常識(shí)的樹(shù)高值;在林分直徑生長(zhǎng)模型中,一個(gè)數(shù)據(jù)清洗不夠徹底、訓(xùn)練不夠細(xì)致的神經(jīng)網(wǎng)絡(luò)模型可能輸出負(fù)值。這些問(wèn)題導(dǎo)致科研工作者在構(gòu)建類似模型時(shí)仍更傾向于采用符合生物學(xué)邏輯的傳統(tǒng)回歸方法,如理論生長(zhǎng)方程。
神經(jīng)網(wǎng)絡(luò)模型在林業(yè)上的應(yīng)用歷史較長(zhǎng)(Hasenaueret al.,2001;Vinícius Oliveira Castroet al.,2013;Tavares Júnioret al.,2019),其處理過(guò)程主要通過(guò)激活函數(shù)實(shí)現(xiàn),激活函數(shù)賦予神經(jīng)網(wǎng)絡(luò)非線性的特性,將輸入轉(zhuǎn)換成輸出(雷相東,2019)。該過(guò)程中,最終輸出為最后一層神經(jīng)元經(jīng)激活函數(shù)轉(zhuǎn)換得到,故可在輸出層嵌套提前設(shè)計(jì)好的激活函數(shù),以控制模型輸出使其符合預(yù)期,如對(duì)多標(biāo)簽分類問(wèn)題采用Softmax 函數(shù)方式(Liuet al.,2016)。但迄今為止,如何通過(guò)激活函數(shù)解決模型輸出違背生物學(xué)規(guī)律的問(wèn)題仍未得到解決。
鑒于此,本研究提出一個(gè)基于理論生長(zhǎng)方程(Richards 公式)的激活函數(shù),解決神經(jīng)網(wǎng)絡(luò)算法在森林生長(zhǎng)建模時(shí)輸出可能不符合生物學(xué)規(guī)律的問(wèn)題,并以臭冷杉(Abies nephrolepis)解析木樹(shù)高-胸徑數(shù)據(jù)為例進(jìn)行驗(yàn)證。新提出的激活函數(shù)可視作傳統(tǒng)方法與機(jī)器學(xué)習(xí)算法的結(jié)合,為神經(jīng)網(wǎng)絡(luò)在森林生長(zhǎng)建模方面的應(yīng)用提供一個(gè)新的思路和方法。
研究區(qū)位于吉林省汪清林業(yè)局金溝嶺林場(chǎng),地理位置為129°56′—131°04′E,43°05′—43°40′N。林場(chǎng)森林總面積16 286 hm2,海拔30~1 200 m,全年平均氣溫3.9 ℃左右,屬低山丘陵地貌。森林類型是以紅松(Pinus koraiensis)、云冷杉為優(yōu)勢(shì)樹(shù)種的天然針闊葉混交林,主要樹(shù)種包括魚(yú)鱗云杉(Picea jezoensis)、紅松、楓樺(Betula costata)、臭冷杉、水曲柳(Fraxinus mandschurica)、黃菠蘿(Phellodendron amurense)、白樺(Betula platyphylla)、胡桃楸(Juglans mandshurica)等。
數(shù)據(jù)源自1988 年8 月吉林省汪清林業(yè)局金溝嶺林場(chǎng)臭冷杉解析木數(shù)據(jù),樹(shù)干解析流程見(jiàn)孟憲宇(2006)。在0 m(0 號(hào)盤(pán))、1.3 m(1 號(hào)盤(pán))、3.6 m(2 號(hào)盤(pán))、5.6 m(3 號(hào)盤(pán))等樹(shù)高處截取圓盤(pán),查數(shù)各圓盤(pán)的年輪數(shù)。各齡階樹(shù)高采用內(nèi)插法按比例得到,各齡階去皮胸徑通過(guò)1.3 m 圓盤(pán)(1 號(hào)盤(pán))測(cè)量得到,應(yīng)用樹(shù)皮系數(shù)(本研究臭冷杉樹(shù)皮系數(shù)為1.072)轉(zhuǎn)換得到帶皮胸徑。共計(jì)96 株伐倒木、458 組樹(shù)高-胸徑觀測(cè)數(shù)據(jù),以8∶2 劃分建模集和測(cè)試集,366 組數(shù)據(jù)用于建模,92 組數(shù)據(jù)用于檢驗(yàn),單木樹(shù)高-胸徑統(tǒng)計(jì)量見(jiàn)表1。
表1 單木樹(shù)高-胸徑統(tǒng)計(jì)量Tab. 1 Statistics of tree height and diameter at breast height
深度神經(jīng)網(wǎng)絡(luò)模型是一個(gè)擁有復(fù)雜層數(shù)和神經(jīng)元結(jié)構(gòu)的多層感知機(jī)模型,由輸入層、多層隱藏層和輸出層組成,層與層的單元全連接,將上一層輸出作為下一層輸入,通過(guò)激活函數(shù)轉(zhuǎn)化后繼續(xù)作為下一層輸出,逐層向后直至運(yùn)算到輸出層,用梯度下降來(lái)最小化函數(shù)近似誤差(Goodfellowet al.,2016)。由于其強(qiáng)大的函數(shù)逼近能力,對(duì)輸入變量無(wú)統(tǒng)計(jì)上的分布要求,預(yù)測(cè)精度高,是現(xiàn)階段應(yīng)用最廣的人工神經(jīng)網(wǎng)絡(luò)。
對(duì)于一個(gè)L層的多層神經(jīng)網(wǎng)絡(luò)(Rumelhartet al.,1986;Sibiet al.,2013),令輸入向量為:
輸出向量為:
第l隱藏層神經(jīng)元的輸出為:
則最后一層神經(jīng)元的輸出為:
式中:sl為第l層神經(jīng)元個(gè)數(shù);sL-1為第L-1層神經(jīng)元個(gè)數(shù);為第L-1層神經(jīng)元到第L層神經(jīng)元的權(quán)重為第L層第k個(gè)神經(jīng)元的偏置(bias);第L層第k個(gè)神經(jīng)元激活函數(shù)內(nèi)部值。
樣本總誤差為:
式中:N為輸入數(shù)據(jù)集的觀測(cè)樣本量;dk(q)為第q個(gè)訓(xùn)練樣本的觀測(cè)值;yk(q)為第q個(gè)訓(xùn)練樣本神經(jīng)網(wǎng)絡(luò)輸出值。
反向傳播(BP)算法每次迭代按以下方式對(duì)權(quán)值和偏置進(jìn)行更新:
在處理回歸問(wèn)題時(shí),現(xiàn)階段比較流行的做法是取輸出層(第L層)為線性激活函數(shù),即:
此時(shí),對(duì)于單個(gè)訓(xùn)練樣本,BP 算法下輸出層參數(shù)的梯度更新公式為:
式中:t為第t輪訓(xùn)練輪次;E(q)為第q個(gè)訓(xùn)練樣本的損失函數(shù)值。
如此處理對(duì)輸出層沒(méi)有任何限制,但用于森林生長(zhǎng)建模時(shí)存在缺陷,故本研究對(duì)最后一層即輸出層的激活函數(shù)進(jìn)行調(diào)整(圖1),引入最常用的理論生長(zhǎng)方程Richards 式,作為修正后最后輸出層的激活函數(shù):
圖1 神經(jīng)網(wǎng)絡(luò)模型的激活函數(shù)修正Fig. 1 Modified activation function of neural networks
式中:a、b和c為Richards 方程的3 個(gè)參數(shù)。
在反向傳播算法中,神經(jīng)網(wǎng)絡(luò)模型Richards 激活函數(shù)的導(dǎo)數(shù)為:
此時(shí),輸出層參數(shù)的梯度更新公式變?yōu)椋?/p>
本研究中,Richards 方程的3 個(gè)參數(shù)a、b和c于R 語(yǔ)言平臺(tái)使用nls()函數(shù)(Ihakaet al.,1996)進(jìn)行傳統(tǒng)非線性回歸擬合得到,采用默認(rèn)的高斯-牛頓迭代算法。最終,a取20.689、b取0.070、c取1.418,即新的激活函數(shù)為:
除傳統(tǒng)回歸方法外,本研究比較3 種不同激活函數(shù)設(shè)置的深度神經(jīng)網(wǎng)絡(luò)模型(表2)。
表2 3 個(gè)深度神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)與激活函數(shù)Tab. 2 Structure and activation functions of three deep neural network models
模型1 為使用Richards 公式作為輸出層(第L層)激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模型。梯度優(yōu)化算法選擇“Adam”(Kingmaet al.,2014)。隱藏層激活函數(shù)選擇上,由于Sigmoid 函數(shù)具有廣泛的飽和性使梯度下降變得困難,整流線性函數(shù)ReLU 的行為更接近線性,模型更容易優(yōu)化,通常情況下表現(xiàn)良好(Goodfellowet al.,2016),故本研究在大多數(shù)情況下選用整流線性函數(shù);又考慮到ReLU 函數(shù)可能存在Dead ReLU 問(wèn)題,即對(duì)小于0 的輸入的正向輸出和反向梯度更新值均為0,神經(jīng)元“死亡”,故在第3 層選用Sotfplus 函數(shù)。輸出層激活函數(shù)使用Richards 公式(式15)。Richards公式本身在x大于0 時(shí)才能滿足輸出一定大于0,為使神經(jīng)網(wǎng)絡(luò)模型輸出一定大于1.3,對(duì)第L-1 層神經(jīng)元進(jìn)行限制,激活函數(shù)選擇輸出一定大于0 的Softplus函數(shù),并且通過(guò)指定第L層參數(shù)use_bias 為False,刪去最后一層的偏置指定kernel_constraint 為NonNeg(),限定非負(fù),使最終模型1 的輸出能一定大于1.3。
對(duì)于隱藏層與隱單元數(shù)量的最優(yōu)網(wǎng)絡(luò)設(shè)計(jì)問(wèn)題,采用反復(fù)試錯(cuò)法‘try and error’(Uzunet al.,2017),觀測(cè)模型在測(cè)試集上的誤差得到。batch_size 設(shè)為64,Epoch 設(shè)為1 000 輪。Callbacks 采用ModelCheckpoint策略,save_best_only 設(shè)為T(mén)rue,即只保存1 000 輪中損失值最小的模型。
模型2 為使用式(8)作為輸出層(第L層)激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模型。除第L-1 層使用ReLU 激活函數(shù)外,其余結(jié)構(gòu)設(shè)計(jì)與各項(xiàng)訓(xùn)練參數(shù)與模型1 一致。
模型3 為使用式(8)作為輸出層(第L層)激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模型。由于模型2 的激活函數(shù)行為接近線性,故加入模型3 作為對(duì)比,其結(jié)構(gòu)設(shè)計(jì)與各項(xiàng)訓(xùn)練參數(shù)與模型2 一致。與模型2 不同的是,模型3 最后一層隱藏層(第5 層)的激活函數(shù)選擇Tanh函數(shù),第4 層選擇Sigmoid 函數(shù),以此觀察隱藏層中帶有常見(jiàn)非線性激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模型表現(xiàn)。
深度神經(jīng)網(wǎng)絡(luò)模型的建立和實(shí)現(xiàn)采用Python 語(yǔ)言的keras(Gulliet al.,2017)和tansorflow(Abadiet al.,2016)模塊完成。
選取決定系數(shù)(R2)、均方根誤差(root mean squared error,RMSE)和平均絕對(duì)誤差(mean absolute error,MAE)作為模型評(píng)價(jià)指標(biāo):
式中:n為樣本數(shù);Hi為第i株單木的樹(shù)高觀測(cè)值;為第i株單木的樹(shù)高預(yù)測(cè)值;為樣本內(nèi)單木樹(shù)高觀測(cè)值的平均值。
4 種模型訓(xùn)練集和測(cè)試集精度檢驗(yàn)結(jié)果如表3 所示。傳統(tǒng)模型、使用Richards 激活函數(shù)的模型1、與隱藏層使用Tanh 和Sigmoid 函數(shù)的模型3 精度表現(xiàn)非常接近。模型1 表現(xiàn)最好,從訓(xùn)練集來(lái)看,R2比傳統(tǒng)模型提升0.051%,RMSE 和MAE 比傳統(tǒng)模型分別下降0.322%和0.117%;從測(cè)試集來(lái)看,R2比傳統(tǒng)模型提升0.175%,RMSE 和MAE 比傳統(tǒng)模型分別下降2.282%和4.011%。模型2 訓(xùn)練集R2比傳統(tǒng)模型降低0.140%,RMSE 和MAE 比傳統(tǒng)模型分別提高0.876%和0.036%;測(cè)試集R2比傳統(tǒng)模型降低0.598%,RMSE和MAE 比傳統(tǒng)模型分別提高4.591%和2.378%。模型3 訓(xùn)練集R2比傳統(tǒng)模型訓(xùn)練集提升0.422%,RMSE和MAE 比傳統(tǒng)模型分別降低2.681%和2.242%;測(cè)試集R2比傳統(tǒng)模型降低0.476%,RMSE 和MAE 比傳統(tǒng)模型分別提高3.529%和0.185%。
表3 4 種模型精度檢驗(yàn)結(jié)果Tab. 3 Accuracy test statistics based on 4 models
對(duì)于已建立好的臭冷杉樹(shù)高-胸徑傳統(tǒng)模型和3種深度神經(jīng)網(wǎng)絡(luò)模型,本研究模擬0~100 cm 胸徑區(qū)間觀察4 種模型的輸出表現(xiàn)。輸入數(shù)據(jù)為服從[0,100)均勻分布的1 000 組胸徑數(shù)據(jù),輸出樹(shù)高如圖2 所示。使用Richards 激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模擬圖與使用傳統(tǒng)方法表現(xiàn)類似,均有明顯的樹(shù)高最大漸進(jìn)值20.69 m。模型2 輸出樹(shù)高隨胸徑增長(zhǎng)呈線性遞增關(guān)系,但沒(méi)有樹(shù)高最大漸進(jìn)值,不符合生物學(xué)邏輯。模型3 雖然表現(xiàn)出樹(shù)高在20.0 m 達(dá)到最大值,但曲線不光滑,模擬的胸徑超出訓(xùn)練數(shù)據(jù)胸徑最大值(29.38 cm)后模型預(yù)測(cè)樹(shù)高達(dá)到最大值后保持恒定。
圖2 4 種模型在胸徑0~100 cm 情況下的輸出樹(shù)高Fig. 2 Predicted tree heights from 4 models with simulated diameter from 0 to 100 cm
本研究提出一個(gè)基于Richards 方程的樹(shù)高-胸徑深度神經(jīng)網(wǎng)絡(luò)激活函數(shù),從模型檢驗(yàn)結(jié)果來(lái)看,使用Richards 激活函數(shù)的深度神經(jīng)網(wǎng)絡(luò)模型相比傳統(tǒng)非線性回歸模型(直接使用Richards 公式擬合)精度略有提高,測(cè)試集R2提升0.175%,RMSE 和MAE 分別降低2.282%和4.011%,總體上看神經(jīng)網(wǎng)絡(luò)模型與傳統(tǒng)非線性回歸模型結(jié)果接近,與以往研究結(jié)果類似(徐奇剛等,2019;?z?el?ket al.,2010;2017;Vahedi,2016)。Shen 等(2020)采用人工神經(jīng)網(wǎng)絡(luò)方法建立廣東省楊樹(shù)(Populus)人工林樹(shù)高-胸徑模型,與傳統(tǒng)非線性回歸方法進(jìn)行比較,結(jié)果顯示神經(jīng)網(wǎng)絡(luò)樹(shù)高-胸徑模型的R2增加10.3%,RMSE 和MAE 分別減少12%和13.5%,神經(jīng)網(wǎng)絡(luò)方法擁有更高的泛化潛力。本研究中模型1 與傳統(tǒng)方法構(gòu)建的Richards 模型最關(guān)鍵的區(qū)別在于其在胸徑與樹(shù)高的映射中間增加了一層映射關(guān)系,即最后一層神經(jīng)元值與胸徑之間的映射,通過(guò)基于Richards 公式的激活函數(shù)估計(jì)樹(shù)高,這樣處理可使模型表達(dá)出更精細(xì)的信息。使用Richards 激活函數(shù)的模型1 相比使用傳統(tǒng)激活函數(shù)的模型3 精度也有所提升,測(cè)試集R2提升0.653%,RMSE 和MAE 分別降低5.613%與4.189%,這可能是因?yàn)镽ichards 的a、b和c參數(shù)值與Richards 本身的模型形式作為先驗(yàn)信息加入神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程,提高了模型精度。
在傳統(tǒng)非線性回歸建模過(guò)程中,Richards 等理論生長(zhǎng)方程的各參數(shù)均具有生物學(xué)意義,且在樹(shù)高-胸徑模型中表現(xiàn)優(yōu)異(Xuet al.,2022)。Lei 等(1997)論證樹(shù)高-胸徑關(guān)系時(shí)指出,在樹(shù)高-胸徑基礎(chǔ)模型選擇期間,應(yīng)同時(shí)考慮數(shù)據(jù)相關(guān)及合理的生物學(xué)標(biāo)準(zhǔn)。一個(gè)合理的模型形式應(yīng)該具有單調(diào)增量(dH/dD>0)、S拐點(diǎn)(存在二階導(dǎo)為0)和最大漸進(jìn)值。對(duì)于樹(shù)高-胸徑模型,Richards 公式中a代表樹(shù)高生長(zhǎng)的最大漸進(jìn)值,b代表相對(duì)生長(zhǎng)速率參數(shù)。各樹(shù)種的參數(shù)值相對(duì)接近,林業(yè)工作者能夠依據(jù)工作建模經(jīng)驗(yàn)選擇合適的參數(shù)初值,使模型更加容易收斂,同時(shí)也能使模型輸出保證在符合生物學(xué)邏輯的合理范圍內(nèi)。而基于機(jī)器學(xué)習(xí)算法的模型在建模數(shù)據(jù)處理不夠細(xì)致、超參數(shù)調(diào)整粗糙的情況下,可能會(huì)出現(xiàn)樹(shù)高無(wú)限增大甚至出現(xiàn)負(fù)值的現(xiàn)象。本研究模擬結(jié)果顯示,使用傳統(tǒng)神經(jīng)網(wǎng)絡(luò)激活函數(shù)的模型2 和模型3 的輸出存在樹(shù)高沒(méi)有最大值以及模型在訓(xùn)練集數(shù)據(jù)區(qū)間外預(yù)測(cè)值失真的情況,由于樹(shù)高生長(zhǎng)存在極限,且樹(shù)高與胸徑并不是線性關(guān)系。而使用Richards 激活函數(shù)的模擬結(jié)果與傳統(tǒng)方法建立模型的模擬結(jié)果類似,避免樹(shù)高隨胸徑的線性增長(zhǎng),更符合生物學(xué)規(guī)律。
需要指出的是,在傳統(tǒng)回歸中,模型漸進(jìn)值的確定取決于數(shù)據(jù)和基礎(chǔ)模型本身,如對(duì)于同一組觀測(cè),舒馬赫模型預(yù)測(cè)的漸進(jìn)值往往會(huì)比其他模型更大(Lee,2000),又如若用于擬合的數(shù)據(jù)本身樹(shù)高偏低,得到的樹(shù)高最大漸進(jìn)值較低會(huì)導(dǎo)致出現(xiàn)與實(shí)際樹(shù)高最大值不相符合的情況(區(qū)域內(nèi)的樹(shù)高最大值出現(xiàn)在樣地之外)。本研究中,Richards 公式作為激活函數(shù)加入神經(jīng)網(wǎng)絡(luò)輸出層,公式中代表樹(shù)高最大漸進(jìn)值的參數(shù)a和代表相對(duì)生長(zhǎng)速率的參數(shù)b是來(lái)自預(yù)先擬合好的非線性回歸模型的參數(shù)結(jié)果,若數(shù)據(jù)本身覆蓋范圍不夠大,模型的泛化性能可能受到影響。預(yù)先設(shè)置好的參數(shù)值在模型訓(xùn)練后不會(huì)被改變,神經(jīng)網(wǎng)絡(luò)通過(guò)梯度更新,將輸入層變量與輸出層變量的函數(shù)關(guān)系均映射在網(wǎng)絡(luò)本身的權(quán)值中,并不會(huì)影響輸出層激活函數(shù)。與此同時(shí),a、b和c參數(shù)也因?yàn)榉聪騻鞑ニ惴ㄓ绊懨看胃碌奶荻茸兓担瑢?duì)模型訓(xùn)練產(chǎn)生直接影響;如果a、b和c參數(shù)設(shè)置不合理,會(huì)對(duì)模型訓(xùn)練產(chǎn)生負(fù)面效果。
神經(jīng)網(wǎng)絡(luò)模型是數(shù)據(jù)驅(qū)動(dòng)模型,在輸出層加入Richards 激活函數(shù)并不能保證模型輸出一定存在漸近線,因?yàn)楫?dāng)訓(xùn)練數(shù)據(jù)存在“倒長(zhǎng)”,即數(shù)據(jù)中胸徑較大時(shí)對(duì)應(yīng)的樹(shù)高小于胸徑較小時(shí)對(duì)應(yīng)的樹(shù)高,那么神經(jīng)網(wǎng)絡(luò)模型會(huì)被影響,以致最后一層的神經(jīng)元值與胸徑在該區(qū)間內(nèi)呈負(fù)相關(guān),模型則會(huì)失去漸近線,同時(shí)也會(huì)造成模型在該區(qū)間預(yù)測(cè)時(shí)曲線并非單調(diào)遞增,但Richards 函數(shù)本身形式保證模型輸出一定存在一個(gè)合理的最大值。同理,由于神經(jīng)網(wǎng)絡(luò)的權(quán)值更新由建模數(shù)據(jù)驅(qū)動(dòng),雖然基于Richards 公式激活函數(shù)的神經(jīng)網(wǎng)絡(luò)模型不能保證在胸徑為0 時(shí)樹(shù)高一定等于1.3,但對(duì)第L-1 層的神經(jīng)元進(jìn)行合理限制后可保證模型輸出一定大于1.3。在神經(jīng)網(wǎng)絡(luò)模型中,若試圖使dH/dD一定大于0,則需要施加限制使網(wǎng)絡(luò)中的權(quán)值W、偏置b以及組成網(wǎng)絡(luò)各激活函數(shù)的導(dǎo)數(shù)一定大于0,這種情況下,BP 算法擬合模型極其容易梯度消失,難以收斂,因此本研究并未加入這方面的限制。
本研究也比較了林業(yè)中其他常用的理論生長(zhǎng)方程,如邏輯斯蒂和考爾夫公式,擬合效果均不如Richards 公式,故選擇Richards 公式作為輸出層的激活函數(shù)參考形式。雖然本研究最終確定的激活函數(shù)為Richards 方程,但從原理上講,基于理論生長(zhǎng)方程修正神經(jīng)網(wǎng)絡(luò)激活函數(shù)從而保證模型輸出更具有生物合理性這一方法具有普適性。在未來(lái)森林生長(zhǎng)建模工作中,可對(duì)深度神經(jīng)網(wǎng)絡(luò)模型的激活函數(shù)進(jìn)行建模者本身的經(jīng)驗(yàn)選擇,以得到最佳可用的模型。
與傳統(tǒng)回歸相比,機(jī)器學(xué)習(xí)算法具有對(duì)數(shù)據(jù)分布不作要求、可處理非線性數(shù)據(jù)、能處理連續(xù)和分類變量、預(yù)測(cè)精度高、數(shù)據(jù)適應(yīng)力強(qiáng)等優(yōu)勢(shì),但存在輸出可能會(huì)偏離生物學(xué)規(guī)律的問(wèn)題。本研究提出一個(gè)基于Richards 公式的激活函數(shù)控制神經(jīng)網(wǎng)絡(luò)模型輸出,并得到一個(gè)輸出符合生物學(xué)邏輯的樹(shù)高-胸徑神經(jīng)網(wǎng)絡(luò)模型。使用Richards 公式的激活函數(shù)具有如下優(yōu)點(diǎn):1) 輸出一定存在一個(gè)合理的最大值;2) 配合合理的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)可使輸出一定大于1.3;3) 將傳統(tǒng)回歸方法擬合得到的參數(shù)作為神經(jīng)網(wǎng)絡(luò)模型輸入,能使神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到先驗(yàn)知識(shí)。