Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

NewsPicksにおける記事の推薦

「第18回 Machine Learning 15minutes!」の発表資料です。
https://machine-learning15minutes.connpass.com/event/69699/

NewsPicksは、経済ニュースを業界人や専門家のコメントとあわせて読むことができるサービスです。今回は、一日2回、ユーザの好みに適したニュース記事を届ける機能について、その推薦アルゴリズムを紹介します。

  • Be the first to comment

NewsPicksにおける記事の推薦

  1. 1. 2017/11/25 株式会社ユーザベース 北内 啓 第18回Machine Learning 15minutes! ソーシャル経済ニュースNewsPicks における記事の推薦
  2. 2. 自己紹介 北内 啓(きたうち あきら) @tau3000 ● 奈良先端科学技術大学院大学 自然言語処理研究室 日本語形態素解析システム「茶筌」の開発に参加 ● 株式会社NTTデータ 自然言語処理、情報検索、テキストマイニングの技術開発を担当 ● BtoCスタートアップ ● 株式会社ユーザベース(2014年11月入社) 機械学習、自然言語処理等を利用した新規機能開発、機能改善を担当
  3. 3. 2008 Founded 2009 2013 LaunchedLaunched 2016 Acquired 2008 Tokyo & 2017 Osaka 2013 Singapore 2016 Sri Lanka 2013 Shanghai 2013 Hong Kong 2017 New York2013 Hanoi About Our Offices Our Products 2017 Launched IPO at TSE Mothers
  4. 4. 経済情報で、世界をかえる あらゆる経済情報を人とテクノロジーの力で整理・分析・創出し、ビジネスパーソンの 生産性を高め、創造性を解放する。 私たちは、世界中で愛される経済情報インフラをつくり、世界中の意思決定を支え、世 界をかえる。 「経済情報」で、「世界に」展開でき、「人とテクノロジーの力」で新しい価値を創出でき る、かつ「プラットフォーム」業であること、この4要素を満たすものが我々の事業領域 と定めています ユーザベースのミッション
  5. 5. Value7つのルール 自由主義で行こう 創造性がなければ意味がいない ユーザーの理想から始める スピードで驚かす 迷ったら挑戦する道を選ぶ 渦中の友を助ける 異能は才能 1 2 3 4 5 6 7
  6. 6. 220万ダウンロード(2016/12月末時点) 40,000有料会員(2017/06月末時点) ------- 追加メニュー -------
  7. 7. NewsPicksアプリの「マイニュース」タブ
  8. 8. NewsPicksのChrome拡張機能
  9. 9. 有用な記事やコメントを ユーザに届けたい ニュース記事 コメント NewsPicksのメインコンテンツ
  10. 10. ● 有用な記事を総合トップなどに掲載する ● 有用なコメントを上位にランキングする ● 有用な記事をプッシュ通知する 従来の施策の例 これらは、すべてのユーザに同じ情報を提供している
  11. 11. ● ユーザごとに異なる情報を推薦する(パーソナライズド・レコメンデーション) ● ユーザに推薦するもの: 記事、コメント、ユーザ ○ 一番のキラーコンテンツは記事なので、まずは記事を推薦する ※「推薦対象」と「推薦するもの」の組合せはさまざま ○ 例: 各アイテムに対して関連アイテムを提示→ 滞留時間を長くできる (Amazon, Facebookなど) 推薦(レコメンデーション)
  12. 12. NewsPicksに格納されているデータ ● BtoCの定性データが豊富 ● ニュース記事、コメント、ユーザともそ れぞれ数十万から数百万件のデータ がある ● 各データ間の関係を表すデータも豊 富 閲覧、PICK コメント LIKE フォロー
  13. 13. 推薦に利用する特徴 閲覧、PICK コメント LIKE フォロー 1. 記事に含まれる単語 (コンテンツベース) 2. 誰がどの記事をPICKしたか (協調フィルタリング)
  14. 14. 協調フィルタリング コンテンツベース ユーザの好みを通じて推薦できるので セレンディピティを起こせる可能性がある 内容の近さが分かるので、たとえば内容の 近い複数の記事を推薦することを防げる 1件もPickしていないユーザに推薦できない ユーザのプロフィールがあれば、 1件もPickしていないユーザにも推薦できる 誰にもPickされていない記事を推薦できない 誰にもPickされていない記事も推薦できる 協調フィルタリングとコンテンツベース
  15. 15. ● 協調フィルタリングとコンテンツベースのハイブリッド ● 両者のスコアの線形和でユーザiと記事jの間のスコアを算出 推薦の手法
  16. 16. ● ユーザとユーザがPickした記事の行列を行列分解(Matrix Factorization) ● ユーザベクトルと記事ベクトルのcos類似度によって記事スコアを算出 ● しかし0-1の二値行列を行列分解すると各要素がすべて同じ値になってしまう! → One-class Matrix Factorizationを利用(LIBMF) 協調フィルタリング
  17. 17. ● 各記事はRSSでタイトルと本文の先頭部分しかない(データスパースネスの問題) ● word2vecで過去記事中の各単語をベクトル化 ● 推薦候補記事のベクトル= 記事中の単語のベクトルの平均 ● ユーザのベクトル = ユーザがPickした記事のベクトルの平均 ● スコア = ユーザのベクトルと記事のベクトルのcos類似度 コンテンツベース
  18. 18. ● スコアによるフィルタリング ○ 協調フィルタリング、コンテンツベースそれぞれのスコアが低い記事を除 去 ● 類似記事のフィルタリング(フィルターバブルへの対応) ○ 似た内容の記事が推薦されないようにするため、第n位の記事に対して、 第n+1位以降の記事について、協調フィルタリング、コンテンツベースの類 似度が高いものを除去 後処理
  19. 19. ● NewsPicksの「マイニュース」タブやChrome拡張機能で各ユーザへの記事推 薦機能を提供 ● 推薦アルゴリズムは協調フィルタリングとコンテンツベースのハイブリッド ● 協調フィルタリングではOne-class Matrix Factorizationを利用 ● コンテンツベースでは単語の埋め込みベクトルを利用 ● 今後やりたいこと: コメントのランキングアルゴリズムの改善、記事に対する記 事の推薦など まとめ

×