喬 雨,李玲娟
(南京郵電大學 計算機學院,江蘇 南京 210003)
互聯網的快速發展使人們能夠快速、便捷、低成本地制造和接收信息。雖然網絡帶來了極大的便利,但隨之而來的信息超載問題使得如何從這些海量的數據中快速、準確地獲取有用信息成為研究熱點[1]。目前解決信息超載的方法主要分為兩種:一種是利用用戶主動檢索的關鍵詞進行篩選,過濾掉多余的信息,這種方法即為搜索引擎,它在幫助用戶獲取所需的網絡信息方面發揮著極其重要的作用,如Google、Baidu等。另一種則是從系統本身出發,根據用戶已有的信息分析出用戶的需求,采用適當算法進行計算處理,并將用戶可能感興趣的信息推薦給用戶,此方法即為個性化推薦系統。一個好的推薦系統不僅能為用戶提供個性化服務,還能與用戶建立密切關系,讓用戶對推薦產生依賴[2],這也成為解決信息超載一種非常有潛力的方式。這兩種方式在底層技術設計上有大量類似的地方,但是在相應的用戶需求和應用場景上,推薦系統離用戶更進一步。
推薦系統的概念提出后,在電子商務、電影音樂推薦等方面得到了廣泛的應用,學術界也成立了關于推薦系統的主題會議,其應用與研究的核心都圍繞推薦算法在應用過程中的性能優化。根據推薦算法的不同,目前推薦系統分為基于規則(rule-based)的推薦系統、基于內容(content-based)的推薦系統、協同過濾(collaborative filtering)推薦系統[3]。其中協同過濾推薦系統是應用最廣泛、最成功的推薦系統[4],然而該算法需要使用大量的用戶行為信息作為計算依據,因此對于新用戶、新物品以及新系統該類算法存在明顯的不足之處,因此需要研究出針對冷啟動狀態下的算法。文中對該領域的研究進展和發展趨勢進行了總結與分析,為后續研究提供參考。
協同過濾推薦系統的流程如圖1所示。根據用戶的基本信息與歷史行為信息,分析出用戶的行為偏好;根據物品的基本信息與被評價的信息提取物品的特征,再將用戶的偏好信息與物品的特征信息進行適配,選取處理結果匹配度最高的Top-N個物品,并將其推薦給用戶。

圖1 推薦系統模型流程
協同過濾推薦算法在缺少數據或者數據稀疏的情況下推薦效果急劇下降,這是由于算法無法利用足夠的信息進行用戶行為分析,因此無法產生準確的推薦效果。表1為用戶-項目評分事例(評分范圍為1~5分),“-”表示沒有評分。

表1 用戶對項目的評分事例
該表中描述了6個用戶(User1,User2,User3,User4,User5,User6)對4個物品(Item1,Item2,Item3,Item4)的評分信息。系統根據用戶已評分信息,可以分析出User1,User5與User6具有相似的喜好,因為他們對Item1,Item2和Item4有著極為相似的評分,那么系統會推薦Item5給User6,因為與User6偏好相似的User1與User5均對Item5的評分較高。同時,User2作為新用戶進入系統而不具有歷史評分信息,因此就無法根據協同過濾推薦算法的原理分析出User2的行為偏好;而從物品的角度看,Item3作為新項目存在于系統中,因缺少評分信息導致系統無法感知它的存在,所以Item3也就無法被推薦出去。這就形成了協同過濾推薦系統中的冷啟動問題。
(1)新用戶冷啟動:假設新用戶u1進入該模型,由于u1不完善的個人信息與行為信息,因此系統不能通過模型分析u1的偏好,推薦系統也就無法利用推薦算法向該用戶推薦其可能喜歡的物品。這種現象被稱為新用戶的冷啟動問題。
(2)新物品冷啟動:假設新物品i1進入該模型,由于i1沒有被用戶評價的信息,導致評分數據的稀少,系統不能建立更詳細的特征信息表,也就不能將其與用戶的喜好進行很好的匹配,因此新物品i1被推薦的概率就大大減少。這種現象稱為新物品的冷啟動問題。
(3)新系統冷啟動:可以將其理解為(1)、(2)的一種特殊情況,即所有的用戶、項目對于系統來說都是新的,一個全新的系統無法產生相應的推薦即為新系統的冷啟動問題。
在基于協同過濾和基于矩陣分解的推薦算法中,冷啟動問題表現得尤為明顯,而這兩種算法在推薦系統中應用最為廣泛,因此解決推薦系統的冷啟動問題也就更有必要。目前解決冷啟動問題效果較好的有混合推薦、融和其他數據源、動態情景敏感策略等方式。以下就是否考慮冷啟動問題類型的解決策略進行描述與分析。
在推薦系統的發展過程中,隨著推薦精度的不斷提高,算法的復雜程度也越來越高。在不考慮冷啟動類型的情況下,通常采用的策略有隨機推薦策略、數值策略、基于上下文推薦等。
2.1.1 隨機推薦策略
隨機推薦策略是實際推薦系統應用中最簡單直觀的方法,即無論是否為新用戶或新物品,系統都采取隨機推薦的方式,再根據推薦后的反饋來了解用戶的興趣偏好以及新項目被哪些用戶群所喜歡。這種策略的覆蓋率較廣,但準確率較低。長期來看,隨機推薦策略的準確率不會超過50%,這會使得用戶對推薦系統不滿意,而導致信任度的降低[4]。
2.1.2 常用數值策略
推薦系統中常用的數值類方法包括平均值策略、流行度策略、信息熵法等。
(1)平均值策略:選取所有項目的評分均值對原始評分矩陣進行填充,然后再根據填充后的評分矩陣利用協同過濾的算法產生推薦。該方法采用統一的數據對矩陣進行填充,即認為用戶對物品的喜愛程度均一致,這種情況在實際情況中的概率是非常小的,不符合個性化推薦的原則。因此有文獻提出以平均喜好為軸,個人的實際興趣偏好圍繞此軸上下波動的預測模式[5],這種方式雖然考慮了個體評分的差異性,但是繞均值上下波動的幅度在進行矩陣填充時是很難把握的,因此這種方法并不能夠很好地解決均值法在推薦應用中的個體差異性問題。
(2)流行度策略:指采用所有用戶評價過的最多的評分值作為對未評分項目的預測評分值。這種策略是出于考慮目標用戶可能喜歡絕大多數用戶都喜歡的項目,但是該思路只能是從統計學的角度說明預測準確的概率高于不準確的概率[6]。存在這樣的情況:某些用戶具有較小眾的喜好,其興趣偏好與大多數人的興趣愛好存在較大的差異性,那么對于這類用戶來說,采用眾數法進行預測時不僅誤差較大,有時甚至是相反的預測,因此眾數法在某種程度上存在著較大的漏洞。
(3)信息熵策略:信息熵方法實際上也是一種均值策略,它是利用系統中已被評價的項目信息,利用一定的計算方法求出這些項目的信息熵,并對這些信息熵的值進行排序,采用信息熵大的項目評價值作為對待評分項目的預測依據,最后將目標用戶在這些物品上的平均預測值作為該用戶對新物品的預測評分[7]。文獻[8]是以整個數據集的評分均值劃分好評與差評,計算出的結果具有一定的絕對性,忽略了個體特征的差異性;文獻[9]是以各項評分均值作為劃分依據,這類似于決策樹學習中通過信息的增益來選擇分類屬性,雖然考慮到了特征屬性的影響因子,但是仍然沒有達到推薦的個性化要求。在實際研究中也會對熵策略進行改進,比如文獻[10]對缺失值的改進熵進行預測評分。
上述方法只是在整體上緩解了冷啟動問題,并且以犧牲用戶的個性化需求為代價。為了提高推薦的準確性,很多文獻給出了針對冷啟動問題類型的解決策略,主要分為混合使用多種算法、融合多種數據源、考慮動態的情景推薦等策略。
2.2.1 混合推薦算法
混合算法通過考慮各種推薦算法的特點,根據各自優劣,融合不同的思想形成新的算法[11],在實際應用中證明混合使用多種推薦技術對提升推薦效果、改善推薦系統的性能等方面都有著重要意義。
在新用戶冷啟動方面,文獻[12]通過對已有用戶的新聞點擊行為進行信息記錄,從而提取用戶在不同環境中的上下文情景信息,并且利用興趣分類的方法構建出決策樹分類模型;即當新用戶到達時,獲取該用戶在當前環境中所帶有的上下文信息,并將其與決策樹模型進行匹配,以此來預測新用戶的新聞瀏覽興趣,進而完成新聞推薦。文獻[13-14]提出了基于原始評分矩陣擴充的方法,該方法是將用戶的人口統計信息和項目的內容特征信息擴充到原始的用戶-項目評分矩陣中,使得矩陣的行和列有所增加,從而形成新的評分矩陣,并在新的評分矩陣上應用協同過濾推薦算法。這樣即使新用戶或新項目不存在歷史行為信息,其新的擴充矩陣中數據也是存在的,因此可以繼續利用新的評分矩陣計算相似鄰居并產生推薦,從而避免了新用戶或者新項目帶來的冷啟動問題;該方法是目前解決冷啟動問題研究的方向性方法。
在新項目冷啟動方面,文獻[15]提出了LCE(local collective embeddings)算法,融合項目內容信息與用戶歷史行為信息進行統一矩陣分解,結合了矩陣分解的預測準確性與項目內容的屬性信息來克服項目冷啟動問題。文獻[16]混合了內容過濾方法和協同過濾方法,為項目信息文件進行虛擬分配,從而對內容進行篩選,在此基礎上利用協同過濾產生推薦。文獻[17]提出一種基于兩階段聚類的推薦算法,將基于圖摘要的方法與基于內容相似度的算法相結合,實現以用戶興趣為主題的推薦;實驗證明該方法在稀疏數據和冷啟動的情況下具有更好的推薦效果,并且利用離線處理大量數據集的方式,使其具有更好的在線推薦效率。
2.2.2 融合其他數據源算法
常用的推薦算法都有各自依賴的數據源,例如協同過濾推薦算法需要用戶對項目的評分信息,基于內容的推薦算法需要項目的特征信息等。從混合使用算法的角度出發,不難理解融合了多種數據源的方式也有助于解決冷啟動問題。
因此通過引入用戶社會關系信息,幫助建立新用戶特征模型,在一定程度上緩解新用戶的冷啟動問題。例如,文獻[18-19]融合了用戶評論與評分數據,利用主題模型生成評論主題的分布,再根據評分數據生成評論態度影響因子,通過評論態度影響因子來放大評論主題分布中的突出特征,建立更為準確的用戶偏好與物品特征,進而進行評分預測與物品推薦。文獻[20]在協同過濾算法中引入用戶的人口統計學信息以及社會網絡信息(包括性別、年齡、社交軟件中的好友等),結果證明了社交網絡內容的巨大預測能力,以及其在冷啟動用戶的推薦方面顯著的作用。文獻[21]則利用了Web日志信息中的用戶瀏覽路徑,針對用戶的瀏覽行為,特別是與來自其他領域的訪問相關的行為(這在之前的研究中已經被忽略),該文獻使用從Yahoo News的大型視圖中提取出群體瀏覽記錄,跟蹤構建出一個BrowseGraph(瀏覽視圖),并將ReferrerGraph(指向視圖)定義為由具有相同引用域的會話引發的子圖,該子圖的結構和時間屬性展示了用戶瀏覽的內容及瀏覽的時間等行為是高度依賴于會話的引用路徑的,因此在這個觀察的基礎上,提出了一個解決新聞系統中冷啟動問題的推薦器。
2.2.3 動態情景敏感策略
情景敏感推薦系統(CARS)是近年來推薦系統研究的熱點[22],情景也稱為上下文(context),指的是利用用戶模型中的額外信息(如位置、時間、天氣等)來提高推薦系統的準確度與實時性[23]。
動態情景策略通過算法感知當前狀態(如新用戶或新物品),從而選擇適合此情景的最佳項目進行推薦。文獻[24]提出了構建“元情景”(meta-context)的策略,即對不同情景策略進行組合形成預設情景,在此基礎上劃分出“元情景”。這種思路類似于選取具有一定特征的項目組成種子集,通過讓新用戶對這些種子集的評分分析用戶的喜好;而“元情景”是根據新用戶與推薦系統交互產生的實時反饋信息,選擇相對合適的情景作為新用戶可能感興趣的推薦,此方法與評價種子集的方法相比能更主動地了解用戶、服務用戶。文獻[25]開發了一個交互式推薦系統,系統根據用戶行為的變化能夠動態地自適應,從而去匹配與用戶最相近的情景,產生合適的推薦結果。算法的獨特之處是包含了一個“情景變化偵測器”,用來感知用戶行為的變化,一旦檢測到用戶行為發生重大改變時,如從某一分類的查看切換到另一種類的搜索,系統就會優先采用用戶最新行為信息來重建情景模型,產生新的推薦,這樣使得推薦更加即時化、智能化。
算法比較如表2所示。

表2 算法比較
推薦系統是大數據背景下最能滿足用戶個性化需求的信息服務工具,吸引了眾多科技公司及研究學者的研究,國內外也專門成立了推薦系統方面的學術交流會議,如ACM RecSys等,其會議內容反映了推薦系統的前沿和熱點,但同時也指出了推薦系統發展的重點與難點。綜合來看,通過機器學習等方法對推薦系統中的新用戶和新項目進行集中預處理,研究出既適用于冷啟動問題情景又適用于一般用戶、項目的推薦方法是當前研究的主體思路;而基于多種方法混合、多種數據源融合的混合推薦將是未來推薦系統研究的主要方向。
在不斷提高推薦精度的同時,推薦技術也面臨著很多挑戰,主要包括在融合用戶個人信息數據源的過程中如何確定和量化用戶屬性信息,如何做好個人信息的隱私保護工作以及推薦系統的效用評價,這也是未來推薦系統健康發展過程中需要著重關注的地方。
[1] 朱郁筱,呂琳媛.推薦系統評價指標綜述[J].電子科技大學學報,2012,41(2):163-175.
[2] 王國霞,劉賀平.個性化推薦系統綜述[J].計算機工程與應用,2012,48(7):66-76.
[3] 孟祥武,劉樹棟,張玉潔,等.社會化推薦系統研究[J].軟件學報,2015,26(6):1356-1372.
[4] GHAZANFAR M A,PRUGELBENNETT A.A scalable,accurate hybrid recommender system[C]//Third international conference on knowledge discovery and data mining.Phuket:IEEE Computer Society,2010:94-98.
[5] GRECO G,GRECO S,ZUMPANO E.Collaborative filtering supporting Web site navigation[J].AI Communications,2004,17(3):155-166.
[6] 郭弘毅,劉功申,蘇 波,等.融合社區結構和興趣聚類的協同過濾推薦算法[J].計算機研究與發展,2016,53(8):1664-1672.
[7] 孫少華.協同過濾系統的稀疏性與冷啟動問題研究[D].杭州:浙江大學,2005.
[8] BOBADILLA J,ORTEGA F,HERNANDO A,et al.Recommender systems survey[J].Knowledge-Based Systems,2013,46(1):109-132.
[9] LEMPEL R,KOREN Y.On bootstrapping recommender systems[C]//Proceedings of ACM international conference on information & knowledge management.New York:ACM,2010:1805-1808.
[10] 景民昌,張 芹,唐弟官.協同過濾系統中基于種子集評分的新用戶冷啟動推薦研究[J].圖書情報工作,2013,57(5):124-128.
[11] RASHID A M, ALBERT I,COSLEY D,et al.Getting to know you:learning new user preferences in recommender systems[C]//Proceedings of the 7th international conference on intelligent user interfaces.New York:ACM,2002:127-134.
[12] 楊秀梅,孫 詠,王美吉,等.新聞推薦系統中用戶冷啟動問題的研究[J].小型微型計算機系統,2016,37(3):479-482.
[13] 楊 陽,向 陽,熊 磊.基于矩陣分解與用戶近鄰模型的協同過濾推薦算法[J].計算機應用,2012,32(2):395-398.
[14] 張 川.基于矩陣分解的協同過濾推薦算法研究[D].長春:吉林大學,2013.
[15] SAVESKI M,MANTRACH A.Item cold-start recommendations: learning local collective embeddings[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:89-96.
[16] LIU H S,GOYAL A,WALKER T,et al.Improving the discriminative power of inferred content information using segmented virtual profile[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:97-104.
[17] 陳克寒,韓盼盼,吳 健.基于用戶聚類的異構社交網絡推薦算法[J].計算機學報,2013,36(2):349-359.
[18] LING G,LYU M R,KING I.Ratings meet reviews,a combined approach to recommend[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:105-112.
[19] 楊興耀,于 炯,吐爾根·依布拉音,等.融合奇異性和擴散過程的協同過濾模型[J].軟件學報,2013,24(8):1868-1884.
[20] SEDHAIN S,SANNER S,BRAZIUNAS D,et al.Social collaborative filtering for cold-start recommendations[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:345-348.
[21] TREVISIOL M,AIELLO L M,SCHIFANELLA R,et al.Cold-start news recommendation with domain-d pendent browse graph[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:81-88.
[22] ADOMAVICIUS G,TUZHILIN A.Context-aware recommender systems[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:335-336.
[23] 景民昌.從ACM RecSys'2014國際會議看推薦系統的熱點和發展[J].現代情報,2015,35(4):41-45.
[24] TANG Liang,JIANG Yexi,LI Lei,et al.Ensemble contextual bandits for personalized recommendation[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:73-80.
[25] HARIRI N,MOBASHER B,BURKE R.Context adaptation in interactive recommender systems[C]//Proceedings of the 8th ACM conference on recommender systems.New York:ACM,2014:40-48.