相信很多人在使用不同的app的時候總是會遇到各種各樣的關聯推薦,什么是關聯推薦呢?
舉個例子,喜馬拉雅為例。我們會在每個收聽頁面或者作品詳情頁看到一系列的關聯推薦,如【聽過本書的人也在聽】。
除了喜馬拉雅,很多產品都會使用到關聯推薦,目的當然是為用戶推薦更適合他的內容,讓其在產品中長時間進行使用,增加用戶的粘性和活躍度。
今天,我們來簡單的分析一下一款剛上線音頻產品的關聯推薦的邏輯,【聽過本書的人也在聽】。
為什么選擇新上線的產品,原因十分簡單,運營時間長的產品,必然會存在大量的數據,只要自己對數據進行綜合分析利用即可。相對而言,規則雖然復雜,但是有數據支持,推薦還是比較精準的,而新上線的產品,運營時間不長,用戶數據和產品內容也較小,因此,關聯推薦相比有成熟數據的產品也更為復雜。
另外,新產品關聯推薦的目的性對于業務上的影響并不會太多,邏輯嵌套相對少一些,及時推薦的并不準確,也可以及時的調整,如果海量數據的推薦也有問題,那么用戶會覺得這產品不懂自己,期望高的時候,失望也會越大。
因此選擇一款新產品進行分析。
那么就講一下新的音頻產品的關聯推薦思路。
聽過本書的人也在聽。
顧名思義,那就是說聽過這本精彩作用的用戶還瀏覽了一些其他的作品。把這些好的作品推薦給大家。
但是會出現一個問題,有很多讀者都看了這一本書,而且他們也看了其他的不同的作品,但是推薦位只有這么屈指可數的幾個,
肯定不能都寫下來了。所以就需要從不同的維度來進行綜合分析。
假如一個a用戶,在聽完當前這一本書又連著試聽或者是連續聽了一些其他的作品,那么我們為這個用戶列一份收聽的清單。
這個時候,b用戶在聽完同一本書后,后會聽一一些其他的作品,又產生一份書單。
C用戶也是一樣,聽完同一本書后,又聽了其他的,也產生了一份書單。
這個時候,這份書單當中定然會有一些共性的作品存在。三個人當中至少有兩個人說聽了某一本書的, 那么這一本書就被摘選了出來,作為推薦的一個維度。
但是有人可能第一本就聽了那么書,而有些人在聽第30本的時候才聽到,這樣的話,不同的人都匯集在一起,數據量是極其龐大的。因此,會對書單的長度做一個匯總。
只取用戶在最近閱讀歷史的前30本書中產生交集的作品,那么就可以抽取出一部分作品作為推薦位的一個維度。
用戶在讀該作品之后的前三十本書中出現兩次以上的作品,作為關聯推薦的一個維度。
但是這樣的話,100個用戶,他們都讀兩本書的概率也是極高的,因此重復的地方還特別多,因此我們還需要進行具體的細分。
第一章節也是讀,讀10章節還是讀,另外讀了充錢和沒充錢的這又是一個維度。那么我們就先從閱讀章節數量的問題來考慮。
那么我們就從這個來進行繼續的拆分,一本書如果好聽,就會有人不斷的繼續聽下去,那么,必須要確定一個章節數,收聽多少才算得上是喜歡這本書,就可以簡單的設定三個檔位。
第一個檔位,可以是以10集為限制,大于等于十集小于20集的。第二個是大于等于20集小于等于30集,第三個檔位是大于等于30集。我們可以選擇第二個檔位來作為一個標準。之后如果播放量再增加的時候,我們可以再選擇其他
不同的檔位來進行判斷。
雖然收聽的集數有了一個判斷,但是用戶究竟是使用了多久的時間聽了這么多集,也是一個需要進行判斷的標準。如果用戶在一天之內就聽了5章或者十章的時候,那肯定是喜歡這本書,如果是一周才聽了這么多,肯定是喜歡程度沒那么高。
其次,對于收聽了20或者是30集的用戶而言,收聽的周期也是一個值得考量的問題??梢酝ㄟ^收聽的周期來對作品的集數進行一個區分。
初步選定的周期為:一天,三天,一周,半個月和一個月,與之對應的集數如下
同一本書,一天收聽大于等于5集,可以進行推薦;三天收聽大于等于20集,可以進行推薦;一周之內收聽大于等于30集;半個月收聽大于50集,一個月收聽大于80集的作品可以進行推薦。
另外,對于一些新書而言,剛剛上架,這樣會導致一個問題,如果按照之前第一條規則來進行算的話,那么永遠都不會有新書有曝光率,永遠不會被其他人通過關聯推薦中找到。因此,要對于新書給予一定的曝光率。
對于優質作品,后臺會有對作品品級判斷的一個打分,可以優先推薦品級未1和2 的作品。
對于一本新書而言,肯定會有用戶因為好奇去進行點擊的,會產生初始的數據,因此不需要特意對新作品增加特殊的權重。而對于這些新書而言,收聽的章節數也一定程度代表了這些作品的質量,同時也可以驗證作品的品級。
因此對于新書而言,適當增加一周的保護期甚至是一月的保護器,在這一周之內,如果有用戶收聽,其權重就會增加一部分。對于新作品,作品的收聽周期也可以適當的減少一部分。
同一本書,一天收聽大于等于3集,可以進行推薦;三天收聽大于等于10集,可以進行推薦;一周之內收聽大于等于15集;半個月收聽大于30集,一個月收聽大于40集的作品可以進行推薦。
以上行為,只要有出現一次,就可以將該書推薦,但需要和其他的作品進行去重。
這樣新書和老書都可以被照顧到。
綜上所述,【聽過本書的人在也在聽】的簡單規則就出來了。
1.所有收聽本書的用戶在收聽本書后,最近一個月播放記錄以內的作品列表中摘取數據
2.同一本書如收聽>=2次以上,該書則為關聯推薦待推薦作品。同時,改作品需要滿足以下條件。
3.如收聽的作品上架時間>1個月。
同一本書,同一用戶,如一天收聽大于等于5集,可以進行推薦;
三天收聽大于等于20集,可以進行推薦;
一周之內收聽大于等于30集,可以進行推薦;
半個月收聽大于50集,可以進行推薦;
一個月收聽大于80集的作品可以進行推薦。
4.對于上架時間小于一個月的作品。
同一本書,同一用戶,一天收聽大于等于3集,可以進行推薦;
三天收聽大于等于10集,可以進行推薦;
一周之內收聽大于等于15集,可以進行推薦;
半個月收聽大于30集,可以進行推薦;
一個月收聽大于40集的作品可以進行推薦。
5.對于以上作品以進行排除處理,按單用戶播放集數最多的作品,從高到底降序排列,
共選擇5本書,2本上架時間大于1個月的老書,3本上架時間小于1個月的新書
6.新書上架,初始數據可以選取本站播放量前五的書
或許有人會說,為什么不選擇推薦同類作品,比如我喜歡恐怖小說,聽過本書的人可能聽的恐怖小說也比較多。假如很多人聽的都是恐怖小說,下面出現恐怖小說的概率應該是極高的。
這個確實如此,不過忽略了一個前提,新產品,數據積累不夠,還沒有辦法做到如此精準的推送。
另外,規則算法并不是一層不變的,隨著業務的發展和對產品階段性戰略調整,這個規則也會進行一個改變。以后的時間,我會試著分析一款成熟產品的推薦算法規則,這里面的邏輯復雜,嵌套之多,可比我上面提到的要復雜的多。