我們擅長商業策略與用戶體驗的完美結合。
歡迎瀏覽我們的案例。
3 月 31 日,正如馬斯克一再承諾的那樣,Twitter 已將其部分源代碼正式開源,其中包括在用戶時間線中推薦推文的算法。目前,該項目在 GitHub 已收獲 10k+ 個 Star。
馬斯克在 Twitter 上表示此次發布的是“大部分推薦算法”,其余的算法也將陸續開放。他還提到,希望“獨立的第三方能夠以合理的準確性確定 Twitter 可能向用戶展示的內容”。在關于算法發布的 Space 討論中,他說此次開源計劃是想讓 Twitter 成為“互聯網上最透明的系統”,并讓它像最知名也最成功的開源項目 Linux 一樣健壯。“總體目標,就是讓繼續支持 Twitter 的用戶們最大程度享受這里。”
Twitter 官網博客詳細介紹了算法在確定 For You 時間線所顯示的推文時,會具體參考哪些內容并如何對其進行排名和過濾。
從博文來看,推薦管線由三個主要階段組成。
首先,它會收集“來自不同推來源的最佳推文”,之后使用“機器學習模型”對各推文進行排名。最后,它會過濾掉來自已屏蔽用戶的推文、已經看過的推文或者在工作時間不宜觀看的內容,最后將結果顯示在時間線上。
文中還進一步對過程中的具體步驟做出解釋。
例如,第一步大約會查看 1500 條推文,目標是讓 For You 時間線中約 50% 的推文來自已關注的用戶(即「人際網絡內」),50% 的推文來自“尚未關注的「人際網絡外」賬戶”。排名則“參與積極性進行優化(例如點贊、轉發和回復)”,最后一步則努力保證用戶不會看到同一個人的過多推文。
誠然,代碼透明(用戶能夠看到系統到底在以怎樣的機制為時間線選擇推文)和代碼開源(允許社區提交自己的代碼作為備選,也可在其他項目中使用 Twitter 算法)并不完全是一碼事。雖然馬斯克反復提到要開源,但如果 Twitter 想要言而有信,就必須滿足后者的標準。換言之,Twitter 需要建立新的治理系統,決定批準哪些 PR、關注哪些用戶提出的問題,以及如何阻止惡意人士出于個人目的而破壞代碼。
目前來看,Twitter 正在為此而努力。GitHub 上的自述文件提到,“我們邀請社區在 GitHub 上提交問題和 PR,為推薦算法的改進提出建議。”但文件還寫道,Twitter 仍在構建“用于建議管理并將變更同步至內部代碼倉庫的工具”。馬斯克領導下的 Twitter 曾經做出過不少承諾,但并沒能堅持下來,所以恐怕要到其實際接收社區代碼之后才能確定這是否屬實。
馬斯克的開源承諾
此前,馬斯克曾多次表示將開源 Twitter 算法。
2022 年 3 月,馬斯克曾在 Twitter 發起一項調查,詢問用戶對該平臺算法開源的看法。他寫到:“我擔心 Twitter 算法中實際存在的偏見會產生重大影響,我們怎么知道背后到底發生了什么?”馬斯克認為,我們對 Twitter 這個公共平臺的信任程度越高,文明的風險就越小。
2022 年 5 月,馬斯克曾與 Twitter 聯合創始人兼前 CEO Jack Dorsey 就該平臺的算法問題發生過爭執。馬斯克表示,“算法正在以你們意識不到的方式操縱你們……我不是說算法有惡意,但它的確在猜測你想看什么內容,這樣就會無意間操縱/放大你的觀點,而你卻完全沒有意識到正在發生什么。”
2022 年 10 月接管 Twitter 后,馬斯克關于開源 Twitter 算法的想法也沒有發生改變。
2023 年 2 月 21 日,馬斯克稱將于下周對 Twitter 算法進行開源。當時一位 Twitter 用戶表示,如果 Twitter 能夠開源算法,他們將會“真心折服”。馬斯克回應道:“當我們下周開源算法時,一開始請做好失望的準備,但之后將會快速改善。”
不過遺憾的是,馬斯克并未兌現“下周開源”的承諾。直到 3 月 18 日,馬斯克再次發聲:“Twitter 將于 3 月 31 日開源所有用于推文推薦的代碼。”
馬斯克表示:“我們的‘算法’過于復雜且內部未完全理解。人們會發現很多愚蠢的事情,但我們會在發現問題后立即修補。我們正在開發一種簡化的方法來提供更具吸引力的推文,但這項工作仍在進行中,這也將是開源的。提供代碼透明度一開始可能會令人尷尬,但它應該會讓推薦質量快速提高。最重要的是,我們希望贏得您的信任。”
不過尷尬的是,據美聯社當地時間 3 月 26 日報道,一份法律文件顯示,推特公司的部分源代碼遭泄露,被發布在開源編程及代碼托管網站 GitHub 上。為防止該事件對其服務產生潛在的破壞性損失,Twitter 已經采取了法律行動,GitHub 遵從通知并刪除了被泄露的代碼。
DMCA 通知顯示,這次泄露的源代碼是 Twitter 平臺和內部工具的私有源代碼,嚴重侵犯了 Twitter 的版權。具體的倉庫地址是:https://github.com/FreeSpeechEnthusiast/PublicSpace。該帳號的名字 “FreeSpeechEnthusiast”,這顯然是對馬斯克的攻擊,畢竟他曾自稱 “言論自由絕對主義者”。
現在,馬斯克終于如愿開源 Twitter 算法,但他的決斷也面臨著強烈的反對之聲。用戶們對自己 For You 頁面中經常顯示馬斯克的推文表示不滿,而馬斯克的支持者們則擔心自己在社區中的參與度正在降低。他辯解稱,新的推薦算法希望“最大限度削減”負面和仇恨內容,但之前無法訪問這些代碼的外部分析師對這種說法并不買賬。
此外,Twitter 還可能面臨來自開源社區的競爭壓力。Mastodon 是一個去中心化社交網絡,目前在特定圈子里正越來越受歡迎。Twitte r 公司聯合創始人 Jack Dorsey 則正在支持另一個名為 Bluesky 的類似開源項目。
Twitter 推薦算法的底層工作機制
像 Twitter 這樣復雜的系統,開源算法并非易事。開源作者 Travis Fischer 曾在一篇文章中分析道,Twitter 的推薦算法是由一個個性化推薦系統提供的,用于預測用戶最有可能與哪些推文和用戶互動。關于這個推薦系統,最重要的兩部分是:
用來訓練 ML 模型的基礎數據,即 Twitter 的大規模專有網絡圖;
在確定相關性時考慮的排名信息。
大規模專有網絡圖
像 Twitter 這樣的社交網絡就是超大圖的實例,節點是用戶和推文的模型,邊則是回復、轉發和喜歡等互動的模型。
Twitter 動態網絡圖的可視化,作者是 Michael Bronstein,來自 Twitter 的 Graph ML 部門(2020)。
Twitter 的核心商業價值有很大一部分來自于這個龐大的由用戶、推文和互動構成的基礎數據集。用戶登錄、查看推文、點擊推文、查看用戶資料、發布推文、回復推文等,在 Twitter 上的每一次互動都會被記錄到內部數據庫。
從 Twitter 的公共 API 獲得的數據只是 Twitter 內部跟蹤數據中的一小部分。這一點很重要,因為 Twitter 的內部推薦算法可以獲得所有這些豐富的互動數據,而任何開源工作都可能僅能使用一個有限的數據集。
排名信息
2017 年,Twitter 的研究人員曾在一篇名為《在 Twitter 時間線上使用大規模深度學習》的文章中提到,為了預測某條推文是否會吸引用戶,Twitter 的模型考慮了以下幾個要點:
推文本身:它的新近度,存在的媒體卡(圖像或視頻),總互動數(如轉發和喜歡的數量)。
推文作者:用戶過去與這個作者的互動,用戶與他們聯系的強度,用戶關系的起源。
用戶:用戶在過去覺得有吸引力的推文,用戶使用推特的頻率和程度。研究人員表示,“我們考慮的特征及其各種互動的清單在不斷增加,為我們的模型提供了更多存在細微差別的行為模式。”
這些 2017 年的排名信息描述可能有點過時,但這些核心信息在今天仍然與 Twitter 高度相關。因為這份清單很可能已經推廣到幾十甚至幾百個重點機器學習模型,它們支撐著 Twitter 的算法。
一個深度學習模型的可視化,用于確定一個用戶在未來關注另一個用戶的可能性。這個模型代表了 Twitter 內部各種推薦系統的一小部分。
Travis Fischer 認為,將 Twitter 推薦算法開源難免會遇到一些重大的工程挑戰。
比如,Twitter 的網絡圖非常龐大,包含數以億計的節點和數十億的邊。Twitter 的實時性帶來了另一個獨特的挑戰:用戶希望 Twitter 盡可能地接近實時,這意味著底層網絡圖是高度動態的,延遲成為一個真實的用戶體驗問題。此外,還有可靠性、安全與隱私方面的挑戰。
但無論如何,馬斯克還是兌現了他的開源承諾,Twitter 推薦算法開源也標志著,這類平臺的透明度正在邁出關鍵一步。
?。?a href="http://www.dianayi.cn">碼上科技)