龐鋮鋮,戎袁杰,劉昕,宋夢昕,王光旸
(國網(wǎng)物資有限公司,北京市 100120)
招標(biāo)采購過程中,中標(biāo)價格往往是招標(biāo)人比較關(guān)注的結(jié)果,中標(biāo)價格的高低對于招標(biāo)人的預(yù)算管控、項目經(jīng)營收益都存在著很大的影響。對于國家電網(wǎng)公司集中規(guī)模招標(biāo)采購,采購頻次高,規(guī)律性較強,為了準(zhǔn)確管控預(yù)算以及提升公司經(jīng)營管理水平,利用集中規(guī)模招標(biāo)歷史數(shù)據(jù),提出兩種預(yù)測模型,即線性回歸模型和多層感知器[1](multi-layer perceptron,MLP)神經(jīng)網(wǎng)絡(luò)模型,對招標(biāo)采購項目的中標(biāo)價格進行預(yù)測。
線性回歸的原理是通過含有自變量和因變量的線性等式來模擬兩個變量之間的關(guān)系,再將作為自變量和因變量的現(xiàn)有數(shù)據(jù)代入該線性等式,利用最小二乘法得到系數(shù)后,即可針對新的自變量預(yù)測因變量的變化趨勢。MLP神經(jīng)網(wǎng)絡(luò)是典型的前饋神經(jīng)網(wǎng)絡(luò),該模型可以模擬人腦神經(jīng)元存儲或?qū)W習(xí)大量輸入和輸出數(shù)據(jù)的行為,同時無需用變量描述映射關(guān)系,直接使用輸入和輸出數(shù)據(jù)構(gòu)造模型,尤其對非線性關(guān)系具有較強的模擬能力。
本文以某種受原材料價格影響較大的變電設(shè)備為例,通過線性回歸和MLP神經(jīng)網(wǎng)絡(luò)兩種方式,以實際數(shù)據(jù)為基礎(chǔ)對該變電設(shè)備報價進行預(yù)估,并對比不同方式預(yù)估價格的準(zhǔn)確性。
簡單線性回歸分析是基于給定的單個解釋變量的回歸分析,用于研究單個因變量Y和單個自變量X之間的線性關(guān)系,線性回歸模型的一般形式為
Y=a+bX+ε
式中:a—常數(shù)項;
b—回歸系數(shù);
ε—隨機誤差,即隨機因素對因變量所產(chǎn)生的影響。
采用最小二乘法得到模型參數(shù)估計值。
在得到線性等式后,還應(yīng)采用統(tǒng)計檢驗來驗證該模型的正確性以及參數(shù)估計值的可信程度,通常使用的統(tǒng)計檢驗方法包括擬合優(yōu)度檢驗、線性顯著性檢驗、變量顯著性檢驗,以及參數(shù)置信區(qū)間估計[2]。
(2)方程總體線性的顯著性檢驗(F檢驗),設(shè)定原假設(shè)H0∶R=0(線性不顯著),其他假設(shè)Ha∶R≠0(線性顯著),統(tǒng)計量F=[ESS/k]/[RSS/(n-k-1)]服從自由度為(k,n-k-1)的F分布。給定顯著性水平a(一般取0.05或0.1,即置信度為95%或90%),查表得到臨界值Fa(k,n-k-1),根據(jù)訓(xùn)練樣本得出F的數(shù)值,通過F>Fa(k,n-k-1)來拒絕原假設(shè)H0(線性不顯著),以判定原方程總體上的線性關(guān)系顯著成立。
神經(jīng)網(wǎng)絡(luò)旨在模擬神經(jīng)系統(tǒng)構(gòu)造與功能進行數(shù)據(jù)處理,不斷調(diào)整模擬神經(jīng)元之間的鏈條的權(quán)值,以使得整個網(wǎng)絡(luò)可以較好擬合訓(xùn)練數(shù)據(jù)的關(guān)系。多層感知器是一種基于神經(jīng)網(wǎng)絡(luò)的算法模型,其基本結(jié)構(gòu)包括輸入層、隱含層以及輸出層,如圖1所示。每個輸入節(jié)點都通過一個加權(quán)的鏈連接到輸出節(jié)點,該加權(quán)的鏈用以模擬神經(jīng)元之間的連接強度,訓(xùn)練一個多層感知器就是不斷調(diào)整加權(quán)鏈的權(quán)值的過程,直至能較好地擬合訓(xùn)練數(shù)據(jù)的輸入輸出關(guān)系為止[3]。
圖1 MLP神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
圖2 雙曲正切激活函數(shù)
多層感知器需通過不斷調(diào)整權(quán)值參數(shù)w來完成學(xué)習(xí)過程,直至輸出和訓(xùn)練樣本的實際輸出一致,權(quán)值調(diào)整公式為
(1)
式中:wk—第k次循環(huán)后第i個輸入后鏈接的權(quán)值;
β—學(xué)習(xí)效率;
xij—訓(xùn)練樣本xi的第j個屬性值。
以某變電設(shè)備產(chǎn)品為例,選取2010—2019年各采購批次原材料價格和變電設(shè)備中標(biāo)價格作為訓(xùn)練樣本,原材料價格作為自變量,變電設(shè)備價格作為因變量;同時選取兩種電壓等級產(chǎn)品作為研究對象,分別記為典型產(chǎn)品1和典型產(chǎn)品2,將同時利用線性回歸分析和MLP神經(jīng)網(wǎng)絡(luò)模型對兩種典型產(chǎn)品進行預(yù)測。
3.1.1 繪制散點圖
首先利用SPSS軟件將兩個變量的樣本數(shù)據(jù)作出散點圖,如圖3—圖4所示。從圖像層面上對兩個變量之間是否具有線性相關(guān)關(guān)系進行判斷,再進一步進行相關(guān)性分析。
圖3 典型產(chǎn)品1價格與原材料價格關(guān)系散點
圖4 典型產(chǎn)品2價格與原材料價格關(guān)系散點
由圖3、圖4可以看出,兩個變量之間存在明顯的線性正相關(guān)關(guān)系,因變量隨自變量的增大而相應(yīng)增大。相關(guān)系數(shù)是測定因變量和自變量之間相關(guān)關(guān)系程度及方向的指標(biāo)[4],計算公式為
(2)
相關(guān)系數(shù)越接近于1,相關(guān)性越強,反之則相關(guān)性越弱。計算典型產(chǎn)品價格和原材料價格的相關(guān)系數(shù),得到結(jié)果如表1所示。對于兩種典型產(chǎn)品,其中標(biāo)價格和原材料價格兩個變量之間的相關(guān)系數(shù)均超過0.8,呈高度正相關(guān)。
表1 變電設(shè)備價格和原材料價格的相關(guān)系數(shù)
3.1.2 建立回歸模型
利用SPSS軟件對訓(xùn)練樣本數(shù)據(jù)進行回歸分析,采用最小二乘法建立模型參數(shù)的估計,根據(jù)輸出結(jié)果得到典型產(chǎn)品價格回歸模型。
典型產(chǎn)品1價格模型:
Y1=4.136 8X1+5.453 4
典型產(chǎn)品2價格模型:
Y2=8.933 6X2+5.356 5
3.1.3 模型檢驗
對上述線性回歸模型進行統(tǒng)計檢驗,選擇F檢驗與t檢驗。
表2 模型匯總
表3 Anovab
首先做擬合優(yōu)度檢驗。表2數(shù)據(jù)顯示,從擬合優(yōu)度來看,典型產(chǎn)品1價格模型:R=0.915,R2=0.837;典型產(chǎn)品2價格模型:R=0.880,R2=0.774。表明對于典型產(chǎn)品1,因變量總體變動量的83.7%可以被對應(yīng)的線性方程解釋;對于典型產(chǎn)品2,因變量總體變動量的77.4%可以被對應(yīng)的線性方程解釋。
接下來做方程總體線性的顯著性檢驗(F檢驗)。根據(jù)表3數(shù)據(jù)顯示,模型能夠較好地解釋總變動量。兩種研究對象的預(yù)測模型F檢驗量的P值趨近于0,小于0.01,故應(yīng)拒絕線性不顯著的原假設(shè),說明兩種變量之間存在顯著的線性關(guān)系。
最后做變量的顯著性檢驗(t檢驗)。通過t值計算式,可以得到兩種典型產(chǎn)品預(yù)測模型的t值分別為14.14和11.40。查詢t值表,發(fā)現(xiàn)t均落入拒絕域,故拒絕原假設(shè)H0,可得到R顯著的結(jié)論,說明自變量能夠顯著地解釋因變量。
本文使用SPSS軟件對MLP神經(jīng)網(wǎng)絡(luò)建模,分析過程主要分為分區(qū)數(shù)據(jù)集、訓(xùn)練模型和預(yù)測結(jié)果三個步驟。
3.2.1 分區(qū)數(shù)據(jù)集
將活動數(shù)據(jù)集劃分為訓(xùn)練集、測試集和驗證集三個集合,訓(xùn)練集合中的數(shù)據(jù)用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),測試集合中的數(shù)據(jù)用來監(jiān)視訓(xùn)練過程中的錯誤以防過度訓(xùn)練,而驗證集合中的數(shù)據(jù)則用于評估訓(xùn)練所得到的神經(jīng)網(wǎng)絡(luò)的準(zhǔn)確性。該案例中,訓(xùn)練、測試和驗證樣本指定7、3、0,即按70%、30%和0%的比例來劃分樣本,再將樣本數(shù)據(jù)隨機分配到三種樣本集合中。
3.2.2 訓(xùn)練模型
在滿足精度要求的前提下,為了提高數(shù)據(jù)訓(xùn)練效率,在該神經(jīng)網(wǎng)絡(luò)的體系結(jié)構(gòu)中構(gòu)建一個使用雙曲正切激活函數(shù)的隱藏層,并選擇批處理的訓(xùn)練方式,即運用訓(xùn)練數(shù)據(jù)集中的所有記錄信息,以使得總誤差最小化。由于該方法在滿足任何結(jié)束訓(xùn)練的條件前都需要不斷調(diào)整權(quán)重,所以存在將數(shù)據(jù)傳遞數(shù)次的可能性。優(yōu)化算法在調(diào)整后選擇了相應(yīng)的共軛梯度,模型參數(shù)如圖5—圖6所示。兩種典型產(chǎn)品的平方和誤差為2.607%和2.952%,相對誤差分別為0.168%和0.236%。
圖5 典型產(chǎn)品1預(yù)測模型匯總
圖6 典型產(chǎn)品2預(yù)測模型匯總
3.2.3 預(yù)測結(jié)果
通過訓(xùn)練樣本得到滿足要求的神經(jīng)網(wǎng)絡(luò)模型,預(yù)測如圖7—圖8所示,殘差分析如圖9—圖10所示。
圖7 典型產(chǎn)品1模型預(yù)測
圖8 典型產(chǎn)品2模型預(yù)測
圖9 典型產(chǎn)品1殘差分析
由圖9和圖10可以看出,典型產(chǎn)品1殘差在±5以內(nèi),典型產(chǎn)品2殘差在±15以內(nèi),均在可接受范圍內(nèi)。
本文采用平均相對誤差(ARE)和標(biāo)準(zhǔn)誤差(SE)兩個指標(biāo)[5]來評價上述兩種模型的預(yù)測準(zhǔn)確性。標(biāo)準(zhǔn)誤差(SE)也是描述預(yù)測值與實際值之差的一種度量,其值越小,預(yù)測精度越高。平均相對誤差和標(biāo)準(zhǔn)誤差公式分別為式(3)、式(4):
(3)
(4)
式中:yi—實際值;
n—預(yù)測樣本數(shù)。
通過計算得出具體數(shù)值,見表4。
表4 預(yù)測誤差估計結(jié)果
由表4可知,兩種預(yù)測結(jié)果的平均相對誤差和標(biāo)準(zhǔn)誤差數(shù)值均較小,平均相對誤差都在5%以內(nèi),標(biāo)準(zhǔn)誤差在5%左右。此外,由于本文所研究的變電設(shè)備,其價格與原材料價格線性關(guān)系較為凸顯,所以,無論是將平均相對誤差還是標(biāo)準(zhǔn)誤差作為判斷指標(biāo),對于兩種典型產(chǎn)品,線性回歸模型預(yù)測精度略優(yōu)于MLP神經(jīng)網(wǎng)絡(luò),但兩模型預(yù)測精度差異并不是十分顯著。兩種方法在進行變電設(shè)備價格預(yù)測時均有一定的參考價值。
通過SPSS軟件,建立線性回歸和MLP神經(jīng)網(wǎng)絡(luò)兩種模型,對某種變電設(shè)備招標(biāo)采購中標(biāo)價格進行預(yù)測。預(yù)測結(jié)果說明:
(1)兩種模型的預(yù)估值與真實值的平均相對誤差和標(biāo)準(zhǔn)誤差都較小,對于投標(biāo)價格受原材料價格影響較大的變電設(shè)備,兩種模型都可以對招標(biāo)采購價格做出較為精準(zhǔn)的預(yù)測,均具有一定的參考價值。
(2)對于與原材料價格線性關(guān)系較為凸顯的產(chǎn)品,兩種模型的預(yù)測能力不相上下,線性回歸模型預(yù)測精度略優(yōu)于MLP神經(jīng)網(wǎng)絡(luò)模型,但隨著訓(xùn)練樣本集的增大,MLP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測能力可能更強。
綜上,兩種模型在招標(biāo)采購中變電設(shè)備價格預(yù)測上并不存在絕對的優(yōu)劣,模型的預(yù)測精度與變電設(shè)備的類別有一定相關(guān)性。在實際應(yīng)用中,可以結(jié)合線性回歸模型和MLP神經(jīng)網(wǎng)絡(luò)模型對變電設(shè)備價格進行綜合判斷。