李曉芳,顧亦然,2
(1.南京郵電大學 自動化學院、人工智能學院;2.南京郵電大學 智慧校園研究中心,江蘇 南京 210023)
近年來,我國旅游消費趨勢大幅上升。目前國內(nèi)旅游業(yè)提供的基礎設施、公共服務,特別是個性化旅游產(chǎn)品和旅游服務無法滿足游客日益增長的多樣化需求,且隨著大數(shù)據(jù)技術的興起,游客旅游需求的大數(shù)據(jù)化以及情境化趨勢日益顯著[1-3]。旅游路線推薦離不開用戶旅游需求的驅(qū)動,如何從海量旅游大數(shù)據(jù)中挖掘出與用戶需求精準匹配的景點資源[4],從而規(guī)劃出科學合理的旅游路線成為大數(shù)據(jù)時代亟待解決的新課題。
傳統(tǒng)推薦算法中,協(xié)同過濾算法應用廣泛。例如,Hwang 等[5]構建了用戶—景點評分矩陣,使用協(xié)同過濾算法預測景點得分實現(xiàn)了個性化推薦,但在旅游推薦領域,用戶旅游信息比一般產(chǎn)品的數(shù)據(jù)信息更為稀疏,因此推薦效果不甚理想;艾靜超[6]提出基于地理位置的旅游路線推薦改進協(xié)同過濾算法,為游客推薦滿足其旅游偏好的景點,所推薦路線不存在交叉重復現(xiàn)象,使游客時間花費降低1h 以上;鄭淞尹等[7]結合景點熱度、用戶相似度以及時間上下文等信息提出景點推薦模型;Liu 等[8]通過構建“用戶—區(qū)域—季節(jié)”隱含狄利克雷分布(Latent Dirichlet Allocation,LDA)主題模型來捕捉游客之間的潛在關系,以解決協(xié)同過濾算法常見的數(shù)據(jù)稀疏問題;Qian 等[9]基于概率矩陣分解算法構建了景點推薦模型,該模型可以增強潛在空間中各項特征之間的內(nèi)在聯(lián)系,實現(xiàn)了對冷啟動用戶的個性化推薦。然而,上述研究僅考慮了單一維度的用戶-景點交互行為,忽略了其他交互行為所包含的信息,以及不同交互行為之間的聯(lián)系,降低了推薦系統(tǒng)的準確性,且并未考慮用戶情境信息,因此也無法滿足用戶的情境化需求。
情境化推薦在圖書館領域應用廣泛。例如,劉曉艷等[10]從上下文信息中充分提取讀者偏好,提出一種矩陣分解推薦算法,有效提高了圖書推薦的準確性;習海旭等[11]采用德爾菲法確定移動圖書館服務的情境因素,搭建了移動圖書館傳統(tǒng)服務拓展原型系統(tǒng),提升了圖書館資源推送的服務質(zhì)量和整體效率;張瀟璐等[12]通過融入情境因素,基于改進受限玻爾茲曼機的協(xié)同過濾算法實現(xiàn)了移動情境下的用戶所需知識資源推薦。目前對游客情境化需求的研究還很少,例如郭斌等[13]運用卷積—循環(huán)神經(jīng)網(wǎng)絡聯(lián)合嵌入游客旅游記錄中的圖像與文本,按照景點進行分類識別,然后篩選出具有多樣性、代表性的圖片,基于關聯(lián)規(guī)則挖掘得到針對游客不同情境需求的推薦路線。
用戶畫像是一種刻畫用戶特征、反映用戶需求、描述用戶興趣的重要手段[14-15],能夠為個性化服務提供數(shù)據(jù)支撐和理論支持,其由交互設計之父Alan Cooper[16]提出,目的是盡可能全面細致地獲取用戶信息。用戶畫像應用廣泛,例如王斐等[17]引入用戶畫像進行二次推薦,有效改善了推薦效果;李寶[18]構建了多維度用戶畫像,提出高校圖書館個性化推薦服務策略;魏玲等[19]為提升工作效率與服務水平,構建了集用戶畫像與協(xié)同過濾于一體的知識付費平臺推薦模型;崔春生等[20]根據(jù)用戶基本信息和行為信息構建用戶畫像,根據(jù)用戶相似度和使用情境進行高質(zhì)量推薦;Husain 等[21]根據(jù)用戶偏好建立用戶畫像,同時結合其當前位置提供適宜的旅游信息;Ravi 等[22]從用戶社交網(wǎng)絡數(shù)據(jù)中挖掘其興趣點進而生成用戶畫像,基于此推薦的旅游路線及快速又準確;劉海鷗等[23-24]將用戶畫像與資源畫像融合起來對館藏資源進行高效利用,提高了移動圖書館推薦系統(tǒng)的服務質(zhì)量。
為提升旅游路線推薦服務中的用戶體驗,本文全面考慮用戶情境信息及其旅游需求偏好,充分挖掘用戶與景點之間不同類型的交互行為以及不同交互行為之間的相關性,提出一種基于注意力機制與畫像技術的旅游路線情境化推薦方法AMPT(Attention Mechanism and Profile Technology)。該模型首先引入情境信息構建飽滿的用戶畫像,同時提出景點畫像的概念以深度刻畫景點屬性;然后設計兩種注意力機制:①畫像注意力機制綜合考慮用戶與景點之間不同類型的交互以及不同交互行為之間的相關性,彌補用戶—景點交互數(shù)據(jù)稀疏的缺陷;②文本注意力機制加強局部特征與整個文本序列的相關性,學習文本信息中最有價值的語義信息;最后將帶有注意權重的交互行為特征向量和文本特征向量作為深度因子分解機(Deep Factorizations Machine,Deep FM)模型的輸入,進行評分預測。在去哪兒網(wǎng)真實數(shù)據(jù)集上的實驗結果表明,AMPT 模型的推薦性能優(yōu)于其他比較模型。
本文提出的AMPT 模型結構如圖1 所示。首先將數(shù)據(jù)集中的所有特征作為輸入,通過Embedding 嵌入層轉(zhuǎn)換為稠密特征向量;然后使用畫像注意力機制學習用戶與景點之間不同交互行為的相關性,進而得到用戶和景點的隱向量,同時使用文本注意力機制對用戶和景點文本進行特征學習,獲得景點與目標用戶關聯(lián)度最高的部分;隨后在Fusion 層將交互行為特征向量與文本特征向量進行融合;最后使用Deep FM 模型進行評分,其中因子分解機(Factorization Machine,F(xiàn)M)和深度神經(jīng)網(wǎng)絡(Deep Neural Network,DNN)分別用于處理低階特征和非線性高階特征,通過線性變換分別得到兩個部分的輸出結果,對結果進行加權求和,通過Sigmoid 函數(shù)得到AMPT 模型最終的預測得分。
Fig.1 Architecture of AMPT model圖1 AMPT模型結構
用戶畫像可以體現(xiàn)用戶特征。本文選取自然屬性、行為特征與情境信息3 個維度構建用戶畫像,選取基本信息、旅游類型、聚類標簽3 個維度構建景點畫像[25-26],并通過提取不同粒度的標簽建立“標簽—類別—關鍵詞”三層次旅游類型標簽體系,用于構建景點旅游類型模型。三層次旅游類型標簽體系結構如圖2所示。
Fig.2 Three-level tourism type labeling system structure圖2 三層次旅游類型標簽體系結構
本文設計的畫像具有類別型和連續(xù)型兩種類型的特征,為便于對兩種類型的特征進行交叉,需要將其同時映射至相同低維特征空間中。類別型特征需要進行One-Hot編碼(One-Hot Encoding),將其轉(zhuǎn)化為數(shù)值向量;而連續(xù)型特征可直接映射至低維嵌入空間中,每一個連續(xù)型特征在嵌入空間中都對應一個特征向量。用戶與景點的交互記錄具有高維且稀疏的特點,基于乘積的神經(jīng)網(wǎng)絡(Productbased Neural Network,PNN)模型在Embedding 嵌入層之后引入顯式二階交互層,可以很好地對高維稀疏矩陣進行特征學習,因此本文使用PNN 模型提取用戶畫像與景點畫像的特征。首先將高維稀疏的特征映射至低維稠密特征空間中,將輸入的特征映射為稠密向量;然后使用畫像注意力機制學習用戶與景點交互行為的相關性;最后使用PNN模型提取用戶特征、景點特征以及帶有注意力權重的交互特征,得到用戶隱向量和景點隱向量。PNN 模型結構如圖3所示,其損失函數(shù)表示為:
Fig.3 PNN model structure圖3 PNN模型結構
文本特征提取模塊首先通過Embedding 嵌入層得到用戶文本和景點文本的向量表示,并將其映射至低維嵌入空間中得到對應的特征向量;然后引入文本注意力機制用于學習包含最多價值的語義信息;最后使用BERT((Bidirectional Encoder Representations from Transformers)預訓練模型得到文本特征向量。
注意力機制的網(wǎng)絡結構如圖4 所示。上下文向量為編碼器輸出向量h1,h2,…h(huán)j的加權和;向量h1,h2,…h(huán)j由權重αij進行縮放,能夠捕獲輸入向量與預測輸出之間的相關程度,因此能夠確保解碼器在預測輸出時專注于更具價值的部分。上下文向量的計算公式表示為:
Fig.4 Attention mechanism network structure圖4 注意力機制網(wǎng)絡結構
為突出重點交互行為特征和文本特征的貢獻,本文通過畫像注意力機制和文本注意力機制計算每個特征的權值,為輸入的向量序列更新權重。多層感知機具有多層神經(jīng)網(wǎng)絡結構,能有效提取高階非線性特征,因此本文采用多層感知機計算交叉特征之間的相似度。計算公式為:
式中:pm表示交互行為特征矩陣P中第m個交互行為特征向量;p1…n表示所有交互行為特征向量;tm表示文本特征矩陣T中第m個文本特征向量;t1…n表示所有文本特征向量。
對計算得到的相似度進行歸一化處理,可以得到每個特征向量的注意力權重。計算公式為:
式中:wm表示交互行為特征矩陣中第m個交互行為特征向量的注意力權重系數(shù);vm表示文本特征矩陣中第m個文本特征向量的注意力權重系數(shù)。
分別使用wm和vm表示交互行為特征權重系數(shù)和文本特征權重系數(shù),拼接所有特征向量的注意力權重系數(shù)得到交互行為注意力權重系數(shù)矩陣A(P)和文本注意力權重系數(shù)矩陣A(T)。表示為:
分別將注意力權重系數(shù)矩陣與交互行為特征矩陣和文本特征矩陣進行乘積操作,得到更新后帶權重信息的交互行為特征矩陣P'和文本特征矩陣T',分別表示為:
將交互行為特征向量與帶權重信息的交互行為特征矩陣P',以及文本特征向量與帶權重信息的文本特征矩陣T'相乘,得到特征交叉的最終表現(xiàn)形式。表示為:
最終全連接層的輸出表示為:
式中;W表示權重矩陣,b表示全連接層的偏置。
Deep FM 模型并行集成了FM 層和DNN 層,其中FM 層能對一階特征和二階組合特征進行全建模,并且可以通過嵌入層得到每個特征對應的非零嵌入向量;而DNN 層的多層感知機可以很好地提取高階非線性特征,彌補了FM層的缺陷。因此本文采用Deep FM 模型預測評分,其中FM 模型的輸出表示為:
式中:w0表示常數(shù)項偏置,wi為第i個特征分量的權重,xi表示向量中第i個特征分量,xj表示向量中第j個特征分量,wij表示第i個特征分量與第j個特征分量的交互值,n表示樣本的特征個數(shù)。前兩項之和表示線性部分,第3項表示二階特征交叉部分。FM 模型可以通過內(nèi)積計算沒有交互數(shù)據(jù)的兩個特征之間的相似度,確保特征學習的完整性和連貫性。
DNN 模型的隱層輸出表示為:
式中:wk表示第k層權重值,bk表示第k層偏置。
通過Fusion 層對FM 模型與DNN 模型的預測結果進行歸一化,得到最后的預測結果。歸一化公式為:
式中:非線性映射函數(shù)f(·)為Sigmoid 函數(shù),β為折衷系數(shù)。
目前缺少包含用戶景點交互記錄的公共數(shù)據(jù)集。去哪兒網(wǎng)是國內(nèi)最大的旅游分享網(wǎng)站之一,因此本文使用爬蟲技術在去哪兒網(wǎng)上收集真實數(shù)據(jù),以此自建數(shù)據(jù)集。本文數(shù)據(jù)集包含1 117 個景點信息、10 604 個用戶信息、29 348 條景點描述文本以及43 569 條用戶評論。景點信息包含名稱、地理位置、等級、排名、門票價格、歷史評分、建議游玩時長,附近路段擁堵系數(shù),車均延誤時長等;用戶信息包含ID、性別、年齡、歷史旅游記錄、歷史搜索記錄、所處月份等。將80%的數(shù)據(jù)集作為訓練集,20%的數(shù)據(jù)集作為測試集用于模型性能評估。
采用準確率(Accuracy,A)、精確率(Precision,P)、召回率(Recall,R)、AUC值作為評價指標,并采用平均絕對誤差(Mean Absolute Error,MAE)衡量本文預測結果與真實得分之間的誤差[27]。分類矩陣如表1所示。表中TP表示正向樣本預測為正向樣本的個數(shù),TN表示負向樣本預測為負向樣本的個數(shù),F(xiàn)P表示負向樣本預測為正向樣本的個數(shù),F(xiàn)N表示正向樣本預測為負向樣本的個數(shù)。
Table 1 Classification matrix表1 分類矩陣
根據(jù)TP、TN、FP和FN計算準確率A、精確率P、召回率R,具體計算公式分別表示為:
AUC值的計算公式為:
式中:pNum表示正樣本數(shù)量,nNum表示負樣本數(shù)量;pi表示正樣本預測得分,nj表示負樣本預測得分。
平均絕對誤差MAE的計算公式為:
式中:ru,i表示用戶u對路線i的實際評分;表示用戶u對路線i的預測分數(shù);n表示測試數(shù)量。
為驗證本文提出的AMPT 模型的優(yōu)越性,選擇邏輯回歸(Logistic Regression,LR)、DNN、FM、卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)、PNN、Deep FM 等主流推薦模型作為對照,在自建數(shù)據(jù)集上進行性能比較,結果如表2所示??梢钥闯觯疚哪P捅憩F(xiàn)最佳。
Table 2 Experimental results表2 實驗結果 (%)
為使游客旅游體驗度更佳、花費代價更小,本文提出一種基于注意力機制與畫像的旅游路線情境化推薦模型,使用畫像技術充分建模用戶與景點之間的相關性,同時使用兩種注意力機制分別學習文本內(nèi)容的語義信息以及用戶和景點交互的非線性特征,彌補了傳統(tǒng)推薦算法依賴單一維度信息的缺陷,增強了推薦性能。在自建真實數(shù)據(jù)集上的比較實驗結果表明,本文模型性能優(yōu)于其他6 個常用推薦模型。今后擬在模型中增加多模態(tài)信息,如用戶和景點視頻、圖片、用戶社交信息等,以進一步提升推薦效果。