盧光躍,李四維,趙宇翔,王天賜
(西安郵電大學 陜西省信息通信網(wǎng)絡及安全重點實驗室,陜西 西安 710121)
隨著移動互聯(lián)網(wǎng)的快速發(fā)展、基于位置服務的廣泛應用,電信運營商收集了大量用戶位置數(shù)據(jù),這些位置數(shù)據(jù)具有豐富的時間和空間信息,對其進行深入有效的挖掘進而準確預測人群流量,可為電信運營商網(wǎng)絡結(jié)構(gòu)優(yōu)化、網(wǎng)絡資源合理配置等應用提供有效參考。
區(qū)域人群流量預測是指,采用時間序列預測方法對代表該區(qū)域人群流量的時間序列進行預測。傳統(tǒng)的時間序列預測方法主要有線性回歸[1]和自回歸(auto regressive,AR)模型法[2-3]。這些方法對線性時間序列有較好的預測效果,但對非線性時間序列的預測效果不佳,而從電信位置數(shù)據(jù)中提取出的時間序列具有非線性特征,故需采用非線性時間序列預測方法對其進行預測[4]。常用的非線性時間序列預測方法,包括基于支持向量回歸(support vector regression,SVR)的預測方法[5-7]、基于神經(jīng)網(wǎng)絡的預測方法[8-10]和經(jīng)驗模態(tài)分解(empirical mode decomposition,EMD)方法[11]等?;谏窠?jīng)網(wǎng)絡的預測方法,有較強的非線性擬合能力,可映射任意復雜的非線性關(guān)系,且學習規(guī)則簡單,便于計算機實現(xiàn)[12],若針對區(qū)域人群流量數(shù)據(jù),引入人群流量時間序列的橫向變化趨勢[13],預測準確率還可以更最。
實際數(shù)據(jù)分析顯示,當前時刻人群流量既與其橫向變化趨勢關(guān)聯(lián),還與前若干個自然日同一時刻的值(即縱向變化趨勢)有關(guān)。本文綜合考慮人群流量變化的橫向和縱向趨勢,同時考慮使用遺傳算法(genetic algorithm,GA)對SVR算法的參數(shù)進行尋優(yōu),給出一種基于綜合特征和GA的SVR區(qū)域人群流量預測算法,即對原始電信位置數(shù)據(jù)進行預處理,提取出反映區(qū)域人群流量的時間序列,綜合考慮其橫向變化趨勢和縱向變化趨勢,建立基于GA與SVR的融合算法GA-SVR模型,對區(qū)域人群流量進行預測。
基于電信位置數(shù)據(jù)預測人群流量,首先需要從原始電信位置數(shù)據(jù)中提取中反映人群流量的時間序列。選用國內(nèi)某市持續(xù)時間為1個月的電信位置數(shù)據(jù),共包含5個字段:時間字段記錄數(shù)據(jù)采集的時間;區(qū)域代碼字段記錄基站覆蓋區(qū)域的代碼;經(jīng)緯度字段記錄數(shù)據(jù)采集時設備的位置;MAC地址字段記錄對應設備的MAC地址。
設備MAC地址唯一,可用于代表用戶。故只需選定某個區(qū)域,選擇時間范圍和采樣時間間隔,統(tǒng)計采樣時間間隔內(nèi)此區(qū)域中不同MAC地址出現(xiàn)的次數(shù),由此即可得到反映該區(qū)域人群流量的時間序列。
為了對區(qū)域人群流量時間序列進行建模,選擇其中的m天數(shù)據(jù),將其中前t天的數(shù)據(jù)作為訓練樣本,后m-t天作為測試樣本。
當前時刻人群流量xs(k)與其橫向變化趨勢關(guān)聯(lián),即與人群流量時間序列中的前p個時刻的值xs(k-1),xs(k-2),…,xs(k-p)有關(guān)[13],據(jù)此可建立預測模型

此外,當前時刻人群流量還與其縱向變化趨勢相關(guān)聯(lián),即與前q個自然日同一時刻的值xs-q(k),xs-q+1(k),…,xs-1(k)有關(guān)。為了提升預測精度,綜合考慮該時間序列的橫向變化趨勢和縱向變化趨勢,修訂預測模型為

支持向量機(support vector machine,SVM)作為一種機器學習算法,可用于模式分類和非線性回歸,即建立一個分類超平面做為決策曲面,使得樣本之間的隔離邊緣被最大化[14]?;貧w是SVM的一個重要應用,SVR即是利用非線性映射φ(x),將原始空間中的量x變換到高維空間,然后在高維空間中進行線性回歸,再將結(jié)果反過來映射到低維度空間中,如此間接實現(xiàn)低維空間中無法實現(xiàn)的非線性回歸。以下選取SVR作為預測算法f。
g(x)=ωTφ(x)+b。
其中φ:n→F,ω∈F,F為向量集,ω的維數(shù)與特征空間維數(shù)相等,b為偏置。

s.t.

其中,C>0為懲罰系數(shù),ε為敏感系數(shù)。數(shù)據(jù)樣本滿足ε-不敏感損失函數(shù),即
|yi-g(xi)|ε=
max {0,|yi-g(xi)|-ε}。
由拉格朗日乘子法可得
根據(jù)卡魯什-庫恩-塔克(Karush-Kuhn-Tucker,KKT)條件,得對偶優(yōu)化問題

ωTφ(xi)+b-yi+ε=0,
所以有
其中K(xj,xi)=[φ(xj)]Tφ(xi)為核函數(shù),滿足Mercer條件[14],SSV是支持向量集。
綜上得區(qū)域人群流量預測的支持向量回歸模型

它依賴于核函數(shù)和參數(shù)的選擇。
在此選擇高斯徑向基核函數(shù)
則SVR可調(diào)的模型參數(shù)有懲罰系數(shù)C、核函數(shù)參數(shù)σ和不敏感損失系數(shù)ε。
不敏感損失系數(shù)ε控制著SVR回歸函數(shù)對樣本數(shù)據(jù)的不敏感區(qū)域的寬度,影響支持向量的數(shù)目,其值和樣本噪聲有密切關(guān)系。ε過大,支持向量數(shù)就少,可能導致模型過于簡單,學習精度不夠;ε過小,回歸精度較高,但可能導致模型過于復雜,得不到好的推廣能力。隨著ε的下降,誤差趨于穩(wěn)定,但求解時間增大。
為找到最優(yōu)核參數(shù)σ和懲罰系數(shù)C,用GA優(yōu)化SVR參數(shù)。優(yōu)化的整體流程如圖1所示。

圖1 利用GA優(yōu)化SVM參數(shù)的算法流程
為了精確地評價預測性能的優(yōu)劣,采用平均絕對誤差(mean absolute error,MAE)eMA、平均絕對百分誤差(mean absolute percent error,MAPE)eMAP和均方根誤差(root mean square error,RMSE)eRMS來評價預測精度,它們分別表示為

驗證所給算法的有效性。實驗環(huán)境為Intel(R) Core(TM) i7-4 790 CPU @ 3.60GHz,內(nèi)存16 GB,Windows 10 64位專業(yè)版操作系統(tǒng),Python 2.7,Matlab R2013a軟件。
原始電信位置數(shù)據(jù)如表1所示,其中共包含數(shù)據(jù)4 686 428條。

表1 電信原始數(shù)據(jù)集描述
選定區(qū)域代碼為371 312的基站覆蓋區(qū)域,選擇時間范圍為9月1日0時至30日24時,采樣間隔為15 min,從原始電信位置數(shù)據(jù)中提取出時間序列,如圖2(a)所示。其中,采樣時間點500到2 000之間存在部分缺失值,需要借用灰度預測方法[15]進行填補。補全后的時間序如圖2(b)所示。

圖2九月某區(qū)域時間序列
對于所提取出的時間序列,選取其中20天的數(shù)據(jù),經(jīng)進一步處理后,得出橫向特征輸入訓練集和綜合特征輸入訓練集。
利用訓練數(shù)據(jù),使用GA對其參數(shù)進行尋優(yōu), 得出基于SVR的預測模型參數(shù),如表2所示。

表2 GA-SVR預測模型參數(shù)
根據(jù)所選參數(shù)建立模型,對區(qū)域人群流量進行預測,結(jié)果如圖3所示。由其可見,歷史平均預測方法、小波神經(jīng)網(wǎng)絡方法、BP神經(jīng)網(wǎng)絡方法、廣義回歸神經(jīng)網(wǎng)絡方法與GA-SVR方法,均較好地反映出區(qū)域流量的變化規(guī)律。在圖3的預測曲線中,當采樣時間點處于20到28之間、70到80之間和115到125之間這些過渡階段時,5種預測方法的預測結(jié)果與真實值相差很小,預測的流量能夠較好地跟蹤區(qū)域人群流量的實時變化趨勢。但是,當流量值處于峰值或者低谷區(qū)域時,如采樣時間點處于29至68之間時,歷史平均預測方法不能很好地預測流量的變化趨勢和數(shù)值,而其他4種方法則表現(xiàn)出更好的預測性能。預測性能指標如表3所示。

(a) 輸入橫向特征

(b) 輸入混合特征

表3 預測性能指標
當輸入相同時,由表3可見,GA-SVR方法的3項性能指標數(shù)值均比其他方法低,算法的3項預測性能指標數(shù)值越低說明算法的預測精確度越高,預測性能越好??紤]區(qū)域人群流量的縱向變化趨勢后,應用小波神經(jīng)網(wǎng)絡方法、BP神經(jīng)網(wǎng)絡方法、廣義回歸神經(jīng)網(wǎng)絡方法和GA-SVR方法,分別在電信數(shù)據(jù)集上進行實驗,其性能指標數(shù)值均有所下降,這說明6種方法的預測精確度均得到提升。
針對神經(jīng)網(wǎng)絡、傳統(tǒng)SVM進行人群流量預測精度低的問題,綜合考慮人群流量變化的橫向和縱向趨勢,并優(yōu)化算法參數(shù),給出一種基于GA-SVR的人群流量預測算法,與歷史平均預測方法、小波神經(jīng)網(wǎng)絡預測方法、BP神經(jīng)網(wǎng)絡預測方法、廣義回歸神經(jīng)網(wǎng)絡預測方法和傳統(tǒng)SVR方法對比,所給算法不僅可用于區(qū)域人群流量預測,且其預測精度更高。算法預測精度受特征選擇和參數(shù)優(yōu)化的影響較大,今后將重點研究如何更精確更有效地選擇訓練樣本的特征,并根據(jù)不同數(shù)據(jù)集進行參數(shù)優(yōu)化,以求進一步提升算法的精確度。