知識グラフと強化学習を組み合わせた説明可能な新しいアーティスト推薦システム
3つの要点
✔️ 知識グラフと強化学習を組み合わせた、ユーザーに対するアーティスト推薦に関する研究。
✔️ エージェントの探索経路をたどることで、推薦理由が推測可能。
✔️ 知識グラフとグラフニューラルネットワークを組み合わせたKnowledge Graph Attention Network(KGAT)を上回る推薦性能を達成。
Explainable artist recommendation based on reinforcement knowledge graph exploration
written by Keigo Sakurai, Ren Togo, Takahiro Ogawa, Miki Haseyama
(Submitted on 30 April 2022)
Comments: Accepted by IWAIT2022.
Subjects: Machine Learning (cs.LG)
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
また、本論文はIWAITでBest Paper Awardを受賞されています。
はじめに
音楽配信サービスの普及により、様々なアーティストの音楽をデジタルデータとして聴取する機会が増えています。さらに、近い将来、NFT(Non Fungible Token)を用いたデジタルデータ販売が急速に広まると予想されており、音楽等のデジタルデータの推薦技術に関する研究が活発に行われています。一方で、現在のオンライン市場における音楽推薦技術は、ユーザー本位にならない傾向があるといわれています。例えば、コアなファンを持つアーティストより人気アーティストの方が売上に貢献するため、推薦されやすくなることは想像に難くないでしょう。そこで、近年のAIブームの火付け役となった深層学習を利用した、よりユーザー本位の推薦技術が考案されています。しかしながら、深層学習を利用した推薦技術は一般に説明可能性に乏しく、なぜそのアーティストが推薦されたのかという理由をユーザーに提示することが困難であるという問題点があります。本論文では知識グラフ上をエージェントに探索させることにより、結果に対する理由を提示可能な新しいアーティスト推薦手法を提案しています。
本研究の新規性は以下の2点になります。
- 知識グラフと強化学習を組み合わせた新しいアーティスト推薦手法を提案した点。
- 知識グラフ上の最適な経路を学習することにより、高い説明可能性を有するアーティスト推薦を実現した点。
知識グラフ
知識グラフ(knowledge graph)とは、事象(entity)とその関係性の情報をネットワーク構造として表現したグラフを指します。ここで言うグラフとは頂点と頂点同士を繋ぐ辺からなるデータ構造を指していることに注意してください。知識グラフの具体例を示すと、「日本の首都は東京都である。」という知識は、「日本」というラベルがついた頂点から「東京都」の頂点に向けて「首都」の辺が張られたグラフで表現されます。一般に、この3項関係(triplet)を(日本, 首都, 東京都)のように表記します。知識グラフ$\mathcal{G}$は3項関係の集合であるため、事象の集合を$\mathcal{N}$、関係性の集合を$\mathcal{E}$とすると以下の式で定義できます。
\[ \mathcal{G} = \{(n_i, e, n_j)\mid n_i,n_j\in\mathcal{N}, e\in\mathcal{E}\} \]
本論文では以下の3種類の3項関係から知識グラフが構成されます。
$(u_i, e_{(u_i, m_j)}, m_j)$: ユーザー$u_i$が曲$m_j$を聞いたことがある。
$(a_k, e_{(a_k, m_j)}, m_j)$: アーティスト$a_k$が曲$m_j$を作曲した。
$(m_j, e_{(m_j, g_l)}, g_l)$: 曲$m_j$がジャンル$g_l$に属する。
よって知識グラフは図示するとこのようなグラフになります。
知識グラフの埋め込み
知識グラフを活用するために、事象や関係を低次元ベクトル空間に埋め込む必要があります。知識グラフ埋め込みの手法はさまざま提案されていますが、本論文ではTransEと呼ばれる手法を用いています。TransEでは3項関係$(n_i, e, n_j)$に対して、各埋め込み表現$\mathbf{n}_i, \mathbf{e}, \mathbf{n}_j$が下の式を満たすように学習させます。
\[ \mathbf{n}_i + \mathbf{e} = \mathbf{n}_j\]
強化学習を用いた知識グラフ上の探索
提案手法では、エージェントをユーザーの頂点からアーティストの頂点に到達させるように訓練します。エージェントは推薦対象となるユーザーの頂点に配置され、知識グラフ上を辺の向きに関わらず自由に探索します。また、エージェントが適切なアーティストの頂点に到達できるように下記の報酬を与えます。
ここで、$\mathcal{M}(\in\{m_1,m_2,\dots,m_{N_m}\})$は曲の集合、$\mathbf{e_{fw}}(u_i, n_t)$は頂点$u_i$から頂点$n_t$までに至る辺の埋め込み表現の和、$\mathbf{e_{bw}}(u_i, n_t)$は頂点$n_t$から頂点$u_i$までに至る辺の埋め込み表現の和を表しています。
報酬計算の概要は以下の図のようになります。
以上をまとめると、提案手法は以下の3ステップで構成されます。
- データから知識グラフを作成する。
- TransEを用いて頂点と辺の埋め込み表現を計算する。
- 知識グラフ上をエージェントに探索させ、推薦の経路を求める。
実験結果
実験はSpotify Million Playlist Datasetを用いて評価しました。このデータセットには曲が57,880曲、ユーザーが1,006人、アーティストが14,973人、ジャンルが2,517種類含まれています。比較手法は知識グラフとグラフニューラルネットワークを用いた推薦手法のKnowledge Graph Attention Network (KGAT)を使用しました。結果は下表のようになり、KGATの性能を上回りました。
なお、評価指標は以下のように計算します。
ここで$P_{10}^{u_i}$はユーザー$u_i$が聞いた曲を作曲したアーティストのうち、ユーザー$u_i$に推薦された上位10名のアーティストの数です。
説明可能性
図3は推薦に至るまでの経路をいくつか例に挙げています。例1や例2ではユーザーが以前に聞いたことのある曲と同じジャンルのアーティストを推薦しています。また例3や例4では同じ曲を聞いたことのある他のユーザーが過去に聞いた曲のアーティストを推薦しています。このように提案手法ではエージェントがたどった経路を見ることである程度、推薦理由を推測することができます。
まとめ
本研究では知識グラフ上でエージェントを探索させることで、高い説明可能性を有する新しいアーティスト推薦システムを提案しました。また、提案手法は高い説明可能性を有するだけではなく、グラフニューラルネットワークをベースとした推薦システムのKGATより高い推薦性能が達成であることを示しました。
本論文はアーティスト推薦システムに対する新しい方向性を示しました。しかし報酬設計の仕方や知識グラフの埋め込み手法の点で改善の余地があり、今後どのように研究が発展していくかとても興味深いです。
この記事に関するカテゴリー