◆趙宇巍 張鎮 郭子博 李遠方
行業與應用安全
基于BP神經網絡的秦皇島市旅游量預測研究
◆趙宇巍 張鎮 郭子博 李遠方
(燕山大學(西校區) 河北 066000)
該項目主要基于人工神經網絡中BP神經網絡的相關理論,以旅游市場趨勢預測為研究對象,以人工神經網絡技術等為主要研究方法,以秦皇島市旅游人數發展變化為實證基礎,運用MATLAB工具對秦皇島市2020-2022年的國內游客人數和入境游客人數兩個指標進行高精度預測,對于秦皇島市旅游發展合理規劃以及旅游資源優化配置具有重要意義。
BP神經網絡;國內游客數;入境游客數;預測
秦皇島市地理位置優越,交通便利,資源豐富,旅游業的發展對于城市綜合實力的提高與經濟的發展具有非常重要的意義,因此通過BP神經網絡對秦皇島國內游客人數與入境游客人數進行高精度預測,有利于秦皇島市旅游業管理部門及時做出宏觀調控,促進旅游業的發展。
預測方法按照類型分為定量分析法與定性分析法。定性分析法主要針對預測的資料數據缺失情況,依靠預測人員的豐富經驗及主觀判斷能力來分析。定量分析法是通過數學模型計算出分析對象的各項數值指標,主要是時間序列分析法、因果關系分析法等。此項目運用BP神經網絡的時間序列分析法進行預測。


圖1 三層BP神經網絡拓撲結構圖
BP神經網絡是通過對樣本的訓練學習,減少迭代次數,提高學習效率,解決非線性問題。時間序列預測方法是將網絡訓練成一個能反映時間序列內部非線性規律的系統,使用時間序列系統行為量化數據,最終利用誤差修正并檢驗從而應用于預測。
2.1.1數據處理
(1)輸入層與輸出層的數據處理
本項目對秦皇島國內游客數和入境游客數進行數據處理,BP神經網絡的模型選取1991-2019年的人數作為基礎數據,選擇1991-2014年作為訓練數據,2015-2019年作為測試數據,其中數據集,采用循環迭代的方式構成,將每年的旅游人數每5個數據為一組進行分組作為輸入層,其下一個作為輸出層后跳過一個數據再進行分組
第一組:從1991年到1995年,對應輸出為1996年
第二組:從1992年到1996年,對應輸出為1997年
第三組:從1993年到1997年,對應輸出為1998年 ...
(2)歸一化處理
以便將輸入樣本矩陣的輸入范圍控制在網絡的激活函數的輸入范圍內(-1,1)或(0,1),運用Matlab軟件編輯程序,利用mapminmax函數對秦皇島市國內和入境游客數進行數據的歸一化處理。
2.1.2選擇訓練函數
MATLAB常用方法有梯度遞減法(函數為traingd)、共軛梯度法(函數為trainscg)、LM算法(函數為trainlm)以及帶動量的梯度下降法(函數為traingdm),本項目選取泛化能力較好、精度較高的帶有動量的梯度下降法。根據1991-2019年的國內和入境人數,預測2020-2022年的相應游客數量,設置最大迭代次數為1000,目標收斂精度為0.001,隱含層選擇tansig函數,輸出層選擇trainlm函數。
2.1.3選擇隱含層數目
BP神經網絡由輸入層、隱含層和輸出層組成,隱含層又可分為單隱含層和多隱含層.因此,為確保數據精確性,驗證并取誤差最小情況。確立調用函數后,將traingdm作為調用函數來確定隱含層的數目,根據逐個增加隱含層數目的方法,來測試網絡的相關系數,從中選取相關性最強的隱含層數目,隱含層節點數,初步設置為10,比較10次預測結果取平均值,比較結果如表1:

表1 隱含層數目預測結果比較
R越趨近于1,擬合效果越好。綜上分析,多隱含層相比于單隱含層泛化能力強,預測精度高,但是隱含層數目越多訓練時間越長,因此綜合考慮運行時間和預測精度,最終選取3個隱含層數目進行預測分析。
第四步:隱含層節點數的確定
BP神經網絡構建時應注意隱含層節點數的選擇,通常為3-10個神經元,如果隱含層節點的數目過少,則BP神經網絡不能建立精確的映射關系,產生網絡預測誤差較大。但是如果建立的隱含層節點數過多,促使網絡學習時間增加,并可能出現“過擬合”的現象,產生這樣的結果就是訓練樣本預測準確,而其他樣本預測誤差較大。因此,對比分析不同隱含層節點數,預測數據的相關系數,比較結果如表2:

表2 比較結果
由表格數據可知,當隱含層數目為10時,相關系數最好,因此在預測旅游人數時,隱含層的節點數選為10。
2.1.4預測結果分析
運行程序訓練網絡后,使用反歸一化函數得到要預測的數值,國內旅游人數的模型輸出與期望的輸出誤差達到了0.0000511小于0.1%,入境旅游人數的模型輸出與期望的輸出誤差達到了0.000241小于0.1%,滿足訓練要求,預測數值如表3:

表3 預測數值
預測旅游人數(如圖2、圖3)。

圖2 國內旅游人數總體趨勢圖

圖3 入境旅游人數總體趨勢圖
由上圖可得到秦皇島市國內旅游人數與入境旅游人數的發展總趨勢,通過相關系數圖可得國內游客數相關系數達到0.99244,入境游客數相關系數達到0.98545,相關系數R越趨近于1,說明相關性越好,預測精度越高。
針對秦皇島市旅游量預測的問題,通過基于BP神經網絡的旅游人數模擬預測,得到2020-2022年秦皇島市國內旅游人數分別為7829.2636萬人,7829.2636萬人,8232.8729萬人,2020-2022年的秦皇島市入境旅游人數為35.4679萬人,35.4679萬人,35.4679萬人,兩組數據與前期相比均有增長趨勢。因為旅游人數受游客心理主觀影響因素較大,具有很大的波定性與不確定性,通過實驗證實預測誤差較大,因此通過時間序列預測,訓練調整各層之間的權值和閾值得到準確結果。此算法在本次預測中得到了很好的應用,有效地預測了秦皇島市旅游人數,并且具有較高的準確性。
[1]張峰,柳炳祥,張月.一種基于BP神經網絡算法的旅游人數預測方法[J].信息與電腦(理論版),2019(03):60-62.
[2]李乃文,韓婧婧.基于時間序列修正算法的我國入境旅游人數預測[J].資源開發與市場,2015,31(01):126-128+130.
[3]胡麗娟.秦皇島入境旅游需求影響因素及預測研究[D].燕山大學,2013.
[4]董國亮,韓茜.河北省入境旅游市場現狀及發展策略研究[J].河北省科學院學報,2011,3(6):26-28.
[5]張華.基于BP神經網絡的旅游需求預測研究[J].電子測試,2014(01):100-102.
[6]郭慶春,孔令軍,崔文娟,史永博,張小永.基于BP神經網絡模型的國內旅游人數預測[J].價值工程,2011,30(27):7.
[7]叢爽.面向Matlab工具箱的神經網絡理論與應用[M].合肥:中國科學技術大學出版社,1998.