官术网_书友最值得收藏!

1.2 個性化推薦系統概述

直到20世紀90年代末,個性化推薦系統才作為一個獨立的研究領域被提出來,隨著Web技術的發展和成熟,推薦系統在網絡上的應用也蓬勃發展,國內外學術界對推薦系統的相關研究很多,最有影響力的個性化服務系統是由Stanford大學提出的協同推薦系統。2000年以來,在個性化服務相關技術逐漸成為國內的研究熱點,很多國內學者和研究機構已經開發出了一些原型系統,某些網站也推出了簡單的個性化推薦服務的功能。openBookinark是清華大學推出的一個混合推薦系統,它的混合推薦是通過集中管理用戶群的Bookmark來實現的;DOLTRIAgent系統由南京大學潘金貴等人設計,該系統實現了個性化信息檢索智能體;由上海理工大學的陳世平等研究和開發的個性化智能檢索系統MySpy利用輔助詞典、同義詞詞典和蘊涵詞詞典來實現基于智能代理的信息過濾和個性化服務,對查詢詞進行概念擴展,并給用戶返回與查詢需求相似的文檔;萬方數據開發的iLib系統擁有針對相似資源推薦的功能,該功能可以推薦與用戶當前訪問的文獻資源具有高相似性的其他資源;中國期刊全文數據庫(CNKI),不僅可以提供相似資源的推薦,還可以根據科技學術文獻的被引文獻、同作者文獻等引用信息進行推薦。推薦系統涉及的領域廣泛,包括信息管理、信息集成、數據挖掘、知識管理、信息檢索、預測方法等。根據推薦系統的使用方法不同,可以將推薦系統分為以下幾類:

(1)基于規則的推薦方法,使用if-then的形式定義知識規則。如,在WebSphere Personalization Solution中,可以定義“規則”使不同的內容顯示給特定的用戶。Broadvision使用專家規則(Expert Rules)來實現個性化商務服務[6]

(2)協同過濾推薦方法[7]通過最近鄰(具有相似興趣的用戶)或相似項目(相似度最高的項目)的意見或評分來預測某用戶對某項目的意見或評分。協同過濾系統已經得到廣泛應用,并取得了巨大成功。其推薦過程可以分為兩步:一是利用用戶的歷史信息或待推薦項目的評分信息計算用戶或項目之間的相似程度;二是利用與目標用戶或目標項目有相似程度較高的用戶或項目的評分(評價)信息來估計目標用戶目標項目的偏好程度,系統根據這一偏好程度來對目標用戶進行推薦。協同過濾推薦系統的核心是根據用戶和項目間的評分或評價信息來產生“用戶-項目”矩陣,當新用戶出現在系統中的時候,還沒有對任何項目進行評分,系統無法挖掘用戶的偏好,因此系統無法使用協同過濾推薦一類的方法給新用戶提供準確的推薦服務;同樣,新的項目在推薦系統中出現的時候,還沒有任何用戶對該新項目進行評分,而協同過濾系統必須完全依靠評分或評價信息進行推薦,所以直到新加入的項目被一部分用戶評價,系統根據這些信息才有可能產生針對此項目的推薦。很多研究稱此問題為冷啟動問題,現在有很多方法在一定程度上解決了這個問題,例如利用啟發式算法度量用戶之間的相似性或者在“用戶-項目”矩陣中提前加入偽打分信息。另一個問題是,在任一實際應用的推薦系統中,通常已經評分項目的數量很少,從這些少數的項目中很難產生準確的推薦,這個問題稱為稀疏問題,可以用輔助信息獲取和信息擴散方法解決該問題,另外一個解決方法就是在計算相似性的時候可以使用用戶配置文件(User Profiles)中的歷史記錄,而不僅僅考慮對商品的評分。面對日益增多的用戶,雖然協同過濾推薦算法能利用最新的用戶評價為用戶產生及時的、相對準確的推薦,但是隨著系統中用戶和項目數量的急劇增加,用于發現用戶的“最近鄰”(相似用戶)和待推薦項目的“最相似項目”算法的計算量也大大增加,對于擁有上百萬用戶的系統,算法通常會遇到擴展性瓶頸問題,嚴重的會直接影響到推薦服務的實時性和準確性,如何適應系統規模不斷擴大的問題成為制約系統實現的重要因素,該問題稱為擴展性問題。目前解決擴展性問題的主要方法是通過機器學習提前進行訓練,這種方式被稱為基于模型的協同過濾算法,雖然基于模型的算法在一定程度上解決了擴展性問題,但是由于模型的學習過程以及模型的更新過程,在算法的及時性和最新信息的利用率上該算法要差些,同時該算法的準確性也不及協同過濾算法。所以該算法僅適用于用戶偏好較穩定的情況。基于協同過濾的推薦系統包括Tapestry[8]、GroupLens Project[9]、WebWatcher[10]等。

(3)基于內容的推薦方法通過分析項目的內容和描述來確定用戶的興趣[11]。基于內容的推薦方法來源于信息過濾,其中有很多方法都是相似的。所謂“內容”,可以包括網上各種形式的數據,可以是網頁、多媒體、數據項、電子商品、用戶行為記錄和服務器日志等。基于內容的推薦方法擺脫了用戶對項目的評分信息的依賴,它利用用戶瀏覽或查詢的項目的具體內容信息來建立用戶和項目之間關系,然后產生相應的推薦。基于內容的推薦系統需要對用戶和產品分別建立描述文件,借助數據挖掘或機器學習方法對用戶已經購買、瀏覽或查詢過的內容進行分析,據此建立或更新用戶的興趣描述文件。通過用戶與項目興趣描述文件之間相關程度的比較,最終將與用戶興趣描述文件最相似的項目推薦給用戶。基于內容的推薦方法所用到的信息獲取和信息過濾是算法的核心技術,在基于內容的推薦系統中,用戶或項目描述文件中的特征需要被計算機識別并提取,但是圖形、視頻、聲音文件等多媒體數據在特征提取的時候存在一定的困難。同時,由于語義信息的缺乏,可能造成同一個特征詞同時存在于兩個不同的項目描述文件中,算法根據這個特征詞無法區分兩個項目的不同,這類問題需要加入語義信息等工具來解決。另外,基于內容的推薦算法中用戶得到的推薦項目是那些只與用戶的描述文件相關度較高的項目,推薦的結果是與用戶之前偏好項目相似的項目集,推薦的內容會被局限在一個特定的范圍內,無法保證推薦的多樣性。現有的基于內容的推薦系統包括ELFI[12]、CiteSeer[13]、Personal WebWatcher[14]等。

(4)基于網絡結構的推薦算法把用戶和項目看成抽象的節點,將用戶與項目之間的關系抽象成鏈接節點的邊,算法利用的信息都隱含在用戶和項目組成的“用戶-項目”網絡之中,該算法的核心是要建立用戶商品二部圖關聯網絡。基于網絡結構的推薦算法同樣受到冷啟動問題的制約,新用戶或新項目出現在系統時沒有任何選擇或被選信息,用戶與項目的關系網絡無法建立,推薦結果也就無從產生,如果考慮新用戶或項目的描述文件中的內容或者利用啟發式算法可以在一定程度上解決此問題。當用戶興趣更新時,需要重新遍歷“用戶-項目”才能得到新的推薦結果,導致推薦算法的效率降低。另外一個值得關注的問題是如何在基于網絡的推薦中加入歷史時間的影響。

以上幾種方法所使用的關鍵技術如表1.1所示。

表1.1 推薦算法關鍵技術

上述的推薦算法都面臨著一些共性的問題。例如,當新用戶和新項目加入、用戶最新動態更新的時候,用戶和項目的信息需要進行動態更新,如果每次更新后都需要重新計算,將耗費巨大的時間和計算資源,因此需要定期進行脫機計算,使系統的在線服務盡量不受影響。另外一種解決方法是設計某種近似的動態算法,每次針對局部更新結果改變原來的算法結果,避免不必要的完全重新計算。上述各種推薦方法都有優缺點,所以有很多研究采用混合推薦策略取長補短,其做法是首先選擇兩個或多個推薦方法產生一個推薦預測結果集,之后通過某種方法對結果進行組合后反饋給用戶。另外,針對推薦系統已經有很多評價指標被提出來,包括準確率、召回率、平均打分值、商品平均度、差異性等。在不同領域應用的推薦系統使用不同的評價指標得到的結果是不同的,利用不同數據集產生的推薦結果也是不一樣的,因此推薦系統研究的另一個重要問題是如何選擇合適的評價指標對推薦效果進行評判。

目前,在語義網環境下建立能夠處理語義知識的個性化推薦系統已經成為該領域的熱點問題,基于萬維網創始人Tim Berners-Lee提出的語義網的概念,個性化推薦系統除了要能夠根據用戶和項目的評分和內容信息進行推薦,同時還要能夠根據其中隱含的語義信息進行推薦。例如,通過給某個用戶的興趣加以語義標注,就能夠區分“JAVA”這個興趣是屬于“計算機語言”還是“地理信息”。借助語義信息的推理,推薦系統還能夠對用戶的興趣和資源的描述進行適當的擴展,發現用戶興趣中的隱含概念,豐富用戶的興趣信息,進而改善推薦結果。相關研究包括Szomszor M研究了如何利用語義網環境下的語義信息進行電影推薦[15]; Schickel-Zuber V等提出了一種可應用在推薦系統中的本體學習方法[16];清華大學的梁邦勇等人提出了基于語義的網頁推薦模型[17];董兵、吳秀玲對個性化知識推薦系統的語義擴展問題進行了研究[18]

綜上所述,雖然基于語義的個性化推薦系統已經成為該領域的主要研究方向之一,但是相關研究比較少,尚處于起步階段,而且在推薦系統中存在大量模糊概念沒有受到足夠的關注,如用戶對于資源的偏好程度,資源與某個概念的關聯程度,以及熱門資源、受歡迎資源等都是模糊概念。建立能夠處理模糊語義信息的個性化推薦系統不僅可以提高推薦系統的效率,還能改善用戶體驗,增強推薦系統對用戶興趣和資源描述的表達能力。

主站蜘蛛池模板: 米泉市| 叶城县| 枣阳市| 彰化县| 保康县| 河北区| 大丰市| 雅安市| 介休市| 祁门县| 罗甸县| 临夏县| 无锡市| 临漳县| 乐安县| 和平县| 曲麻莱县| 鄂托克前旗| 丁青县| 和龙市| 资中县| 策勒县| 华坪县| 筠连县| 左贡县| 佛山市| 崇阳县| 江山市| 南阳市| 金寨县| 汾阳市| 金平| 铜梁县| 平顶山市| 普陀区| 玉门市| 德格县| 巩义市| 富川| 弥渡县| 宁国市|