單曙兵 戴炳榮
(1.中匯信息技術(上海)有限公司 上海市 201203 2.上海計算機軟件技術開發中心 上海市 201112)
線性預測是一種常用的預測方法,它主要考慮自變量和因變量之間的線性變化,由于其可解釋性較強,對許多預測問題有著較好的準確性[1]。王茜基于線性預測的原理提出了連續四點線性預測模型的頻率估計算法,以及基于單位約束最小二乘的任意時間間隔的線性預測模型的頻率估計算法,通過實驗分析,提出的算法擁有更高的預測精度[2]。田金鵬等提出了一種基于自適應線性預測的卡爾曼濾波恢復算法,基于前后窗信號之間的相關性并利用自適應線性預測方法,建立前后窗口信號的狀態轉移方程,與修正后的觀測方程共同構成系統狀態空間模型,算法擁有更高的精確度和抗噪性能[3]。樊學平等基于趨勢性和隨機性的解耦極值應力時間序列數據,通過動態耦合性線性模型的概率遞推,實現橋梁極值應力的動態預測[4]。陳治國等采用不同長度的數據樣本建立預測模型,分析數據樣本長度和預測階數對預測結果的影響,進而引入基于順序迭代法的數據調整機制,提高模型系數計算的準確性,并通過正交函數和最小均方誤差求解線性預測系數[5]。段華瓊等提出多個不同尺度的線性模型來組合預測網絡數據流量[6]。上述線性模型雖然解決一定場景的預測問題,但是仍然面臨兩個挑戰:一是線性模型的各個影響因素在預測中,沒有考慮到因素間相互作用的問題,而是假設各個因素是獨立的;二是線性模型的預測準確性有待進一步提升。但是線性模型本身存在可解釋性強,便于建模的優勢,因此針對上述挑戰,本文提出一種基于引力模型的線性預測算法。
引力模型可以表達因素間的相互關系,并且適用的場景更為廣泛。何蓉蓉基于歷史旅游客流量和影響因素,通過引力模型對未來的旅游客流量進行了預測[7]。Sayed 等通過引力模型預測了孟加拉國首都達卡市的交通用堵情況[8]。Kristin 等開發了引力模型,以根據社會經濟因素預測全球4435 個定居點之間2042年的城市間航空乘客需求[9]。Ramos 等分析過去1960年至2010年之間27 個國家/地區的移民流動,并使用引力模型預測歐盟和歐盟鄰國雙邊移民關系的未來趨勢[10]。因此,基于引力模型優勢,本文提出了一種基于引力模型的線性預測算法GP,用來預測平臺流量。本文第2 節介紹GP 算法,第三節對GP 算法預測的結果與其他常見線性模型進行對比分析。最后是全文的總結。

表1:常見的3 個預測模型

表2:實驗中的訓練集和測試集比例

表 3:GP 和其它3 個線性模型的方差
由于引力模型適合解決各個因素之間有影響關系的預測問題,具有良好的擴展性,只需要適當調整參數和變量即可[11][12]。 因此可以修改引力模型,例如貿易引力模型,用于預測平臺流量。

公式(1)是用于預測的貿易引力模型兩個區域之間的進口量[13]。參數在公式(1)中的是:
· y:進口數量,
· x:可能影響貿易的影響因素,例如GDP,
· Z:特殊事件因素,例如交易數量
兩個地區的天數或資費天數增加,
· d:兩個區域之間的距離,
· a 和b:系數。
平臺網絡流量受到許多因素影響,以及一段時間內的平臺流量時間的差異中可以得出在兩個時間點。如果將不同的時間點視為時間上的不同“位置”,以及平臺流量被視為一種流的變化,上述差異反映不同位置之間的流量變化。因此,可以通過引力模型確定平臺網絡流量,即等式(1)進行適當的修改。

公式(2)中表示了網絡流量引力模型關聯的參數如下:
· E:平臺流量,
· x:影響平臺流量的影響因素,例如平均會話時間,
· Z:特殊事件因素,例如平臺推出活動天數等
· n:因素數

圖1:GP 與基準模型準確度對比

圖2:GP 模型與其它模型的可擴展性驗證
· m:特殊事件的數量,
· a,b,c:系數
· d:兩個時間點之間的持續時間(小時)
公式(2)表示的流量會隨影響因素而變化,并且所占比例這些變化可能有所不同。 如果E 的分散隨著增加(減少)逐漸增加(減少),則收集的數據是異方差的[14]。 為了檢測收集到的異方差數據集,本文提取了一個子集,其中包括8月31 天的744 小時的平均會話時間和流量。為便于觀察,本文對744 小時進行了排序平均會話時間和流量數據將相應地重新排序。 隨著平均會話時間的提升從平均22 分鐘到30 分鐘,流量的分散度逐漸增加。當平均會話時間上升時(從33 分鐘或更多時間),流量分散迅速減少。 這充分說明了收集的數據是異方差的,而異方差數據會導致預測準確性下降。針對這個問題,對數變換是降低異方差的有效手段之一[15]。 所以,為了減輕數據集中的異方差效應,本文在等式(2)的兩邊取對數,獲得對數平臺流量引力模型如公式(3)所示,稱為GP。公式(3)中的參數含義與公式(2)中的相同,并且影響因素是退出率、點擊密度、平均會話時間,假設沒有發生特殊事件,替代將這些相關的影響因素輸入公式(3),本文將得到公式(4)。在公式(4)中,xt,xh和xs為退出率、點擊密度、平均會話時間。 是一個常數。


本文收集了一年的平臺訪問流量數據。對于平臺來說,退出率、點擊密度、平均會話時間是影響平臺流量的主要因素,因為它會影響平臺的流量。因此,本文獲得了同一時間段內的退出率、點擊密度、平均會話。為了解決這些數據集中的不同測量單位,請進行歸一化被使用。然后將預處理的數據集分為訓練和測試集。
為了評估預測結果的質量,本文利用等式(5)所示的MAPE(平均絕對百分比誤差)[16],其中At 為實際值,Ft 為預測值。

在計算實驗中,本文采用3 種常用的預測模型(如表1 所示)作為基準。這些模型的某些應用可以在文獻17 中找到。它們代表常見的線性預測的模型,包括普通最小二乘回歸,貝葉斯嶺回歸,隨機梯度下降回歸[17]。
使用提出的GP 模型和表1 的3 個模型預測平臺訪問流量,現已有1年的平臺流量數據,并得知因素退出率、點擊密度、平均會話時間影響平臺的訪問流量,并將上述數據劃分為如表2 所示的訓練集和測試集進行實驗,在實驗中,訓練集從90%逐步減少到60%,測試集從10%逐漸增加到40%。其預測結果如圖1 所示。
從圖2 中可以看出,隨著訓練集的減少,各個模型的預測精度逐漸降低。GP 模型的預測精度在4 個實驗中的3 個實驗都是最好的。雖然在訓練集90%時預測精度并非第一,但與精度第二名OLSR相差并不很多,僅為不到0.3%的差異。并且隨著訓練集的減少,其預測精度下降最少。SGDR 與BRR 的準確性接近,并且都略遜于OLSR。
此外,本文還使用方差來評估所有模型的預測結果,這可以說明預測結果的穩定性。表3 顯示了GP 與其它3 個基準的預測結果的平均方差。GP 在方差方面表現最佳,這表明GP 不僅具有較好的精確性,還具有很好的穩定性。
本文第三節使用了MAPE 和方差來評價GP 和其它三種模型,從而得知GP 在預測精度和穩定性方面表現最好。但是否可以推廣,泛化性是評價這種能力的指標。因此本節使用另一個平臺的歷史流量數據以及相同的指標即退出率、點擊密度、平均會話時間來評價GP 模型的泛化性。
從圖2 中可以看出,隨著訓練集的減少,各個模型的預測精確度逐漸降低。但是GP 模型較其它3 個線性模型依舊表現很好,當訓練集逐漸減少后,盡管預測精度也是逐漸減低狀態,但卻是各個實驗中預測效果最好的。這說明GP 模型更具有更好的準確性。
本文針對傳統線性模型的缺點即影響因素必須互相獨立,無法考慮因素間的互相影響,而引入了一種引力模型,并通過修改模型因子來實現線性引力模型的預測。提出的全新線性引力模型GP 可以將因素之間的互相影響關系代入到預測模型中,從而提升預測的準確性。從實驗結果來看,GP 模型在準確性、穩定性和泛化性方面都優于其它常見的線性模型。在未來的研究中,為了充分驗證GP 模型在上述準確性、穩定性和泛化性方面的優勢,會引入更多的影響因子,并增加更多種類的平臺的數據量。