李明釗,李熠胥,王 佳
(1.紅云紅河煙草(集團)有限責任公司昆明卷煙廠,云南 昆明 650106;2.昆明理工大學自動化系,云南 昆明 650500)
煙草起源于美洲、大洋洲及南太平洋的某些島嶼,自哥倫布發(fā)現(xiàn)美洲大陸之后,開始逐漸傳播到世界各地。煙草遍布亞洲、美洲、非洲及東歐的廣大地區(qū),是中國及其他許多國家的重要經(jīng)濟作物[1],其利稅是國家和地方政府財政收入的重要來源之一。據(jù)統(tǒng)計,全國煙草行業(yè)在1993年便已創(chuàng)稅500億元,居各行業(yè)之首,并在后續(xù)年份持續(xù)上升。2010年達到5000億元,2021年實現(xiàn)13581億元,創(chuàng)歷史新高,為國家和地方財政增收、經(jīng)濟發(fā)展作出積極貢獻。此外,中國煙草的生產量占世界總量的三分之一以上,因此,為科學規(guī)劃煙草種植,對煙草產量的預測顯得尤為重要,可以為生產管理者提供決策支持。
目前,已有部分學者建立數(shù)學模型對煙草產量進行預測。曾志三[2]等利用灰色預測模型預測福建省寧化縣的煙草產量,為科學規(guī)劃煙草種植提供依據(jù);劉曉宇[3]建立多元二次回歸模型,對黑龍江煙草產量進行預測,并為黑龍江煙草生產提供相應的對策建議;張慢慢[4]基于氣候因素建立與烤煙產量關系的多元回歸和BP神經(jīng)網(wǎng)絡模型,對河南省烤煙產量進行預測,并對烤煙經(jīng)濟性狀進行綜合分析;張?zhí)5]等基于植煙區(qū)土壤樣本的主成分分析,利用支持向量機回歸算法邵陽縣70個植煙區(qū)的煙草產量進行回歸預測,為煙草產量的預測提供了一條新思路。通過文獻調研可知,建立數(shù)學模型對煙草產量進行預測的相關研究較少,基于此本文提出一種梯度提升回歸樹(Gradient Boost Regression Tree,GBRT)模型對煙草產量進行預測。
GBRT作為集成學習中的一種預測模型,其本質是以決策樹為基本學習器的加法模型,由Friedman[6]首次提出,具有預測精度高、運算速度快、對異常值的魯棒性強、不容易陷入過擬合等優(yōu)勢,廣泛應用于各行業(yè)預測研究。李津[7]等建立GBRT模型對高鐵區(qū)間晚點恢復進行預測,幫助提高調度員決策效率及提升高鐵運營控制水平;陳靜[8]等建立GBRT模型對空調系統(tǒng)中冷水機組的能耗進行預測,其預測精度足以滿足實際應用需求;陳巖[9]等建立GBRT模型對風力發(fā)電機溫度進行預測,并與真實值比較,驗證所建模型的有效性。通過文獻調研可知,GBRT模型在諸多鄰域已得到廣泛應用,但在煙草產量預測方面應用較少,因此,本文利用GBRT預測煙草產量,并通過數(shù)據(jù)仿真驗證模型有效性。
綜上,本文利用GBRT模型對全國煙草產量進行預測。首先,基于梯度提升思想建立GBRT模型;然后,根據(jù)近年來全國煙草產量的真實數(shù)據(jù)設置獨立因子;最后,通過仿真實驗驗證GBRT模型預測的有效性。
梯度提升建立在集成學習Booting思想上,通過將多個基學習器進行加權結合,使弱學習器提升為強學習器[10]。基于此,若弱學習器的生成依據(jù)是損失函數(shù)的梯度方向,則稱之為梯度提升。梯度提升算法首先要給定一個目標損失函數(shù),通過迭代選擇一個梯度方向上的基函數(shù)來逐漸逼近函數(shù)局部極小值,以達到損失函數(shù)最小值。
GBRT模型的基學習器為回歸樹CART[11],其樹生成方法是將特征空間進行分支劃分,分支時窮舉每一個特征值的每一個閾值,通過最小化均方差找到分支依據(jù),直到滿足預設的終止條件。一棵回歸樹對應著輸入空間的一個劃分區(qū)域以及在劃分區(qū)域單元上的輸出值,假設一棵回歸樹有n個特征,每個特征Si(i∈(1,n))個值,通過窮舉每個特征的每個取值對空間進行劃分,直至取到特征j的取值s,使得損失函數(shù)最小。
GBRT以弱學習器集合的形式產生強學習器,并在此基礎上進行訓練樣本的學習及模型預測。其核心思想是添加新的回歸樹以最小化每次迭代中的目標函數(shù),每棵新樹都是在上一棵樹的殘差上進行學習,并沿著損失函數(shù)的負梯度方向進行訓練,通過多次訓練,最終將弱學習器進行線性組合,產生一個強學習器[12]。
GBRT模型算法步驟如下:
步驟1:訓練數(shù)據(jù)集為T={(x1,y1),(x2,y2),…,(xn,yn)},n為正整數(shù)。損失函數(shù)為L={y,f(x)},回歸樹為F(x)。c為常數(shù),表示根節(jié)點的類別。初始化決策樹:
(1)
步驟2:設m=1,2,…,M表示迭代次數(shù),即生成的弱學習器個數(shù)。對樣本h=1,2,…,H,計算損失函數(shù)的負梯度在當前模型的值作為殘差的估計:
(2)
步驟3:{(x1,r1m),(x2,r2m),…,(xN,rNm)}擬合一個回歸樹,得到第m棵樹的葉節(jié)點區(qū)域Rmj,j=1,2,…,J表示每棵樹的葉節(jié)點個數(shù)。
步驟4:對j利用線性搜索,估計葉節(jié)點區(qū)域的值,使損失函數(shù)最小化,計算最佳擬合值:
(3)
步驟5:更新為強學習器:
(4)
步驟6:得到最終回歸樹,即每棵樹的葉節(jié)點值相加:
(5)
本文數(shù)據(jù)均從公開數(shù)據(jù)中整理得到,將2017~2021年全國煙草月度產量趨勢顯示于圖1。其中,對1~2月的煙草產量整合,顯示2月的累計產量。此外,將2018~2021年各月度產量與上年同期產量同比增長量趨勢顯示于圖2。
圖1 2017~2021年全國煙草產量趨勢示意圖
圖2 2018~2021年全國煙草產量同比增長趨勢
從圖1中可以觀察出,煙草每年的月度產量走勢大致相同,但同年不同月份間差異明顯。從圖2可看出,不同年份各月度產量與上年同期產量間的差值差異明顯。由此可見,煙草產量與年份、月份及上年同期產量之間存在一定的關聯(lián)。因此,將煙草產量數(shù)據(jù)的年份、月份及上年同期產量作為獨立因子輸入GBRT模型。
為驗證GBRT模型預測的準確度,將GBRT算法所得結果與2022年全國煙草產量的真實數(shù)據(jù)進行比較,對比結果顯示于表1。此外,為更加直觀地看出GBRT預測結果與真實數(shù)值間的差異,將二者的月度趨勢繪制與圖3。
表1 預測結果對比
圖3 預測結果趨勢對比
由表1及圖3可知,GBRT模型在大多數(shù)月份的預測與真實數(shù)值誤差不大。除6月與12月預測結果偏差較大以外,其余月份的相對誤差基本保持在5%以內。此外,全年月度產量整體走勢與真實數(shù)值大體相似,平均相對誤差為5.2%,且全年總產量與真實數(shù)據(jù)之間差異極小,驗證了GBRT模型的有效性。
本文針對煙草行業(yè)產量預測,綜合考慮年份、月份及上年同期產量等影響因素,建立GBRT模型,預測全國煙草產量。結果表明,GBRT模型預測結果與真實數(shù)值大體相似,各月度產量平均相對誤差為5.2%,全年相對誤差為0.1%,具有較強的實用性和有效性。