人工知能があなたの興味にあったニュースをお知らせ:情報サービス企業Gunosyにおける機械学習を活用したニュース推薦システムの事例
課題
Webのニュースサイトにおいてユーザーの興味に合ったニュースを推薦することは、Webサイトの運営を継続するために重要になります。しかし時々刻々と増え続けるニュース記事全てをユーザーに推薦することは不可能であり、また価値が時間減衰する(つまり時事性が重要になる)ニュース記事はその情報の鮮度を保つため、推薦のためのログを長期にわたって収集することは困難です。またユーザーに快適なブラウジングを提供するべく、ニュース推薦のシステムは高速に動作する必要があります。今回は2018年度人工知能学会全国大会において開催された株式会社Gunosy(以下Gunosy)のランチョンセミナーでの講演を基に、ニュース推薦システムにおける機械学習の活用事例を紹介します。
解決方法
ユーザーの興味に基づいてニュースを推薦する場合、ユーザーの「興味」を特徴量として表現する必要があります。Gunosyではユーザーの行動心理モデルとして、局所話題性(自身のコミュニティにおける流行)と野次馬のダイナミクス(多くの人が興味を持つニュースに着目)の2点に注目しています。そしてこのモデルに基づき、ユーザーの興味を特徴量として表現するためにニュース記事を文章の分散表現空間に埋め込み(分散表現についてはこの資料を参考に)、各ユーザーが過去どのような記事をクリックしたかを重みづけ和を取ることで興味ベクトルと呼ばれる特徴量を生成しています。このユーザーが過去に閲覧したのいくつかの記事を集めた特徴量と新しい記事の特徴量の内積計算(特徴量同士の距離の計算)を行うことでよりユーザーの興味に即した記事を推薦することが可能になります。
また実際の推薦システムでは、非常に高速にニュース推薦を行うために、go言語(Googleによって開発されたプログラミング言語)によって実装された近似近傍探索システムが利用されています。これは非常に高次元の特徴量の中からユーザーにストレスを与えない時間内にニュース推薦を行うための工夫になっています。
より詳細には以下の記事もご確認ください。
Gunosyのパーソナライズを支える技術 -計算モデルとアーキテクチャ編- [Gunosyテックブログ]
Gunosyのパーソナライズを支える技術 -1クリックで始まるパーソナライズ- [Gunosyテックブログ]
Gunosyのパーソナライズを支える技術 -ワークフロー編- [Gunosyテックブログ]
どうなったか
ここで紹介された上記のシステムは、実際にGunosyのニュースサイトで運用されているそうです。Gunosyでは1日に10,000件以上のニュースが更新されるそうですが、そのような大規模なシステムにおいても上記の機械学習の手法を導入したシステムによりユーザーの興味に即したニュース推薦が可能になっています。
まとめ
ニュース推薦という広告モデルにおいて、機械学習の手法を活用した実用例について紹介しました。Gunosyでの取り組みは機械学習手法をシステムに採用している点も興味深いですが、それを実用可能なサービスとして提供するために様々な工夫がされていました。近年深層学習等の手法により人工知能システムの性能が向上していますが、それを長期運用可能なサービスとして実装するための取り組みに関する情報はまだまだ少ないように思います。Gunosyはブログにおいても積極的に情報発信を行われていますので、ぜひご確認ください。