個推常用演算法

2021-09-19 11:13:01 字數 1567 閱讀 5259

很久了一直覺得個性化推薦這個東西是很高階且神秘的,直到這次為主題商店引入個性化演算法,才算是有緣以管窺天,基本了解了個性化推薦的相關知識。

一、個性化推薦的意義與分類

故名思議,個性化推薦,自然是為了提高內容產品的消費的轉化而進行的基於用於自身特點的推薦,希望經過推薦提高內容的消費轉化率,讓使用者用的開心,內容也得到最大程度的利用。為了給使用者推薦的更加準確,因此就需要更加的了解使用者,這裡的了解我分為了兩個型別:

一種是視覺化的推薦,是標籤化的了解,根據使用者的行為資料,給使用者打標籤,從而視覺化的看出使用者的特點;

一種是非視覺化的推薦,是演算法層面的了解,根據協同過濾,直接根據資料和資料,使用者和使用者之間的關係進行推薦,直接將算好的結果呈現給使用者,因此是非視覺化的了解。

二、個性化推薦的實現規律

3)復合排序層:將計算得出的備選內容和現有的其他下發演算法進行歸一運算,進行同意排序運算

4)展示下發層:將排序後的內容,進行下發展示

二、典型的個性化演算法

因為標籤體系對於產品的上下游而言的好是顯而易見的,因此新產品直接就開始建立是最合適的。但是如果需要對舊產品引進個性化推薦,其實更加建議從非視覺化的推薦開始,這種方式的啟動成本相對低一點,再根據推薦的效果進而引入標籤體系。而輸入法正是從這個角度進行的,以下就先分享下個性化的典型化演算法:

計算邏輯層

根據上面的圖,就可以對個性化分為三個路線

1,基於內容的相似推薦

但是在非視覺化,無標籤的情況下,如何實現基於內容的推薦呢?

內容的相似推薦

2,基於使用者的相似推薦

使用者a,消費過:i,iii,iv

使用者b,消費過:ii,iii

使用者c,消費過:i,ii ,iv

p(ii | i)=1/3, p(iii | i)=1/3,p(iv | i)=2/3,因此給使用者d進行推薦的話,iv是首選。

基於使用者的相似推薦

3,基於標籤的相似推薦

這種推薦方式是基於使用者標籤和內容標籤的匹配程度,按照使用者自身的屬性,計算出與使用者身份匹配度最高的內容,然後機進行排序和下發

四、模型的選擇

模型的選擇就是基於產品現行的的原始資料情況了,同時也可以根據現有的資料進行基於使用者和基於內容的結合。從而將演算法中的協調、過濾兩個環節進行拆分。

將協同和過濾進行拆分的過程其實是依次解決了兩個問題:找誰協同?過濾什麼?

這種方式實現起來的模型其實是這樣的:為了給使用者a做推薦,在乙個推薦週期內,先根據行為的相似度,找好了b,c,d,作為協調使用者。然後再本次推薦週期內將b,c,d的行為和a最新的行為進行對比,再按照內容進行相關度計算,從而得出給a推薦的內容。

最後,沒有最好的推薦演算法,只有最合適自己產品的推薦演算法,只有不斷地進行嘗試,調教推薦引擎,才能最高效的讓自己的內容利用率最大化。

個推mastersecret 個推

例項 function igtnotificationtemplatedemo template new igtnotificationtemplate 應用應用 template set transmissiontype 1 透傳訊息型別 template set transmissioncont...

推排序演算法C C

在堆排序演算法中,我們使用的是最大堆。下面的 是給定一組數,構造乙個最大堆。left heap,location 和right heap,location 分別返回陣列heap中location的左右孩子的索引。max heapify heap,i 是確保heap陣列的i的左右孩子都滿足最大堆化。b...

django 整合個推 個推微服務閘道器架構實踐

在微服務架構中,不同的微服務可以有不同的網路位址,各個微服務之間通過互相呼叫完成使用者請求,客戶端可能通過呼叫n個微服務的介面完成乙個使用者請求。因此,在客戶端和服務端之間增加乙個api閘道器成為多數微服務架構的必然選擇。在個推的微服務實踐中,api閘道器也起著至關重要的作用。一方面,api閘道器是...