劉浩翰,馬騰飛,賀懷清
(中國民航大學計算機科學與技術學院,天津 300300)
基于民航附加服務本體的個性化協同過濾算法
劉浩翰,馬騰飛,賀懷清
(中國民航大學計算機科學與技術學院,天津300300)
在構建完成的民航附加服務本體的基礎上,針對傳統協同過濾算法存在數據稀疏性和無法考慮項目自身語義關系等缺點,提出了基于本體的個性化協同過濾算法。該方法采用基于規則的推薦方法在Jena的基礎上進行推理,然后利用推理結果更新本體,完善了本體中旅客的興趣評分信息,降低了旅客興趣評分稀疏性。接著引入本體語義相似度計算,將語義相似度與協同過濾算法相似度結合,加入了項目之間語義相似度的計算,提高了相似度計算的準確度。通過實驗證明,改進的推薦技術很好地提高了推薦的準確性。
民航附加服務;推理機;語義相似度;協同過濾
隨著民航業的快速發展以及運輸行業不斷變化,民航附加服務[1]應運而生,但是面對數以千萬的旅客和產品,怎樣能從海量的數據中找到旅客的興趣,給旅客推薦更貼心的服務已成為當下之急。
推薦系統到現在所用到的思想和基礎技術已發展10多年了,雖然目前傳統的推薦技術已在很多領域得到廣泛的應用,并且取得了很不錯的效果,其中協同過濾算法可以通過分析用戶的行為記錄來預測其可能喜歡的事物,是現今應用最為成功和最廣泛的推薦技術,但是面對目前快速發展的互聯網的需求,傳統的協同過濾推薦算法存在著種種問題和不足。隨著互聯網時代對推薦系統要求的不斷增高,基于本體的推薦技術已成為個性化推薦技術研究的一個必然發展方向。因此本文在民航附加服務本體的基礎上,針對傳統協同過濾算法的缺點在基于本體推薦技術的基礎上,提出了基于本體的個性化協同過濾算法。
民航附加服務領域本體是針對民航附加服務領域概念眾多、關系復雜的特點,提出的基于本體的民航附加服務領域知識規范化的方法,利用protégé構建了民航附加服務領域本體,通過構建該領域本體知識邏輯體系,得以實現領域知識的共享和重用,圖1為構建完成的民航附加服務領域本體部分可視關聯圖,主要包括產品、品牌、旅客、興趣、情景、共享6個部分。
1)產品是指民航附加服務領域的各種產品服務。其中包括機上服務、機場服務、商品服務、航空運輸服務、地面運輸非航空服務、行李服務、財務相關服務和航空公司自定義服務8個子概念,具體如圖2所示。

圖1 民航附加服務領域本體部分可視關聯圖Fig.1 Partial visual association graph of civil aviation auxiliary service domain ontology

圖2 產品層次圖Fig.2 Product hierarchical graph
2)品牌是由1到N個產品所組成的。
3)旅客分為旅客個體和旅客聚類2個子概念。旅客個體又分為常旅客和普通旅客,常旅客中還包含X航常旅客。
4)興趣指的是旅客對產品和品牌產生的興趣,分為長期興趣和短期興趣兩個子概念。
5)情景指旅客購買產品時的情景,分為活動和天氣2個子概念。
6)共享是指民航內部,民航與鐵路、公路、水路以及民航與國際市場相互共享的信息,分為共享概念集、旅客共享屬性結構體、附加服務共享屬性結構體3個子概念。
在傳統的協同過濾推薦中,最主要的事情是通過相似度計算獲取近鄰集合。目前主要的相似度計算方法就是Pearson相關系數法[2]、余弦相似度和改進的余弦相似度方法[3]。其中基于用戶的相似度計算主要運用Pearson相關系數法如式(1)所示[4],基于項目的相似度計算運用改進的余弦相似度算法如式(2)所示[5]。

其中:pred(a,j)為用戶a對未評分產品j的預測評分;為用戶a的平均評分;neighbor(a)為用戶a的最近鄰居;sim(a,u)為用戶a和用戶u的相似度;Puj為是用戶u對產品j的評分為用戶u的平均評分。

其中:pred(u,j)為用戶u對未評分產品j的預測評分;ratedItems(j)為產品j的最近鄰居;sim(i,j)為產品i和產品j的相似度;Ru,i為用戶u對產品j的評分。
傳統的協同過濾推薦系統,在一定程度上很好地實現了推薦,但是其自身還存在很多的不足:
1)稀疏性問題
在現實中面對各式各樣的產品,用戶對很多產品是未進行過評分的,而協同過濾算法所依賴的正是這些用戶過去的行為,如果評分過于稀疏,在計算旅客相似度時就會因為數據稀疏導致計算的相似度不準確,很難計算出用戶的最近鄰居,結果導致推薦精度大大降低。
2)缺乏項目之間語義關系的考慮
通常協同過濾算法只是面對基于用戶與項目的矩陣進行相似度計算,項目之間沒有語義關系,因此可忽略項目與項目之間的關聯性問題,但在實際中某些事物之間存在著必然的聯系,如果能將項目之間的關聯性考慮進去,勢必將使推薦精度得到提升。
針對傳統的協同過濾算法面臨的稀疏性問題和缺乏對不同項目之間語義相似度考慮的缺點,提出基于本體的個性化協同過濾算法。其主要思想內容如下。
3.1基于規則推薦降低數據稀疏性
通過上文介紹可知數據的稀疏性在很大程度上決定著推薦系統的好壞,因此首要目的是增加數據信息量,從而解決數據的稀疏性。基于本體的規則推薦技術,可通過定義規則,挖掘用戶潛在的興趣,通過關聯規則進行推薦,利用推薦的結果對本體進行更新,從而降低數據稀疏性。圖3為基于本體的規則推薦框架圖。

圖3 基于本體規則推薦框架圖Fig.3 Recommendation framework based on ontology rules
在推理過程中,選擇Jena推理機來實現基于本體的規則推薦。它提供了一個處理RDF、RDFS、OWL的API接口,通過Java編程可實現對本體進行操作,還可實現基于本體的規則推薦[6]。Jena推理機自身就具有一些基礎的推理規則[7]。但是僅僅這些規則遠遠滿足不了在現實推薦過程中的應用。為了更好的進行推理可依據自身需求定制自己的規則,建立特定的推理規則,用于滿足特定領域的個性化需求。
3.2項目之間語義相似度
通過基于本體規則推薦解決了數據的稀疏性,但是由于還存在缺乏對不同項目之間語義相似度的考慮的缺點,因此引入了本體語義相似度計算思想,將項目之間語義相似度與協同過濾算法相結合來提高相似度的精確度。
基于距離的語義相似度算法[8]是通過計算2個詞語在本體中的路徑長度來表示其之間的語義距離,代表算法有:Shortest Path法、Weighted Links法、Lietal法、LeacockandChodorow法等[9]。其中LeacockandChodorow法,不僅考慮到了本體概念之間的距離,還考慮了本體分類體系樹自身的深度對被比較概念詞相似度的影響,因此本文選擇了Leacock and Chodorow法作為本體語義相似度計算的算法。詳細定義為

其中:Anc(w1,w2)表示節點w1和節點w2在層次網絡中的最近共同祖先節點;Nlinks[w1,w2]表示節點w1和節點w2在層次網絡中的最短距離;dmax為網絡的最大深度。
3.3基于本體的個性化協同過濾算法
通過上文對傳統協同過濾系統的介紹和缺點分析,針對這些缺點本文提出了新的方法思路,通過分析現有的技術、方法,最終本文確定了基于本體的個性化協同過濾算法思想,即通過基于本體規則推薦來降低數據的稀疏性,然后通過語義相似度和協同過濾相似度的結合來提高相似度的計算。如圖4所示。

圖4 基于本體的個性化協同過濾算法流程圖Fig.4 Personalized collaborative filtering algorithm flowchart based on ontology
基于本體的個性化協同過濾算法推薦步驟如下:①整理數據構建本體;②根據Jena規則構建標準和推理需求構建規則;③利用Jena推理引擎實現基于本體的規則推薦,獲取推薦結果利用Jena提供的Api接口在Netbeans上編寫程序對本體進行更新;④分別計算未知產品與其他已知產品的修正余弦相似度和語義相似度;⑤通過計算2個產品的修正余弦相似度和語義相似度的加權值,來獲取2個產品最終的相似度sim如式(4)所示;⑥最后計算產品的加權方法如式(2),來計算旅客對未知產品的評分;⑦求得的評分按照從高到低排列,取前K個進行推薦。其中:sim(a,b)表示產品a和產品b的相似度;U表示旅客的集合;ru,a表示旅客u對產品a的打分;ru表示旅客u的平均打分;Anc(w1,w2)表示節點w1和節點w2在層次網絡中的最近共同祖先節點;Nlinks[w1,w2]表示節點w1和節點w2在層次網絡中的最短距離;dmax表示網絡的最大深度;α取值為0~1。

4.1數據集以及度量標準
本文采用前文構建的民航附加服務領域本體作為數據基礎,其中數據中包含了旅客的購買記錄,通過數據分析整理將旅客對每個產品進行評分,評分等級為1~5。其中數據中包含2 000個旅客和180個服務項目的評分,并將數據按照4:1的比例來進行訓練集和測試集的劃分。
在對推薦的準確度進行評估時,主要有2種方法:平均絕對誤差MAE[10]和平方根誤差RMSE。本文采用MAE作為評價標準。假設預測的用戶評分值為{m1,m2,…,mi},實際評分值為{n1,n2,..,nj},定義如下

4.2實驗步驟
1)本體構建
將構建完成的民航附加服務領域本體作為推薦系統數據基礎。
2)關聯規則制定
依據Jena關聯規則構建標準和民航附加服務領域個性化需求,以滿足旅客實際需求出發,通過分析旅客購買心理和與領域專家商討,自定義規則分為3類:旅客相關規則類、產品相關規則類、旅客與產品相關規則類。其中部分旅客與產品規則類如下所示。
Rule1:(?a有興趣?b),(?b類似的?c)→(?a有興趣?c)
說明:假如旅客a對產品b有興趣,產品b與產品c是類似的,表明旅客a對產品c有興趣。
Rule2:(?a有興趣 ?b),(?b屬于 ?c)→(?a有興趣?c)
說明:假如旅客a對產品b有興趣,產品b屬于品牌c,那么認為旅客a對品牌c有興趣。
Rule3:(?a年齡?b),(?b morethan 60)→(?a旅客聚類類型老人旅客)
說明:假如旅客a的年齡大于60歲,那么這位旅客就是老人旅客。
Rule4:(?a旅客聚類類型 老人旅客)→(?a有興趣無人陪伴服務)
說明:假如旅客a是老人旅客,那么認為旅客a對無人陪伴服務有興趣。
3)利用Jena推理機推理并更新本體
推理機在基于民航附加服務本體的推理中的工作過程為:①讀入創建的民航附加服務領域本體OWL文件;②通過推理機利用上述描述的民航附加服務規則來注冊創建推理機;③將民航附加服務本體和推理機綁定到一起,進而得到進行檢索的模型對象(InfModel);④通過運用已建立的模型對象并且借助Ontology API和Model API來進行操作和處理,最后完成推理過程;⑤獲取推理結果利用Jena提供的API將推理結果更新本體。
4)相似度計算獲取最近鄰居集合
利用式(4)計算出未知產品與已知產品的相似度,然后通過將相似度排序,取前K個作為未知產品的最近鄰居。
5)計算用戶對未評分產品的評分
對求得的未知產品的最近鄰居的相似度進行加權計算,如式(2),計算出旅客對未知產品的最終評分。
6)實現推薦
將旅客所對應產品的相似度進行從大到小排序,將前K個推薦給用戶,這就是本文最終推薦結果。本文將Jena提供的API和NetBeans與所構建的民航附加服務推薦系統平臺相結合,推薦結果如圖5所示。
4.3實驗數據分析
實驗1由于在平均相似度式(4)~式(6)的計算中α的變化會改變協同過濾算法和語義相似度算法在相似度計算中所占比重,因此α取值可能會影響推薦的準確度。在本實驗中本文選擇產品近鄰個數K取整數1~40之間進行試驗,其中間隔為5,并且通過調節α的變化來觀察MAE的變化,其中α變化范圍為0~1,變化間隔為0.1,其中當K=30時效果最好,結果如圖6所示。

圖5 基于本體的民航附加服務混合推薦系統推薦結果Fig.5 Recommended results of additional service of civil aviation hybrid recommendation system based on ontology

圖6 調節因子α對平均絕對誤差的影響Fig.6 Effect of regulatory weighting factor α on mean absolute error
根據圖6本文可以得出結果:當近鄰個數K=30時,并且α取值為0.6時,MAE取值最小,即推薦效果最好。
實驗2在α=0.6的條件下,將基于民航附加服務本體的個性化協同過濾系統與傳統協同過濾算法和基于語義的協同過濾算法作對比,分別計算這3種推薦算法在最近鄰K等于5~30之間的平均絕對誤差,間隔為5,結果如圖7所示。

圖7 最近鄰數目對MAE的影響Fig.7 Effect of nearest passenger number on MAE
由圖7的實驗結果可知:本文所采用改進算法計算得到的MAE值最小。這說明本實驗所設計的算法的推薦效果最好。
在構建完成的民航附加服務本體的基礎上,通過分析和總結傳統協同過濾算法的不足,并針對其不足提出了基于本體的個性化協同過濾算法,通過專家決策制定了關聯規則,通過基于規則推薦,填充了旅客興趣的空白信息,降低了旅客興趣數據的稀疏性。然后引進了本體的語義相似度計算,將兩種相似度計算方法相結合,提高了推薦的準確度。將推薦算法運用于民航附加服務領域本體。實驗結果證明,基于本體的個性化協同過濾算法有效地解決了傳統協同過濾系統存在的問題,并且明顯地提高了推薦的精度。
雖然本文通過構建關聯規則降低了數據的稀疏度,但是規則的制定與構建的好壞在很大程度上決定了推薦的準確性,因此在未來需隨著民航附加服務發展,對關聯規則進行不斷完善和改進,使推薦更加準確、快捷。
[1]馬鐵勇.中國航空公司開展附加服務業務的政策研討[J].空運商務,2014(10):17-19.
[2]CHEN D.The CollaborativeFiltering Recommendation Algorithm Based on BPNeuralNetworks[C]//2009InternationalSymposium on Intelligent Ubiquitous Computing and Education,2009:234-236.
[3]TAO Y F,YI K,SHENG C,et al.Quality and Efficiency in High Dimens Ional Nearest Neighbor Search[C]//Proceedings of the 35th SIGMOD International Conference on Management of Data.Rhode Island,USA,2009:563-576.
[4]ADIBI P,LADANI B T.A Collaborative Filtering Recommender System Based on User’s Time Pattern Activity[C]//2013 5th Conference on Information and Knowledge Technology(IKT),2013:252-257.
[5]MITTAL N,NAYAK R,GOVILM C,et al.Recommender System Framework using ClusteringandCollaborative Filtering[C]//ThirdInternational Conference on Emerging Trends in Engineering and Technology,2010:555-558
[6]KIM J Y,JEONG D W,BAIK D-K.Ontology-based semantic recommendation system in home network environment[J].IEEE Transactions on Consumer Electronics,2009,55(3):1178-1184.
[7]HOSER B,HOTHO A,JASCHKE R,et al.Semantic Network Analysis of Ontologies[C]//Proceedings of ESWC 2006,LNCS 4011,Berlin:Spr-inger,2006:514-529.
[8]LEACOCK C,CHODOROW M.Word Net:An Electronic Lexical Database[M].MIT Press,1998:265-283.
[9]劉宏哲.文本語義相似度計算方法研究[D].北京:北京交通大學,2012.
[10]MASEH,OHWADAH.ACollaborativeFiltering Incorporating Hybrid-Clustering Technology[C]//International Conference on Systems and Informatics(ICSAI 2012),2012:2342-2346.
(責任編輯:黃月)
Personalized collaborative filtering algorithm based on auxiliary service ontology of civil aviation
LIU Haohan,MA Tengfei,HE Huaiqing
(College of Computer Science and Technology,CAUC,Tianjin 300300,China)
Personalized ontology-based collaborative filtering algorithm is proposed,aiming at the short-comings of traditional collaborative filtering algorithm such as data-sparsity and lack of reflection to the semantic relationship of item itself.The method adopts Jena inference engine and constructs association rules based on ontology inference rules,and inference results are used to update ontology and complete the interest rating information of tourist to reduce the sparsity of tourist interest rating.Then the ontology semantic similarity is introduced to compute and combine the similarity of semantics and the similarity of collaborative filtering algorithm,improving the accuracy of similarity calculation after adding semantic similarity computation between items.Experiments prove that the hybrid recommendation technology effectively improves its accuracy.
auxiliary service of civil aviation;Jena;semantic similarity;collaborative filtering
TP3911
A
1674-5590(2016)03-0042-05
2015-04-01;
2015-04-23基金項目:天津市應用基礎與前沿技術研究計劃重點項目(14JCZDJC32500);中國民航大學預研重大項目(3122013P003);中國民用航空局科技基金項目(MHRDZ201207)
劉浩翰(1966—),男,黑龍江富錦人,副教授,碩士,研究方向為民航信息智能處理.