李飛飛,宋慶燕,陳長秀,劉佳澤,高雪巖,2*
1.北京珍寶島中藥產(chǎn)業(yè)有限公司,北京 100800;2.中國中藥協(xié)會中藥材種植養(yǎng)殖專業(yè)委員會,北京 100700
三七是常用大宗中藥材之一,為五加科人參屬植物三七Panaxnotoginseng(Burk.)F.H.Chen的干燥根和根莖[1]。現(xiàn)代研究表明三七具有抗衰老、抗疲勞、抗缺氧、降血壓、降血脂、降血糖和提高機(jī)體免疫力等藥理作用[2]。三七臨床應(yīng)用廣泛,近年來需求量不斷增加,目前三七年需求量約25 000 t。
近年來,市場炒作、種植農(nóng)戶不了解市場信息等原因為部分中藥材投機(jī)商提供了機(jī)會,對中藥材市場價格波動起到了推波助瀾的作用。市場的波動造成藥農(nóng)和中藥材經(jīng)營者虧損嚴(yán)重,種植和經(jīng)營積極性下降,進(jìn)一步影響下游中藥飲片和中成藥企業(yè)的穩(wěn)定生產(chǎn),影響行業(yè)的健康可持續(xù)發(fā)展。對三七價格進(jìn)行預(yù)測,可以幫助藥農(nóng)和中藥生產(chǎn)企業(yè)合理決策,引導(dǎo)三七產(chǎn)業(yè)健康有序發(fā)展,成為一個重要的研究課題。
目前,中藥材相關(guān)的預(yù)測模型建設(shè)已有部分研究。馬健[3]基于時間序列對亳州的白芍產(chǎn)量進(jìn)行了預(yù)測分析。馮烽等[4]基于灰色系統(tǒng)對中藥材羅漢果價格進(jìn)行了預(yù)測。王諾等[5]等基于自回歸積分滑動平均模型對中藥材三七價格預(yù)測。馬廣慧等[6]基于遺傳BP神經(jīng)網(wǎng)絡(luò)的三七價格預(yù)測。馬健等[7]基于遺傳模擬退火三次指數(shù)平滑模型對中藥材價格進(jìn)行了預(yù)測。這些信息預(yù)測模型均只考慮了待預(yù)測量的歷史數(shù)據(jù)對其未來數(shù)據(jù)的影響,沒有考慮到影響待預(yù)測量變化的其它因素,而對于中藥材價格而言,其價格變化必然與供需、成本、宏觀經(jīng)濟(jì)環(huán)境等各種因素密切相關(guān),缺少這些因素的預(yù)測存在很大局限性。常征宇等[8]研究了各類因素對中藥材價格的影響,并獲得了各類因素對中藥材價格變化的貢獻(xiàn)度,但是未給出各因素與價格之間的定量關(guān)系。楊勇等[9]從市場角度分析中藥材價格的影響因素,建立向量自回歸模型(VAR模型),并運用脈沖響應(yīng)和方差分解定量方法分析這些影響因素作用的大小,利用已知數(shù)據(jù)對中藥材價格指數(shù)進(jìn)行價格預(yù)測,但是模型對3個季度以后價格的預(yù)測精度急劇下降。
循環(huán)神經(jīng)網(wǎng)絡(luò)RNN(Recurrent Neural Network)是一類用于處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)。與傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)相比,RNN的特點在于將時序的概念引入到模型的設(shè)計中,RNN網(wǎng)絡(luò)會對前面的信息進(jìn)行記憶并應(yīng)用于當(dāng)前輸出的計算中,即隱藏層之間的節(jié)點不再無連接而是有連接的,并且隱藏層的輸入不僅包括輸入層的輸出還包括上一時刻隱藏層的輸出。這一特點使得RNN能夠很好的應(yīng)用于時序輸入序列的預(yù)測。LSTM(Long Short Term)神經(jīng)網(wǎng)絡(luò)是RNN的一種特殊形式,利用LSTM模型學(xué)習(xí)長期依賴信息,在很多應(yīng)用中取得了巨大成功。本研究擬首先分析影響三七價格波動的外在因素,并分析各影響因素的相關(guān)性,進(jìn)行影響因素的篩選后引入LSTM模型,以多種影響因素的時間序列作為模型輸入,對三七價格進(jìn)行預(yù)測。
LSTM是RNN神經(jīng)網(wǎng)絡(luò)的一種特殊類型。RNN神經(jīng)網(wǎng)絡(luò)由輸入層、隱藏層、輸出層組成,其中隱藏層接收本個序列以及上一個序列通過RNN隱藏層計算后輸出的結(jié)果,實現(xiàn)時間序列的歷史信息通過隱藏層計算后與新一期的序列值共同作用于隱藏層,形成新的輸出。如圖1、圖2所示,RNN結(jié)構(gòu)按照時間線展開可以更清楚的看到RNN的結(jié)構(gòu)。
圖1 RNN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
圖2 RNN神經(jīng)網(wǎng)絡(luò)沿時間維度展開
假設(shè)RNN的輸入層大小為I,隱層大小為H,輸出層大小為K。輸入層、隱藏層、輸出層的向量序列分別表示為:x1,x2,x3…xt;b1,b2,b3…bt;o1,o2,o3…ot。圖2中xt為輸入序列x的第t項輸入,at為第t項的隱藏層的輸入,bt為第t項隱藏層的輸出。at由第t項輸入層的xt以及第t-1項的隱層輸出項bt-1共同決定:
(1)
(2)
其中ωih、ωh′h分別為輸入層和隱藏層間的權(quán)重矩陣、前項隱藏層輸出傳輸?shù)胶箜楇[藏層輸入間的權(quán)重矩陣,mh為隱層偏置,f(x)為隱層激活函數(shù),常見的激活函數(shù)有Sigmoid,雙曲正切函數(shù)tanh等。第t項隱藏層輸出bt傳導(dǎo)至輸出層,輸出層的輸出為:
(3)
其中ωhk為隱層到輸出層權(quán)重矩陣,nk為輸出層偏置,g(x)為輸出層激活函數(shù)。
對于長期依賴問題,理論上RNN能夠處理無限長的時間序列數(shù)據(jù),但是實際應(yīng)用中,常常存在喪失學(xué)習(xí)到連接較遠(yuǎn)的信息的能力的情況。LSTM作為RNN的一種特殊類型,改進(jìn)了RNN的結(jié)構(gòu),通過構(gòu)建特殊的控制單元解決了長期依賴的問題。LSTM存儲和計算模塊內(nèi)部結(jié)構(gòu)的核心思想是將歷史信息作為細(xì)胞狀態(tài)在一條專門的信息傳送路徑中傳播,信息受較小干擾,容易保持不變。圖3為LSTM的一個存儲處理單元的基本結(jié)構(gòu),其中的忘記門讀取ot-1和xt的信息并輸出信息以決定選擇忘記bt-1的某些信息,輸入門確定什么樣的新信息被存放在細(xì)胞狀態(tài)中;輸出門確定何種信息被輸出。
圖3 LSTM神經(jīng)網(wǎng)絡(luò)存儲處理單元
三七價格波動的影響因素包括宏觀因素、微觀因素以及各類突發(fā)類事件因素[10-14]。宏觀方面,國家的經(jīng)濟(jì)發(fā)展水平、三七所處的醫(yī)藥行業(yè)發(fā)展水平、國家的宏觀貨幣政策等是影響價格波動的中藥因素;微觀方面,三七的供需和成本是影響價格波動的關(guān)鍵因素;除此之外,三七價格的波動還受到一些突發(fā)事件的影響,如三七為原料的新產(chǎn)品開發(fā)、相關(guān)疫病流行、國家政策變化等。
本研究基于北京珍寶島中藥產(chǎn)業(yè)有限公司提供的三七2006—2018年在全國范圍內(nèi)的產(chǎn)量、需求量、庫存量、成本、全國種植面積、畝產(chǎn)量等數(shù)據(jù),并從官方網(wǎng)站獲取年度居民消費支出、月度全國中成藥產(chǎn)量、月度貨幣供應(yīng)量數(shù)據(jù)建立基于LSTM的價格預(yù)測模型,用以預(yù)測三七價格走勢。
根據(jù)珍寶島中藥材大數(shù)據(jù)中心提供的數(shù)據(jù),2017年全國三七產(chǎn)量在15 000 t左右,三七的年需求量在25 000 t左右,目前年用量以10%~20%遞增,預(yù)計2018年三七的用量在27 000 t左右。三七種植成本目前為32 000元/畝左右。三七2006—2018年間產(chǎn)量、需求量、種植面積、畝產(chǎn)、種植成本數(shù)據(jù)見表1。
表1 2006—2018年三七供需及成本數(shù)據(jù)
本研究使用的宏觀數(shù)據(jù)如年度居民消費支出、月度全國中成藥產(chǎn)量、月度貨幣供應(yīng)量均來自國家官方統(tǒng)計數(shù)據(jù)。
三七產(chǎn)新期固定,在產(chǎn)新期前后存在價格的明顯波動,因此本研究最后引入月份作為三七價格波動的一個重要影響因素。
市場上三七的規(guī)格較多,其中出現(xiàn)最多的規(guī)格有:20頭、40頭、60頭、80頭、120頭、無數(shù)頭等,不同規(guī)格的三七價格存在較大差異。本研究采用珍寶島中藥材數(shù)據(jù)庫中三七的價格指數(shù)數(shù)據(jù),此指數(shù)綜合了三七各個規(guī)格的價格。2006—2018年部分三七價格指數(shù)見表2,三七價格指數(shù)變化趨勢見圖4。
表2 2006—2018年部分三七價格數(shù)據(jù)
圖4 三七價格指數(shù)變化趨勢圖
本研究通過對影響三七價格變化的宏觀、微觀因素進(jìn)行分析,初步確定使用產(chǎn)量、需求量、種植面積、畝產(chǎn)、成本、中成藥產(chǎn)量、貨幣和準(zhǔn)貨幣(M2)、居民消費支出、月份共9個維度的影響因素。
高維數(shù)據(jù)建模增加了模型的復(fù)雜度,降低了算法的泛化能力,增加了算法的搜索難度。建模前進(jìn)行特征選擇,消除冗余數(shù)據(jù),有利于提升模型性能。本研究通過分析影響因素間相關(guān)性進(jìn)行影響因素選擇。
圖5為三七的產(chǎn)量、需求量、種植面積、畝產(chǎn)、成本、中成藥產(chǎn)量、貨幣和準(zhǔn)貨幣(M2)、居民消費支出8個因素的相關(guān)性分析。從圖中可以看出,中成藥產(chǎn)量、貨幣和準(zhǔn)貨幣(M2)、居民消費支出這3個宏觀因素間存在明顯的線性相關(guān)性。因此從3個因素中任意剔除其它2個因素,本研究剔除中成藥產(chǎn)量和居民消費支出2個因素,最終保留三七的產(chǎn)量、需求量、種植面積、畝產(chǎn)、成本、貨幣和準(zhǔn)貨幣(M2)、月份作為模型的輸入變量。
完成特征選擇后,對篩選后的特征進(jìn)行歸一化處理。本研究采用min-max標(biāo)準(zhǔn)化方法,即通過下列公式對數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。
(4)
基于上述算法說明與數(shù)據(jù)準(zhǔn)備,本研究構(gòu)建了基于LSTM的三七價格指數(shù)預(yù)測模型。其預(yù)測流程主要包括數(shù)據(jù)預(yù)處理、影響因素篩選、數(shù)據(jù)歸一化處理、基于LSTM的三七價格指數(shù)預(yù)測模型建設(shè)、訓(xùn)練、模型測試和應(yīng)用幾個部分,見圖6。
圖5 影響因素間相關(guān)性分析
圖6 影響因素間相關(guān)性分析
數(shù)據(jù)的預(yù)處理包括數(shù)據(jù)獲取后對缺失值、異常值的基本處理,模型的構(gòu)建和訓(xùn)練過程中不斷檢測模型的預(yù)測精度,如果精度達(dá)到要求則進(jìn)入下一步模型測試階段,精度未達(dá)到要求則通過增加訓(xùn)練次數(shù)、調(diào)整模型參數(shù)等直到模型達(dá)到精度要求。
本研究使用2006—2017年數(shù)據(jù)作為模型的訓(xùn)練數(shù)據(jù),使用2018年數(shù)據(jù)作為模型的測試數(shù)據(jù)。基于LSTM的三七價格指數(shù)模型建立后,針對測試數(shù)據(jù)進(jìn)行模型預(yù)測效果測試。
圖7中實線為真實價格指數(shù)數(shù)據(jù),虛線為擬合數(shù)據(jù)和預(yù)測數(shù)據(jù)。2018年的價格預(yù)測結(jié)果如圖7所示。
圖7 三七價格預(yù)測
從表3中可以看出,模型預(yù)測2018年三七價格指數(shù)數(shù)據(jù)的波動范圍在206~306之間,全年價格呈現(xiàn)先漲后跌態(tài)勢,總體比2017年略有下跌。對比2018年三七價格指數(shù)實際波動情況可以看到,預(yù)測結(jié)果能夠很好的擬合三七價格變動的整體趨勢。2018年上半年前期2—3月份略有上升,之后緩慢下跌。預(yù)測精度上,預(yù)測值與實際值最大誤差為13.01%,最小誤差為2.36%。
表3 模型預(yù)測2018年三七價格數(shù)據(jù)
此外,圖7還展示了應(yīng)用此模型另外對2019年上半年的三七價格進(jìn)行預(yù)測的結(jié)果,2019年上半年的預(yù)測價格見表4。從表4中可以看出,2019年上半年三七價格范圍處于216~236之間,整體上在年初略有上漲,3—4月份之后呈現(xiàn)緩慢下跌趨勢,三七價格指數(shù)在2019年波動較為平緩。
表4 模型預(yù)測2019年上半年三七價格數(shù)據(jù)
三七作為我國傳統(tǒng)名貴中藥材,是很多經(jīng)典名方以及大品種中成藥的重要原料,其功效也受到消費者越來越多的認(rèn)同。近年來,三七的價格在市場需求、資本炒作等多方面因素的影響下,2013—2014年出現(xiàn)了大漲大跌,價格的非正常波動造成藥農(nóng)盲目進(jìn)行種植擴(kuò)張,繼而造成供需不平衡,影響三七相關(guān)產(chǎn)業(yè)的健康發(fā)展。通過科學(xué)方法對三七的價格進(jìn)行預(yù)測,進(jìn)而指導(dǎo)三七藥材的生產(chǎn)者和經(jīng)營者作出正確的生產(chǎn)經(jīng)營決策,能夠有效抑制投機(jī),保證市場健康穩(wěn)定運行。
通過上述的實驗數(shù)據(jù)表明,LSTM神經(jīng)網(wǎng)絡(luò)應(yīng)用于三七價格指數(shù)預(yù)測取得了較好的效果。分析主要原因在于三七等中藥材價格變化為典型的時序序列,歷史價格對當(dāng)期價格的影響較大,而LSTM神經(jīng)網(wǎng)絡(luò)對歷史信息處理的典型優(yōu)勢特別有利于三七價格指數(shù)的預(yù)測。
本文建立的價格指數(shù)預(yù)測模型也可以引入到其它中藥材價格預(yù)測,通過信息化、智能化高效利用市場宏觀數(shù)據(jù)和微觀數(shù)據(jù),有利于達(dá)到提高資源配置有效性和保證市場健康運行的目標(biāo)。