王蘭梅, 陳崇成, 葉曉燕, 潘淼鑫, 2
(1. 福州大學空間數(shù)據(jù)挖掘與信息共享教育部重點實驗室, 地理空間信息技術國家地方聯(lián)合工程研究中心, 福建 福州 350108; 2. 福建師范大學數(shù)學與信息學院, 福建省公共服務大數(shù)據(jù)挖掘與應用工程技術研究中心, 福建 福州 350117)
隨著旅游業(yè)的快速發(fā)展, 人們生活品質(zhì)的提高, 休閑旅游成為一種時尚. 各著名景區(qū)常發(fā)生的游客扎推和擁擠等安全事件, 給景區(qū)管理和游客旅游均帶來困擾. 為避免該類事件的發(fā)生, 景區(qū)管理者應掌握短期內(nèi)游客流量的預測數(shù)據(jù), 以便制定合理的分流方案. 20世紀, 國際上主要用經(jīng)典時間序列模型和計量經(jīng)濟學模型[1]開展旅游需求研究, 但存在非線性擬合能力差的缺點. 隨著人工智能算法的發(fā)展, 學者們開始將BP神經(jīng)網(wǎng)絡(back propagation neural network, BPNN)[2]和支持向量回歸(support vector regression, SVR)[3]等算法應用于旅游客流量預測領域[4]. SVR在解決小樣本、 非線性時間序列預測中表現(xiàn)出許多特有的優(yōu)勢, 但是其參數(shù)選擇是影響預測精度的重要因素. 人們優(yōu)化SVR參數(shù)的智能化算法主要包括布谷鳥搜索(cuckoo search, CS)和粒子群算法(particle swarm optimization, PSO)[5]等. Chen等[6]提出以SVR和GA結合的GA-SVR模型預測中國入境游客流量, 結果顯示GA-SVR模型明顯優(yōu)于BPNN和ARIMA模型. 灰狼算法(grey wolf optimization, GWO)是由Mirjalili等[7]提出的一種群體智能算法, 其在全局尋優(yōu)方面明顯優(yōu)于GA、 CS和PSO等智能化優(yōu)化算法[8-9]. 互聯(lián)網(wǎng)時代背景下, 學者也嘗試將網(wǎng)絡搜索數(shù)據(jù)應用在旅游客流量預測中, 取得不錯的效果[10-12]. Sun等[13]將旅游歷史客流量數(shù)據(jù)與百度指數(shù)、 谷歌指數(shù)相結合用到客流量預測中, 發(fā)現(xiàn)預測效果有顯著提高. 本研究將網(wǎng)絡搜索數(shù)據(jù)加入旅游客流量預測中, 利用GWO算法優(yōu)化SVR的參數(shù), 并用參數(shù)優(yōu)化后的SVR模型實現(xiàn)旅游客流量的預測.
SVR主要是通過一個非線性映射函數(shù), 把訓練樣本變換到高維特征空間(可能是無限維), 使得在高維空間中樣本的分布更有規(guī)律性, 以便構造線性決策函數(shù)[14]. 對于給定的數(shù)據(jù)集合T=(xi,yi),i=1, 2, …,n,xi∈Rn,yi∈R, 這里xi為輸入值, 即客流量的影響因素,yi為xi相對應的輸出值, 即客流量的預測值,n為訓練樣本的數(shù)目, 目標是找出樣本在高維特征空間的回歸函數(shù)[15].
f(x)=w×φ(x)+b
(1)
其中:f(x)為待擬合預測函數(shù);φ(x)為非線性映射函數(shù);w和b分別為權重和偏置, 通過懲罰風險函數(shù)R(C)獲得.
(2)
引入非負松弛變量δ和δ*, 則式(2)等價于:
(3)
(4)
利用KKT(Karush-Kuhn-Tucker)條件, 最終得到SVR函數(shù).
(5)
其中:xi為訓練集輸入值,x為測試集輸入值.
GWO算法主要包含灰狼群體社會等級的劃分、 包圍、 獵捕和攻擊等方面內(nèi)容[7].
1) 灰狼社會等級的劃分. GWO算法中, 將灰狼按照適應度值分為四個等級.
2) 包圍. 進行狩獵時, 灰狼需要對獵物進行包圍, 狼群個體間的位置不斷發(fā)生更新. 包圍行為的公式為
D=|C×Xp(t)-X(t)|,X(t+1)=Xp(t)-A×D
(6)
其中:D為灰狼個體與獵物之間的距離;Xp為食物的位置(即全局最優(yōu)解位置);X為灰狼的位置(即潛在解位置);t為當前迭代次數(shù),A和C為系數(shù)向量.
3) 獵捕. 灰狼包圍獵物后, 開始獵捕, 一般由α、β和δ引導,ω則根據(jù)α、β和δ的位置更新各自的位置.
Dα=|C1×Xα-X|,Dβ=|C2×Xβ-X|,Dδ=|C3×Xδ-X|
(7)
(8)
其中:Dα、Dβ、Dδ分別表示為灰狼α、β和δ與灰狼ω之間的距離;X(t+1)為更新后灰狼的位置.
4) 攻擊. 在攻擊階段, 灰狼完成抓獲獵物的使命, GWO算法取得最優(yōu)解.
利用經(jīng)過GWO算法參數(shù)優(yōu)化后的SVR模型對景區(qū)客流量進行建模預測, 具體步驟如下:
1) 對景區(qū)客流量等相關數(shù)據(jù)進行預處理, 確定輸入和輸出變量.
2) 設置SVR參數(shù)(c,g)的取值范圍, 并設置相關參數(shù).
3) 在規(guī)定范圍內(nèi)初始化各灰狼個體的位置Xi為(1, 2, …,N), 并對參數(shù)a,A和C進行初始化.
4) 計算種群中各灰狼個體的適應度值, 并排序選取最優(yōu)的3只灰狼個體, 依次取名為α、β、δ.
5) 計算其他灰狼ω與3只最優(yōu)灰狼的距離, 更新各灰狼ω的位置, 同時更新參數(shù)a,A和C的值.
6) 判斷是否達到最大迭代次數(shù), 輸出適應度最佳的灰狼Xα, 利用最優(yōu)的參數(shù)(c,g)建立SVR預測模型.
以四川省九寨溝和四姑娘山兩個景區(qū)為例, 實驗數(shù)據(jù)如表1所示. 選擇百度指數(shù)作為網(wǎng)絡搜索數(shù)據(jù)的代表. 因GWO-SVR模型建立的過程是一樣的, 九寨溝景區(qū)詳細介紹, 四姑娘山景區(qū)在2.5節(jié)中簡要說明.
表1 九寨溝和四姑娘山實驗數(shù)據(jù)說明
選擇和收集代表游客興趣和搜索行為的候選關鍵詞, 主要有以下五個步驟組成:
1) 確定初始搜索關鍵詞. 選取“九寨溝”“九寨溝旅游”“九寨溝攻略”“九寨溝天氣”為初始搜索關鍵詞.
2) 擴展搜索關鍵詞. 利用初始搜索關鍵詞, 借助百度指數(shù)網(wǎng)站的需求圖譜功能、 相關詞工具官網(wǎng)(http://www.78901.net/keywords/)的查詢相關詞功能和愛站網(wǎng)(https://ci.aizhan.com/)的關鍵詞挖掘模塊等工具, 進一步擴展與特定景區(qū)旅游相關的搜索關鍵詞. 經(jīng)過簡單篩選, 共選擇48個關鍵詞, 如表2所示.
表2 九寨溝旅游搜索關鍵詞
續(xù)表2
3) 獲取搜索關鍵詞的整體趨勢. 用Java爬蟲程序批量獲取48個搜索關鍵詞的每日的整體趨勢數(shù)據(jù).
4) 計算關鍵詞整體趨勢與客流量的相關性. 用皮爾森相關系數(shù)R作篩選搜索關鍵詞, 計算每個搜索關鍵詞與客流量1~14 d提前期的R值. 同一搜索關鍵詞中, 選擇R值最大的提前期作為該關鍵詞的最佳提前期.
為驗證相關系數(shù)法篩選關鍵詞提前期的有效性, 以四姑娘山客流量為例, 設計小實驗如下.
輸入變量為昨日客流量和關鍵詞“四姑娘山天氣”的搜索數(shù)據(jù), 輸出變量為旅游客流量數(shù)據(jù). 訓練數(shù)據(jù)集為2016年10月30日到2018年7月15日的前624 d數(shù)據(jù), 測試數(shù)據(jù)集為2018年7月16日到2018年8月4日共20 d的數(shù)據(jù). 對關鍵詞“四姑娘山天氣”的提前期1~14 d分別建立GWO-SVR客流量預測模型, 用平均絕對百分誤差(mean absolute percentage error, MAPE)作為預測精度指標. 計算關鍵詞“四姑娘山天氣”1~14 d提前期與客流量之間的R值以及每個模型的平均絕對百分誤差. 相關系數(shù)與預測精度的對比如表3所示.
表3 R值與預測精度的對比
表4 R > 0.8的九寨溝搜索關鍵詞
從表3中可見,R值最大時的提前期為2 d, 與預測精度最高的提前期相同, 且預測精度遠高于其他提前期精度.R值第二大時的提前期為3 d, 此時的預測精度為第二高.R值第三大時的提前期為1 d, 此時的預測精度為第三高. 因此, 用相關系數(shù)法篩選關鍵詞提前期是有效的.
5) 確定最終關鍵詞. 設置關鍵詞的R閾值, 確定最終關鍵詞.R閾值設為0.8, 搜索關鍵詞如表4所示.
以2014年5月25日至2017年7月8日共1 141 d的數(shù)據(jù)為訓練集, 以2017年7月9日至2017年7月28日共20 d的數(shù)據(jù)為測試數(shù)據(jù)集. 輸入變量為昨日客流量、 前日客流量、 去年同日客流量、 前年同日客流量、 昨日官網(wǎng)點擊數(shù)、 時間特征信息(主要是星期特征)、 最佳提前期搜索關鍵詞的整體趨勢; 輸出變量為旅游客流量數(shù)據(jù). 設置灰狼優(yōu)化算法的最大迭代次數(shù)100, 種群規(guī)模50. 參數(shù)c取值范圍為[0.01, 100], 參數(shù)g取值范圍為[0.01, 100]. 將灰狼優(yōu)化算法得到的最優(yōu)參數(shù)(c,g)帶入到SVR中, 建立SVR模型對客流量進行預測.
在建立GWO-SVR模型后, 構建ARIMA、 BPNN、 SVR、 PSO-SVR、 CS-SVR和無網(wǎng)絡搜索數(shù)據(jù)(沒有網(wǎng)絡搜索數(shù)據(jù)的GWO-SVR模型)等6個對比模型. 九寨溝客流量原值與7個預測模型的預測值的對比結果如圖1所示. 選擇平均絕對誤差(mean absolute error, MAE)、 均方誤差(mean squared error, MSE)和平均絕對百分誤差3個指標來衡量模型的預測性能. 6個預測模型在九寨溝旅游客流量預測中的性能比較結果如表5所示.
圖1 九寨溝客流量的原值與預測值Fig.1 Original and predicted tourist flow in Jiuzhaigou Valley
表5 九寨溝的預測性能比較
表5中可見, 與ARIMA模型相比, BPNN模型的MAE、 MSE和MAPE分別下降了9.80%、 8.48%和5.23%, SVR模型的MAE、 MSE和MAPE分別下降了16.39%、 22.52%和15.29%, 說明SVR對客流量預測問題更有效. 與SVR模型相比, PSO-SVR模型的MAE、 MSE和MAPE分別下降了4.71%、 8.37%和4.28%; CS-SVR模型的MAE、 MSE和MAPE分別下降了5.84%、 6.31%和4.51%; GWO-SVR模型的MAE、 MSE和MAPE分別下降了11.6%、 15.46%和9.74%. 表明參數(shù)優(yōu)化提高SVR模型的預測精度, 且突出GWO算法的優(yōu)越性. 總之, GWO-SVR模型表現(xiàn)最好, 證明將GWO和SVR結合起來的模型用于九寨溝客流量預測中是適當和有效的.
為驗證GWO-SVR模型的穩(wěn)定性, 將該模型應用于四姑娘山景區(qū)中. 四姑娘山的搜索關鍵詞有成都到四姑娘山、 四姑娘山、 四姑娘山攻略等.R閾值設為0.65, 最終搜索關鍵詞如表6所示. 用昨日客流量、 時間特征信息、 最佳提前期搜索關鍵詞的整體趨勢作為輸入變量, 用旅游客流量數(shù)據(jù)作為輸出變量, 以2016年10月30日到2018年7月15日的624 d數(shù)據(jù)為訓練集, 以2018年7月16日到2018年8月4日共20 d的數(shù)據(jù)為測試集, 建立GWO-SVR預測模型. 同樣, 對比模型選擇ARIMA、 BPNN、 SVR、 PSO-SVR、 CS-SVR和無網(wǎng)絡搜索數(shù)據(jù)6個模型. 四姑娘山客流量原值與7個模型的預測值的對比結果如圖2所示, 預測性能比較結果如表7所示.
表6 R > 0.65的四姑娘山搜索關鍵詞
圖2 四姑娘山客流量的原值與預測值Fig.2 Original and predicted tourist flow in Four Girls Mountain
結合表5和表7的結果, 發(fā)現(xiàn)ARIMA模型均表現(xiàn)最差, BPNN模型均表現(xiàn)第二差, 這說明在短期客流量預測中SVR模型優(yōu)于ARIMA和BPNN模型. 表5和表7的結論是SVR模型優(yōu)于ARIMA和BPNN模型, PSO-SVR、 CS-SVR和GWO-SVR模型優(yōu)于SVR模型, GWO-SVR模型優(yōu)于PSO-SVR和CS-SVR模型, GWO-SVR模型優(yōu)于無網(wǎng)絡搜索數(shù)據(jù)模型. 兩個景區(qū)客流量預測結論是一致的, 表明GWO-SVR預測模型具有穩(wěn)定性.
表7 四姑娘山的預測性能比較
利用網(wǎng)絡搜索數(shù)據(jù)建立GWO-SVR模型對九寨溝和四姑娘山兩個景區(qū)的客流量分別進行研究. 實驗結果表明: 首先, GWO-SVR預測模型在九寨溝和四姑娘山兩個不同規(guī)模的景區(qū)中表現(xiàn)出泛化能力強、 預測精度高等優(yōu)點. 其次, 網(wǎng)絡搜索數(shù)據(jù)提高旅游客流量預測精度, 為旅游客流量預測研究提供新的數(shù)據(jù)來源. 最后, 在與ARIMA、 BPNN、 SVR、 PSO-SVR、 CS-SVR和無網(wǎng)絡搜索數(shù)據(jù)6個模型的對比實驗中, 發(fā)現(xiàn)本研究提出的GWO-SVR預測模型在各評價指標上都表現(xiàn)最優(yōu). 因此, GWO-SVR模型能較好地預測旅游短期客流量.