Gunosyのレコメンド機能に関する検証

こんばんは。学習するニュースサービス、Gunosyに対する批判が随所で書かれていますね。
本記事では、確かなデータをもとに、その批判を1つ1つ検証していきます。

結論

Gunosyは、はてブ記事に限らない、非常に多彩なニュースを配信している。

以下、

  1. 批判派の記事
  2. 検証
  3. 公式見解

の順に見ていきます。

批判派の記事

Gunosyのレコメンドエンジンの仕組み解説

論点1:レコメンド機能はなく、はてブからバズった記事を取ってきているだけなのでは

はてブでバズった記事のみを配信しているのではないか、という批判です。

違う!分析エンジンなんてものはないんだ。そもそも。
はてブユーザーの関心分野の記事しかそもそも引っかかってこない仕組みなんだ。

だから、お前が野球が好きなんてことは、Gunosyはこれっぽっちもわかっちゃいねえ。


そこら辺でバズった記事だから、誰が読んでもそこそこ面白いに決まってる。
そんな記事群からそれっぽいカテゴリに振り分けて配信しているだけだから、何も難しいアルゴリズムや解析エンジンなんてものはないんだ。そんなものは幻想だ。

「自分好みの情報を配信」とか、バカも休み休み言えという話だ。

http://angra.hatenablog.com/entry/2013/05/03/Gunosy%E3%81%AE%E3%83%AC%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%89%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3%E3%81%AE%E4%BB%95%E7%B5%84%E3%81%BF%E8%A7%A3%E8%AA%AC
論点2:その結果、似たような記事ばかり配信されているのでは

このブログでは、フェルミ推定っぽい分析により以下の結論を出しています。

つまり、Gunosyの50〜60%のユーザーは、自分と全く同じ記事を読んでいるわけだ。

これで「一人ひとりの好みに応じて配信してます」というのはさすがにキビシイw

多分、Gunosyはユーザーのツイッターフェイスブックの投稿を分析して、キーワードを抽出し、そのキーワードが当てはまるカテゴリにユーザーを放り込んでいる。あとは日々のユーザーのクリックの仕方に応じて、そのカテゴリを組み替えているだけだ。

少なくとも、これくらいのことは数字で分かる。

http://angra.hatenablog.com/entry/2013/05/03/Gunosy%E3%81%AE%E3%83%AC%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%89%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3%E3%81%AE%E4%BB%95%E7%B5%84%E3%81%BF%E8%A7%A3%E8%AA%AC

検証

この2つの論点に対し、きちんとデータを取って分析してみました。
この際、endorno君が書いてくれたgunosy-analyzerがあったため、そのまま利用させていただきました。

分析手法は以下となります。

  1. Twitterの検索APIを用い、gunosyのまとめ記事(例:僕の場合)を取ってきます。
  2. 各まとめ記事にて、レコメンドされている各記事をスクレイピングして取得します。
検証1 「レコメンド機能はなく、はてブからバズった記事を取ってきているだけなのでは」

こちらは、endornoが全て検証しています。
各レコメンド記事において、はじめにはてブされた時刻を取得し、配信時刻とどちらが早いかを比較しています。

Twitterでまとめを公開している80人(注1)の5月5日の記事をクロールして、はじめにはてブされた
時間とgunosyが配信される時間(注2)を比較、出力してみた。
出力結果はanalyzed_result.2013.05.05.txtを参照のこと。
結果だけ書くと、はてブより先に配信された記事が1925記事中127記事だった。

注2:デフォルトの8時のままの人が多いらしいので8時で固定。
それより遅い場合ははてブの方が先の可能性もあるけど、配信直前に解析し直すなんて馬鹿な実装してないだろうから無視
おそらく0時配信にしてる人に向けてそれより前に収集は終えてるはずだろうから8時でもフェアじゃないかも

https://github.com/endorno/gunosy-analyzer

はてブに載っていない記事も7%ほど配信されていることが明らかになりました。はてブの丸パクリな訳ではないようです。
また、はてブはリアルタイムにできる一方で、Gunosyはどうしても解析時刻と配信時刻に差があるため、この比較はGunosyにとってアンフェアである(解析と配信の間に誰かが初はてブしてしまう)可能性にも触れています。
僕の経験則ですが、昨今の面白い記事には既にはてブが付いているケースが多いことを考えると、7%という数字は少なくはないと思います。

検証2 「その結果、似たような記事ばかり配信されているのでは」

こちらは、gunosy-analyzerを用いて僕が検証しました。ユーザーごとのレコメンド記事の重複数を調べ、その分布をプロットします。

分布の特徴量は以下になります。

対象人数 80
レコメンド総数 2000
URL数 340
最大レコメンド数 50
平均レコメンド数 5.9
中央値 3
中央値以下の割合 56%

56%の記事は、80人中3人にしかレコメンドされていないことがわかりました。
Gunosyの50〜60%のユーザーは、自分と全く同じ記事を読んでいるわけだ。」こちらの批判は、データからすると的外れであることがわかります。確かに最もレコメンドされている記事は62.5%のユーザーに配信されていますが、むしろこれは例外であり、配信記事全体を見ると非常に多彩であることがわかります。
きちんと分析はしていませんが、分布は冪乗則に従う(ロングテールである)ことが推測されます。

公式見解

ここ最近のGunosy関連の批判についての所感

1.Gunosyは、はてブの再編集である/アルゴリズムなど存在しない?

結論から先に言わせて頂きますと、そんなことは無いです。ただ、我々のアルゴリズムの未熟さにより実際にそういう風に見えてしまう部分はあると思います。

http://gunosy.tumblr.com/post/49731783015/gunosy

真摯に、かつ真っ向から否定しています。

推薦対象となる記事の収集の過程においては,数多くのメディアのRSSを利用する一方で,はてなブックマークの新着RSSもソースの一つとして活用させていただいております.

世の中には星の数ほどのウェブメディアがあり,それらの最新の情報を効果的に集める手段としてはてなブックマークの新着情報が有用であると判断しこのような形をとっております.

さらにスコア付けの際、ユーザー様と記事の関連性の高さに加えて、記事の最低限の質を担保するためtweet数、like数、はてなブックマーク数なども考慮しています。なぜかというと、「興味有りそうだったから読んでみたけど、内容が薄かった」というような体験を減らしたいからです。

http://gunosy.tumblr.com/post/49731783015/gunosy

記事の質を担保する手段の1つとして、はてブを利用していることは正直に認めています。ある程度仕方がないと僕も思います。
仮に一切記事の質を担保しないニュースメディアがあったとして、本当に魅力的か?という疑問があります。7%の記事ははてブと被っていない訳で、その気になればはてブとあまり被らないニュース配信も簡単にできるでしょう。しかし、果たしてそのサイトは魅力的でしょうか?
恐らく、はてブとの被りはGunosy運営陣も気付いていたと思います。それでも、血の滲むようなユーザー行動の分析と試行の末、今の形に行き着いたのだと思いますし、これからも発展していくのかと期待しています。

また、多くの人に同じ記事が配信されるニュースがあるのは改善の余地はございますがある程度仕方が無いことだと考えています。多くの人に受け入れられる素敵な記事は存在すると思います。また多くの人に興味を持たれる話題が存在することも事実です(たとえばiPhoneの記事)。さらには現在Gunosyのユーザー層としてIT系アーリーアダプター層が多いことも記事が偏ってしまう原因だと考えております。一方で個人のニッチな興味をつく記事も配信されるロジックになっております。(たとえばユーザー様の0.1%や0.01%しか配信されないようなニッチな記事も多く存在しております)。そのため25記事全体で見た場合十分に多様でかつ個人にあった構成になっていると考えています。(もちろん改善点は多く、より多くの方に満足いただけるよう今後さらなる改善を目指していく所存ではあります)

実際にGunosyを使っている友人の方がいれば見比べてみてほしいのですが、配信されている記事が25記事とも同じであるというGunosyユーザー様はほとんど存在しません。実現したい世界はあなただけの新聞というイメージです。そこには1面には個人の趣味嗜好にどんぴしゃな記事がきて、中面には多くの人に興味がありそうで尚かつ本人も興味がある記事がくる、そんな世界です。

http://gunosy.tumblr.com/post/49731783015/gunosy

こちらの公式見解を、本記事では確かめることができました。

また、もうひとつ本件に対して、付記したいのは、Gunosyで配信されると、はてブがつく、という事実があります。

現在ご利用頂いている層がリテラシーの高いアーリーアダプターの方が多いため、Gunosyで配信されるとほぼ新しくはてブが付きます。

なので、すでにその記事見たことあるよという批判に対しては素直に、省くためのロジックが入っていなくて申し訳ございませんという気持ちです。現在解析がきちんと完了するよう1日単位での配信しかできておりませんが、今後はこの解析を早くすることでリアルタイム性の高い配信を実現したいと考えています。そうするとこの記事昨日見たよと体験も減らせると考えています。まだまだ未熟ですが鋭意努力していきます。

http://gunosy.tumblr.com/post/49731783015/gunosy

Gunosyで配信されてしまうことにより、はてブが加速してしまう効果にも触れています。

追記

Gunosyは多くのユーザに同じ記事を配信しているのか検証してみた
こちらに本記事の検証2と全く同じ分析がなされていました。
ユーザーのサンプリング法が異なるため、相互の記事の信憑性が高まっています。合わせてご覧ください。