A. 個性化推薦演算法——協同過濾
電子商務推薦系統的一種主要演算法。
協同過濾推薦(Collaborative Filtering recommendation)是在信息過濾和信息系統中正迅速成為一項很受歡迎的技術。與傳統的基於內容過濾直接分析內容進行推薦不同,協同過濾分析用戶興趣,在用戶群中找到指定用戶的相似(興趣)用戶,綜合這些相似用戶對某一信息的評價,形成系統對該指定用戶對此信息的喜好程度預測。
與傳統文本過濾相比,協同過濾有下列優點:
(1)能夠過濾難以進行機器自動基於內容分析的信息。如藝術品、音樂;
(2)能夠基於一些復雜的,難以表達的概念(信息質量、品位)進行過濾;
(3)推薦的新穎性。
正因為如此,協同過濾在商業應用上也取得了不錯的成績。Amazon,CDNow,MovieFinder,都採用了協同過濾的技術來提高服務質量。
缺點是:
(1)用戶對商品的評價非常稀疏,這樣基於用戶的評價所得到的用戶間的相似性可能不準確(即稀疏性問題);
(2)隨著用戶和商品的增多,系統的性能會越來越低;
(3)如果從來沒有用戶對某一商品加以評價,則這個商品就不可能被推薦(即最初評價問題)。
因此,現在的電子商務推薦系統都採用了幾種技術相結合的推薦技術。
案例: AMAZON 個性化推薦系統先驅 (基於協同過濾)
AMAZON是一個虛擬的網上書店,它沒有自己的店面,而是在網上進行在線銷售. 它提供了高質量的綜合節目資料庫和檢索系統,用戶可以在網上查詢有關圖書的信息.如果用戶需要購買的化,可以把選擇的書放在虛擬購書籃中,最後查看購書籃中的商品,選擇合適的服務方式並且提交訂單,這樣讀者所選購的書在幾天後就可以送到家.
AMAZON書店還提供先進的個性化推薦功能,能為不同興趣偏好的用戶自動推薦符合其興趣需要的書籍. AMAZON使用推薦軟體對讀者曾經購買過的書以及該讀者對其他書的評價進行分析後,將向讀者推薦他可能喜歡的新書,只要滑鼠點一下,就可以買到該書了;AMAZON能對顧客購買過的東西進行自動分析,然後因人而異的提出合適的建議. 讀者的信息將被再次保存.這樣顧客下次來時就能更容易的買到想要的書. 此外,完善的售後服務也是AMAZON的優勢,讀者可以在拿到書籍的30天內,將完好無損的書和音樂光碟退回AMAZON, AMAZON將原價退款. 當然AMAZON的成功還不止於此, 如果一位顧客在AMAZON購買一本書,下次他再次訪問時,映入眼簾的首先是這位顧客的名字和歡迎的字樣.
B. 網易雲音樂的歌單推薦演算法是怎樣的
「商品推薦」系統的演算法( Collaborative filtering )分兩大類,第一類,以人為本,先找到與你相似的人,然後看看他們買了什麼你沒有買的東西。這類演算法最經典的實現就是「多維空間中兩個向量夾角的餘弦公式」;第二類, 以物為本直接建立各商品之間的相似度關系矩陣。這類演算法中最經典是'斜率=1' (Slope One)。amazon發明了暴力簡化的第二類演算法,『買了這個商品的人,也買了xxx』。我們先來看看第一類,最大的問題如何判斷並量化兩人的相似性,思路是這樣 -- 例子:有3首歌放在那裡,《最炫民族風》,《晴天》,《Hero》。A君,收藏了《最炫民族風》,而遇到《晴天》,《Hero》則總是跳過;B君,經常單曲循環《最炫民族風》,《晴天》會播放完,《Hero》則拉黑了C君,拉黑了《最炫民族風》,而《晴天》《Hero》都收藏了。我們都看出來了,A,B二位品味接近,C和他們很不一樣。那麼問題來了,說A,B相似,到底有多相似,如何量化?我們把三首歌想像成三維空間的三個維度,《最炫民族風》是x軸,《晴天》是y軸,《Hero》是z軸,對每首歌的喜歡程度即該維度上的坐標,並且對喜歡程度做量化(比如: 單曲循環=5, 分享=4, 收藏=3, 主動播放=2 , 聽完=1, 跳過=-1 , 拉黑=-5 )。那麼每個人的總體口味就是一個向量,A君是 (3,-1,-1),B君是(5,1,-5),C君是(-5,3,3)。 (抱歉我不會畫立體圖)我們可以用向量夾角的餘弦值來表示兩個向量的相似程度, 0度角(表示兩人完全一致)的餘弦是1, 180%角(表示兩人截然相反)的餘弦是-1。根據餘弦公式, 夾角餘弦 = 向量點積/ (向量長度的叉積) = ( x1x2 + y1y2 + z1z2) / ( 跟號(x1平方+y1平方+z1平方 ) x 跟號(x2平方+y2平方+z2平方 ) )可見 A君B君夾角的餘弦是0.81 , A君C君夾角的餘弦是 -0.97 ,公式誠不欺我也。以上是三維(三首歌)的情況,如法炮製N維N首歌的情況都是一樣的。假設我們選取一百首種子歌曲,算出了各君之間的相似值,那麼當我們發現A君還喜歡聽的《小蘋果》B君居然沒聽過,相信大家都知道該怎麼和B君推薦了吧。
C. 基於用戶的推薦演算法
大數據
淘寶 頭條 都是 這要搞的
D. Amazon的推薦演算法是否特別優秀
現在在京東、易迅、亞馬遜等看到的主流推薦演算法,一般都是基於物品自身相似性(不依賴於用戶數據,沒有冷啟動問題)、基於用戶瀏覽、喜歡、購買等數據的協同過濾推薦(用戶緯度和商品緯度)。
其實這些推薦演算法的核心思路,是很樸素的。
一、基於物品自身相似度:例如衣服A和衣服B,對於它們在分類、價格段、屬性、風格、品牌定位等等其他屬性緯度的表現,來計算它們之間的相似度,如果相似度高,那麼在有用戶瀏覽A的時候,就可以推薦B(實際當然沒這么簡單)。因為衣服的這些屬性是不依賴於用戶的,所以解決了系統的冷啟動問題,正是不依賴與用戶的行為數據,因此比較死板,完全沒有個性化的推薦。這個演算法的思路很多人都清楚,但是越是簡單的演算法,要達到好的效果就越是難,特別是推薦這種轉化率非常低的演算法。商品有幾十個屬性,對不同分類的商品,並不是所有的屬性都是有必要納入相似度計算的,已經納入的屬性但是重要性也是有區別的,這樣一來,光光給不同類別商品篩選必要屬性以及設置這些屬性在相似度計算中的權重值,就是一項非常浩大的工程了。亞馬遜的推薦系統在全球行業中也是最早的,相信他們在這個問題上肯定有自己一套迅速有效的方法。當然要我來說具體是怎麼樣的,我怎麼可能知道呢^_^,知道了也不告訴你。
二、基於用戶緯度的協同過濾:採集用戶的購買(瀏覽、收藏都行)商品數據,把用戶購買的商品列出來,當作用戶的屬性緯度。例如用戶A購買了商品1、2、3、4、5,用戶B購買了商品1、2、5、6,那麼可以簡單的將12345和1256分別作為A和B的屬性特徵字元串,計算A和B的相似度,經過簡單的聚類將用戶聚成幾個類別(鄰居)。假設A和B同屬於一個聚類,那麼可以稱A和B有比較相似的偏好,繼而可以將A買過而B沒買過的其他商品推薦給B。在這一個流程里,可以發揮的地方有很多:1、用戶的行為數據需要去噪音(買了多少商品以下的用戶不考慮,有代購的不考慮,如何精準的判斷代購,商品時效性的考慮,數據的時間跨度等等);2、計算相似度的時候跟第一點中提到的一樣,並不是所有商品對用戶的描述度都是一樣的。可能價格低的重要程度就沒有昂貴的商品重要。3、通過聚類計算鄰居的時候,聚類演算法又是另一門學科了,或者選擇分類演算法。然後聚類的門檻選擇都是需要很長時間的測試、觀察、修改的,需要時間的積累。4、瀏覽、購買、收藏等歷史數據是不是可以協同過濾。現在很多網站給出的推薦,都不是單一推薦演算法的,一個演算法的輸出可以作為另一個演算法的輸入,可以是多個演算法的輸出綜合篩選,這也是一個需要長時間積累的地方。
E. 3分鍾輕鬆了解個性化推薦演算法
推薦這種體驗除了電商網站,還有新聞推薦、電台音樂推薦、搜索相關內容及廣告推薦,基於數據的個性化推薦也越來越普遍了。今天就針對場景來說說這些不同的個性化推薦演算法吧。
說個性化之前,先提一下非個性化。 非個性化的推薦也是很常見的,畢竟人嘛都有從眾心理,總想知道大家都在看什麼。非個性化推薦的方式主要就是以比較單一的維度加上半衰期去看全局排名,比如,30天內點擊排名,一周熱門排名。
但是只靠非個性化推薦有個弊端,就是馬太效應,點的人越多的,經過推薦點得人有更多。。。強者越強,弱者機會越少就越弱,可能導致兩級分化嚴重,一些比較優質素材就被埋沒了。
所以,為了解決一部分馬太效應的問題,也主要是順應數據化和自動化的模式,就需要增加個性化的推薦(可算說到正題了。。。)個性化的優點是不僅體驗好,而且也大大增加了效率,讓你更快找到你感興趣的東西。YouTube也曾做過實驗測試個性化和非個性化的效果,最終結果顯示個性化推薦的點擊率是同期熱門視頻的兩倍。
1.新聞、視頻、資訊和電台(基於內容推薦)
一般來說,如果是推薦資訊類的都會採用基於內容的推薦,甚至早期的郵件過濾也採用這種方式。
基於內容的推薦方法就是根據用戶過去的行為記錄來向用戶推薦相似額推薦品。簡單來說就是你常常瀏覽科技新聞,那就更多的給你推薦科技類的新聞。
復雜來說,根據行為設計權重,根據不同維度屬性區分推薦品都是麻煩的事,常用的判斷用戶可能會喜歡推薦品程度的餘弦向量公式長這樣,我就不解釋了(已經勾起了我關於高數不好的回憶)。。。
但是,這種演算法缺點是由於內容高度匹配,導致推薦結果的驚喜度較差,而且有冷啟動的問題,對新用戶不能提供可靠的推薦結果。並且,只有維度增加才能增加推薦的精度,但是維度一旦增加計算量也成指數型增長。如果是非實體的推薦品,定義風格也不是一件容易的事,同一個作者的文風和曲風也會發生改變。
2.電商零售類(協同過濾推薦和關聯規則推薦)
說電商推薦那不可能不講到亞馬遜,傳言亞馬遜有三成的銷售額都來自個性化的商品推薦系統。實際上,我自己也常常在這里找到喜歡的書,也願意主動的去看他到底給我推薦了什麼。
一般,電商主流推薦演算法是基於一個這樣的假設,「跟你喜好相似的人喜歡的東西你也很有可能喜歡。」即協同過濾過濾演算法。主要的任務就是找出和你品味最相近的用戶,從而根據最近他的喜好預測你也可能喜歡什麼。
這種方法可以推薦一些內容上差異較大但是又是用戶感興趣的物品,很好的支持用戶發現潛在的興趣偏好。也不需要領域知識,並且隨著時間推移性能提高。但是也存在無法向新用戶推薦的問題,系統剛剛開始時推薦質可能較量差。
電商行業也常常會使用到基於關聯規則的推薦。即以關聯規則為基礎,把已購商品作為規則頭,規則體為推薦對象。比如,你購買了羽毛球拍,那我相應的會向你推薦羽毛球周邊用品。關聯規則挖掘可以發現不同商品在銷售過程中的相關性,在零售業中已經得到了成功的應用。
3.廣告行業(基於知識推薦)
自從可以瀏覽器讀取cookies,甚至獲得年齡屬性等信息,廣告的個性化投放就也可以根據不同場景使用了。
當用戶的行為數據較少時,基於知識的推薦可以幫助我們解決這類問題。用戶必須指定需求,然後系統設法給出解決方式。假設,你的廣告需要指定某地區某年齡段的投放,系統就根據這條規則進行計算。基於知識的推薦在某種程度是可以看成是一種推理技術。這種方法不需要用戶行為數據就能推薦,所以不存在冷啟動問題。推薦結果主要依賴兩種形式,基於約束推薦和基於實例推薦。
4.組合推薦
由於各種推薦方法都有優缺點,所以在實際中,並不像上文講的那樣採用單一的方法進行建模和推薦(我真的只是為了解釋清楚演算法)。。。
在組合方式上,也有多種思路:加權、變換、混合、特徵組合、層疊、特徵擴充、元級別。 並且,為了解決冷啟動的問題,還會相應的增加補足策略,比如根據用戶模型的數據,結合挖掘的各種榜單進行補足,如全局熱門、分類熱門等。 還有一些開放性的問題,比如,需不需要幫助用戶有品味的提升,引導人去更好的生活。
最後,我總想,最好的推薦效果是像一個了解你的朋友一樣跟你推薦,因為他知道你喜歡什麼,最近對什麼感興趣,也總能發現一些有趣的新東西。這讓我想到有一些朋友總會興致勃勃的過來說,嘿,給你推薦個東西,你肯定喜歡,光是聽到這句話我好像就開心起來,也許這就是我喜歡這個功能的原因。
F. 個性化推薦系統的基本框架
個性化推薦是一種功能,它會通過用戶的個性化需求給他推薦符合其需求的內容, 如果選配助聽器可以去專業的助聽器驗配中心,結合自己的聽力和聽力需求來驗配,找到合適自己聽力參數的助聽器。
G. 購物網站的商品推薦演算法有哪些
這種形式一般可以按推薦引擎的演算法分,主要有基於協同過濾、基於內容推薦等演算法。 「買過此商品的人,百分之多少還買過其他啥啥商品」:協同過濾item-based filtering 「和你興趣相似的人,還買過其他啥啥商品」:協同過濾 user-based filtering 「相關商品推薦」:基於內容推薦content-based 「猜你喜歡」 一般混合使用推薦演算法。
H. 基於內容的推薦演算法給每個人建立模型么
1、為每個物品(Item)構建一個物品的屬性資料(Item Profile)
2、為每個用戶(User)構建一個用戶的喜好資料(User Profile)
3、計算用戶喜好資料與物品屬性資料的相似度,相似度高意味著用戶可能喜歡這個物品,相似度低往往意味著用戶不喜歡這個物品。
選擇一個想要推薦的用戶「U」,針對用戶U遍歷一遍物品集合,計算出每個物品與用戶U的相似度,選出相似度最高的k個物品,將他們推薦給用戶U——大功告成!
下面將詳細介紹一下Item Profiles和User Profiles。