久久久久在线观看_又色又爽又黄的免费视频播放_一区中文字幕_日韩电影在线播放

今日頭條 焦點資訊 營銷之道 企業報道 淘寶運營 網站建設 軟件開發 400電話
  當前位置: 首頁 » 資訊 » 網站建設 » 正文

Hacker News 排名算法工作原理

放大字體  縮小字體 發布日期:2018-02-18  來源:新格網  作者:新格網  瀏覽次數:151  【去百度看看】
核心提示:這篇文章我要向大家介紹Hacker News網站的文章排名算法工作原理,以及如何在自己的應用里使用這種算法。這個算法非常的簡單,但卻在突出熱門文章和遴選新文章上表現的異常優秀。

這篇文章我要向大家介紹Hacker News網站的文章排名算法工作原理,以及如何在自己的應用里使用這種算法。這個算法非常的簡單,但卻在突出熱門文章和遴選新文章上表現的異常優秀。

深入 news.arc 程序代碼

Hacker News是用Arc語言開發的,這是一種Lisp方言,由Y Combinator投資公司創始人Paul Graham創造。Hacker News的開源的,你可以在arclanguage.org找到它的源代碼。深入發掘 news.arc 程序,你會找到這段排名算法代碼,就是下面這段:

12

本質上,這段 Hacker News采用的排名算法的工作原理看起來大概是這個樣子:

13

Score = (P-1) / (T+2)^G 其中, P = 文章獲得的票數( -1 是去掉文章提交人的票) T = 從文章提交至今的時間(小時) G = 比重,news.arc里缺省值是1.8

正如你看到的,這個算法很容易實現。在下面的內容里,我們將會看到這個算法是如何工作的。

比重(G)和時間(T)對排名的影響

比重和時間在文章的排名得分上有重大的影響。正常情況下如下面所述:

當T增加時文章得分會下降,這就是說越老的文章分數會越底。當比重加大時,老的文章的得分會減的更快

為了能視覺呈現這個算法,我們可以把它繪制到Wolfram Alpha。

得分隨著時間是如何變化的

你可以看到,隨著時間的流逝,得分驟然下降,例如,24小時前的文章的分數變的非常低——不管它獲得了如何多的票數。

Plot語句:

14

比重參數是如何影響排名的


圖中你可以看到,比重越大,得分下降的越快。

Plot語句:

15

Python語言實現

之前已經說了,這個評分算法很容易實現:

16

關鍵是要理解算法中的各個因素對評分的影響,這樣你可以在你的應用中進行定制。我希望這篇文章已經向你說明了這些

祝編程快樂!

編輯:

Paul Graham 分享了修正后的HN 排名算法:

 

17

 
 
[ 資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 違規舉報 ]  [ 關閉窗口 ]

 
0條 [查看全部]  相關評論

 
網站首頁 | 關于我們 | 聯系方式 | 使用協議 | 版權隱私 | 網站地圖 | 排名推廣 | 廣告服務 | 積分換禮 | 網站留言 | RSS訂閱 | 吉ICP備11001726號-6
企業800網 · 提供技術支持