5. 前文
Twitter has open-sourced one of its most prized possessions — the recommendation
algorithm!
Twitterは最も価値のある所有物の一つをオープンソース化した。リコメンドアルゴリズムで
す!
Every day, Twitter serves over 150 billion Tweets to people’s devices.
毎日、Twitterは1500億を超えるツイートを人々のデバイスに届けている。
Every day, people post over 500 million Tweets.
毎日、人々は5億を超えるツイートを投稿している。
The recommendation algorithm shows you only a handful of top tweets that are relevant and
engaging for you.
そのリコメンデーションアルゴリズムはみなさんに、皆さんに関連した、そして興味のあるた
くさんのトップツイートのみを見せている。
open-sourced: 〜をOS化する
prized: 価値のある
possession: 所有物
handful: いっぱいの
relevant: 関連した
6. So how does the algorithm select Tweets that end up on your For You timeline?
どのようにそのアルゴリズムが「For You」タイムラインに乗っけるツイートを選択しているの?
Well, there are so many pieces to this puzzle.
そう。このパズルに対してはたくさんのピースがあるのだ。
The recommendation algorithm is a collection of different models, features, and services.
リコメンデーションアルゴリズムは異なるモデル、特徴、サービスの集合体からなっている。
(See the main blog illustration for how all the components work together)
Since I want to keep this non-technical, I won’t be covering the technical details of these
services.
私は、この記事をあまり技術的にしないようにしたいので、これらのサービスの技術的な詳細
をカバーしない。
But it’s pretty fascinating stuff!
でも、これはかなりホットな内容です!
collection: よせあつめ
fascinating: ホットな
stuff: 内容
7. I have provided a link to (the Twitter blog) and (other relevant resources) at the end where
you can explore all of them in detail.
私はTwitterブログと他の関連するリソースへのリンクをこの記事の終わりに提供した。そこで
は、みなさんがそれらのすべてを詳細に探索することができます。
Anyways, back to the stuff we can all easily understand.
ともかく、私たちが容易に理解できる内容に戻りましょう。
All of the components collectively try to answer two important questions:
構成要素のすべては2つの重要な疑問に合わせて答えようとする。
•What is the probability you will interact with another user in the future
将来、あなたが他のユーザーとやりとりをする可能性
•What are the communities on Twitter and what are trending Tweets within them?
Twitter上のコミュニティは何?そしてその中では何がトレンドのツイートなの?
This is what the communities look like…
ここでいう、コミュニティーとはこんな感じである。
( IMAGE )
There are 145k communities, which are updated every three weeks.
そこには145000ものコミュニティーがある。それは3週間ごとに更新される。
Some have millions of users in them.
explore: を探索する
collectively: 合わせて
probability: 可能性
interact with: ~と絡む
8. Demystifying The Recommendation Algorithm
リコメンドアルゴリズムの神秘を解く
The recommendation algorithm is built using a pipeline containing three stages:
リコメンドアルゴリズムは、3つのステージを含んだパイプラインを使って構成されている。
1.Candidate Tweet Sourcing
候補となるツイートの選別
2.Tweet Ranking
3.Tweet Filtering
demystify: ~の神秘を解く
9. 1. Candidate Tweet Sourcing
Extracts the best 1500 candidate Tweets relevant for a user from a pool of hundreds of
millions of Tweets.
この処理は、何億ものツイートのプールからそのユーザーに関連するベスト1500ツイート候補
を抽出する。
There are two main candidate tweet sources: People you follow & people you don’t follow.
そこには、2つの主となるツイート供給源がある。それはあなたがフォローする人&あなたが
フォローしていない人。
Tweets are sourced from both sources in a 50–50 ratio.
ツイートは、両方の供給源から50-50の割合で供給される。
Tweets are sourced using two graph processing techniques: Real Graph & GraphJet, an
embedding technique known as SimClusters, and a custom matrix factorization algorithm.
ツイートは、2つのグラフ処理テクニックを用いて供給される。。。。。
(cough, cough…That’s getting too technical)
(ゴホゴホ、、、ちょっと難しすぎました) extract: 抽出する
ratio: 割合
10. Basically, the components (within the candidate sourcing system) try to answer these
questions:
基本的に、候補供給システムの構成要素はこれらの質問に答えようとする
•What is the likelihood of engagement between two users?
2つユーザー間はどれくらい近い関係か?
•How can we tell if a certain Tweet will be relevant to you if you don’t follow the author?
もし、あなたがそのツイート主をフォローしていなかったとしたら、ある特定のツイートが
あなたに関連しているかどうか、どのように判断するだろうか?
•What Tweets did the people (who)I follow recently engage with?
どのツイートが、私がフォローしている人が最近気に入っているだろうか?
•Who likes similar Tweets to mine, and what else have they recently liked?
誰が私のツイートと似たツイートを最近ライクした?そして、それ以外で最近ライクしたの
は何?
•What Tweets and Users are similar to my interests?
どのツイートやどのユーザーが私の興味と似ている?
candidate: 候補
likelihood: もっともらしさ
engagement: 関係
tell: 区別する
certain: 特定の
relevant to: ~と関連する
11. 2. Tweet Ranking
Scores the relevance of each candidate Tweet using a ~48M parameter neural network
known as Heavy Ranker.
TweetRankingは、HeavyRankerとして知られる最大4800万のパラメータをもつニューラル
ネットワークを使って、それぞれの候補となるツイートの関連性にスコアをつける。
This system takes into account thousands of features to give each tweet a score.
このシステムはそれぞれのツイートにスコアを与えるために数千もの特徴を考慮に入れる。
(Go to comments section for complete features list)
score: にスコアをつける
relevance: 関連性
take into account ~: ~を考慮にいれる
12. 3. Tweet Filtering
Creates a balanced and diverse feed by filtering out the candidate Tweets based on various
factors, such as
TweetFilteringは様々な要素に基づいて、候補となるツイートを絞ることでバランスの取れた、
さまざまなフィードをつくる。たとえば、
•Blocked accounts
•Repetitive tweets
•Different authors
•Edited tweets
•NSFW content, etc.
balanced: バランスの取れた
diverse: さまざまな
13. Serving Tweets Using Home Mixer Service
HomeMixerServiceをつかったツイートの提供
After the three stages are complete, it’s time to serve the selected tweets to the user.
この3つの段階が完了したあと、選ばれたツイートをユーザーに供給する時間である。
Twitter has a service named Home Mixer that constructs and serves the For You timeline.
TwitterはFor Youタイムラインを構築し、供給する、HomeMixerと呼ばれるサービスを持っ
ている。
It is mainly based on the Scala programming language.
これは、おもに、Scala言語によって書かれている。
This service connects all the recommendation pipeline stages together.
このサービスはすべてのリコメンデーションパイプラインの段階のものをつなぐ。
serve: を提供する
construct: を構築する
connect: をつなぐ
14. It also blends together Tweets with other non-Tweet content like Ads, Follow
Recommendations, and Onboarding prompts.
HomeMixerはツイートを他のツイートじゃないコンテンツ、広告とか、お勧めユーザー、オ
ンボーディングプロンプトなどを一緒にする。
The whole pipeline (we have discussed above) runs approximately5 billion times per day
and completes in under 1.5 seconds on average.
1日5億回、上で議論した全体のパイプラインは動き、平均1.5秒以下で完了する。
By telling us exactly how its prized jewel works, Twitter is truly trying to free the blue bird
and make it more transparent for its users.
私たちにその伝家の宝刀がいかに動いているかを教えることによって、Twitterは真にその青
い鳥を自由に、そして、Twitterのユーザーに対して、Twitterをより透明にしようとしている。
blends together A with B: AとBを一緒にする
prized jewel: 伝家の宝刀