見出し画像

レコメンドシステムの活用を考える②(実験編)

三菱UFJフィナンシャル・グループ(以下MUFG)の戦略子会社であるJapan Digital Design(以下JDD)でMUFG AI Studio(以下M-AIS)に所属する、田邊・石井です。

前回お話した「レコメンドシステムの活用を考える①(導入編)」では、NetflixやYouTubeの独自のレコメンドシステムを紹介させていただきました。

今回取り上げるのは、“ニュースレコメンドシステム”をテーマとして、ニュースレコメンドの既存手法が日本語実用に耐えるパフォーマンスを出せるのかを検証していきます。

レコメンドシステムの裏でどのようなモデルが実際に動いているのか?自分たちでレコメンドシステムを構築しようとしたときにどのようなデータが必要になるのか?というレコメンドシステムの大まかなポイントもザクッと把握出来る内容となっていますので、是非お楽しみ下さい🎶


1.ニュースレコメンドシステムとは?

ネットの発達に伴い、記事の数が増え、素早くニュースに反応できることの重要度が増している現代において、各々の興味関心や重要度の高い記事を適切にレコメンドしてくれるシステムの重要性は日々増しています。
そのため、ニュースレコメンドシステムにより社内の情報収集の効率化ができないかと考え調べていましたが、日本語で検証している文献は少なく、どの程度ワークするのか分かりませんでした。
そこで本記事では“ニュースレコメンドシステム”の既存手法が日本語実用に耐えるパフォーマンスを出せるのかを検証しています。

では、今回の実験テーマであるニュースレコメンドシステムと、商品レコメンドを比較した際の違いからお話ししたいと思います。

  • ニュースは商品と異なり入れ替わりが早い

  • ニュース読者の興味関心はニュースのテキスト情報(タイトルや本文)に大きく依存しており、商品ID等の番号だけを利用したレコメンドには不向き

そのため、商品のレコメンドと同様にニュースレコメンドシステムにも協調フィルタリングの手法を使ったものもありますが、ニュースはデータを集めている間にそのニュースの価値が下がってしまい、ニュースの内容(テキスト)がレコメンド時に重要となるといった特徴があるため、ニュースレコメンドシステムではDeep Learning Basedが主流となっています。

今回の実験でもDeep Learning Basedのモデルを利用しました。

2.実験

それでは、今回の実験内容に入っていきたいと思います。

実験モデルの選定

今回の実験に利用したデータは、①ニュース記事のタイトルと、②読者が過去に閲覧したニュースのデータです。

(データイメージ)
①ニュース記事のタイトル

news_id, news_title 
A001, デジタル化は何をもたらすか​ 
D001, 関東大震災 被害を拡大させた“火の粉”の恐怖​ 
B002, サンマ高騰に規格外野菜…猛暑・台風で“秋の味覚”に異変?​

②読者が過去に閲覧したニュース

user_id, user_clicked_news_history, user_clicked_news_label(正解ラベル) 
user1, [A021, G901, F881], [B051-1, A723-0, F190-0, C031-0, D121-0, B220-0] 
user2, [C141, D301, C024], [C051-1, A245-0, G277-0, G201-0, F531-0, C147-0] 
user3, [A462, B671, G091], [B052-1, D144-0, F360-0, B551-0, A211-0, D645-0]

この2つは「レコメンドシステムの活用を考える①(導入編)」でのNetflixやYouTubeの場合と比較するとデータの種類は少ないため、少ないデータ種類でもモデリングの工夫で比較的高い精度を出しているNeural News Recommendation with Multi-Head Self-Attention(以降、NRMSと記載)というモデルを今回利用して実験しました。
ちなみに、他にニュースで活用できるデータ種類としては、タイトル以外の本文情報や、スポーツ・経済などニュースカテゴリの情報がありますが、今回は利用していません。

NRMSを選択した背景についてもう少し紹介したいと思います。

まずは、利用しているデータとしては①ニュース記事のタイトルと、②読者が過去に閲覧したニュースのデータであり、少ないデータ種類でレコメンドが可能という点です。

また、上記2種類のデータを利用して様々なモデルを比較した結果でも高い精度が出ています。

リッチなデータを利用しているモデルと比較しても比較的精度が高く(※)、ライブラリも充実しているため、今回NRMSモデルを採用しました。
(※)MINDデータセットを利用したモデルの比較で2位(Paper With Code

日本語データが無い

今回実験に利用したデータは、読者の参照履歴を含んだ日本語のオープンソースデータが無かったため、ニュースレコメンドシステムのデータセットとして良く利用されている、Microsoft News Dataset(MIND)を利用し、日本語に翻訳したものを利用しています。

NRMSでは記事タイトルのエンべディング(ベクトル化)も大事な要素であり、これまでのニュースレコメンドシステムの研究が対象にしている英語のエンべディングだけではなく、日本語のエンべディングモデルでも手法に問題ないか、実験を通して確認しました。

実験の概要

では、実験の概要についてです。
目標は、色々なニュース記事から読者の興味があるニュースをレコメンドすることです。

レコメンドするニュースは、モデルが出力したスコアから読者の興味があると思われる上位5つ、または10つを類似度で評価します。

評価方法は、読者にレコメンドしたニュースのうち実際にどのニュースをクリックしたかで判断します。

実験は以下のステップで行いました。

  1. (データ準備)読者に表示されたニュース情報と、各ニュースに対する読者のクリック情報を準備

  2. (特徴量作成)ニュースの特徴量と、読者の特徴量(今回は過去に参照したニュース情報から作成)を作成

  3. (スコア出力)ニュースと読者の特徴量の類似度からレコメンドするニュースを選択

  4. (評価)類似度の高い順に読者に表示し、読者のクリック結果から評価

※評価方法・実験のステップの詳細についてはレコメンドシステムの活用を考える③(補足編)にて紹介予定です。

3.実験結果

それでは、実際に日本語データを利用した実験結果についてです。
結果は以下の表に記載の内容となっており、日本語の精度は少し落ちますが他のPaper With Codeのモデル結果と比較してもそこまで悪くはない結果と言えます。

Paper With Codeから他モデルの精度を抜粋
Paper With Codeから抜粋(2023/9月時点)

アウトプットを目視確認した限りでも、実用に耐えうる水準だと感じています。

例①犬とイギリス王室関連の記事を見ている読者

例えば、犬やイギリス王室に関するニュース記事を読んでいる読者に対しては、スポーツやビジネスのニュース記事も選択肢としてある中、履歴から興味関心を捉えたレコメンドができています。

【ある読者のニュース参照履歴】

獣医さんだと気づいた犬の「子犬の顔」リアクションが貴重 
行方不明の犬、12年後に飼い主と再会 
メーガン・マークルがアメリカ式の挨拶でお辞儀をしたときの気まずい瞬間 
家族団らんに立ち寄った犬が、首輪をチェックされる。 
女性の家の芝生に現れた奇妙な犬、彼女を認識しているようだ。 
ハリー王子、ITVのインタビューでウィリアムとの緊張を認める

【レコメンドされたニュース記事】

(実際に読者がクリック) 
あなたの犬に怒鳴らないでください!
 
(その他モデルがレコメンドした記事) 
泣いている赤ちゃんを寝かしつける犬 
犬が怖がるハロウィンの猫のデコレーション 
ハリー王子とメーガン・マークルは、赤ちゃんアーチーの誕生日を祝って、"おじいちゃん"チャールズ皇太子と撮った未公開写真を公開した。

例②スポーツ関連の記事を見ている読者

スポーツ関連のニュースをよく読んでいる読者に対しては、ビジネスやライフスタイルのニュース記事も選択肢としてある中、履歴から興味関心を捉えたレコメンドができています。

【ある読者のニュース参照履歴】

スーパーウェルター級の試合で外傷性脳損傷を負ったボクサー、パトリック・デイが死去。 
パッカーズがライオンズに勝利したことを伝えるオフィシャルにNFL界隈が反応 
APソースフィリーズ、ジョー・ジラルディの監督就任に合意

【レコメンドされたニュース記事】

(実際に読者がクリック) 
これは乱闘よりも醜いものだった。そしてMylesGarrettはヘルメット攻撃により、今年の残りの期間、出場停止に値する。 

(その他モデルがレコメンドした記事) 
ベンガルズ、アンソニー・ゼッテルと契約 
チャージャーズ、オフェンスコーディネーターのケン・ウィゼンハント氏を解雇 
ベイカー・メイフィールド、試合後の記者会見でスティーラーズの乱闘騒ぎについて語る

(モデルの学習データについて)
実験では、学習データ​はMicrosoft News Dataset(MIND)-smallを利用しました。
学習データとなる読者のデータは約160,000件、testデータは約70,000件のデータです。validationデータには学習データの10%を利用しています。
ニュースデータは約40,000件のデータを利用し、学習時のパラメータはNRMSで利用されていたパラメータを利用し確認しています。

4.ニュースレコメンドシステムの活用

今回紹介したニュースレコメンドシステムの仕組みは、マイクロソフトニュースのレコメンドで利用されていますが、この仕組みを社内外の情報収集をサポートするツールとして活用できるのではないかと考えています。

例えば、以下のようなイメージです。

  1. 案)読者の行動履歴が取得できるデータから、一定期間動きが無かった読者に対してDM等で興味のありそうな記事・コンテンツを送ることで行動を起こしてもらう機会を増やす。

  2. 案)業務で利用するESG関連の記事を効率的に集めたい。

日々の業務効率化やお客様向けの情報提供など、今後は実際のサービスへの適用を検討していきたいと思います。

5.まとめ

今回は社内外の情報収集をサポートするツールとしてニュースレコメンドを活用できないかという目的で、日本語データを利用した際の精度を確認しました。
日本語での精度は英語より若干劣るものの、アウトプットを目視確認した限りでは実用に耐えうる水準であり、今後は実際のサービスへの適用を検討していきたいと思います。

ニュースレコメンドについては、商品等のレコメンドと同様に協調フィルタリングの手法を使ったものもありますが、ニュースの入れ替わりが早く、ニュース読者の興味関心がニュースの内容(テキスト)に大きく依存するといった特徴があり、あまり精度は高くありません。そのため、ニュースレコメンドではDeep Learning Basedのモデルが利用されます。

今回の実験ではその中でデータの種類が少なくても比較的精度の高いモデル(NRMS)を利用しました。
NRMSの特徴はAttention機構を利用したモデルであることなので、レコメンドシステムの活用を考える③(補足編)にてモデル構造をはじめとした実験内容の概要についても紹介予定です。

今回の記事でニュースレコメンドシステムについての理解を深めていただけたら幸いです。
最後までご覧いただきありがとうございました。

参考文献

関連記事

最後に

Japan Digital Design株式会社では、一緒に働いてくださる仲間を募集中です。カジュアル面談も実施しておりますので、下記リンク先からお気軽にお問合せください。


この記事に関するお問い合わせはこちら

Japan Digital Design 株式会社
M-AIS
Naomi Tanabe
Chise Ishii