推薦系統經常使用算法

1、基於內容推薦

基於內容的推薦(Content-based Recommendation)是信息過濾技術的延續與發展,它是創建在項目的內容信息上做出推薦的,而不須要依據用戶對項目的評價意見,更多地須要用機 器學習的方法從關於內容的特徵描述的事例中獲得用戶的興趣資料。在基於內容的推薦系統中,項目或對象是經過相關的特徵的屬性來定義,系統基於用戶評價對象 的特徵,學習用戶的興趣,考察用戶資料與待預測項目的相匹配程度。用戶的資料模型取決於所用學習方法,經常使用的有決策樹、神經網絡和基於向量的表示方法等。 基於內容的用戶資料是須要有用戶的歷史數據,用戶資料模型可能隨着用戶的偏好改變而發生變化。web

基於內容推薦方法的優勢是:算法

1)不須要其它用戶的數據,沒有冷開始問題和稀疏問題。數據庫

2)能爲具備特殊興趣愛好的用戶進行推薦。網絡

3)能推薦新的或不是很流行的項目,沒有新項目問題。svg

4)經過列出推薦項目的內容特徵,能夠解釋爲何推薦那些項目。函數

5)已有比較好的技術,如關於分類學習方面的技術已至關成熟。學習

缺點是要求內容能容易抽取成有意義的特徵,要求特徵內容有良好的結構性,而且用戶的口味必須可以用內容特徵形式來表達,不能顯式地獲得其它用戶的判斷狀況。xml

2、協同過濾推薦

協同過濾推薦(Collaborative Filtering Recommendation)技術是推薦系統中應用最先和最爲成功的技術之一。它通常採用最近鄰技術,利用用戶的歷史喜愛信息計算用戶之間的距離,而後 利用目標用戶的最近鄰居用戶對商品評價的加權評價值來預測目標用戶對特定商品的喜愛程度,系統從而根據這一喜愛程度來對目標用戶進行推薦。協同過濾最大優 點是對推薦對象沒有特殊的要求,能處理非結構化的複雜對象,如音樂、電影。對象

協同過濾是基於這樣的假設:爲一用戶找到他真正感興趣的內容的好方法是首先找到與此用戶有類似興趣的其餘用戶,而後將他們感興趣的內容推薦給此用戶。其基本 思想很是易於理解,在平常生活中,咱們每每會利用好朋友的推薦來進行一些選擇。協同過濾正是把這一思想運用到電子商務推薦系統中來,基於其餘用戶對某一內 容的評價來向目標用戶進行推薦。ci

基於協同過濾的推薦系統能夠說是從用戶的角度來進行相應推薦的,並且是自動的,即用戶得到的推薦是系統從購買模式或瀏覽行爲等隱式得到的,不須要用戶努力地找到適合本身興趣的推薦信息,如填寫一些調查表格等。

和基於內容的過濾方法相比,協同過濾具備以下的優勢:

1) 可以過濾難以進行機器自動內容分析的信息,如藝術品,音樂等。

2) 共享其餘人的經驗,避免了內容分析的不徹底和不精確,而且可以基於一些複雜的,難以表述的概念(如信息質量、我的品味)進行過濾。

3) 有推薦新信息的能力。能夠發現內容上徹底不類似的信息,用戶對推薦信息的內容事先是預料不到的。這也是協同過濾和基於內容的過濾一個較大的差異,基於內容的過濾推薦不少都是用戶原本就熟悉的內容,而協同過濾能夠發現用戶潛在的但本身還沒有發現的興趣偏好。

4) 可以有效的使用其餘類似用戶的反饋信息,較少用戶的反饋量,加快個性化學習的速度。
雖然協同過濾做爲一種典型的推薦技術有其至關的應用,但協同過濾仍有許多的問題須要解決。最典型的問題有稀疏問題(Sparsity)和可擴展問題(Scalability)。

3、基於關聯規則推薦

基於關聯規則的推薦(Association Rule-based Recommendation)是以關聯規則爲基礎,把已購商品做爲規則頭,規則體爲推薦對象。關聯規則挖掘能夠發現不一樣商品在銷售過程當中的相關性,在零 售業中已經獲得了成功的應用。管理規則就是在一個交易數據庫中統計購買了商品集X的交易中有多大比例的交易同時購買了商品集Y,其直觀的意義就是用戶在購 買某些商品的時候有多大傾向去購買另一些商品。好比購買牛奶的同時不少人會同時購買麪包。

算法的第一步關聯規則的發現最爲關鍵且最耗時,是算法的瓶頸,但能夠離線進行。其次,商品名稱的同義性問題也是關聯規則的一個難點。

4、基於效用推薦

基於效用的推薦(Utility-based Recommendation)是創建在對用戶使用項目的效用狀況上計算的,其核心問題是怎麼樣爲每個用戶去建立一個效用函數,所以,用戶資料模型很大 程度上是由系統所採用的效用函數決定的。基於效用推薦的好處是它能把非產品的屬性,如提供商的可靠性(Vendor Reliability)和產品的可得性(Product Availability)等考慮到效用計算中。

5、基於知識推薦

基於知識的推薦(Knowledge-based Recommendation)在某種程度是能夠當作是一種推理(Inference)技術,它不是創建在用戶須要和偏好基礎上推薦的。基於知識的方法因 它們所用的功能知識不一樣而有明顯區別。效用知識(Functional Knowledge)是一種關於一個項目如何知足某一特定用戶的知識,所以能解釋須要和推薦的關係,因此用戶資料能夠是任何能支持推理的知識結構,它能夠 是用戶已經規範化的查詢,也能夠是一個更詳細的用戶須要的表示。

6、組合推薦

因爲各類推薦方法都有優缺點,因此在實際中,組合推薦(Hybrid Recommendation)常常被採用。研究和應用最多的是內容推薦和協同過濾推薦的組合。最簡單的作法就是分別用基於內容的方法和協同過濾推薦方法 去產生一個推薦預測結果,而後用某方法組合其結果。儘管從理論上有不少種推薦組合方法,但在某一具體問題中並不見得都有效,組合推薦一個最重要原則就是通 過組合後要能避免或彌補各自推薦技術的弱點。

在組合方式上,有研究人員提出了七種組合思路:

1)加權(Weight):加權多種推薦技術結果。

2)變換(Switch):根據問題背景和實際狀況或要求決定變換採用不一樣的推薦技術。

3)混合(Mixed):同時採用多種推薦技術給出多種推薦結果爲用戶提供參考。

4)特徵組合(Feature combination):組合來自不一樣推薦數據源的特徵被另外一種推薦算法所採用。

5)層疊(Cascade):先用一種推薦技術產生一種粗糙的推薦結果,第二種推薦技術在此推薦結果的基礎上進一步做出更精確的推薦。

6)特徵擴充(Feature augmentation):一種技術產生附加的特徵信息嵌入到另外一種推薦技術的特徵輸入中。

7)元級別(Meta-level):用一種推薦方法產生的模型做爲另外一種推薦方法的輸入。

相關文章
相關標籤/搜索