推薦系統(推薦信 System或Recommender System,簡稱RS)是一種信息過濾系統,用于預測用戶對物品的評分或偏好,被廣泛應用于電子商務、社交網絡、數字化圖書館、教育、在線媒體等領域。推薦系統的主要作用就是幫助用戶從海量信息中快速找到自己喜歡和感興趣的內容,提高用戶的滿意度和忠誠度,同時也可以幫助企業提高銷售額和用戶留存率。
推薦系統始于20世紀90年代初,1992年,Belkin(貝爾金)和Croft(克勞福特)對信息過濾和信息檢索的研究奠定了推薦系統的理論基礎。隨著1996年Net Perceptions公司的成立,推薦技術逐步商業化。2007年,在明尼蘇達大學舉辦了首屆ACM推薦系統會議(ACM RecSys),標志著學術研究和實際應用在推薦系統領域的融合。自2016年起,深度學習技術在推薦系統中的應用引起了廣泛關注,推動了該領域的快速發展。同時,對用戶隱私和數據安全的重視日益增強,促進了隱私保護技術的應用。
從結構上看,推薦系統一般由用戶建模模塊、推薦對象建模模塊和推薦算法模塊組成。主流的推薦算法有協同過濾推薦、基于內容的推薦、基于知識的推薦、基于社交網絡的推薦和混合推薦等。盡管推薦系統在解決信息過濾問題方面取得了較大成就,但其仍面臨數據稀疏性、冷啟動、可擴展性和用戶興趣漂移等問題。未來推薦系統的發展趨勢可能集中于個性化與精準化增強、多維度與上下文信息的整合、多領域應用拓展、技術融合與創新和數據隱私與安全保護等方面。
定義
截至2024年,推薦系統已經歷了20多年的發展,但是仍沒有一個精確的定義。被廣泛接受的推薦系統定義是Resnick(雷斯尼克)和Varian(瓦里安醫療系統)在1997年給出的:“推薦系統是利用電子商務網站向客戶提供商品信息和建議,幫助用戶決定應該購買什么產品,模擬銷售人員幫助客戶完成購買過程。”推薦系統的形式化定義如下:
設是所有用戶的集合,是所有可以推薦給用戶的項目的集合。實際上,和集合的規模通常很大,如上百萬的顧客以及上億種歌曲等。設效用函數可以計算項目對用戶的推薦度(如提供商的可靠性(vendor reliability)和產品的可得性(product availability)等),即 ,是一定范圍內的全序的非負實數,推薦要研究的問題就是找到推薦度最大的那些項目如下式:
其是一種自動聯系用戶和物品的工具,它能夠在信息過載的環境中幫助用戶發現令他們感興趣的信息,也能夠將信息推送給感興趣的用戶。
發展歷程
起源階段
推薦系統的根源最早可追溯到認知科學、近似理論、信息檢索、管理科學等領域的研究,自20世紀90年代初期第一個推薦系統Tapestry提出以來,推薦系統開始成為一個獨立的研究領域,并一直保持著較高的研究熱度。
1992年,Belkin(貝爾金)和Croft(克勞福特)對信息過濾和信息檢索進行了深入的分析與比較,奠定了推薦系統的理論基礎。信息檢索作為搜索引擎的核心技術,而推薦系統則主要基于信息過濾技術。同年,Goldberg(戈爾德堡)等人提出了Tapestry系統,這是第一個通過人工評估進行的協同過濾的信息過濾系統,為后來推薦系統的發展奠定了基礎。
在Tapestry系統的啟發下,來自麻省理工學院(MIT)和明尼蘇達大學(UMN)的研究人員開發了名為GroupLens的新聞推薦服務,這一服務的核心組件是用戶-用戶協同過濾模型。同時,明尼蘇達大學的John Riedl(約翰·里德)教授成立了同名的GroupLens研究實驗室,成為推薦系統研究的先驅。
在音樂和視頻領域,類似的推薦技術也得到了廣泛應用。例如,Ringo系統應用于音樂推薦,而Video Recommender則專注于視頻推薦。這些實踐不僅證明了推薦技術在不同領域的應用價值,也為推薦系統的發展提供了豐富的實踐經驗。
商業化階段
隨著電子商務的興起,業界開始意識到推薦技術的商業價值。1996年,專注于提供營銷推薦引擎的Net Perceptions公司成立,其客戶包括亞馬遜(亞馬遜網站)、百思買(Best Buy)和杰西潘尼(J.C. Penney)等知名電商企業。同年,Schafer(謝弗)等人解釋了推薦系統如何通過分析界面、推薦模型和用戶輸入等三個方面來幫助電商網站增加銷售額。這標志著學術研究和實際應用在該領域的融合,共同推動了推薦系統的進一步發展。
1997年秋季,GroupLens研究實驗室啟動了MovieLens項目,并利用EachMovie數據集訓練了首個版本的推薦模型。自那以來,MovieLens數據集在1998年至2019年期間不斷更新發布,成為推薦系統研究中最受歡迎的數據集之一。
蓬勃發展階段
2005年之前,協同過濾技術主導了推薦系統應用和研究的領域。這包括用戶-用戶協同過濾、物品-物品協同過濾以及基于奇異值分解(SVD)的協同過濾。2006年至2009年的Netflix Prize競賽激發了矩陣分解模型的廣泛研究。在同一時期,一些研究者開始提出一些非正式的觀點,他們認為推薦系統的評估應從傳統的準確性指標轉向以用戶為中心的評估。
由于推薦系統基礎研究和商業應用的快速發展,學術界決定于2007年在明尼蘇達大學(UMN)舉辦首屆ACM推薦系統會議(ACM RecSys),該會議已成為專注于推薦系統研究的最重要的年度學術會議之一。同年,Richardson(理查德森)及其同事提出了一種邏輯回歸(LR)模型,該模型降低了30%的點擊率估計誤差。隨后,LR模型在優化方法、自動特征工程等方面得到了持續改進。
2010年,Rendle(蘭德爾)引入了因子分解機(FMs)的概念,FMs將支持向量機(SVM)和分解模型相結合,取得了重要的進展。基于FMs,研究人員提出了領域感知因子分解機(FFMs),這一模型在考慮特征權重時充分考慮了特征所屬的領域。與此同時,越來越多的研究開始關注推薦系統中的用戶體驗感。Pearl(珀爾)等研究人員提出了一個以用戶為中心的推薦系統評估框架;Konstan(康斯坦)和Riedl(里德爾)呼吁推薦系統研究從純粹集中在算法上的研究轉向集中在用戶體驗上的研究。
成熟應用階段
自2016年以來,基于深度神經網絡的推薦模型在學術界和工業界都受到了廣泛關注。在工業界,諸如Wide&Deep和DeepFM等模型已被應用于改善應用程序推薦。而YouTubeDNN和correct-sfx等模型則用于提高視頻推薦的準確性。為了更好地建模用戶興趣等序列信息,研究者們提出了DIN和DIEN等模型,利用注意力機制來處理這些信息。同時,Ruoxi Wang(王若溪)等人提出的DCN和DCN V2模型能夠自動高效地學習有界度的預測特征交互。在學術界,研究者們也提出了一系列重要的深度推薦模型,如FNN、PNN、NeuralCF、NFM和CVAE等。為了解決推薦模型研究中的可復現性問題,一些學者開發了名為FuxiCTR的CTR預測開放基準。另外,Zhu Sun等人則創建了基于隱式反饋的Top-N推薦算法的基準,其中包括可復現和公平的評估指標。此外,Wayne Xin Zhao(趙鑫)等人提出了一個統一的框架,用于開發和復現用于研究目的的推薦算法。
自2017年以來,研究者們開始關注推薦系統的可解釋性,提出了一系列可解釋深度推薦模型。這些模型不僅能夠提供準確的推薦結果,還能夠解釋推薦背后的原因,增強了用戶對推薦系統的信任度。此外,隨著圖神經網絡(GNN)的興起,越來越多的研究開始探索如何利用圖結構數據來改進推薦算法,特別是在社交網絡推薦和內容推薦等領域。
同時,還有一些其他開源的推薦模型如LensKit和LibRec等,它們極大地推動了推薦系統研究的發展。近年來,隨著隱私保護和數據安全問題的日益突出,差分隱私、聯邦學習等技術也開始被引入到推薦系統中,以保護用戶隱私和數據安全。
隨著技術的不斷進步和數據的不斷增長,推薦系統正面臨著越來越多的挑戰和機遇。未來的研究將更加注重模型的效率和可解釋性,以及如何更好地利用用戶的行為和上下文信息來提高推薦的準確性和個性化程度。
應用領域
電子商務領域
推薦系統在電子商務領域的應用日益廣泛,其核心在于通過深度解析用戶的個人喜好和購物習慣,精準推送符合其需求的商品或信息。
對于用戶而言,推薦系統不僅能在其購物目標不明確時提供個性化推薦,助力其發現潛在感興趣的商品,進而將瀏覽行為轉化為實際購買,提升購物體驗;更能在結賬時,根據已選商品智能推薦相關或更優質的選項,實現交叉銷售和向上銷售,促進銷售額的提升。同時,這種個性化的服務也增強了商家與顧客之間的互動與聯系,隨著用戶使用的頻率增加,推薦系統的精準度也得以提升,從而進一步鞏固了用戶的忠誠度,為電子商務平臺的持續發展奠定了堅實基礎。
在線媒體領域
推薦系統在在線媒體領域的應用已經變得日益重要,它為用戶提供個性化的內容推薦,以增強用戶體驗和滿意度。在新聞推薦領域,推薦系統根據用戶的偏好檔案、歷史行為數據等進行個性化新聞推薦,從而提升新聞覆蓋量。在音樂推薦領域,推薦系統通過分析用戶的聽歌歷史、收藏列表以及當前的環境信息來做出更準確的音樂推薦。在視頻推薦領域,推薦系統通過考慮用戶的觀看歷史、喜好、點贊和分享行為等因素幫助用戶在海量短視頻資源中快速找到用戶感興趣的內容。
社交網絡領域
在社交網絡領域,推薦系統能夠幫助用戶發掘新的社交關系、探索感興趣的場所和活動,以及推薦相關商品。具體而言,推薦系統通過深度挖掘用戶的社交行為,精準推薦可能產生交集的新好友,豐富了用戶的社交網絡;同時,借助智能手機的定位和大數據分析能力,推薦系統能夠為用戶推薦他們可能感興趣的地點,無論是美食、景點還是娛樂場所,都能為用戶帶來全新的發現體驗;此外,在基于活動的社交網絡中,推薦系統能夠智能地推薦用戶可能感興趣的活動,無論是線上還是線下的聚會、講座或展覽,都能幫助用戶拓展社交圈子,豐富生活體驗。
工作原理
推薦系統的工作原理可以分為數據收集、數據分析和候選生成三個主要部分。首先,在數據收集階段,推薦系統會從多個數據源中獲取信息,包括推薦物品或內容的元數據,用戶的基本信息,以及用戶偏好數據。接著,在數據分析環節,推薦系統運用信息過濾技術,如協同過濾、內容過濾或混合過濾等方法,對收集到的數據進行分析,挖掘出用戶的潛在興趣。最后,候選生成階段基于前期的數據分析和用戶偏好預測生成一個用戶可能感興趣的物品列表,并通過排序算法確保最符合用戶喜好的內容優先展示。
數據收集
數據收集包括收集用戶屬性、推薦對象屬性和用戶對推薦對象的行為信息等。這一步驟主要依賴于用戶的交互行為,包括不同用戶的點擊、瀏覽和購買歷史等。同時,也會收集用戶的反饋,如用戶的評分和評論,以及用戶的個人信息,如人口統計數據和瀏覽模式。此外,物品的屬性,如產品描述和標簽,也會被納入考慮范圍。
數據分析
通過使用信息過濾技術分析收集到的數據,推薦系統能夠有效地預測并滿足用戶的偏好。在這一過程中,先進的算法和機器學習技術起了關鍵的作用,它們通過處理龐大的數據集,快速識別出對用戶最為重要的因素,并通過分析用戶的行為模式、喜好傾向以及反饋意見,準確預測用戶的興趣所在,同時還能不斷學習并優化自身的推薦策略。
候選生成
候選生成(candidate generation)是將數據過濾階段得到的目標用戶最近鄰集合進行最近鄰評價,并將評價過的對象推薦給目標用戶;同時利用模型對未知對象進行預測,將預測評分最高的對象推送給目標用戶。
組成模塊
推薦系統有3個重要的組成模塊:用戶建模模塊、推薦對象建模模塊、推薦算法模塊。
推薦系統把用戶模型中興趣需求信息和推薦對象模型中的特征信息匹配,同時使用相應的推薦算法進行計算篩選,找到用戶可能感興趣的推薦對象,接著推薦給用戶。
用戶建模模塊
為了提供個性化、高效且準確的推薦服務,推薦系統需要構建精細化的用戶模型。這一模型不僅能夠全面捕獲并反映用戶多方面的、動態變化的興趣偏好,還能進行推理,進而對用戶進行分類和識別,幫助系統更好地理解用戶特征和類別,理解用戶的需求和任務,從而更好地實現用戶所需要的功能。推薦系統根據該模型進行推薦,所以用戶描述文件的準確性和完整性對推薦系統的質量至關重要。
獲取用戶信息是建立模型的基礎,其主要來源有:
(1)用戶屬性:用戶最基本的信息,包括社會屬性和自然屬性。如用戶的姓名、年齡、職業、收入、學歷等。
(2)用戶輸入與反饋信息:用戶主動提供給系統的信息,包括用戶在搜索引擎中輸入的關鍵詞和用戶反饋的信息,如用戶輸入的感興趣的主題、頻道;用戶對推薦對象的喜好程度;用戶對瀏覽頁面的感興趣、不感興趣或感興趣的程度的標注等。
(3)用戶的瀏覽行為和瀏覽內容:體現了用戶的興趣和需求,包括瀏覽次數、頻率、停留時間等,以及瀏覽頁面時的操作(收藏、保存、復制等)瀏覽時用戶表情的變化等。
(4)推薦對象的屬性特征:不同的推薦對象,用戶建模的輸入數據也不同。網頁等推薦對象通常考慮對象的內容和用戶之間的相似性,而產品等推薦對象通常考慮用戶對產品的評價。為提高推薦質量,將推薦對象的相關的屬性也同時考慮,如除網頁內容以外,還要考慮網頁的發布人、時間等,產品類的對象還要考慮產品的品牌、價格、出售時間等。
推薦對象建模模塊
對于應用于不同領域的推薦系統,它推薦的對象各不相同。為提高推薦系統的推薦精度,需對推薦對象進行建模。
推薦對象的推薦度是推薦系統基于對象描述和用戶描述進行計算而生成的。推薦對象可能涉及多個領域,如文檔、音樂、電影等。和用戶描述文件一樣,對推薦對象進行描述需考慮以下幾個問題:
(1)提取推薦對象的什么特征,如何提取,提取的特征用于什么目的。
(2)對象的特征描述和用戶文件描述之間有關聯。
(3)提取到的每個對象特征對推薦結果會有什么影響。
(4)對象的特征描述文件能否自動更新。
推薦算法模塊
推薦算法模塊是整個推薦系統的核心之一,該模塊的核心是根據具體業務及可利用的所有數據設計一套精準的、易于工程實現的、可以處理大規模數據的(分布式)機器學習算法,分析用戶的歷史行為、偏好、社交網絡以及其他相關信息,進而可以預測用戶的興趣偏好,為用戶提供個性化的推薦,一般涉及模型訓練和預測這兩個核心操作和模塊。目前,推薦算法多種多樣,對其分類的標準也沒有一個統一的標準。
主流的推薦算法
協同過濾推薦
協同過濾(Collaborative Filtering, CF)推薦是第一代被提出并在推薦系統中廣泛應用的推薦策略,其核心思想是通過分析評分矩陣(通常是用戶對項目的評分)來得到用戶、項目之間的依賴關系,并進一步預測新用戶與項目之間的關聯關系以生成推薦。其被廣泛應用于電影、書籍、音樂、電商等多個領域,如MovieLens、Netflix、亞馬遜網站等平臺均運用該技術為用戶提供個性化推薦。
協同過濾推薦一般可以分為三類,分別是基于用戶的協同推薦(User-Based Collaborative Filtering)(或基于內存的協同推薦(Memory-Based Collaborative Filtering))、基于項目的協同推薦(Item-Based Collaborative Filtering)和基于模型的協同推薦(Model-Based Collaborative Filtering)。
基于用戶的協同過濾推薦(UB-CF)
基于用戶的協同推薦又稱為基于內存的推薦,它的基本思想主要是通過尋找與目標用戶興趣相似的其他用戶,接著根據這些相似用戶的行為來為目標用戶推薦物品。這種方法假設用戶A和用戶B有相似的興趣,那么用戶A喜歡的物品也很可能被用戶B喜歡,常用于新聞、博客、電影和音樂等領域。
基于項目的協同過濾推薦(IB-CF)
基于項目的協同推薦的基本思想是通過分析項目之間的相似度來為用戶推薦與他們過去喜歡的物品相似的物品。這種方法假設用戶喜歡物品A,那么他們也很可能喜歡與物品A相似的物品B。
基于模型的協同過濾推薦(MB-CF)
基于模型的協同過濾推薦是通過訓練數學模型來預測用戶對未交互項目的評分情況,通常包括隨機矩陣分解(Probabilistic Matrix 因式分解, PMF)和奇異值分解(Singular Value 矩陣分解, SVD)。PMF和SVD狙擊步槍的主要思路是先對用戶與項目的歷史交互數據記錄建立合適的模型,接著產生符合用戶需求的推薦列表,其中應用較為廣泛的是基于矩陣分解的推薦。
基于內容的推薦
最初的基于內容的推薦(content-based recommendation)是協同過濾技術的延續與發展,它通過分析用戶的歷史行為和偏好,來推薦與其相似屬性的其他對象。隨著機器學習等技術的發展,基于內容過濾的推薦技術(CB)通過分析用戶的顯式與隱式反饋,學習并標記用戶的偏好特征。它計算用戶偏好與待推薦對象的內容相似度并排序以精準推薦最符合用戶興趣的產品。
基于內容的推薦系統框架包括數據挖掘和自適應推薦兩部分,對用戶來說這兩部分都是隱藏的。數據挖掘通過向量空間模型分析用戶偏好;自適應推薦則根據相似度排序生成推薦列表,并通過Web服務器推送給用戶。
基于知識的推薦
基于知識的推薦(Knowledge-based Recommendation)在某種程度上可以看作是一種推理(Inference)技術,它不依賴于用戶的直接需求和偏好,而是利用特定領域的規則進行基于規則和實例的推理,可用于汽車、房地產等需要專業知識的領域。
效用知識(泛函 Knowledge)描述了對象如何滿足特定用戶的需求,它能夠解釋需求和推薦之間的關系。在推薦系統中,效用知識通常以機器可讀的形式存在,如quickstep and foxtrot system利用關于學術論文主題的本體論本體知識庫向讀者用戶進行推薦。
基于社交網絡的推薦
基于社交網絡(Social Network)的推薦是協同過濾推薦的延伸,它利用社會網絡分析理論,將用戶與產品之間的交互視為社會網絡關系,通過考察網絡中的節點(用戶或產品)之間的相關性進行推薦,典型的應用如新浪微博、微信、大眾點評等。
具體而言,它可以通過分析節點之間的關系來計算節點間的信任度,進而利用這些信任度進行推薦。基于社交網絡的推薦能有效緩解推薦系統中的冷啟動和數據稀疏問題。但當訓練數據規模較大時,其訓練的復雜度也會相應提高。
混合推薦
混合推薦(hybrid recommendation),也稱為組合推薦,旨在通過整合多種推薦算法來提高推薦的準確性和多樣性,從而更好地滿足用戶需求。混合推薦技術的核心思想是利用不同推薦算法的優勢,同時彌補它們各自的缺陷,以產生更優質的推薦結果。
根據推薦算法的整合方式,混合推薦可以分為三類:
(1)前融合(Pre-Fusion):在這種方法中,多種推薦算法被融合到一個模型中。例如,在商品推薦中,可以根據用戶的歷史購買記錄提取感興趣的商品特征,并將其作為推薦模型的輸入,由混合模型中的推薦算法通過自適應學習產生推薦結果。前融合技術實質上是融合了數據庫中所有不同用戶特征。這種方法的優點在于能夠充分利用多個算法的信息,提高了推薦的準確性和多樣性。
(2)中融合(Mid-Fusion):中融合方法首先選擇一種推薦算法作為主框架,接著在該框架中混合其他推薦算法以提高推薦效果。例如,能夠以基于內容的推薦為主框架,再在其中混合協同過濾推薦來解決冷啟動問題。這種方法的本質是對不同模型的融合,通過相互補充的方式提高推薦的效果。
(3)后融合(Post-Fusion):后融合方法重視推薦結果,通過比較不同推薦算法的推薦效果來得到可靠性較高的推薦對象序列,最后將這個序列推薦給用戶。這種方法的優勢在于能夠根據不同算法的表現情況選擇最優的推薦結果,提高了推薦的可靠性和用戶滿意度。
混合推薦技術的應用范圍廣泛,特別適用于處理推薦系統中的冷啟動問題、提高推薦的準確性和多樣性。通過混合不同的推薦算法,可以充分利用它們的優勢,提高推薦系統的整體性能,從而更好地滿足用戶的需求。
體系結構
推薦系統的體系結構即用戶信息收集和用戶描述文件放在什么地方,是在服務器還是客戶機上,或者是處于二者之間的代理服務器上。
基于服務器端的推薦系統結構
最初的推薦系統都是基于服務器端的推薦系統,在這類推薦系統中,推薦系統與Web服務器一般共享一臺硬件設備。在邏輯上,推薦系統所收集的用戶信息收集和建模都依賴于Web服務器。
基于服務器端的推薦系統存在的問題主要包括:
(1)個性化信息的收集完全由Web服務器來完成,受到了Web服務器功能的限制。
(2)增加了Web服務器的系統開銷。
(3)對用戶的隱私有極大威脅。
基于客戶端的推薦系統結構
基于客戶端的推薦系統中,用戶信息的收集和建模都在客戶端完成。典型的基于客戶端的推薦系統有斯坦福大學的LIRA、麻省理工學院的Letizia、加州大學的Syskill&Webert和卡內基·梅隆大學的Personal Web-Watcher等。
相較于基于服務器端的推薦系統,基于客戶端的推薦系統的優點如下:
(1)由于用戶信息在本地收集處理,能夠根據豐富準確的用戶數據,構建高質量模型。
(2)少量甚至沒有用戶數據存放在服務器上,Web服務器無法訪問或控制用戶數據,能夠有效保護用戶隱私。
(3)用戶更愿意向推薦系統提供個人信息,從而提高推薦系統的推薦性能。
但基于客戶端的推薦系統也存在如下的缺點:
(1)用戶描述文件的形成和推薦策略的應用都依賴于所有用戶數據分析。而基于客戶端的推薦系統較難獲取其他用戶的數據,用戶描述文件較難得到,協同推薦策略實施也較難。若推薦系統要重新設計,推薦策略也必須進行修改。
(2)個性化推薦過程中需向服務器傳輸部分用戶數據,存在隱私泄露風險,需開發安全傳輸平臺進行數據傳輸。
基于代理的推薦系統結構
基于代理的推薦系統中,用戶信息的收集、用戶建模和推薦服務都在代理端實現。典型的基于代理的推薦系統有明尼蘇達大學的GroupLens、斯坦福大學的Fabss等。
在基于代理的推薦系統中,所有用戶的信息都會傳輸給代理,代理據此能形成全面的用戶描述文件。但此過程中用戶信息存在泄露等隱私風險。
除了基于服務器端的推薦系統、基于客戶端的推薦系統和基于代理的推薦系統,分布式推薦系統中,用戶描述文件被存放在不同的地方,可以大大提高用戶數據的安全性。
評價指標
網站在提供推薦服務時,一般是給用戶一個個性化的推薦列表,這種推薦叫做TopN推薦。TopN推薦的預測準確率一般通過準確率(precision)和召回率(recall)度量。
準確度指標
推薦準確度是評價推薦算法最基本的指標,用于衡量算法預測用戶對推薦對象喜好程度的準確度。準確度指標可以分為四類,分別是預測評分準確度、預測評分關聯性、分類準確度和排序準確度。這些指標涵蓋了用戶對商品的預測評分與真實評分的接近度、相關性以及推薦的排名。
預測評分的準確度
預測評分準確度用于衡量算法預測的評分與用戶實際評分之間的接近程度。這一指標在需要向用戶展示預測評分的系統中尤為關鍵,例如MovieLens的電影推薦系統,該系統預測用戶對電影的評分,通常以星級來表示,用戶評分越高表示對電影的喜歡程度越高。
預測評分關聯
預測評分關聯用于衡量預測評分和用戶真實評分之間的相關性。最常見的三種相關性指標分別是Pearson積距相關、Spearman相關和Kendall's Tau。
分類準確度
分類準確度指標用于衡量推薦系統正確預測用戶是否喜好某個對象的能力。在二分喜好系統中,它直接反映了推薦系統對用戶喜好的判斷能力。而對于非二分系統,往往需要設定評分閾值來區分用戶的喜好。
分類準確度常用的評價指標包括準確率(precision)、召回率(recall)、F1指標和AUC。
排序準確度
排序準確度是用來評價推薦系統中有序推薦列表和用戶對商品排序的一致性程度的指標。對于推薦排序要求嚴格的推薦系統而言,用評分準確度、評分相關性或分類準確度等指標來評價此類系統的好壞顯然是不合適的。比如,如果兩個推薦算法在推薦的商品中都有用戶感興趣的商品,但一個算法將用戶喜歡的商品排在第一位,另一個算法將其排在末位,那么顯然排在第一位的算法更優秀。
為了解決這個問題,可以使用平均排序分(平均數 rank score)來度量推薦系統的排序準確度。
由于平均排序分不需要額外的參數,也不需要事先知道用戶對對象的具體評分值,因此可以很好的比較不同算法在同一數據集上的表現。在系統尺度足夠大的情況下,平均排序分與AUC之和大致為1,這意味著它可以與其他評估指標相結合來全面評估推薦系統的性能。
基于排序加權的指標
用戶體驗的滿意度往往會受到用戶喜歡的商品在推薦列表中位置的影響,其中具有代表性的評價指標有半衰期效用指標、折扣累計利潤和排序偏差準確率。
覆蓋率
覆蓋率指標用于衡量系統推薦的項目能夠覆蓋到全部項目的比例,適用于需要為用戶找出所有感興趣項目的系統。如果一個推薦系統的覆蓋率比較低,那么這個系統很可能會由于其推薦范圍的局限性而降低用戶的滿意度,這是由于低的覆蓋率意味著用戶可選擇的項目很少。覆蓋率可以分為預測覆蓋率、推薦覆蓋率和種類覆蓋3種。
僅用覆蓋率來衡量推薦系統的表現是沒有意義的,它需要和預測準確度一同考慮。
多樣性和新穎性
多樣性
在推薦系統中,多樣性體現在用戶間的多樣性和用戶內的多樣性。
新穎性
新穎性指的是向用戶推薦非熱門非流行項目的能力。
風險與挑戰
雖然目前的一些推薦技術已經取得了令人滿意的推薦效果,但仍面臨諸多挑戰,如數據稀疏性、冷啟動、可擴展性和用戶興趣漂移等。
數據稀疏性
推薦系統的數據稀疏性問題源于用戶和項目的潛在因子矩陣的高維稀疏性。在實際應用中,大多數用戶不會對所有項目進行評分,導致用戶-項目評分矩陣中未評分數據量遠大于已評分數據量。這種稀疏性使得傳統基于相似度計算的推薦模型難以得到理想結果,因為任意兩個向量之間近似正交,計算得到的相似度往往為零。
因此,評價數據集的稀疏度對于推薦系統的性能至關重要。稀疏度越大,傳統算法的精度越低,處理難度也越大。在大型推薦系統中,這種情況尤為明顯,這是由于用戶之間的選擇差異很大,導致評分數據更加稀疏。
冷啟動
推薦系統的冷啟動問題是指在新用戶或新物品加入系統時,由于缺乏足夠的用戶行為數據,系統無法進行有效的個性化推薦。這會導致新用戶無法獲得符合其興趣的推薦內容,新物品也無法被推薦給用戶,從而影響用戶的參與度和推薦系統的有效性。
冷啟動問題在推薦系統的初期階段尤為突出,因為此時系統尚未積累足夠的用戶行為數據。為了解決這一問題,推薦系統需要采用一些策略,如引入外部數據源、利用用戶注冊信息或社交網絡信息等,以提供初始的推薦內容,并逐步改善推薦質量。
可擴展性
在大數據環境下,用戶量和數據量巨大,傳統的矩陣分解算法可能會遇到響應緩慢和存儲成本高的挑戰。為了提高算法的處理能力,可以采用并行化操作,利用分布式文件系統(如Hadoop Distributed File System, hdfs)來存儲數據,從而減少算法的復雜度和提高計算效率。
推薦系統的可擴展性問題又稱為模型過擬合問題,這一問題的根源在于推薦算法無法完全理解用戶的興趣和需求,特別是當用戶之前沒有對足夠多類別的對象進行評價時,其具體表現為推薦給用戶的對象與用戶之前看過的對象不夠相似或者與用戶需求不相關。這主要是因為數據的不完備性導致的,而在實際應用中,數據的不完備性是無法完全避免的。為了解決這一問題,可以引入隨機性,使算法能夠更好地收斂到全局最優解或者逼近全局最優解。此外,推薦系統還需要考慮推薦結果的多樣性,以確保推薦的對象不會與用戶已經看過的對象重復,同時具有一定的相關性,從而提高用戶的滿意度和體驗。
用戶興趣漂移
由于用戶的興趣愛好瞬息萬變,這導致推薦系統的實時性受到影響。用戶興趣漂移的主要原因包括用戶自身的成長和生活狀態變化、新聞事件和項目流行度的影響,以及季節和節日等外部因素。例如,用戶在觀看電影時,其興趣可能會因新電影的上映、節日氛圍或與他人共同觀影等因素而發生變化。這種變化使得基于靜態信息的推薦技術難以準確捕捉用戶的當前興趣,從而影響推薦的準確性。因此,推薦系統需要能夠動態地適應用戶興趣的變化,以提供更符合用戶實際需求的推薦內容。
與搜索引擎的比較
發展趨勢
增強用戶體驗
未來,推薦系統將整合多種數據類型,包括文本、圖像、音頻和視頻等,以更全面地理解用戶的需求和興趣。這將使得推薦系統能夠提供更準確、多樣化的推薦,增強用戶體驗。同時,基于更深入的用戶建模和復雜的推薦算法,推薦系統將更好地理解用戶的情感和情感背后的需求。這將使得推薦系統能夠提供更加個性化的推薦,進一步提高推薦的準確性和效果。
另外,推薦系統將結合云計算、大數據、人工智能、區塊鏈等先進技術,通過深度學習和機器學習算法,提升推薦效果和增強用戶體驗。
也不再局限于傳統的電子商務或媒體等常見領域,而是逐漸拓展到司法、教育、醫療等多個領域,助力各行各業的智能化發展。
數據隱私與安全保護
隨著對數據隱私的關注增加,數據隱私保護將成為推薦技術的重要方向。同時,脫敏技術將不斷發展,以確保用戶數據在存儲和處理過程中不會被泄露。用戶將擁有更多的隱私控制權,且推薦系統將更尊重用戶的隱私偏好。法規和合規要求也將不斷發展,對推薦系統的隱私實踐提出更高的要求。
可解釋性
模型的可解釋性將成為未來推薦技術的焦點。解釋性AI技術將不斷發展,以幫助用戶理解模型的決策過程,包括可解釋的深度學習模型和決策可視化工具。未來,模型可能會自動提供解釋,幫助用戶更好地理解和接受推薦。
自動化內容生成
推薦系統將成為寫作助手的關鍵組成部分,幫助作者根據用戶喜好生成高質量的個性化作品。媒體制作和廣告領域也將使用推薦技術來自動生成文本、圖像和視頻內容,提高生產效率并降低制作成本。新聞機構將使用大語言模型推薦技術來自動生成新聞報道,提高新聞速度和覆蓋范圍,并增加新聞的多樣性和個性化。
參考資料 >
Fine Tuning the Social Web: John Riedl.University of Minnesota.2024-03-11
Guide to Recommendation System: Types, Selection Criteria, How to Build One.Stratoflow.2024-03-04
Funk-SVD.sifter.org.2024-03-04
What are search and recommendation systems in machine learning?.TELUS International.2024-03-10