黃珍珍 毛亞楠 高萌
摘 要 本文主要基于BP神經(jīng)網(wǎng)絡(luò)對圖書館讀者流量進行預(yù)測,建立BP神經(jīng)網(wǎng)絡(luò)模型,從輸入層輸入數(shù)據(jù),逐層傳遞,將輸出層輸出的預(yù)測值與實際值比較得出相對誤差,并以此為根據(jù)不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,以獲得最小誤差。利用Matlab仿真模型對數(shù)據(jù)及預(yù)測結(jié)果誤差進行分析,結(jié)果表明BP神經(jīng)網(wǎng)絡(luò)對圖書館讀者流量進行預(yù)測具有較好的效果。
關(guān)鍵詞 BP神經(jīng)網(wǎng)絡(luò) 讀者流量預(yù)測 Matlab仿真
0 引言
圖書館以其豐富的圖書資源,強大的文獻檢索功能,為人們的工作、生活提供了極大的方便,使人們能夠快速及時地掌握最新科研成果、政治事件以及文化娛樂方面的信息。對圖書館讀者流量進行預(yù)測,能夠幫助圖書館工作人員及時掌握讀者流量數(shù)據(jù),合理分配任務(wù),從而在人群高發(fā)時期能做好準(zhǔn)備應(yīng)對一些突發(fā)應(yīng)急事件。
然而,圖書館的讀者流量受到天氣、交通、地理位置和節(jié)假日等多種因素影響,因此讀者流量數(shù)據(jù)沒有規(guī)律和穩(wěn)定性。考慮到讀者流量預(yù)測具有的“黑箱”和非線性的特征,為提高預(yù)測結(jié)果的準(zhǔn)確性,本文采用BP神經(jīng)網(wǎng)絡(luò)對流量進行預(yù)測,并在預(yù)測數(shù)據(jù)基礎(chǔ)上結(jié)合實際數(shù)據(jù)進行驗證。
1 BP神經(jīng)網(wǎng)絡(luò)算法基本原理
BP神經(jīng)網(wǎng)絡(luò)是誤差反向傳播的多層前饋神經(jīng)網(wǎng)絡(luò),是模擬大腦的工作方式,通過許多簡單的神經(jīng)元組成的一種非線性系統(tǒng),具有非線性映射能力、泛化能力和容錯能力的特點,主要應(yīng)用于非線性建模、函數(shù)逼近、模式分類等方面。BP神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)為:輸入層、一個或多個隱含層和輸出層。
同層之間的神經(jīng)元互相獨立,不進行數(shù)據(jù)的傳輸。輸入數(shù)據(jù)從輸入層輸入,逐層傳遞,且每層的輸出值通過連接權(quán)系數(shù)傳至下一層,輸入數(shù)據(jù)為前層輸出值的加權(quán)和。將輸出層數(shù)據(jù)即預(yù)測值與實際值比較得出相對誤差,利用輸出后的誤差來估計輸出層的直接前導(dǎo)層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層地反傳下去,就獲得了所有其他各層的誤差估計,并以此為根據(jù)不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,以獲得最小誤差。
2 讀者流量預(yù)測模型
2.1 數(shù)據(jù)的預(yù)處理
本文以某圖書館2011年10月1日至30日的讀者流量為數(shù)據(jù)樣本,做出讀者流量折線圖(如圖1所示)。
圖1 某圖書館1至30日讀者流量折線圖
為使數(shù)據(jù)規(guī)范化對數(shù)據(jù)進行歸一化處理,采用公式(1)進行計算。
= (1)
可以得到數(shù)據(jù)如表1。
表1 1至30日的讀者流量(千人)
2.2 預(yù)測模型
對讀者流量進行迭代預(yù)測,即以10月1日至6日的實際數(shù)據(jù)流量預(yù)測7日至12日的流量,再以7日至12日的實際數(shù)據(jù)預(yù)測未來六天的流量,依次迭代。這樣便將所有數(shù)據(jù)分為五組,每組數(shù)據(jù)六個值,輸出六個值,即輸入層神經(jīng)元數(shù)為6,輸出層神經(jīng)元數(shù)為6,根據(jù)經(jīng)驗公式(2)
=+(2)
其中為輸入層神經(jīng)元數(shù),為輸出層神經(jīng)元數(shù),為隱含層神經(jīng)元數(shù), 為1~10之間的整數(shù)。取 = 2,得出隱含層神經(jīng)元數(shù) = 5,則形成結(jié)構(gòu)為6—5—6的BP神經(jīng)網(wǎng)絡(luò)模型。
3 預(yù)測結(jié)果與分析
本文通過Matlab建立仿真模型,網(wǎng)絡(luò)的中間層采用S型正切函數(shù)tansig()作為神經(jīng)元傳遞函數(shù),輸出層神經(jīng)元的傳遞函數(shù)采用純線性函數(shù)purelin(),訓(xùn)練函數(shù)用trainlm()。訓(xùn)練參數(shù)為:訓(xùn)練次數(shù)3000,訓(xùn)練目標(biāo)0.0002。
在網(wǎng)絡(luò)輸入層輸入5組實際數(shù)據(jù)作為訓(xùn)練樣本,經(jīng)過仿真模擬輸出層的預(yù)測值如表2。
表2 10月7日至11月5日讀者流量預(yù)測值(千人)
將預(yù)測值反歸一化處理后與實際值進行比較的誤差曲線分別如圖2所示。
圖2 7日至19日預(yù)測值與實際值的誤差曲線
可見本文設(shè)計的方法對于讀者流量的預(yù)測還是比較準(zhǔn)確的,和實際值差別不大,基本達到了設(shè)計目的。
4 結(jié)束語
通過本文研究可知,BP神經(jīng)網(wǎng)絡(luò)能夠較好地進行圖書館讀者流量預(yù)測,且神經(jīng)網(wǎng)絡(luò)具有很強的非線性映射能力和柔性的網(wǎng)絡(luò)結(jié)構(gòu),靈活性強、精度高。由于讀者流量不具有周期穩(wěn)定性,因此采用BP神經(jīng)網(wǎng)絡(luò)預(yù)測方法能最大限度地減小誤差。本文的研究結(jié)果對于圖書館的科學(xué)管理有著重要的實用價值。