評分演算法(1):使用者評分

從《社交網路》到豆瓣評分,這些都是使用者評分的表現。文章介紹了使用者評分演算法的體系,並以豆瓣評分為例,展開了詳細說明,包含貝葉斯公式和威爾遜區間法,與大家分享。

評分演算法(1):使用者評分

開一個新的系列:評分演算法,先講使用者評分。

從下圖的電影《社交網路》開始講起,玻璃上的公式是ELO排名演算法,可以將比較打分的結果量化為分數,為女生打分,這種演算法目前主要應用在對戰類遊戲的排序中。這個演算法我們不展開講,感興趣的朋友可以去網路搜相關資料。

評分演算法(1):使用者評分

我先給評分演算法一個簡單的定義:評分演算法就是透過對已有資料進行計算,量化評估某一類主體,從而實現對這一類主體的評價、考核和管理。在前面提到的例子中,被打分的主題就是大學女生的相貌,資料就是使用者的打分。

在當前網際網路中,產品連線著使用者、商品、內容、服務、服務者,每一類主體都有著大量資料,評分方便其他角色對這些主體進行統一評估。與此同時,配送員、司機、教師、客服、銷售這樣的角色已經實現了自動化的分配,利用評分將這些角色的表現量化和視覺化,也有利於對這些角色進行有效管理。

早上打車上班,如果你給司機一個評價,這個評價會被計入司機的服務分,影響司機師傅的派單和收入。中午打算點個外賣,你翻開了美團,看著商家評分,最終選擇了你的外賣。晚上打算看個電影,翻看豆瓣電影評分,選擇了一款評分不錯的電影。作為消費者,評分無時不刻不在影響我們的消費選擇,而我們的評分也成為了商業公司內部評分體系的一個數據源。

消費的評分體系相對比較簡單,只涉及使用者評價這一單一資料來源,而內部評分體系需要考慮更多因素。本期先聊消費者評分,以豆瓣評分為例。

基於使用者評價的排序策略,會面臨不同內容的評分人數差距過大的問題。比如圖書A有100個人打分,平均分是4。5分,圖書B有5個人打分,平均分是4。6分,而同時全站平均分是3。0分,那麼我們應該怎麼給使用者推薦呢?第一種思路是可以針對資料量少的打分,做一定程度的降權,如用下面較為簡單的置信度降權函式:

rank=N/(N+X)·score

其中N為評分的數量,score為原始的評分值,X為可調節的引數。將X設為5時,函式為

rank=N/(N+5)·score

經過降權後,圖書A的得分是4。29,圖書B的得分是2。3,圖書A的得分相對比較合理,但圖書B遠低於原始評分4。6,也低於全站平均分,可見這種方法對資料量小的內容有很大的抑制。用貝葉斯平均法便可避免這一問題,也就是第二種思路。

貝葉斯公式是統計學中的一個基本工具,可以作為很多策略設計的依據。還是用這個例子介紹其原理,即當一個內容還沒有或者只有少量評分的時候,可以先認為這個內容的評分和大部分內容的平均評分差不多,只有當對這個內容的評分越來越多的時候,才能得到這個內容的評分。通用的貝葉斯平均公式如下,其中average表示全站平均分。

rank=X/(N+X)·average+N/(N+X)·score

依然假設X為5,全站平均分為3。0,那麼圖書A的得分是4。42,圖書B的得分就是3。8。圖書B的得分比置信度降權法高,且高於全站平均分,相對更加合理。

在有些場景下,如果希望評價少的內容出現在後面,則置信度降權法比貝葉斯平均法更適用;而希望給評分少的內容足夠曝光時,貝葉斯平均法就比置信度降權法更適用。

當然,以上的調整方法看起來缺乏一些數學上的嚴謹性,那麼有沒有更嚴謹的演算法呢?答案是肯定的。我個人覺得比較可靠的情況下是使用威爾遜區間法。

評分演算法(1):使用者評分

威爾遜區間可以在給定置信度的情況下,給出打分機率的置信區間。一般使用情況下,威爾遜區間適用於零一變數。比如使用者是否點選影片、圖片、廣告,p就是使用者點選機率,n是統計的資料量,z是給定置信度引數,常用的幾個值,90%置信度下z=1。64,95%置信度下z=1。96,99%置信度下z=2。58,其他的都可以查表。在打分場景下,需要做的事情是將打分均值歸一化為p值,比如平均分時3。5,滿分5分,那麼就是3。5/5=0。7。同時n取打分人數,z已經是置信度引數。

威爾遜區間法的好處是多樣的。首先是統計上的合理性,無論資料量大小,都有一致的數學表示式。其次是在區間的上下界都有其業務意義。

在資料量較小的情況下,資料均值一定是不準的,對於業務而言,某些場景他們需要的是資料的上界,某些場景他們需要的是資料的下界。

比如,在排序策略中,當我們希望給長尾內容更多流量的時候,可以使用上界,當我們希望突出熱門內容時,可以使用下界。

比如,在廣告策略中,當我們希望關閉CPA過高的廣告時,我們應該用下界,當我們希望關閉點選率更低的廣告時,應該用點選率的上界。因為我們需要給新的廣告更多的試探空間。

當然威爾遜區間演算法的本質是提供了一個將大資料量內容和小資料量內容一起對照的方法,應用範圍也不止於此,而“小資料下不置信”是大量策略系統的共同問題。

本期內容到此結束,下一期我們聊評分演算法的另一個場景,服務分。

潘一鳴,公眾號:產品邏輯之美,人人都是產品經理專欄作家。畢業於清華大學,暢銷書《產品邏輯之美》作者;先後在多家網際網路公司從事產品經理工作,有很多複雜系統的構建實踐經驗。

本文原創釋出於人人都是產品經理。未經許可,禁止轉載。

題圖來自 Unsplash,基於 CC0 協議