Twitter、おすすめアルゴリズムのソースコードを公開 23
ストーリー by headless
公開 部門より
公開 部門より
Twitter は 3 月 31 日、イーロン・マスク氏の予告通りおすすめツイートアルゴリズムのソースコードを公開するとともに、アルゴリズムを解説するブログ記事を公開した
(Twitter のブログ記事、
Ars Technica の記事、
The Verge の記事、
GitHub リポジトリ)。
Twitter のおすすめアルゴリズムは 5 億件のツイートから各ユーザーに合わせた数件のツイートを抽出する必要がある。そのため、1) 候補ソースを用いてベストなツイート 1,500 件を抽出し、2) 機械学習モデルでランク付け、3) ユーザーがブロックしたツイートや既読のツイート、NSFW コンテンツなどを排除して最適なものを選び出す、といった流れで処理を行うという。候補ソースはユーザーがフォローしている人々のツイート (ネットワーク内) とフォローしていない人々のツイート (ネットワーク外) に分かれ、現在はほぼ半々でタイムラインに表示されるようになっているとのこと。
ソースコードは GitHub で公開されており、ライセンスは AGPL となっている。
Twitter のおすすめアルゴリズムは 5 億件のツイートから各ユーザーに合わせた数件のツイートを抽出する必要がある。そのため、1) 候補ソースを用いてベストなツイート 1,500 件を抽出し、2) 機械学習モデルでランク付け、3) ユーザーがブロックしたツイートや既読のツイート、NSFW コンテンツなどを排除して最適なものを選び出す、といった流れで処理を行うという。候補ソースはユーザーがフォローしている人々のツイート (ネットワーク内) とフォローしていない人々のツイート (ネットワーク外) に分かれ、現在はほぼ半々でタイムラインに表示されるようになっているとのこと。
ソースコードは GitHub で公開されており、ライセンスは AGPL となっている。
AGPLの使い道 (スコア:2, 興味深い)
公開するけど利用されたくない時に使うものだった、と。
Re: (スコア:0)
実質そうだよね…
Re: (スコア:0)
前から言ってるじゃん。
GPLは自由ではなく反独占だと。
反独占は自由とイコールではない。
Re: (スコア:0)
あなたがいつから言ってるかなんて知らんし、誰も興味ないよ
そう言われても (スコア:1)
3) ユーザーがブロックしたツイートや既読のツイート、NSFW コンテンツなどを排除して最適なものを選び出す、といった流れ
ブロックしてても、ブロックされてても、こちらがフォローしてない鍵付きアカウントのでも、普通に流れてくるんだよなぁ。
Re: (スコア:0)
ブロックしてても、ブロックされてても、こちらがフォローしてない鍵付きアカウントのでも、普通に流れてくるんだよなぁ。
Twitterを利用しなければ流れてきませんよ
Re: (スコア:0)
「おすすめ」と「ブロック」の意味わかってる?
Re: (スコア:0)
Twitterのオーナーのツイートなどはあらゆる条件を無視してでもユーザに表示すべき最適なものです。
まさに"最適"なものです。
Re: (スコア:0)
ミュートも出てくるんだよねぇ……
Re: (スコア:0)
少し前にはガチの陰謀論アカウントの虫画像がバーンと出てきて流石に引用RTしたバカとそのフォロワー何人かブロックしたけど
ツイッターとか西海岸系はそういうヘイト起こしを意図的に入れてくるんだよなぁ
中華系とか国産はそこ超えちゃいけないって分かってるでしょ? あいつら本気で分かんないんだろうなぁ…
吐き気を催す邪悪なアルゴリズム (スコア:0)
扱いされてるけど表示されない設定が追加されたのでヨシ
Re: (スコア:0)
Power user multiplierが消されてる [github.com]
Re: (スコア:0)
見てみたけどそれらしき設定が見当たらなかった
一部のユーザーにのみロールアウトされる系かな?
なんだ (スコア:0)
おすすめのアルゴリズムを教えてくれるんじゃないのかよ
the-algorithm って何だよ (スコア:0)
ふざけてるというかやる気なさすぎというか
Re: (スコア:0)
それなw
リーダブルコード読めやって思うよね。
たぶんイーロン・マスクがクールな名前…そうや!the algorithm や!これでいこ!って言って言い返せる人誰もいないからそうなったんだろうなw
Re: (スコア:0)
公開用の名前ですし
あでもツリー構造は適当だな
なんでパイソンだけ違うんだろ
java/com/twitter/search
python/twitter/deepbird/projects/timelines
scala/com/twitter
thrift/com/twitter
Re: (スコア:0)
Pythonは、標準にはなっていないもののPEP 423でtop-level namespaceに会社名などを割り当てるべきであると提案されているのでこれに従ったものと思われます。
https://peps.python.org/pep-0423/#top-level-namespace-relates-to-code-... [python.org]
@elonmuskのTwitterだけウェイトを1000000倍にするコード (スコア:0)
やっぱり探されていましたか。こんなIssueがありましたよ。
https://github.com/twitter/the-algorithm/issues/599 [github.com]
かといって、ザッカーバーグのを1000000倍にしてどうするの?
Re: (スコア:0)
そのIssueはただのスパムでそういうコードがあったわけではないです
その辺は設定ファイルでやってるみたいだけどそれは置いてないみたい
機械学習使ってるんじゃ糞の役にも立たないソースだと思ったがそうでもないようだ (スコア:0)
const maskみたなくそこーどがあるのがわかってよかった。
見ないで茶々入れ (スコア:0)
ソース内でrand()はいくつ使われてますか?
Re: (スコア:0)
ソースコード内ではあまり使われていませんがソースコードが読み込む機械学習モデルを作るときにたくさん使いました。
みたいな