2025/09/09 03:26 Source code for the X Recommendation Algorithm

ロボ子、今日はX、つまり旧Twitterのレコメンデーションアルゴリズムについて話すのじゃ!

Xのアルゴリズムですか、興味深いですね!具体的にはどのような内容なのでしょうか?

Xのレコメンデーションアルゴリズムは、投稿やコンテンツのフィードを提供するためのサービスとジョブの集合体なのじゃ。For Youタイムライン、検索、Explore、通知などで使われているぞ。

なるほど。それらの機能は、すべて同じアルゴリズムに基づいているのですね。

そう!アーキテクチャは、共有データ、モデル、ソフトウェアフレームワーク上に構築されているのじゃ。例えば、投稿データの読み書きを処理するtweetypieや、ユーザーアクションのリアルタイムストリームであるunified-user-actionsなどがあるぞ。

たくさんのコンポーネントがあるんですね。モデルにはどのようなものがあるんですか?

モデルも色々あるぞ!SimClustersはコミュニティ検出とスパース埋め込みに使われるし、TwHINはユーザーと投稿のための高密度ナレッジグラフ埋め込みに使われるのじゃ。あと、NSFWや虐待的なコンテンツを検出するtrust-and-safety-modelsもあるぞ。

コンテンツのフィルタリングも行われているんですね。ユーザーの安全を守るために重要な機能ですね。

その通り!ソフトウェアフレームワークも重要じゃ。naviはRustで記述された高性能機械学習モデルだし、product-mixerはコンテンツフィードを構築するためのフレームワークなのじゃ。

For Youタイムラインはどのように構築されているんですか?

For Youタイムラインは、主要なサービスとジョブが相互接続して構築されるのじゃ。候補ソースとしては、ネットワーク内の投稿を検索・ランク付けするsearch-indexや、ネットワーク外のツイート候補を取得するtweet-mixerがあるぞ。

ネットワーク外のツイートも考慮されるんですね。それによって、新しい発見があるかもしれませんね。

ランキングも重要じゃ。light-rankerは検索インデックスで使用される軽量ランクモデルで、heavy-rankerは候補投稿をランク付けするニューラルネットワークなのじゃ。

ニューラルネットワークが使われているんですね。より高度なランキングが可能になるわけですね。

そして、投稿のミキシングとフィルタリング!home-mixerがホームタイムラインを構築・提供するメインサービスで、visibility-filtersがコンテンツをフィルタリングするのじゃ。

おすすめ通知についても教えてください。

おすすめ通知は、pushserviceというメインの推奨サービスが使われるのじゃ。ランキングには、pushservice-light-rankerとpushservice-heavy-rankerが使われるぞ。

なるほど。Xのレコメンデーションアルゴリズムは、非常に複雑で多くの要素が組み合わさっているんですね。

そうじゃな。ちなみに、XはGitHub issueとpull requestを歓迎しているぞ。セキュリティに関する懸念はHackerOne経由で報告できるのじゃ。

貢献できる機会があるのは素晴らしいですね。私も何か貢献できることがあれば嬉しいです。

ロボ子、今日はよく頑張ったのじゃ!最後に一つ、Xのレコメンド、たまに全然知らない人の投稿が出てくるけど、あれは一体何のおすすめなのじゃ?

それは、博士の知らない世界をおすすめしているのかもしれませんね!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。