喬冬春,劉曉燕,付曉東,曹存根
(1.昆明理工大學信息工程與自動化學院,昆明650500;
2.中國科學院計算技術研究所智能信息處理重點實驗室,北京100190)
一種基于本體的推薦系統(tǒng)模型
喬冬春1,劉曉燕1,付曉東1,曹存根2
(1.昆明理工大學信息工程與自動化學院,昆明650500;
2.中國科學院計算技術研究所智能信息處理重點實驗室,北京100190)
經典推薦系統(tǒng)主要根據用戶對項目的評價或者用戶與項目之間的關鍵字相似度進行推薦,存在信息結構化程度低、語義缺乏、信息利用不充分等問題。為此,提出一種基于本體的推薦系統(tǒng)模型。將本體引入到推薦系統(tǒng)中,使用OWL語言對用戶和項目信息進行描述,使用戶和項目具有語義信息的同時,提高信息的結構化描述水平。在推薦過程中,通過規(guī)則分析用戶行為信息并綜合考慮以提高模型的推薦質量。實驗結果證明,與傳統(tǒng)推薦模型相比,該模型在信息結構化水平、語義描述等方面具有優(yōu)勢。采用該模型為用戶推薦項目能夠有效提高推薦的召回率和準確率。
本體;協(xié)同過濾;基于內容推薦;混合推薦;Web本體語言;推薦系統(tǒng)
隨著網絡的發(fā)展,互聯(lián)網上的信息每天以指數級別在增長,如何個性化地為每個用戶服務是Web信息處理技術的主要發(fā)展趨勢之一[1]。當前,主要有基于協(xié)同過濾的系統(tǒng)、內容的推薦系統(tǒng)和混合推薦算法等[2-3],這些推薦系統(tǒng)在工業(yè)界得到了較好的應用和推廣。同時,也存在一些缺點:
(1)推薦內容多以關鍵字為計算項,不能夠表達出項目項和用戶項之間的語義信息[4];
(2)難以區(qū)分資源內容的品質和風格,質量難以保證,而且不能動態(tài)更新[5];
(3)資源內容結構化程度低,在資源利用和共享方面存在限制。
當前,本體已經成為知識工程中一個重要的工具,在知識獲取、表示、分析和應用等方面具有重要的意義:(1)本體研究促進知識工程中對本質知識的獲取;(2)本體研究促使顯式地表示出領域知識和領域假設;(3)本體研究使知識共享和知識重用成為可能[6]。為解決推薦系統(tǒng)中的語義缺乏、結構化程度低等問題,本文提出一種基于本體的推薦系統(tǒng)模型,該模型將本體引入到推薦系統(tǒng)中,將用戶和項目等資源信息采用本體的方式進行表示。
2.1 本體
本體論一詞早在l7世紀就已誕生,其派生于希臘語的onto(存在)和logia(箴言錄),是一個哲學術語。從哲學意義上看,本體論關注的是存在,即世界在本質上有什么樣的東西存在,或者世界存在哪些類別的實體[7]。在計算機界,尤其是知識工程界,人們對本體的認識和定義經歷了一個不斷深化的過程。不同于哲學中的本體論概念,計算機科學中的本體有自己特定的含義[6]。目前被大部分人公認的定義是1994年提出的本體概念:“本體是關于共享概念的一致約定。共享概念包括用來對領域知識進行建模的概念框架、需要互操作的主體之間用于交互的與內容相關的協(xié)議,以及用于表示特定領域理論的共同約定。在知識共享的情況下,本體的形式特化為具有代表性的詞匯的定義。一種最簡單的形式是一種層次結構,用來詳細描述類和它們之間的包含關系。關系數據庫的框架也是一種本體,它用來描述能共享的數據庫之間的關系和集成這些數據庫需遵循的約束”[8]。
本體論在Web上的應用導致了語義Web的誕生,其目的是解決Web上信息共享時的語義問題。語義Web被看作是當前本體論從學術研究走向實際應用的最重要的構想和研究計劃[7,9]。在推薦系統(tǒng)中引入本體的概念,可以有效解決結構化程度低、語義缺乏等諸多問題。
2.2 常用推薦模型
目前,常用的推薦方法有3種基本的推薦方法:協(xié)同過濾算法,基于內容的推薦算法和混合推薦算法[10]。每種推薦系統(tǒng)中均有其優(yōu)缺點,下面介紹各個推薦算法的基本原理。
2.2.1 協(xié)同過濾
協(xié)同過濾是目前最為流行的推薦方法,協(xié)同過濾分為基于用戶的協(xié)同過濾和基于項目的協(xié)同過濾[2],基于用戶的協(xié)同過濾原理是目標用戶會對與目標用戶相似的鄰居用戶喜歡的項目也感興趣。即存在用戶集合 User=(u1,u2,…,un)和項目集合Pro=(p1,p2,…,pn),在User集合中存在相似用戶大于閾值的用戶集,用函數Sim(ui,uj)表示ui和uj(1≤i,j≤n)具有的相似度。當ui對項目pk感興趣時,uj也會對pk感興趣?;陧椖康膮f(xié)同過濾原理是用戶對一個項目感興趣也會對該項目的鄰居項目感興趣,用函數Sim(pi,pj)表示項目pi和pj的相似度。當相似度大于閾值時,用戶訪問了項目pi對項目pj也會產生興趣。
目前,計算用戶、項目之間相似性的數據是M個用戶對N個項目訪問形成的M×N評價矩陣,Rik表示用戶i對于項目k的評分,用戶i和用戶j之間的相似度可以通過多種公式進行計算,下面介紹目前采用的主要公式:
余弦相似性[11]公式為:
其中,Iij是用戶I,j共同評分的項目集合(數量>1); Ri,k,Rj,k分別表示用戶i和用戶j對項目k的評分; Ii,Ij分別表示用戶 i和用戶 j各自評過分的項目集合。
由于在余弦相似性度量方法中沒有考慮不同用戶的評分尺度問題,修正的余弦相似性度量方法通過減去用戶對項目的平均評分來改善上述缺陷。則用戶i和用戶j之間的相似性為:
修正的余弦相似性方法在余弦相似性基礎上,減去了用戶對項目的平均評分,然而該方法更多體現(xiàn)的是用戶之間的相關性而非相似性。相關性和相似性是2個不同的概念,相似性反映的是聚合特點,而相關性反映的是組合特點。為了更好地得到用戶間的相似性,使用用戶對共同評分項目的評分進行計算,則用戶i和用戶j之間的相似性Sim(i,j)通過Pearson相關系數來度量的公式轉換為:
Pearson相關系數的取值范圍為:[-1,1]。在相似性計算中,為正值表示相似,正值越大越相似。
2.2.2 基于內容的推薦
基于內容的推薦模型主要通過計算用戶偏好項和項目描述項之間的相似性為用戶推薦候選項。在基于內容的推薦系統(tǒng)中,用戶偏好信息一般可以通過機器學習和用戶配置2種方法生成[3]。該模型可以通過公式描述為用戶配置集合Configure={c1, c2,…,cn}與項目屬性集合 Attribute={a1,a2,…, am}之間的相似性。當前,非常有名的計算方法是通過TF-IDF計算用戶偏好項和項目相似性的相似性計算。TF-IDF是計算詞在一組文檔中重要性的統(tǒng)計方法[5],用以評估一個字詞對于一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數成正比增加,但同時會隨著它在語料庫中出現(xiàn)的頻率成反比下降。
基于內容的推薦多采用關鍵字進行用戶配置與項目相似度的計算,與協(xié)同推薦一樣,都存在語義缺乏的問題,制約著推薦準確率的提高。為了解決這一問題,提出了基于本體的推薦算法。
2.2.3 混合推薦算法
混合推薦算法是指采用一種以上的基本推薦方法聯(lián)合推薦的方法。由于協(xié)同過濾、基于內容的推薦等推薦算法均具有各自的優(yōu)缺點,因此混合推薦算法可以采用各種推薦算法的優(yōu)點進行項目推薦。同時,由于混合推薦算法采用了多種推薦方法同時進行推薦,存在效率不高,各種推薦算法的權值難以優(yōu)化等問題。
基于本體的推薦算法將本體引入到推薦系統(tǒng)中,資源采用本體的方法進行描述,使資源結構化表示的同時具有了語義信息。推薦模型采用協(xié)同過濾與基于內容推薦模型中的基本思想,用戶聚類信息由采用用戶評分矩陣改為用戶偏好信息進行聚類,用戶偏好信息與項目信息的相似性采用屬性語義相似的計算方法。該推薦模型的整體結構如圖1所示,主要分為資源的本體描述、原始數據分析、項目推薦等功能模塊。通過各個功能模塊的協(xié)同工作,為用戶推薦用戶喜歡的項目。
圖1 基于本體的推薦系統(tǒng)模型
3.1 資源的本體描述
本體描述語言起源于歷史上人工智能領域對知識表示的研究,有多種語言和環(huán)境可以進行本體的描述等[7]。隨著Web網絡的發(fā)展,也有多種Web本體語言出現(xiàn),從應用范圍和標準出發(fā)。采用W3C推薦的Web本體語言(Ontology Web Language,OWL0語言進行描述,OWL通過類、屬性、個體、限制等內容描述資源信息。其存儲模式通過 <Subject, Predicate,Object>三元組進行存儲,通過上述相關元素,可以將資源進行結構化和語義的表示。
在該模型中,資源主要分為原始數據和分析數據2種資源信息。原始數據主要包括項目信息、用戶信息、用戶行為信息等不需要加工的信息。分析數據包括用戶行為分析規(guī)則、用戶偏好、用戶相似度、用戶與項目相似度等信息。各種數據的具體描述方法如下:
3.1.1 原始數據
原始數據不需要經過任何處理,通過本體的類、屬性、個體進行描述。即分為項目信息類、用戶信息類、用戶行為信息類。各個類下面具有相應的屬性信息和個體信息。
以新聞本體為例,描述本體描述的介紹:
上述內容為OWL文件中關于新聞本體類的定義,該內容定義了具有IRI地址為“http://www.reco.com/mf#新聞”的新聞本體類,該新聞本體類為項目本體的子類,并具有項目類的所有屬性。在OWL文件中,關于新聞本體的屬性描述如下所示:
上述OWL內容主要描述的是新聞本體具有新聞介紹和新聞時間等基本類型屬性和新聞事件、新聞人物、新聞事件等對象類型屬性?;绢愋蛯傩允侵副倔w的屬性取值范圍是整數、字符串等類型,對象類型屬性指本體的取值是其他類型的個體。
3.1.2 用戶偏好信息
在基于內容的推薦系統(tǒng)中,用戶偏好信息可以通過模式學習和用戶配置2種方法生成,在當前模型中,采用2種方法相結合的方式進行方法管理。即用戶首次配置,隨著用戶訪問記錄而動態(tài)更新的方式進行用戶偏好信息的管理。為了達到用戶項可以進行語義描述的目標,用戶偏好信息通過屬性、屬性值、權重三元組集Profile={<p1,v1,w1>,<p1, v2,w2>,…<pm,vn,wx>}來定義用戶的偏好信息。偏好信息隨著用戶訪問記錄的增多而更新。其具體更新方法由原始數據分析模塊進行處理。
3.1.3 用戶相似度信息
用戶相似度信息用于存儲用戶之間的相似性,系統(tǒng)中采用<用戶,相似用戶,相似度>三元組進行表示。3.1.4 用戶與項目相似度
用戶與項目相似度采用<用戶,項目,相似度>三元組進行表示。
3.2 原始數據分析
原始數據分析主要功能是在本體描述的基礎數據上進行分析處理。主要通過用戶的歷史訪問信息進行偏好度更新、用戶間相似度計算、用戶與項目相似度計算等功能。
3.2.1 偏好度更新
偏好度更新功能主要是通過分析用戶對項目的訪問歷史來更新用戶的偏好配置信息,偏好信息將按照下述步驟進行更新:
3.2.2 用戶間相似度計算
用戶間相似度的計算是根據用戶的偏好信息進行用戶聚類,該相似度是以基于用戶的協(xié)同過濾為基礎,采用用戶偏好信息為聚類數據,使系統(tǒng)可以根據該數據進行協(xié)同推薦。在根據愛好的用戶聚類中,將偏好信息看作項目信息,以基于用戶的余弦相似性進行用戶的聚類,在相同用戶訪問一個項目時,同時向同組用戶推薦該用戶的訪問項。用戶間相似度計算的主要過程如下:
3.2.3 用戶與項目相似度
由于用戶配置信息采用了具有語義信息的屬性作為偏好配置,在計算用戶配置信息和項目相似度計算時,采用基于屬性相似性的計算方法,該計算過程如下:
原始數據分析為項目推薦提供基礎數據支持,計算出的數據信息存入到本體中,并為項目推薦使用。
3.3 項目推薦
項目推薦功能根據用戶分析的數據,為用戶推薦用戶感興趣的項目,該功能主要由項目評分、項目過濾、項目推薦與展示等過程組成,下面詳細介紹各個功能過程。
項目評分:項目評分根據用戶相似信息和用戶與項目相似性的值進行該項目的評分。該評分為項目推薦的主要依據,該項目的評分算法如下:
項目過濾主要是將用戶訪問過的、根據法規(guī)等不適合推薦的項目過濾掉。該過程具體過程如下:
項目推薦與展示主要根據項目的依據項目評分和項目過濾后的推薦項進行選擇的推薦和展示,具體過程如下:
推薦模型根據上述描述的過程獲取推薦項,并根據推薦項為用戶提供個性服務,提高了用戶使用的體驗度,節(jié)省了用戶的查詢時間。
推薦系統(tǒng)的性能指標一般有推薦的精確度和推薦的效率,使用的指標有平均絕對誤差(Mean Absolute Error,MAE),均方根誤差(Root Mean Squared Error,RMSE)和相關性correlation。由于不同的研究工作針對不同的問題,使用不同的數據集,因此具體評測方法變化很大[12]。當前常用的數據有MovieLens,EachMovie,BookCrossing等數據集。
為了對推薦模型進行指標分析,以比較本體的推薦方法較傳統(tǒng)的推薦算法有哪些優(yōu)點,進行了相應的數據準備。采用具有悠久歷史的MovieLens進行實驗,分別采用1 000,10 000,100 000的數據量進行模型的測試。并分別從準確率、召回率、執(zhí)行時間等指標進行計算。如表1所示,雖然基于本體的推薦方法在執(zhí)行效率方面稍微低于傳統(tǒng)的推薦算法,但是其在召回率和準確率方面均較傳統(tǒng)的方法有較好的提高。
表1 準確率、召回率和執(zhí)行效率對比
本文將知識的本體表示方法引入到了傳統(tǒng)的推薦算法中,采用協(xié)同過濾和內容過濾兩者的基本思想,提出一種基于本體的推薦系統(tǒng)模型,解決了傳統(tǒng)推薦算法中存在的結構化程度低、語義缺乏等問題。該模型在準確率和召回率方面都優(yōu)于傳統(tǒng)的推薦系統(tǒng)。下一步工作主要是改進推薦模型的計算公式,以達到更高的準確率和召回率。
[1] 吳泓辰,王新軍,成 勇,等.基于協(xié)同過濾與劃分聚類的改進推薦算法[J].計算機研究與發(fā)展,2011,48(s3): 205-212.
[2] Schafer J B,Frankowski D,Herlocker J,et al.Evaluating Collaborative Filtering Recommender Systems[J].ACM Transactions on Information Systems,1999,22(1):5-53.
[3] Pazzani M J,Billsus D.Content-based Recommendation Systems[EB/OL].(2001-12-10).http://www.researchgate.net/publication/200121026_Content-Based_ Recommendation_Systems.
[4] Jntema W I,Goossen F.Ontology-Based News Recommendation[C]//Proceedings of EDBT Workshops.[S.l.]: ACM Press,2010.
[5] 曾 春,邢春曉,周立柱.個性化服務技術綜述[J].軟件學報,2002,13(10):1592-1601.
[6] 顧 芳.多學科領域本體的設計方法研究[D].北京:中國科學院計算技術研究所,2004.
[7] 李善平,尹 奇,胡玉杰,等.本體論研究綜述[J].計算機研究與發(fā)展,2004,41(7):1041-1052.
[8] Gruber T.Principles for the Design of Ontologies Used for KnowledgeSharing[EB/OL].(1994-02-20).http://ksl-web.stanford.edu/people/gruber/.
[9] Lee T B,Hendler J,Lassila O.The Semantic Web[J].Scientific American,2001,284(5):34-43.
[10] Goossen F,Jntema W I,Frasincar F.News Personalization Using the CF-IDF Semantic Recommender[EB/OL].(2011-07-26).http://repub.eur.nl/pub/31385/.
[11] Sarwar B,KarypisG,Konstan J,etal.Item-based Collaborative Filtering Recommendation Algorithms[C]// Proceedings of the 10th International Conference on World Wide Web.New York,USA:ACM Press,2001:285-295.
[12] 許海玲,吳 瀟,李曉東,等.互聯(lián)網推薦系統(tǒng)比較研究[J].軟件學報,2009,20(2):350-362.
編輯 顧逸斐
An Ontology-based Recommendation System Model
QIAO Dongchun1,LIU Xiaoyan1,FU Xiaodong1,CAO Cungen2
(1.Faculty of Information Engineering and Automation,Kunming University of Science and Technology, Kunming 650500,China;2.Key Laboratory of Intelligent Information Processing, Institute of Computing Technology,Chinese Academy of Sciences,Beijing 100190,China)
The classic recommendation system is mainly based on the users for the project evaluation or the keywords similarity between the user and the item for recommendation,there is a low degree of information structure,lack of semantic and other issues.To solve these problems,this paper proposes an ontology-based recommender system model.This model uses OWL language describe the user and project information by introducing ontology to bear more semantic information and improve the degree of information structure.In the recommendation process,the results of analyzing user behavior information by rules is considered for improve the quality of recommendation.Experimental results show that the model has better effect in degree of information structure and semantics.It can effectively improve the recall and precision rates by using this model for recommendation.
ontology;collaborative filtering;content-based recommendation;hybrid recommendation;Ontology Web Language(OWL);recommendation system
1000-3428(2014)11-0282-06
A
TP39
10.3969/j.issn.1000-3428.2014.11.056
國家自然科學基金資助項目(61173063,10AYY003,71161015)。
喬冬春(1984-),男,碩士研究生,主研方向:軟件工程,知識處理;劉曉燕,副教授;付曉東,教授、博士;曹存根,研究員。
2013-10-28
2013-12-20E-mail:103242266@qq.com
中文引用格式:喬冬春,劉曉燕,付曉東,等.一種基于本體的推薦系統(tǒng)模型[J].計算機工程,2014,40(11): 282-287.
英文引用格式:Qiao Dongchun,Liu Xiaoyan,Fu Xiaodong,et al.An Ontology-based Recommendation System Model[J].Computer Engineering,2014,40(11):282-287.