邰淳亮,謝 怡,孫知信,2
(1.南京郵電大學 計算機學院,江蘇 南京 210003;2.南京郵電大學 物聯網學院,江蘇 南京 210003)
一種基于用戶興趣的位置服務推薦算法
邰淳亮1,謝 怡1,孫知信1,2
(1.南京郵電大學 計算機學院,江蘇 南京 210003;2.南京郵電大學 物聯網學院,江蘇 南京 210003)
隨著移動網絡經濟用戶數、商戶數和覆蓋范圍的擴大,基于用戶位置的商家信息推送勢必會經歷“信息爆炸”和“信息過載”,而解決因信息過載導致用戶與商家之間的信息迷失的最有效辦法是基于用戶興趣的用戶位置服務(LBS)推薦。為此,在分別從位置服務技術、用戶的興趣模型,以及個性化推薦算法三個方面深入研究移動位置服務的個性化推薦系統、分析個性化推薦研究現狀以及對比分析各種推薦算法的基礎上,基于貝葉斯理論,提出了一種適用于移動位置服務的個性化推薦算法。該算法能準確地預測用戶在某一情景下消費的興趣偏好。為驗證所提出算法的有效性和可行性,基于所構建的推薦系統進行了實驗驗證測試。實驗結果表明,所提出的算法能夠有效地向移動用戶提供個性化推薦服務。
位置服務;用戶建模;個性化推薦;用戶興趣
自20世紀末誕生以來,推薦系統在互聯網領域發揮著重要作用,電子商務、音樂、視頻等推薦系統不斷服務著人們的生活。隨著移動網絡經濟用戶數、商戶數和覆蓋范圍的擴大,基于用戶位置的商家信息推送勢必會經歷“信息爆炸”和“信息過載”,而解決因信息過載導致用戶與商家之間的信息迷失的最有效辦法是基于用戶興趣的用戶位置服務(LBS)推薦。相比較于傳統的PC設備,移動設備的特點是隨身攜帶方便,但是頁面承載的信息量十分有限,此特點決定了信息的展現需要更精準地符合用戶的個體需求,這些因素推動著基于LBS推薦系統研究的深入[1]。
為此,在分別從位置服務技術、用戶興趣模型,以及個性化推薦算法三個方面深入研究移動位置服務的個性化推薦系統、分析個性化推薦研究現狀以及對比分析各種推薦算法的基礎上,基于貝葉斯理論,提出了一種適用于移動位置服務的個性化推薦算法。該算法利用貝葉斯方法預測用戶在某一情景下消費的概率,設計并實現了基于用戶興趣的位置服務推薦系統,并對系統進行了實驗驗證測試,以驗證該算法的有效性和可行性。
1.1位置服務
LBS(Location-Based Service,基于位置的服務)在物流、導航、娛樂、電子商務等領域都有廣泛的應用。O2O就是LBS典型的應用方向。一個LBS應用主要由四個方面構成:移動終端、定位技術、通信網絡、服務和內容,這四部分相互配合,為用戶提供基于位置的信息服務。定位技術是LBS的實現基礎,只有解決好了定位問題,才能為用戶提供高質量的位置服務。目前定位技術可以分為三類:基于網絡的定位技術、基于衛星的定位技術和感知定位技術。位置服務開發平臺(LBS平臺)根據LBS應用的特點,從不同類型的LBS應用中抽象出它們的共性,進而把這些共性封裝在一個平臺上,使LBS平臺成為一個通用的和易于擴展的位置服務開發平臺,在此平臺的基礎上開發出具備各種功能的LBS應用系統[2]。
1.2用戶興趣建模
個性化推薦系統是以用戶需求、興趣或者偏好為基礎,結合信息特征,建立起用戶與信息對象之前的聯系,提供針對性的信息服務。所以,在推薦系統中,首先要解決用戶興趣模型建立的問題,即用戶興趣模型如何表示與更新,其次是如何利用用戶興趣模型進行個性化推薦。用戶興趣模型是關于用戶興趣、特征和活動知識的表示模型[3]。用戶興趣建模過程主要分為:用戶識別、用戶信息獲取和用戶建模[4-7]。
1.3個性化推薦算法
內容過濾推薦系統是基于內容過濾算法(Content-Based Filtering,CBF),對于某一項目,假如在內容上與該用戶之前感興趣的信息項目相似,那么可以推斷用戶也對該項目感興趣。所以該算法的重點在于評估用戶沒發現的物品與用戶之前喜歡的物品之間的相似程度。
CBF基于內容推薦的依賴,使其無法對難以解析的信息對象實現推薦,比如音視頻等多媒體信息。另外該算法沒有充分利用用戶群體的知識,無法發現潛在的信息需求,很難實現具有聯想性的推薦。
協作過濾推薦(Collaborative Filtering,CF)源于“集體智慧”的思想,利用相關其他用戶的偏好來預測當前用戶的偏好,也可以是當前用戶與其他用戶在部分項目中的偏好數據來預測其潛在偏好,通過發現與用戶興趣相似的鄰居用戶,并將鄰居用戶感興趣的信息項目推薦給目標用戶[8]。協同過濾推薦克服了基于內容推薦的兩點不足:內容分析能力有限以及無法挖掘用戶潛在興趣。
文獻[9]發現,在實際應用中,用戶一般只會評價比例很少的一部分物品,因此導致評分矩陣一般較為稀疏,所以協同過濾算法面臨的主要難題是用戶評分數據稀疏性問題。同時,用戶興趣和需求會隨著時間與空間的變化而發生變化,但是傳統的協同過濾并沒有考慮情景因素對用戶偏好的影響。目前,關于協同過濾算法的研究集中在數據稀疏性和情景因素方面。
盡管移動推薦系統的基本思想與傳統互聯網推薦系統相似,但傳統的互聯網用戶的推薦方法不能直接用到移動推薦中[10]。文獻[11]提出一種根據應用類型來確定不同的位置定位精度的方法,比如基于位置的廣告推薦和好友推薦所需的位置精度相對較低,而導航等服務則需要較高的精度,那么在不同的情景下使用合適的定位算法。文獻[12]利用貝葉斯分類法,把當前時間上下文進行分類,分為工作日和周末。文獻[13]在為智能設備推薦電影時,也考慮了上下文因素,包括位置、動作、室內室外、是否為節假日和時間。文獻[14]分析了用戶購買時間和項目上架時間的關系,將用戶的購買記錄按購買時間分成不同的購買組,如早期、當前、后期等,該方法考慮了時間推移對用戶興趣變化的影響。
在移動位置服務推薦中,不少文獻把內容過濾推薦和協作過濾推薦組合在一起,解決單一推薦方法存在的問題,或者重點考慮用戶的上下文環境,忽略了用戶評分這一因素。因此將從用戶評分中發現用戶偏好,并且考慮用戶情景對推薦結果的影響,設計一種基于用戶興趣的位置服務推薦算法。
2.1用戶評分特征
用戶在商家消費完后,對商家的特色、服務產生直觀的看法,此時用戶對商家的評分可以反映出對商家的喜愛程度,進而可以推廣為對這一類商家的喜愛程度。為了能量化用戶對商家的評分特征,評分量表使用五分制,覆蓋從“非常不喜歡”到“非常喜歡”,由于商家信息經過標簽化處理,用戶可以對每個標簽關鍵詞進行評分,細化了用戶對商家的評價。
2.1.1 建立用戶評分標簽
用戶通過對商家的標簽關鍵詞給予評分來表達對商家的喜愛程度。每個商家含有多個標簽關鍵詞,每個用戶可以對多個商家的多個標簽關鍵詞進行評分,分數范圍為1至5,1分表示不喜歡,5分表示很喜歡,分數高低反映出用戶對商家的喜愛程度。由于標簽還可以自由組合,形成新的商家信息,因此分析用戶對商家的評分信息,其重點不在于發現哪些商家獲得較高的評分值,而主要是找到被用戶賦予較高分值的是哪些標簽,把這些標簽提取出來,并進行相關組合,那么可以得到其他含有此類標簽的商家,這些商家將作為推薦候選。圖1是用戶-商家-標簽-評分之間的關系。

圖1 用戶-商家-標簽-評分之間的關系
標簽可以看作是項目的內容,基于標簽的推薦從本質上可以視為基于內容過濾的推薦,維護好每個物品特征的詳細列表,將這些信息保存在數據庫中,根據用戶不同的興趣,用這些特征描述他們的偏好,推薦要做的就是將物品特征和用戶偏好匹配起來,而這也正是分析用戶-商家-標簽-評分間關系的目的,進而發現用戶的評分特征。文獻[15]在電影領域利用基于標簽的推薦,方法是組合兩種數據源,分別是奈飛評分數據庫和互聯網電影數據庫。
同樣地,在本地生活領域的服務推薦中也可以利用評分標簽云,每個商家可以視為一組特征關鍵詞。通過分析用戶的歷史評分信息,建立起用戶不同評分等級所包含的標簽關鍵詞。例如,從歷史評分記錄中發現用戶A經常評5分的商家通常會有標簽“火鍋”、“川湘菜”或“環境優雅”等,那么根據這些信息,可以找出用戶A沒有評分但含有標簽“火鍋”、“川湘菜”和“環境優雅”這樣關鍵詞的商家,并猜測這些商家會被用戶A評5分。
設某個特定用戶u∈U,U是所有用戶的集合;某個商家m∈M,M是所有商家的集合;評分值記為r∈R,R是可能評分值的集合,且R={1,2,…,5}。
定義Mu為用戶u評分的商家集合,用戶u∈U對商家m∈Mu的評分值記為fu(m)∈R。K是所有標簽關鍵詞的全集,Km為與商家m有關的標簽關鍵詞集合。
根據以上條件,定義nk(u,r)表示用戶u評分為r的商家中,標簽關鍵詞k出現的頻次。其中,用戶u的評分值為r,k∈K代表關鍵詞,因此nk(u,r)可以定義為:
nk(u,r)=
|{m|m∈Mu∧k∈Km∧fu(m)=r}|
(1)
這一數值反映了用戶將評分等級設為r時,在這一分值等級下,標簽k的分布情況,間接體現了用戶的偏好。
定義Nu,r為元組(k,nk(u,r))的集合,那么Nu,r表示被用戶u評分為r的所有關鍵詞標簽,以及這些標簽出現的次數。所以用Nu,r可以刻畫在不同的評分等級下用戶的標簽評分特征。由此也可以推出,找到用戶評分為5時出現次數最多的標簽關鍵詞,假如某一商家的標簽恰好與這些標簽重合,也就可以認為用戶對該商家的評分為5,用戶非常喜歡該商家。
2.1.2 基于用戶評分特征的匹配
由上一節可知,Nu,r刻畫了用戶的標簽評分特征,反映出用戶對某一類型商家的偏好程度。為了預測用戶對某一沒有消費過商家的評分,只需將商家的標簽與用戶的標簽評分特征Nu,r進行匹配,當交集最大時,就可以得到預測評分。

σ(u,m*,r)=|{(k,nk)∈Nu,r|k∈Km*}|
(2)
當用戶評分特征Nu,r與商家m*相關的標簽集合交集最大時,就能得到評分r*。如果預測評分越高,說明用戶對該商家越滿意,應加入到推薦列表中。
2.2用戶情景需求
移動位置服務的一大特點是用戶的位置環境處于實時變化中,因此對位置服務的需求也在時刻變化。把用戶需求作為用戶興趣模型的重要一部分,把季節、時間和節假日之間的組合進行分類,得到每種類別下用戶消費某一類標簽商家的概率。
2.2.1 用戶情景分類
所描述的用戶情景需求包括季節、時間和節假日三個屬性,用三元組Cs表示如下:
Cs=
(3)
其中,Si表示第i種季節,依次對應為春夏秋冬;T由三個時間段組成,分別對應上午、中午和下午;H表示節假日,“1”表示節假日,“0”表示非節假日。
根據排列組合的規則,用戶情景有24種情況,例如C1=<1,1,0>,表示春天、上午和非節假日。系統需要記錄用戶在不同情景下的商家消費情況,用戶的歷史消費記錄可以表示為情景信息與商家標簽信息的組合,定義record為用戶歷史消費記錄,則可表示為:
record=
(4)
例如,用戶u在12月5號中午在一家環境優雅的西餐廳點了一份價格適中的西冷牛排,那么該條記錄可以表示為:
recordu=<冬天,中午,非節假日|西餐,牛排,價格合理,環境優雅>
(5)
2.2.2 用戶消費傾向預估
用戶消費情景,也可以表述為用戶消費時的上下文環境。在特定的情景下,用戶的需求會比較確定。例如,用戶A喜歡在夏天吃冰淇淋,冬天喜歡吃火鍋,那么當該用戶外出時,拿出手機查詢周圍的商家時,就應該分析該用戶所處的季節,進而推薦相應的商家。文獻[12]通過分析用戶所處的上下文環境,為移動用戶推薦合適的電影。文獻[13]對文獻[12]提出的算法進行改進,并且在上下文環境中增加了用戶動作、設備是否在用戶手上、具體時間等,利用SVM、k值最近鄰等方法對上下文環境進行識別,最后通過20名實驗者來判斷推薦的電影是否滿意。由此可以看出,文獻[12]和文獻[13]在電影推薦領域運用貝葉斯分類法則,用一組特征關鍵詞表示電影信息,在用戶觀看記錄中,將電影信息和觀看時的上下文環境組合在一起,便于預測今后在某個情景下用戶觀影的傾向。
從上文的商家信息標簽化處理可以得到,商家信息也能用一組特征標簽向量表示,而且用戶的消費情景也可以用季節、時間和節假日三個屬性表示,這三個屬性通過自由組合,能夠形成24種用戶情景,用戶消費記錄中所要保存的是在每種情景下用戶消費過的商家特征標簽向量。所以,在移動位置服務推薦領域,也可以運用貝葉斯法則,給定用戶的消費記錄,整理出每種情景下消費某一類標簽商家的次數,由此預估用戶下次再遇到相似的情景時,選擇商家消費的概率。
通過分析用戶的歷史消費記錄,運用貝葉斯法則,計算出用戶u在某一種情景下,消費某一組標簽向量商家的概率。

(6)


(7)
其中,n(fi,Cj)表示在消費情景Cj下,選擇包含標簽fi商家的次數;n(Cj)表示在Cj條件下所有標簽的出現次數;|Vj|表示在Cj條件下出現標簽的個數。
2.3個性化推薦
個性化商家推薦列表的生成綜合評估了用戶的實時地理位置,歷史評分特征和情景需求。通過用戶的地理位置,系統拉取了周圍各種類型的商家信息,然后根據用戶的評分特征和情景需求,篩選出符合用戶興趣的商家。圖2顯示了個性推薦生成過程。

圖2 個性化推薦生成

對于用戶u,商家m*的加權預估評分值計算。

(8)
根據最后得出的加權預估評分值,分值越高的商家越值得向用戶推薦。
3.1系統流程框架
用戶登錄系統,首先獲取的是用戶實時地理位置,然后是用戶歷史消費記錄和用戶的評分數據,基于這些信息能夠挖掘出用戶的興趣,構建用戶興趣模型,而且商家的語句性描述信息也要進行標簽化處理,以便匹配用戶興趣,生成推薦列表。系統流程如圖3所示。

圖3 系統流程圖
3.2系統功能模塊設計
設計的基于用戶興趣的位置服務推薦系統主要分為三個模塊:商家信息管理模塊、用戶興趣模型模塊和個性化推薦模塊,在每個模塊下面又做進一步的細分,其中商家信息模塊負責提取商家的關鍵信息,并且用一組特征向量表示,便于后續個性化推薦中與用戶興趣進行匹配,而用戶興趣模型則主要把用戶的興趣特征提取出來,也是為個性化推薦服務。圖4顯示了系統細分的模塊。
該系統采用SSH2(Struts2+Spring+Hibernate)框架進行開發,將系統分為表現層、業務層、數據持久層。Struts2實現了MVC模型,首先利用攔截器獲取用戶的實時請求信息,充當了控制層的作用,獲取用戶的請求信息之后,與業務層進行交互,結果將返回到具體的表現層界面,最后表現層中包含的頁面信息將會返回到具體的客戶端。Android客戶端采用的是MVC(Model-View-Controller)模型,視圖層建立View視圖模型,以XML文件的方式進行界面設計,用于接收消息,并對數據進行展示和更新的操作,控制層Controller則通過控制器Activity,與用戶進行交互,用于接收View視圖的操作請求,同時,對于處理完成的數據交給View層進行數據更新,保證Model和View的同步。模型層Model接收來自Controller的數據,對數據進行處理,同時完成程序的業務邏輯處理,將處理完成的數據通知Controller,保證視圖的實時更新。

圖4 系統細分模塊圖
測試系統依次實現登錄、獲取位置信息、添加標簽、完成推薦等功能。系統測試如圖5所示。

圖5 基于用戶興趣的位置服務推薦系統測試圖
智能設備與移動互聯網的發展普及,有效地促進了移動用戶對智能設備功能的多方面需求,促使其生活方式發生諸多變化。智能設備的應用催生了基于用戶興趣的位置服務推薦系統。為此,圍繞時間因素,提出了基于用戶歷史評分和興趣消費情景的用戶服務推薦系統。而作為推薦系統的算法,其效果多依賴于用戶主觀因素,仍缺乏其實際推薦效果的考察。為此,對提出算法進行了實驗驗證。實驗結果表明,該算法能夠有效地向移動用戶提供個性化推薦服務。
移動互聯網時代的到來,信息資源的獲取和推送可以以任何方式發生在任何時間和任何地點,移動位置推薦系統利用移動環境在信息推薦方面的優勢,克服其不利因素,基于用戶偏好來預測和過濾不相關的信息,為移動用戶提供個性化服務,為解決“移動信息過載”提供了一種有效方式。
[1] Jannach D,Zanker M,Felfernig A,et al.推薦系統[M].蔣 凡,譯.北京:人民郵電出版社,2013.
[2] 盛 珍.基于Android平臺的LBS應用系統開發技術研究[D].昆明:云南大學,2012.
[3] Razmerita L.An ontology-based framework for modeling user behavior-a case study in knowledge management[J].IEEE Transaction on Systems and Humans,2011,41(4):772-783.
[4] 袁 柳,張龍波.個性化檢索中的用戶特征模型研究[J].計算機工程與應用,2011,47(15):19-24.
[5] Wetzker R,Zimmermann C,Bauckhage C,et al.I tag,you tag:translating tags for advanced user model[C]//Proceedings of the third ACM international conference on web search and data mining.[s.l.]:ACM,2010:71-80.
[6] 任 磊.推薦系統關鍵技術研究[D].上海:華東師范大學,2012.
[7] 孟祥武,王 凡,史艷翠,等.移動用戶需求獲取技術及其應用[J].軟件學報,2014,25(3):439-456.
[8] 王立才,孟祥武,張玉潔.上下文感知推薦系統[J].軟件學報,2012,23(1):1-20.
[9] Bobadilla J,Ortega F,Hernando A,et al.A collaborative filtering approach to mitigate the new user cold start problem[J].Knowledge-Based System,2012,26:225-238.
[10] 孟祥武,胡 勛,王立才,等.移動推薦系統及其應用[J].軟件學報,2013,24(1):91-108.
[11] Basiri A,Lohan E S.Overview of positioning technologies from fitness-to-purpose point of view[C]//International conference on localization and GNSS.Helsinki,Finland:IEEE,2014:1-7.
[12] Yu Z,Zhou X,Zhang D,et al.Supporting context-aw-are media recommendation for smart phones[J].IEEE Pervasive Computing,2006,5(3):68-75.
[13] Moradeyo A,Teresa M.Supporting context-aware cloud-based media recommendation for smartphones[C]//2nd IEEE international conference on mobile cloud computing,service and engineering.Oxford,England:IEEE,2014:109-117.
[14] Lee T Q,Park Y,Park Y T.A time-based approach to effective recommender systems using implicit feedback[J].Expert Systems with Applications,2008,34(4):3055-3062.
[15] Szomszor C,Cattuto H,Alani K,et al.Folksonomies,the semantic web,and movie recommendation[C]//Workshop on bridging the gap between semantic Web and Web 2.0.Innsbruck,Austria:Springer,2007:71-84.
A Recommendation Algorithm of Location Service Based on User Interest
TAI Chun-liang1,XIE Yi1,SUN Zhi-xin1,2
(1.School of Computer Science,Nanjing University of Posts and Telecommunications,Nanjing 210003,China;2.School of IOT,Nanjing University of Posts and Telecommunications,Nanjing 210003,China)
With the increase of consumers and merchants,information pushing services based on consumers’ localities are deemed to go through information explosion and communication overload.Locality service recommendation based on consumers’ interests is an effective method to deal with information misleading between consumers and merchants stemmed from the information overload.In order to solve the problem mentioned above,after the individual recommendation system based on mobile locality has been researched on three aspects,locality service technique,consumers’ interest model and individual recommendation algorithms respectively as well as the status of investigation on individual recommendation and contrast analysis on various recommendation algorithms.Based on Bayesian theory,an individual recommendation algorithm suitable for mobile location services is proposed,which can predict consumers’ consumption interest accurately in a certain scenario.In order to verify its effectiveness and feasibility,a series of simulation experiments for verification have been conducted with the established recommendation system,which show that it has provided efficient individual recommendation services to mobile consumers.
location-based service;user modeling;personalized recommendation;user interest
2016-08-13
:2016-11-24 < class="emphasis_bold">網絡出版時間
時間:2017-07-11
國家自然科學基金資助項目(60973140,61170276,61373135);江蘇省產學研項目(BY2013011);江蘇省科技型企業創新基金項目(BC2013027);江蘇省高校自然科學研究重大項目(12KJA520003)
邰淳亮(1989-),男,碩士研究生,研究方向為基于網絡的計算機軟件應用技術;孫知信,博士,教授,研究方向為計算機網絡與安全。
http://kns.cnki.net/kcms/detail/61.1450.TP.20170711.1452.006.html
TP301.6
:A
:1673-629X(2017)09-0064-06
10.3969/j.issn.1673-629X.2017.09.014