韓娟,潘文佳
(西安職業技術學院,陜西 西安 710077)
旅游業的高速發展造成了人流的過度聚集,產生了一定的安全隱患。因此,各個景區均需準確地監控人流密度的變化,合理調度、引導人流流向,提升游客的旅游體驗[1-5]。景區人流密度的預測本質是一個時間序列處理問題,將不同時刻的人流數值以時間維度劃分先后并進行排列,即可生成時間序列。在數學上,為了準確描繪時間序列的變化趨勢,通常需要引入隨機過程理論和相關的統計學方法,從而找到歷史數據的變化規律,預測序列的變化。因此,對于時間序列的處理既需要準確把控其歷史變化規律,也需要根據這一規律選擇合適的預測方法。傳統的時間序列處理方法有自回歸移動平均模型(ARIMA)和灰度理論模型(GM)。文中將這些方法進行集成,同時利用該方法的殘差進行徑向基函數(RBF)網絡訓練,優化了人流密度的預測精度[6-8]。
近年來,人工神經網絡成為了機器學習領域內最常用的算法之一。人工神經網絡由互相連接的神經元組成,每個神經元接收上一層神經元發送的信息,并通過非線性變換傳送收到的信息,神經網絡可以通過訓練逼近復雜的映射關系,在模式識別、函數逼近、分類預測上具有廣泛的應用[9-14]。
徑向基函數(Radial Basis Function,RBF)神經網絡是一種特殊的網絡結構,其借助RBF進行神經元信息處理,對于非連續的非線性變化具有更優的逼近效果。RBF神經網絡的結構如圖1所示。

圖1 RBF神經網絡結構
從圖1可以看出,RBF神經網絡由輸入層xi、隱藏層ri、輸出層yi組成。RBF網絡的隱藏層采用徑向基函數作為非線性變換函數,即:

其中,j=1,2,…,s,φ()為該網絡使用的徑向基函數,常用的函數類型有高斯函數、多二次函數等。對于徑向基函數,其主要參數有函數中心cj、半徑rj和隱藏層權值wj。在輸出層,RBF網絡通過線性變換獲得輸出:

文中在確定函數中心時,使用k-均值法,即:

其中,nk是參與訓練或測試的樣本總數。當類中心的變化小于預設的常數時,聚類停止。
在確定基函數半徑時,文中選擇固定的函數半徑。其確定方法如下:

其中,dmax是確定的函數中心間的最大距離,s是網絡中的隱藏節點。RBF網絡權值的確定也可以基于梯度下降法進行誤差的反向傳播,與傳統神網絡中的算法一致[15-16]。
從數學上看,人流密度的預測可以歸類為時間序列的處理,因此還需引入時間序列處理模型。為了提升模型的預測精度,文中將經典的差分自回歸移動平均模型(ARIMA)和灰色生成模型(GM)進行了集成,接下來分別對兩種模型進行介紹。
1.2.1 ARIMA模型
ARIMA模型由AR(p)、MA(q)、ARMA(p,q)3個子部分構成,其中p為自回歸項,q為移動平均數,ARMA是對自回歸和移動平均的集合。將ARMA差分后,可以得到ARIMA,該模型可準確描繪時間序列的變化。當一個平穩時間序列Xt滿足式(4)時,可以建立AR(p)模型:

其中,φd為AR()模型的階數,εt是白噪聲。當式(5)對于任意的s 當一個平穩時間序列Xt滿足式(5)時,可以建立MA(q)模型: 其中,θd為MA()模型的階數,εt是白噪聲。當式(6)對于任意的s 將AR(p)與MA(q)結合,當滿足式(6)時,可以得到ARMA(p,q)模型: 將ARMA(p,q)進行d階差分,即可得到ARIMA(p,q,d)模型。ARIMA模型建模流程如圖2所示。 圖2 ARIMA模型建模流程 1.2.2 GM模型 除了ARIMA模型外,灰色預測(GM)算法也是一種常見的時間序列處理方法,GM模型的實現基于微分方程的求解。在建立模型時,需要對時間序列數據進行預處理,獲得生成列。通過累加、累減、均值、級比等多種方式生成灰色序列算子,對于原始序列: 其多次累加后的序列為: 其中,m是累加的次數,可以根據時間序列的規律性確定累加的次數。累減與累加互為逆運算,一階累減的計算方法為: 均值生成有兩種:鄰均值和非鄰均值,前者主要用于等時距的時間序列。在景區的人流序列上,由于數據的缺失,無法滿足該條件。因此文中主要使用非鄰均值生成,對于原始數據: 其非鄰均值生成的結果為: 由于景區的人流數據通常存在端點上的缺失,此時需要引入級比生成進行空穴的填補。對于式(8)給出的原始序列,其級比生成的結果如下: GM模型建模流程如圖3所示。 圖3 GM模型建模流程 ARIMA和GM算法均可以用于時間序列的分析與預測。在實際應用中,ARIMA算法由于需要對數據進行平穩化處理,削弱數據的趨勢,因此對于小時間粒度的時間序列處理能力較弱,而GM算法可以直接進行灰色生成,可以彌補ARIMA算法的劣勢。文中進行景區人流密度預測時,對于較大時間間隔的時間序列采用ARIMA算法進行預測;對于較小時間間隔的時間序列使用GM算法進行預測;最后再使用RBF網絡對于預測結果的殘差進行修正。具體的方法流程如圖4所示。 根據圖4給出的流程,首先設計數據存儲的數據表。在設計數據表時,需要考慮所采集景區的位置、采集的時間,以及基于這些信息的人流密度的初步統計結果。具體的表結構如表1和表2所示。 表1 數據采集表 表2 人流密度初步統計表 圖4 文中算法流程圖 經過數據采集,文中獲得了某景區內連續3個月的整點人流密度數據?;谠摂祿纯蓪υ摼皡^的人流密度數據進行預測。在預測時,基于圖2給出的流程圖,對于該景區使用ARIMA模型以天為間隔進行時間序列建模;基于圖3給出的流程圖,對于該景區使用GM模型在每一天的時間里以整點為時間間隔進行建模,獲得該景區的GM-ARIMA模型。此時,計算該模型的殘差序列: 在使用RBF網絡時,以每周內的同一時刻作為一個樣本對之前采集的數據集進行樣本劃分。將ε(0)={ε(2),ε(2),…,ε(n)}作為模型的輸入樣本Xi,基于1.1節中的方法進行模型的RBF函數參數設置。模型訓練中使用的誤差代價函數如下: 在RBF網絡的迭代中,需要根據誤差的傳播進行連接權值的更新,更新方法如下: 基于1.2、1.3節中ARIMA和GM算法處理時間序列的流程,使用20組數據建立ARIMA-GM模型,并對20組數據進行預測。時間序列的處理結果如表3所示。 表3 時間序列處理結果 根據表3繪制的曲線如圖5所示,其中虛線是該景點的實際人流密度,實線為預測值。可以看出,在5個時刻點后,預測值與實際值基本吻合,在前5個時刻略有偏差。 圖5 人流密度序列預測結果 接下來,將表3中的殘差作為輸入數據對RBF進行訓練,獲得經RBF修正后的預測結果。為了更優地評估算法性能,文中使用平均絕對誤差MAE、平均絕對百分比誤差MAPE和均方誤差MSE作為模型預測的準確度度量指標。同時使用單模型的GM、ARIMA、GM-ARIMA進行對比分析,具體結果如表4所示。 表4 各算法人流密度統計結果對比 可以看出,由于處理的時間序列中大時間粒度的序列占比較高,因此GM算法的性能比ARIMA算法要差;經集成后,GM-ARIMA算法的性能要優于GM和ARIMA算法。文中算法引入RBF算法進行殘差修正,獲得了最優的預測效果。MAE、MAPE和MSE分別達到了0.71、1.14和0.45,較其他3種算法均有明顯的提升。 文中對景區人流密度的預測方法進行了研究,從時間序列處理的角度對該問題進行數學建模,引入ARIMA和GM算法進行時間序列的處理。為了提升傳統的時間序列預測的精度,引入RBF對GMARIMA算法處理后的殘差進行二次處理,提升了人流預測的精度。實驗仿真結果證明,文中的算法具有更高的精度、更優的應用前景。









2 方法實現
2.1 實驗流程設計






2.2 模型仿真結果



3 結束語