Twitter検索が完全リニューアル―「トップ」にユーザー別に個人化された結果を表示

次の記事

YouTubeのビデオにクリエイティブ・コモンズの「表示ライセンス」を付けられる(再利用が楽に)

今日(米国時間6/1)はTwitterが写真サービスに参入する話題でもちきりだが、実質的な影響を考えると、検索機能の改良の方が重要なニュースだ。これは単なるバージョンアップではなく、ゼロからの完全なリニューアルだ。一見して分かるような派手なデザインの変更ではないが、機能は飛躍的に改善されている。

Twitterはエンジニアリング・ブログに詳しい解説を発表している。ここにTwitter検索の歴史が詳しく紹介されているのが興味深い。2008年のSummizeの買収でTwitterの独自の検索がスタートした。しばらくの間このシステムは機能を果たしたが、やがてSummizeのテクノロジーはTwitterの急激な規模の拡大に対応できないことが明らかになった。そこでTwitterではまったく新しい検索システムへの交替が必要となった。しかも交替はシステムを止めることなく動的に行われる必要があった。

昨年の10月にもTwitterは検索システムについて紹介記事を発表している。しかしその後もTwitterは古いRuby on Railsのフロントエンドを捨てることができなかった。この4月になってやっと完全に新しく作り直されたBlenderフロントエンドが稼働した。その当初、Twitterでは「新しいフロントエンドは検索処理を3倍速くし、10倍のスループットをもたらす」と発表した。これはもちろん重要な点で、今やTwitterには毎秒2200件のツイートが投稿され、1万8000件の検索が処理されている。1日にすればなんと16億件の検索だ。昨年10月の10億件からさらに60%もアップした計算になる。

ただし、検索の総件数は主としてバックエンド・システムに関わる話だ。今日発表された検索機能の改良はフロントエンドに関するものだ。Twitterによると「新しいフロントエンドのBlenderの完成は、検索のユーザー体験において、Summizeの買収以来、もっとも根本的な変化をもたらす事件だ」という。

新しいTwitter検索ページでもっとも目につく変更は、Most relevant〔日本語では「トップ」〕というタブが表示されることだ。一見するとこのタブではユーザーのフォロー相手のツイート検索され最新のものから順に表示されているように見える(これ自身、もっと早く実装してもらいたかった機能だが)。しかし実際にはこの背後でははるかに根本的な改良が行われている。Twitterの説明によればこうだ。「多くの場合、ユーザーが検索しようとしているのはもっとも印象に残ったツイート、あるいは友人の間で評判になったツイートだ。われわれの新検索システムでは、個々のユーザー別にもっとも関連が深いであろうツイートを表示する。また他のユーザーの間に反響を呼び起こさなかったツイートは除外される。つまり検索のパーソナル化だ」

Twitterではパーソナル化にあたって、次のような点に着目するとしている。

  • 索引化の際に取得される静的情報
  • リアルタイムで更新される反響(RTなど)情報
  • 検索時に取得される検索ユーザーの固有情報

こうした情報を総合して、それぞれのツイートの個人別関連性指数が計算される。そして関連性が高く、時系列として新しいツイートが優先してBlenderフロントエンドに戻される。フロントエンドは収集されたツイートをマージし、再度ランク付けしてユーザーに表示する。

さらに今回のリニューアルで重複するツイートは検索から除外されることになった。これもTwitter検索で長年問題になっていた点だ。

最後にFTwitterは写真とビデオの検索についても言及している。今回新しく写真とビデオの検索結果が表示される〔訳者の環境ではまだ公開されていない。順次公開中〕ようになったが、これが右カラムに別途表示される理由について「テキスト検索とビデオ・写真検索のアルゴリズムが異なるため」と説明している。

こうした改良はすべて重要なものだ。しかしTwitterによればまだ第一歩に過ぎない。今後数カ月の間に新システムによる検索結果の提供範囲と品質を改良していくとしている。またTwitterのモバイル検索も今後パーソナル化していく。

過去の全ツイートの検索についてはどうだろう? こちらは早急に実現することはないだろうと思う。Twitterのようなサービスにとってはリアルタイム検索の方がはるかに優先順位が高い。過去より現在の検索に集中するのは当然だ。しかしいつかは過去ツイートの検索ができるようになって欲しいものだ。

[原文へ]

(翻訳:滑川海彦/namekawa01