Twitterがタイムラインに表示されるツイートを選択する、レコメンデーションアルゴリズムを含むソースコードをGitHubに公開しました(公式ブログ、The Verge)。
Twitterのブログ記事では、「おすすめ(For You)」タイムラインに掲載されるツイートを決定する際に、アルゴリズムがどのような動作を行っているのか、ランク付けやフィルタリングについて詳しく説明されています。
記事によると、レコメンデーションパイプラインは主要な3つのステージで構成されています。
- さまざまなレコメンデーションソースからベストなツイートを集める
- 「機械学習モデル」を使ってそれらのツイートをランク付けする。
- ブロックした人のツイート、すでに見たことのあるツイート、仕事上安全でないツイートなどをフィルタリングして、タイムラインに載せる
プロセスの各ステップに関する詳細な説明も行われており、最初のステップでは、約1,500件のツイートを調べ、「おすすめ」タイムラインは、自分がフォローしている人のツイートが50%、フォローしていない人のツイートが50%程度になることが目標だとのことです。ランキングは、「ポジティブなエンゲージメント(いいね、リツイート、返信など)に最適化する」ことを目的としており、最終段階では同じ人からのツイートが多く表示されないような調整が行われているそうです。
Twitterのイーロン・マスク氏は以前からアルゴリズムのオープンソース化を約束しており、金曜日に公開されたコードは「レコメンデーションアルゴリズムの大部分」で残りは今後公開されると説明しています。
Most of the recommendation algorithm will be made open source today. The rest will follow.
Acid test is that independent third parties should be able to determine, with reasonable accuracy, what will probably be shown to users.
No doubt, many embarrassing issues will be… https://t.co/41U4oexIev
— Elon Musk (@elonmusk) March 31, 2023
Twitterは、GitHubのドキュメントで「レコメンデーションアルゴリズムの改善に関する提案について、GitHub issueやプルリクエストを提出するようコミュニティを招待します」と説明し、外部の開発者による改善要求を受け付ける姿勢をみせています。しかしこれらの提案を管理し、変更を内部リポジトリに同期させるためのツールはまだ構築中であるそうで、実際にコミュニティコードが受け入れられることがあるのかどうかは不明です。