首頁 >科技週邊 >人工智慧 >馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

王林
王林轉載
2023-04-11 12:34:031871瀏覽

馬斯克的“開源承諾”,終於如約而至。

就在剛剛,馬斯克正式宣布:

大部分(Twitter的)推薦演算法將在今天開源,剩下的也會跟進。

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

而且馬斯克緊接著亮出了GitHub上Twitter推薦演算法原始碼的位址。

短短數小時,便攬獲上萬個Star:

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

#除此之外,馬斯克還表示:

推特將每24到48小時更新一次基於用戶建議的推薦演算法。

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

至此,這個號稱每天從5億條推文做推薦的大演算法的廬山真面目,終於得以露出。

Twitter的推薦演算法長什麼樣子?

據介紹,Twitter的推薦系統是基於一組核心模型和功能,可以從推文、使用者和互動資料中提取潛在資訊。

這些模型的作用是回答Twitter網路中的重要問題,例如,「未來你與另一個用戶互動的機率是多少?」或者,「Twitter上有哪些社群以及其中的趨勢推文是什麼?」

若是能夠準確回答這些問題,就可以讓Twitter提供更多相關的推薦。

Twitter的推薦系統由三大部分構成:

  • 從不同的推薦來源取得最好的推文,這個過程稱為候選來源。
  • 使用機器學習模型對每條推文進行排名。
  • 套用heuristics和filters,例如過濾已封鎖使用者的推文、NSFW內容和已看到的推文。

負責建造和提供「For You」時間軸的服務被稱為「Home Mixer」。

「Home Mixer」建立在「Product Mixer」之上,這是客製化的Scala框架,有助於建立內容的動態流。

這項服務作為軟體主幹,連接不同的候選來源、評分函數、heuristics和filters。

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

候選來源(Candidate Sources)

#Twitter使用多個候選來源來為使用者檢索最近和相關的推文。

對於每個請求,推特嘗試透過這些來源從數億個推文池中提取最佳的1500條。

從您關注的人(內部網路)和不關注的人(外部網路)中尋找候選人。

如今,「為您推薦」時間軸平均由50%的內部網路推文和50%的外部網路推文組成(儘管這可能因用戶而異)。

內部網路資源(In-Network Source)

內部網路資源是最大的候選來源,旨在提供關注的使用者最相關、最新的推文。

它使用邏輯回歸模型高效地對關注的人的推文進行排名,以其相關性為基礎。然後將排名最高的推文發送到下一階段。

排名內部網路推文最重要的組成部分是Real Graph。

Real Graph是一種模型,用於預測兩個使用者之間的互動可能性。使用者和推文作者之間的Real Graph分數越高,就會包含更多他們的推文。

內部網路來源最近成為Twitter的研究對象。最近Twitter停止使用Fanout服務,這是一個12年前用來從每個用戶的推文快取中提供內部網路推文的服務。

外部網路資源(Out-of-Network Sources)

在用戶網路之外尋找相關的推文是一個棘手的問題。

因為如果你不追蹤作者,你怎麼知道某條推文是否與你相關?

為此,Twitter採取了兩種方法來解決這個問題。

一個是社交圖(Social Graph)。

這個方法是透過分析你關注的人或有相似興趣的人的活動,來估計你會發現什麼是相關的。

主要遍歷參與的圖,並按照以下步驟回答以下問題:

  • 我關注的人最近在Twitter上發了什麼訊息?
  • 誰跟我一樣喜歡類似的推文,他們最近還喜歡什麼?

團隊根據這些問題的答案產生候選推文,並使用Logit模型對產生的推文進行排名。

這種類型的圖形遍歷對於外部網路推薦是必不可少的;團隊開發了 GraphJet,一個維護用戶和推文之間即時互動圖的圖形處理引擎,來執行這些遍歷。

雖然這種搜尋Twitter參與和關注網路的啟發式方法已經被證明是有用的,但嵌入式空間方法已經成為外部網路推文的更大來源。

第二個是嵌入空間(Embedding Spaces)。

嵌入式空間方法旨在回答一個關於內容相似性的更普遍的問題——什麼推文和用戶與我的興趣相似?

Embeddings透過產生使用者興趣和推文內容的數字表示來運作。然後可以計算這個嵌入空間中任兩個用戶之間的相似度,推文或用戶-推文 對。

只要產生準確的embedding,就可以使用這種相似性作為相關性的替代。

Twitter 最有用的嵌入空間之一是 SimClusters。

SimClusters 使用自訂矩陣分解演算法發現由一群有影響力的用戶錨定的社區(有14.5萬個社區,每三週更新一次)。

用戶和推文在社群空間中表示,並且可以屬於多個社群。社群的規模從個人朋友群的數千名用戶到新聞或流行文化的數億用戶不等:

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

更多與之相關的詳細內容,可戳文末連結~

One More Thing

Twitter的演算法開源了,然後手快的網友吧…都已經開始根據演算法總結怎麼成為大V了:

你追蹤的人數和追蹤你的人數比例很重要、訂閱TwitterBlue有一定作用…

馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次

##參考連結:

[1]
https://www.php.cn/link/ce2b9a26bddc32cba5af69372ee14c00[2]
https://www.php.cn /link/e55bc0255c752d1cb05da10c0f1f5026#[3]
https://www.php.cn/link/10fe8dc69a0964edc16fed1a1bd5710fe8dc69a0964edc16fed1a1bd5711a1bdhttps://www.php.cn/link/51f4efbfb3e18f4ea053c4d3d282c4e2
#

以上是馬斯克開源Twitter推薦演算法,GitHub秒破萬星,也承諾每24-48小時進化一次的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除