摘要:針對(duì)小麥(Triticum aestivum L.)生長(zhǎng)周期施肥試驗(yàn)數(shù)據(jù)少、使用傳統(tǒng)預(yù)測(cè)方法難以進(jìn)行有效施肥預(yù)測(cè)的問(wèn)題,提出一種基于SBS (SMOTE+ Bootstrap)數(shù)據(jù)擴(kuò)充方法的XGBoost算法預(yù)測(cè)模型?;谠嫉?35條施氮量數(shù)據(jù)劃分訓(xùn)練集(80%)和測(cè)試集(20%),使用SMOTE方法對(duì)訓(xùn)練集和測(cè)試集分別進(jìn)行均衡化處理,以獲取更多的特征信息,然后使用Bootstrap方法對(duì)均衡化后的數(shù)據(jù)進(jìn)行擴(kuò)充,最后使用XGBoost預(yù)測(cè)模型進(jìn)行訓(xùn)練,并與其他機(jī)器學(xué)習(xí)模型進(jìn)行對(duì)比分析。結(jié)果表明,使用SMOTE方法均衡數(shù)據(jù),較大程度地提高了SBS-XGBoost模型的預(yù)測(cè)精度,MSE從原始數(shù)據(jù)的66.802下降至13.027,MAE從原始數(shù)據(jù)的6.711下降至2.393,R2從原始數(shù)據(jù)的0.390上升至0.912。SBS-XGBoost不僅在研究施氮量的預(yù)測(cè)中表現(xiàn)出色,還能為其他小樣本數(shù)據(jù)的科學(xué)預(yù)測(cè)提供借鑒與參考。
關(guān)鍵詞:小麥(Triticum aestivum L.);小樣本;施氮量;預(yù)測(cè)
中圖分類號(hào):TP181" " " " "文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):0439-8114(2024)08-0116-05
DOI:10.14088/j.cnki.issn0439-8114.2024.08.020 開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
A small sample based method for predicting nitrogen application rates in wheat
DU Yun, ZHANG Jing-jing, HAN Bo, LU Zi-ao
(College of Computer and Information Engineering/Engineering Research Center of Intelligent Agriculture, Ministry of Education/Xinjiang Agricultural Informatization Engineering Technology Research Center, Xinjiang Agricultural University ,Urumqi" 830052, China)
Abstract: A XGBoost algorithm prediction model based on SBS (SMOTE+Bootstrap) data augmentation method was proposed to address the problem of limited data on fertilization experiments during the growth cycle of wheat (Triticum aestivum L.) and difficulty in effectively predicting fertilization using traditional prediction methods. Based on the original 135 nitrogen application data, the training set (80%) and the test set (20%) were divided. The SMOTE method was used to balance the training and test sets to obtain more feature information. Then, the Bootstrap method was used to expand the balanced data. Finally, the XGBoost prediction model was used for training and compared with other machine learning models. The results showed that using the SMOTE method to balance data significantly improved the prediction accuracy of the SBS-XGBoost model. MSE decreased from the original data of 66.802 to 13.027, MAE decreased from the original data of 6.711 to 2.393, and R2 increased from the original data of 0.390 to 0.912. SBS-XGBoost not only performed well in predicting nitrogen application rates in this study, but also provided reference and guidance for scientific prediction of other small sample data.
Key words: wheat (Triticum aestivum L.); small sample; nitrogen application rate; prediction
小麥(Triticum aestivum L.)是中國(guó)主要的糧食作物,對(duì)氮、磷、鉀等養(yǎng)分的需求較高,適當(dāng)?shù)氖┓什粌H可以增加土壤活性和肥力,也可以提高小麥產(chǎn)量和質(zhì)量[1]。小麥?zhǔn)┓食2捎谩按笏蠓省钡姆椒?,通過(guò)施用大量水肥來(lái)提高小麥產(chǎn)量和質(zhì)量,在施肥方面有很大的盲目性,短期內(nèi)雖然可以起到增質(zhì)增量效果,但從長(zhǎng)遠(yuǎn)來(lái)看,肥料的不合理使用導(dǎo)致肥料利用率低下,造成資金的浪費(fèi)和小麥產(chǎn)量減少,甚至造成環(huán)境污染等問(wèn)題[2-4]。因此小麥在生長(zhǎng)過(guò)程中施肥應(yīng)遵循合理適度的原則。
解決施肥預(yù)測(cè)問(wèn)題主要有2類方法,一類是構(gòu)建四元二次或多個(gè)線性方程[5]及養(yǎng)分平衡法,這些方法涉及對(duì)多個(gè)數(shù)據(jù)點(diǎn)的測(cè)量,較復(fù)雜且要求高質(zhì)量的數(shù)據(jù)。另一類是采用機(jī)器學(xué)習(xí)方法開展預(yù)測(cè)分析,有學(xué)者嘗試引入機(jī)器學(xué)習(xí)對(duì)施肥量進(jìn)行預(yù)測(cè)[6-9],Xu等[10]通過(guò)GIS實(shí)現(xiàn)對(duì)施肥量的控制;Sabzi等[11]構(gòu)建土壤和養(yǎng)分關(guān)系對(duì)施肥量進(jìn)行預(yù)測(cè),為通過(guò)機(jī)器學(xué)習(xí)進(jìn)行施肥量預(yù)測(cè)提供思路。在較大樣本的施肥量預(yù)測(cè)中,上述方法具備參考意義,而小麥生長(zhǎng)的施肥量預(yù)測(cè)存在小樣本數(shù)據(jù)的局限性。為此,本研究提出了基于極限梯度提升算法的小樣本施氮量預(yù)測(cè)方法,在提升小樣本預(yù)測(cè)能力的同時(shí),為解決其他1年生作物的施肥預(yù)測(cè)問(wèn)題提供借鑒或參考。
1 數(shù)據(jù)來(lái)源和方法
1.1 數(shù)據(jù)來(lái)源
數(shù)據(jù)選取2021—2023年新疆烏魯木齊市奇臺(tái)縣智慧農(nóng)場(chǎng)(89°13′—91°22′E,42°25′—45°29′N,海拔4 014 m)的土壤氮含量和施肥量。土壤數(shù)據(jù)包括土壤全氮含量(g/kg)、土壤速效氮含量(mg/kg)、土壤銨態(tài)氮含量(mg/kg)、土壤硝態(tài)氮含量(mg/kg)及目標(biāo)施肥量全氮含量(g/kg)共計(jì)135條數(shù)據(jù)。
1.2 方法研究
小麥生長(zhǎng)過(guò)程中存在數(shù)據(jù)周期長(zhǎng)、數(shù)據(jù)量少的問(wèn)題,因數(shù)據(jù)量不足容易導(dǎo)致無(wú)法建立合適的模型,難以完成有效的科學(xué)預(yù)測(cè)。擴(kuò)容法是解決小樣本數(shù)據(jù)的主要方法[12],本研究基于小樣本施氮量數(shù)據(jù)提出施肥量預(yù)測(cè)方案。
1.2.1 Bootstrap 本研究采用Bootstrap算法擴(kuò)充樣本數(shù)據(jù)量的方式,針對(duì)小樣本數(shù)據(jù)開展預(yù)測(cè)分析。通過(guò)多次重復(fù)采樣操作與田間數(shù)據(jù)的重復(fù)采集形成映射,實(shí)現(xiàn)數(shù)據(jù)集的擴(kuò)充,進(jìn)而得到預(yù)期的較大數(shù)據(jù)量數(shù)據(jù)集。該擴(kuò)充采樣方式主要應(yīng)用于分類或回歸問(wèn)題中[13,14],適用于創(chuàng)造數(shù)據(jù)的隨機(jī)性且保證數(shù)據(jù)的可靠性。
1.2.2 SMOTE 在小麥?zhǔn)┑款A(yù)測(cè)的小樣本中,實(shí)測(cè)的135個(gè)數(shù)據(jù)仍存在一定的不均衡性,為此采用SMOTE對(duì)其均衡化。SMOTE是基于隨機(jī)過(guò)采樣法的一種改進(jìn)方案,主要用于解決數(shù)據(jù)量少、數(shù)據(jù)不平衡問(wèn)題[15]。其改進(jìn)的基本思想是對(duì)原始數(shù)據(jù)進(jìn)行分析,并依據(jù)少數(shù)樣本隨機(jī)合成新樣本。
1.2.3 極限梯度提升 在各類機(jī)器學(xué)習(xí)模型中,極限梯度提升(XGBoost)是一種高效的梯度提升決策樹算法,其是在GBDT的基礎(chǔ)上進(jìn)行改進(jìn)并基于boosting集成思想的加法模型。與傳統(tǒng)的機(jī)器學(xué)習(xí)模型相比,XGBoost具有高效性、精度高、魯棒性好等特點(diǎn),廣泛應(yīng)用于數(shù)據(jù)挖掘等各領(lǐng)域[16,17]。
XGBoost的核心是由多棵樹共同控制,在訓(xùn)練時(shí)不斷迭代,每迭代1次都學(xué)習(xí)1個(gè)新的函數(shù)來(lái)擬合上一時(shí)刻的樹預(yù)測(cè)結(jié)果與訓(xùn)練樣本真實(shí)值的偏差,并通過(guò)對(duì)每一時(shí)刻的樹產(chǎn)生的結(jié)果累加得到最終結(jié)果,XGBoost流程如圖1所示。
1.2.4 SBS-XGBoost模型 綜合上述3種方法,本研究提出SBS(SMOTE+Bootstrap)-XGBoost模型,即使用SMOTE對(duì)劃分好的訓(xùn)練集和測(cè)試集分別進(jìn)行平衡,對(duì)處理好的數(shù)據(jù)使用Bootstrap方法對(duì)數(shù)據(jù)進(jìn)行擴(kuò)充,增加樣本數(shù)量,將擴(kuò)充之后的數(shù)據(jù)送到XGBoost模型進(jìn)行訓(xùn)練,并使用測(cè)試集進(jìn)行訓(xùn)練模型的驗(yàn)證,驗(yàn)證模型的可靠性。SBS-XGBoost流程如圖2所示。
步驟1:對(duì)原始數(shù)據(jù)進(jìn)行劃分,訓(xùn)練集(X0)為108條(80%),測(cè)試集(Y0)為27條(20%)。
步驟2:使用SMOTE對(duì)數(shù)據(jù)集X0、Y0進(jìn)行平衡處理,得到數(shù)據(jù)集X、Y。
步驟3:采用Bootstrap方法進(jìn)行放回重采樣操作,對(duì)SMOTE均衡之后的數(shù)據(jù)集X、Y進(jìn)行數(shù)據(jù)選取,生成新的數(shù)據(jù)集X1、Y1。
步驟4:重復(fù)上述步驟2、步驟3,得到訓(xùn)練集X1,X2,…,Xn和測(cè)試集Y1,Y2,…,Yn
步驟5:使用XGBoost模型進(jìn)行訓(xùn)練。
步驟6:使用測(cè)試集對(duì)訓(xùn)練好的模型進(jìn)行驗(yàn)證。
1.3 數(shù)據(jù)處理與模型評(píng)估
1.3.1 數(shù)據(jù)預(yù)處理 為了驗(yàn)證土壤中不同氮含量與施氮量的關(guān)系,通過(guò)機(jī)器學(xué)習(xí)方法進(jìn)行科學(xué)合理的預(yù)測(cè),以減少人工主觀施肥造成氮肥的浪費(fèi)。本研究將土壤全氮含量(g/kg)、土壤速效氮含量(mg/kg)、土壤銨態(tài)氮含量(mg/kg)、土壤硝態(tài)氮含量(mg/kg)作為輸入因子來(lái)預(yù)測(cè)施肥量。小麥原始數(shù)據(jù)樣本通過(guò)SBS方法得到擴(kuò)充,由于各輸入變量差異很大,如果直接用于訓(xùn)練會(huì)導(dǎo)致預(yù)測(cè)結(jié)果過(guò)度離散。為了消除數(shù)據(jù)輸入和輸出之間的差異,更好地反映數(shù)據(jù)之間關(guān)系,在模型訓(xùn)練之前需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,即歸一化處理,計(jì)算公式如下。
[x′i=xi-xminxmax-xmin] (1)
式中,[x′i]為歸一化之后數(shù)據(jù);xi為第i個(gè)樣本數(shù)據(jù);[xmax]為xi中的最大數(shù)據(jù);[xmin]為xi中的最小數(shù)據(jù)。
1.3.2 評(píng)估方式及指標(biāo) 為了檢驗(yàn)?zāi)P皖A(yù)測(cè)的有效性,本研究采用多項(xiàng)評(píng)估指標(biāo)對(duì)其進(jìn)行對(duì)比分析。第一,對(duì)比原始數(shù)據(jù)和使用SBS方法擴(kuò)充的數(shù)據(jù),證明SBS方法的可行性。第二,擴(kuò)充后的數(shù)據(jù)與原始數(shù)據(jù)分別送入決策樹、支持向量機(jī)、K-means和隨機(jī)森林進(jìn)行預(yù)測(cè),并與XGBoost結(jié)果進(jìn)行對(duì)比,證明SBS-XGBoost在模型預(yù)測(cè)中的優(yōu)越性。
評(píng)估指標(biāo)包括絕對(duì)誤差(MAE)、均方誤差(MSE)和決定系數(shù)(R2),計(jì)算公式如下。
[MAE=1nin|yi-yi|]" (2)
[MSE=1ni=1n(yi-yi)2] (3)
[R2=1-i=1n(yi-yi)2i=1n(yi-y2)]" " (4)
式中,[yi]為小麥作物施肥量真實(shí)值;[yi]為小麥作物施肥量預(yù)測(cè)值;[y]為施肥量均值;n為樣本個(gè)數(shù);" " "i為第i個(gè)樣本。
2 結(jié)果與分析
基于小麥的小樣本施氮量數(shù)據(jù),開展數(shù)據(jù)擴(kuò)充前后的對(duì)比試驗(yàn)。分別采用隨機(jī)森林、支持向量機(jī)、決策樹、K-means與XGBoost進(jìn)行對(duì)比,其中XGBoost的預(yù)測(cè)優(yōu)勢(shì)顯著。
2.1 小麥?zhǔn)┓柿繑?shù)據(jù)集
本研究所使用數(shù)據(jù)集是由奇臺(tái)縣麥類實(shí)驗(yàn)站提供的施肥記錄,施氮量的數(shù)據(jù)集共計(jì)135條,為了驗(yàn)證SBS方法的可行性,對(duì)比原始數(shù)據(jù)與擴(kuò)充之后的數(shù)據(jù),其中原始數(shù)據(jù)分布如圖3所示,擴(kuò)充之后數(shù)據(jù)分布如圖4所示。
2.2 試驗(yàn)結(jié)果對(duì)比
80%數(shù)據(jù)用于訓(xùn)練,20%數(shù)據(jù)用于測(cè)試,各種機(jī)器學(xué)習(xí)預(yù)測(cè)精度和效果并不理想,主要原因在于數(shù)據(jù)不足;在使用SBS方法后各模型的預(yù)測(cè)精度相對(duì)提高,XGBoost模型相較于其他模型,預(yù)測(cè)結(jié)果更精準(zhǔn),結(jié)果如圖5所示。
為了證明SBS-XGBoost模型的有效性,使用MAE、MSE、R2對(duì)不同回歸模型進(jìn)行對(duì)比分析,結(jié)果如表1所示。
在對(duì)原始數(shù)據(jù)預(yù)測(cè)時(shí),隨機(jī)森林、支持向量機(jī)、決策樹、K-means和XGBoost的MSE均大于50.000,支持向量機(jī)的MSE最高,為115.061;各模型的MAE均大于5.000;K-means的R2最高,為0.516,預(yù)測(cè)結(jié)果與真實(shí)結(jié)果相差較大,預(yù)測(cè)精度較低。引入SBS方法后,對(duì)訓(xùn)練集和測(cè)試集分別進(jìn)行平衡處理,再使用Bootstrap方法分別進(jìn)行擴(kuò)充,結(jié)果表明,SMOTE增加了樣本特征,使數(shù)據(jù)集更加合理,克服后續(xù)樣本擴(kuò)充導(dǎo)致過(guò)擬合問(wèn)題。使用Bootstrap擴(kuò)充樣本,一方面增加了數(shù)據(jù)的隨機(jī)性,另一方面使數(shù)據(jù)集樣本量增加,各模型的預(yù)測(cè)精度都有不同程度的提高,XGBoost預(yù)測(cè)效果最佳。
3 小結(jié)
針對(duì)小麥?zhǔn)┓柿繑?shù)據(jù)少、難以用機(jī)器學(xué)習(xí)直接預(yù)測(cè)的問(wèn)題,提出SBS-XGBoost模型,對(duì)原始數(shù)據(jù)合理劃分并進(jìn)行科學(xué)擴(kuò)充,再使用XGBoost進(jìn)行預(yù)測(cè)。結(jié)果表明,各模型的預(yù)測(cè)精度都有不同程度的提高,SBS-XGBoost模型預(yù)測(cè)效果最佳,MSE從原始數(shù)據(jù)的66.802下降至13.027,MAE從原始數(shù)據(jù)的6.711下降至2.393,R2從原始數(shù)據(jù)的0.390上升至0.912??梢奡BS方法對(duì)于小數(shù)據(jù)樣本擴(kuò)充有一定優(yōu)勢(shì),本研究提出的SBS-XGBoost模型在對(duì)小麥小數(shù)據(jù)樣本施氮量的預(yù)測(cè)方面具備優(yōu)越性,同時(shí)也為其他小樣本數(shù)據(jù)預(yù)測(cè)提供借鑒。
參考文獻(xiàn):
[1] 袁 旭,張家安,常飛楊,等.我國(guó)肥料施用現(xiàn)狀及化肥減量研究進(jìn)展[J].農(nóng)業(yè)與技術(shù), 2022, 42 (18):20-23.
[2] 王秀娟.施肥量和施肥方式對(duì)小麥生長(zhǎng)發(fā)育和產(chǎn)量的影響[J].特種經(jīng)濟(jì)動(dòng)植物, 2024, 27 (2):25-27.
[3] 劉炳鑠.果園分布式水肥一體化系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].山東泰安:山東農(nóng)業(yè)大學(xué), 2021.
[4] CASSMAN K G, DOBERMANN A, WALTERS D T.Agroecosystems, nitrogen-use efficiency, and nitrogen management[J].AMBIO, 2002, 31: 132- 140.
[5] 鄒新華,林善耕,童杰明,等.雜交玉米“3414”施肥法肥料效應(yīng)分析[J].廣東農(nóng)業(yè)科學(xué), 2013, 40(15):76-78..
[6] BARRADAS J,MATULA S,DOLEZAL F.A decision support system-fertigation simulator(DSS-FS)for design and optimization of sprinkler and drip irrigation systems[J].Computers and electronics in agriculture, 2012, 86 (6):111-119.
[7] DONG Y H,F(xiàn)U Z T,PENG Y Q,et al.Precision fertilization method of field crops based on the wavelet-BP neural network in China[J].Journal of cleaner production,2020,246(3):1-13.
[8] 懷寶付,張成勝,張品秀,等.BP-PID控制策略在變量施肥控制系統(tǒng)中的應(yīng)用[J].黑龍江八一農(nóng)墾大學(xué)學(xué)報(bào),2015,27(1):95-98.
[9] 吉 威.基于GRU神經(jīng)網(wǎng)絡(luò)的甜菜施肥量預(yù)測(cè)研究與應(yīng)用[D].哈爾濱:黑龍江大學(xué), 2021.
[10] XU T,SU N,WANG R,et al.A novel variable rate fertilization system based on the android platform[A].Proceedings of 2015 IEEE international conference on progress in informatics and computing[C].Nanjing:Nanjing university of science and technology,2015.
[11] SABZI Y,ABBASPOUR G G,GARCíA M.A fast and accurate expert system for weed identification in potato crops using metaheuristic algorithms[J].Computers in industry,2018,98(6):80-89.
[12] 張 孟,李傳軍,董穎懷,等.基于Bootstrap改進(jìn)的機(jī)床主軸可靠性建模[J/OL].計(jì)算機(jī)集成制造系統(tǒng),2024. https:// kns-cnki -net.webvpn.xjau.edu.cn/kcms/detail/11.5946.tp.20230814.1155. 004.html.
[13] DAVISON A C, HINKLEY D V. Bootstrap methods and their application[M]. Cambridge: Cambridge university press, 1997.
[14] 羅凱靖,張育銘,何玉林,等.Bootstrap樣本大數(shù)據(jù)模型和分布式集成學(xué)習(xí)方法[J].大數(shù)據(jù), 2024,10(3):93-108.
[15] 王 樂(lè),韓 萌,李小娟,等.不平衡數(shù)據(jù)集分類方法綜述[J].計(jì)算機(jī)工程與應(yīng)用, 2021, 57 (22): 42-52.
[16] 丁海萌,郭小燕.基于SMOTE_GA_XGBoost的葡萄酒質(zhì)量預(yù)測(cè)[J].智能計(jì)算機(jī)與應(yīng)用, 2024,14(1):147-151.
[17] 吳增源,金靈敏,韓香麗,等.基于SMOTE-XGBoost的外貿(mào)企業(yè)財(cái)務(wù)危機(jī)預(yù)警模型[J].計(jì)算機(jī)工程與應(yīng)用, 2024,60(11):281-289.
基金項(xiàng)目:新疆維吾爾自治區(qū)重大科技專項(xiàng)(2022A02011-2);科技創(chuàng)新2030——“新一代人工智能”重大項(xiàng)目(2022ZD0115805)
作者簡(jiǎn)介:杜 云(1997-),男,河北保定人,在讀碩士研究生,研究方向?yàn)橹腔坜r(nóng)業(yè),(電話)17733765315(電子信箱)1137072153@qq.com;通信作者,張婧婧(1981-),女,湖南寧鄉(xiāng)人,副教授,主要從事農(nóng)業(yè)信息化技術(shù)研究,(電話)18999164538(電子信箱)zjj@xjau.edu.cn。