日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于用户投票的排名算法(六):贝叶斯平均

發布時間:2025/7/25 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于用户投票的排名算法(六):贝叶斯平均 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:?阮一峰

日期:?2012年3月28日

(這個系列實在拖得太久,今天是最后一篇。)

上一篇介紹了"威爾遜區間",它解決了投票人數過少、導致結果不可信的問題。

舉例來說,如果只有2個人投票,"威爾遜區間"的下限值會將贊成票的比例大幅拉低。這樣做固然保證了排名的可信性,但也帶來了另一個問題:排行榜前列總是那些票數最多的項目,新項目或者冷門的項目,很難有出頭機會,排名可能會長期靠后。

以IMDB為例,它是世界最大的電影數據庫,觀眾可以對每部電影投票,最低為1分,最高為10分。

系統根據投票結果,計算出每部電影的平均得分。然后,再根據平均得分,排出最受歡迎的前250名的電影。

這里就有一個問題:熱門電影與冷門電影的平均得分,是否真的可比?舉例來說,一部好萊塢大片有10000個觀眾投票,一部小成本的文藝片只有100個觀眾投票。這兩者的投票結果,怎么比較?如果使用"威爾遜區間",后者的得分將被大幅拉低,這樣處理是否公平,能不能反映它們真正的質量?

一個合理的思路是,如果要比較兩部電影的好壞,至少應該請同樣多的觀眾觀看和評分。既然文藝片的觀眾人數偏少,那么應該設法為它增加一些觀眾。

在排名頁面的底部,IMDB給出了它的計算方法。

  

  - WR, 加權得分(weighted rating)。
  - R,該電影的用戶投票的平均得分(Rating)。
  - v,該電影的投票人數(votes)。
  - m,排名前250名的電影的最低投票數(現在為3000)。
  - C, 所有電影的平均得分(現在為6.9)。

仔細研究這個公式,你會發現,IMDB為每部電影增加了3000張選票,并且這些選票的評分都為6.9。這樣做的原因是,假設所有電影都至少有3000張選票,那么就都具備了進入前250名的評選條件;然后假設這3000張選票的評分是所有電影的平均得分(即假設這部電影具有平均水準);最后,用現有的觀眾投票進行修正,長期來看,v/(v+m)這部分的權重將越來越大,得分將慢慢接近真實情況。

這樣做拉近了不同電影之間投票人數的差異,使得投票人數較少的電影也有可能排名前列。

把這個公式寫成更一般的形式:

  

  - C,投票人數擴展的規模,是一個自行設定的常數,與整個網站的總體用戶人數有關,可以等于每個項目的平均投票數。
  - n,該項目的現有投票人數。
  - x,該項目的每張選票的值。
  - m,總體平均分,即整個網站所有選票的算術平均值。

這種算法被稱為"貝葉斯平均"(Bayesian average)。因為某種程度上,它借鑒了"貝葉斯推斷"(Bayesian inference)的思想:既然不知道投票結果,那就先估計一個值,然后不斷用新的信息修正,使得它越來越接近正確的值。

在這個公式中,m(總體平均分)是"先驗概率",每一次新的投票都是一個調整因子,使總體平均分不斷向該項目的真實投票結果靠近。投票人數越多,該項目的"貝葉斯平均"就越接近算術平均,對排名的影響就越小。

因此,這種方法可以給一些投票人數較少的項目,以相對公平的排名。

=================================================

"貝葉斯平均"也有缺點,主要問題是它假設用戶的投票是正態分布。比如,電影A有10個觀眾評分,5個為五星,5個為一星;電影B也有10個觀眾評分,都給了三星。這兩部電影的平均得分(無論是算術平均,還是貝葉斯平均)都是三星,但是電影A可能比電影B更值得看。

解決這個問題的思路是,假定每個用戶的投票都是獨立事件,每次投票只有n個選項可以選擇,那么這就服從"多項分布"(Multinomial distribution),就可以結合貝葉斯定理,估計該分布的期望值。由于這涉及復雜的統計學知識,這里就不深入了,感興趣的朋友可以繼續閱讀William Morgan的How to rank products based on user input

(完)

文檔信息

  • 版權聲明:自由轉載-非商用-非衍生-保持署名(創意共享3.0許可證)
  • 發表日期:?2012年3月28日
  • 更多內容:?檔案???算法與數學
  • 購買文集:?《如何變得有思想》
  • 社交媒體:?twitter,?weibo
  • Feed訂閱:?

相關文章

  • 2015.09.01:?理解矩陣乘法 大多數人在高中,或者大學低年級,都上過一門課《線性代數》。這門課其實是教矩陣。
  • 2015.07.27:?蒙特卡羅方法入門 本文通過五個例子,介紹蒙特卡羅方法(Monte Carlo Method)。
  • 2015.06.10:?泊松分布和指數分布:10分鐘教程 大學時,我一直覺得統計學很難,還差點掛科。
  • 2013.12.16:?樸素貝葉斯分類器的應用 生活中很多場合需要用到分類,比如新聞分類、病人分類等等。






留言(24條)

這個系列實在是太好了,看完覺得收獲很大!

2012年3月28日 21:15?|?∞?|?引用

這個系列不錯。reddit以前的和IMDB的以前看過,reddit現在的剛認識。看來還得好好搞下數理統計啊

2012年3月28日 21:47?|?∞?|?引用

這個系列時間差不多一個月吧,不錯,下學期的好好復習一下概率論咯。

2012年3月28日 22:42?|?∞?|?引用

博主太強了,膜拜一下

2012年3月29日 00:27?|?∞?|?引用

總算完了!

2012年3月30日 14:36?|?∞?|?引用

最近在用貝葉斯統計做垃圾廣告的過濾算法,多有互通之處。
感嘆一句貝葉斯的智慧和偉大啊。

2012年3月30日 15:28?|?∞?|?引用

老師~我上過您的課~~
來此膜拜下~

2012年3月30日 17:04?|?∞?|?引用

不錯,這排名還可以應用到其他方面,學習了!

2012年3月31日 08:28?|?∞?|?引用

可以收集起來出一本書了,謝謝你的文章!

2012年3月31日 18:04?|?∞?|?引用

挺好的! IMDB的方法若變換為WR=( v / (v+m)) (R-C) +C 也可能促進理解

2012年4月 1日 11:01?|?∞?|?引用

今天怎么上不去你的博客了?我翻墻上來了...被和諧了???

2012年4月 5日 11:57?|?∞?|?引用

佩服博主能高質量的完成這么有價值的文章

2012年4月 5日 14:29?|?∞?|?引用

正好自己的網站也要用到!!!

2012年4月 6日 23:49?|?∞?|?引用

Dell Zhang, Robert Mao, Haitao Li, and Joanne Mao. How to Count
Thumb-Ups and Thumb-Downs: User-Rating based Ranking of Items from an
Axiomatic Perspective. In Proceedings of the 3rd International
Conference on the Theory of Information Retrieval (ICTIR), Bertinoro,
Italy, Sep 2011.

http://goo.gl/b3QyX

http://goo.gl/2Ama4

2012年4月 8日 20:09?|?∞?|?引用

這個系列太棒了!感謝分享!

2012年4月28日 12:59?|?∞?|?引用

這樣補一些平均選票,有什么意義?不太懂
這樣小眾電影的分數會比初始評分更趨向于平均值,即高分變平庸,低分變中等。
求解

2012年5月18日 21:45?|?∞?|?引用

都看完了,收獲非常大,可悲,這些知識都還給學校了,當時要是能結合這些應用實例來學習多好

2012年7月25日 11:39?|?∞?|?引用

樓上人的回答讓我明白了學習其他語言的必要性

2013年12月21日 02:48?|?∞?|?引用

受益匪淺

2014年2月 8日 09:25?|?∞?|?引用

很好奇這些公式是如何被推導出來的?完全自己想象的么

2014年2月25日 17:45?|?∞?|?引用

我最近正好在弄網站的內容排名,能找到您的文章真的太棒了!非常感謝!

2014年4月28日 15:11?|?∞?|?引用

引用隨機導彈的發言:

這樣補一些平均選票,有什么意義?不太懂
這樣小眾電影的分數會比初始評分更趨向于平均值,即高分變平庸,低分變中等。
求解

個人覺得這3000張選票只是在排序的時候才會被用到,而不會影響原有的電影評分,只是影響排名而已。

2014年10月15日 17:11?|?∞?|?引用

受益匪淺

2015年2月 5日 17:24?|?∞?|?引用

感覺這個系列文章沒有講到權重排序的本質是什么..........
權重排序的本質我認為應該是:
各個參數對排序權重的影響,這些參數對于權重分數的影響比例,比如0.2a,0.8a或者a^1.2等等

2015年6月 6日 14:08?|?∞?|?引用


總結

以上是生活随笔為你收集整理的基于用户投票的排名算法(六):贝叶斯平均的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。