# 階層化された論文情報とユーザ発話の埋め込みに基づく 論文推薦システム

奥田由佳 1 須藤 克仁 ${ }^{1,2}$ 品川政太朗 1,2 中村 哲 1,2
1 奈良先端科学技術大学院大学
2 理化学研究所革新知能統合研究センター
\{okuda. yuka.ou0, sudoh, sei . shinagawa,s-nakamura\}@is.naist.jp

## 概要

初学者はユーザの検索意図が曖昧かつ専門知識を 持たないため，既存の検索・推薦システムには適さ ない，そこで，階層化された論文情報とユーザ発話 の2つをべクトル化することにより，効率的にユー ザの検索意図を明確化し論文を推薦するシステムを 提案する．将来的には対話システムの構築を目標と し，本研究はその土台となる。

## 1 はじめに

初学者を対象に論文を推薦する場合，広く流通し ている検索・推薦システムでの推薦は難しい。なぜ なら，既存のシステムではユーザの検索履歴を必要 とすることが多いが，初学者は検索履歴を持つこと が困難だからである [1][2]. この問題へのアプロー チとして，ユーザの情報を都度取得するインタラク ティブなシステムを用いる手法 [3][4][5] がある．映画の推薦タスク [6][7] では，対話データで機械学習 モデルを訓練し自然な会話の中でアイテムの推薦を 行う手法 (Conversational Recommender System ; CRS) が提案されている. これらの研究は対話データを必要とする研究だが，論文の推薦においては公開済の 対話データが存在しない．また，論文の推薦にはス キルが必要とされるため，対話データの構築もコス トが高くこの手法は現状適用が難しい.

対話データを必要としない研究は，推薦アイテム 同士の関係性に基づきインタラクティブに検索意図を絞り込む手法 [8][9] がある。しかし，この手法 は，複数の興味を取得することを考慮していないた め「興味の取りこぼし問題」が発生する恐れがあ る.これは，ユーザが検索意図が曖昧な状態で複数 の分野に興味を持っていた場合，ユーザの興味をシ ステムが無視してしまうことを指す. 例を図 1 に示

図 1 提案手法を用いたノード間の移動

す. 第 1 階層の各セルは論文に対応するノードを表 し，第 2 階層の各セルは第 1 階層の論文に紐づく分野を表す。点線の矢印は，アイテム同士の関係性に 基づきインタラクティブに検索意図を絞り込む従来の手法を示し，黒い矢印は提案手法を示す. 例え ば，ユーザの興味が図 1 中の赤色が付いた「小説生成」と「ペルソナ対話システム」だった場合，最初 に「言語生成」を選択すると「小説生成」か「俳句生成」しか推薦できず「ペルソナ対話システム」の 興味を無視してしまう．全ノードを確認することで この問題は解決できるが，ユーザに多大な時間を使 うことを強いる．そこで，アイテムの階層的知識を ベクトル化し階層を跨いだノード間の移動を可能に することで，効率的なノードの移動を可能にし興味 の取りこぼしを起こしにくい手法を提案する。

## 2 関連研究

推薦システムの代表的な手法に協調フィルタリ ング [1][10] がある．しかし，協調フィルタリング はユーザの検索履歴を必要とし，検索履歷をもたな い初学者には適さない. 対して検索履歴を必要と せずユーザの情報をインタラクティブに都度取得 する研究は, CRS [6][7], Conversational Search [5], Interactive Information retrieval (IIR) [3][4] などがある.

CRS に関する研究では, Chen らがアイテムの情報やアイテム同士の関係を考慮したシステムを提案 している [6]. この研究では，アイテムの関係性と
対話の戦略を相互利用できるように教師あり学習に よってモデルを構築する. しかし, 階層的関係性や 検索意図の明確化に着目したものではなく，これら に関する知見は明らかになっていない。 また，学習 に対話データを必要とし, 対話データの取得が困難 である論文を対象にした推薦システムには現状適応 できない.

検索意図の明確化に関する研究には鈴木らの研究 [8] がある. この研究ではアブストラクトに含まれ る単語の共起性を用いたクラスタリングと選択型 の質問を用いて，各論文に対するユーザの興味度で あるスコアを計算している。しかし，複数分野に跨 る興味の取得を目的にしたモデルにはなっておら ず，興味の取りこぼしを起こす恐れがある。また，論文をユーザに複数提示しその選択結果を使用する が，初学者には論文は理解しにくく，選択の判断が 難しいという懸念点がある.

## 3 提案手法

## 3.1 提案システムの概要

「興味の取りこぼし問題」を解決するための提案手法の仮説を述べる. 提案手法では，構造的知識に おいて階層を親から子へと下がっていくことを基本としながら，子から親ノードへの上方向への移動 や違う根を持つノードへの移動など，あるノードか ら全ノードへの効率的な移動を可能にすることで 「興味の取りこぼし問題」が解決できると仮説を立 てた. 例えば図 1 の場合，黒矢印のように，「小説生成」から「対話システム」や「ペルソナ対話シス テム」へ移動が可能ならば取りこぼしは解決でき る. あるノードから全ノードへの移動を可能にする ために，ユーザからのフィードバックと，階層的知識の各ノードの表現の仕方に工夫を加えた. ユーザ のフィードバックについて，既存の研究では鈴木ら [8] のように提示した選択肢に対するユーザの選択結果を使用する研究が多い. 対して, 提案手法で は，ユーザのフィードバックを発話の形で得ること で，より広いユーザの興味を取得可能にする. そし て, ユーザ発話と階層的知識の各ノードをべクトル 化することで，階層を跨いだノード間の移動を可能 にし，興味の取りこぼしを起こしにくくする。提案手法を用いた具体的な対話例を図 2 に示し，また具体的な手順を以下に記す。

図 2 提案手法を用いた具体的な対話例

1. 前処理として，与えられた階層的知識の各ノー ドをベクトルで表現する.

2. ユーザに対して複数キーワードを提示し，ユー ザの選択したキーワードを得る.

3. キーワードを選択した理由を問い，ユーザ発話取得する。このとき，取得した発話もべクトル 化する.

4. ベクトル化したユーザ発話と, ベクトル化した 各ノードで構成された階層的知識を照らし合せ て，各ノードのスコアの計算を行う.

5. スコアの計算結果をもとに，ユーザに最適な論文を推薦する.

6. 手順 2 から 5 で 1ターンとみなし, 繰り返すこ とでユーザの意図を明確化する。

以降では, 前処理の階層的知識の作成と提案手法 の詳細を述べる。

## 3.2 前処理：階層的知識の作成

階層的知識の作成について説明する。まず，事前 に図 3 のような階層的な知識が与えられるとする.第 2 階層のノードを図 3 の「言語生成」のような研究分野に対応させ，第 1 階層を「深層学習を用いた 俳句の自動生成」のような論文のタイトルに対応さ せる.この事前に与えられた階層的知識の各ノード をそれぞれべクトル化する．各ノードのベクトル化 には，ニューラルネットワークで単語のベクトルを 学習する word2vec[11]を用いる. まず，第 1 階層の 各ノードをべクトル化する手法を述べる．各論文の アブストラクトから，動詞・名詞・形容詞を特徴語 として抽出し，学習済みの word2 vect用いて論文 ごとに特徴語のべクトルの平均を取る．これを，第

1 階層のベクトルとする. 第 2 階層のノードについ ては，対象のノードに紐づく第 1 階層のノードのべ クトルに対する平均をとる．例えば，図 3 で表せら れるように，第 2 階層の「言語生成」のノードのべ クトルは，第 1 階層の「小説生成」と「俳句生成」 のベクトルの平均になる.

図 3 階層的知識のベクトル化

## 3.3 論文の推薦機構

どの論文を推薦すべきか判断する基準であるスコ アの計算方法と，スコアを元にしたキーワード生成 と，スコアの更新について述べる.

## 3.3.1 スコアの計算および更新

ユーザ発話とベクトル化した階層構造を用いてス コアの計算を行う。まず，ユーザ発話のベクトルを 得る. ユーザ発話の埋め込みは， 3.2 節に示したア ブストラクトから論文の埋め込みを得る方法と同一 の処理によって得る. 得られた発話べクトルと階層的知識の各ノードとの cosineをとり，その値をスコ アとした。スコアを算出する式 1 に示す.

$
\text { score }_{x}=\frac{x \cdot y}{\|x\|\|y\|}
$

このとき，score $x$ はノード $x$ のスコアを示し， $x$ は 各ノードを， $y$ はユーザ発話をべクトル化したもの を示す，最終的に，ノードごとに 1 つのスコアが割 り当てられる. また，スコアの更新は各ノードで加算し，前ターンの情報を引き継ぐ。

## 3.3.2 キーワード生成

キーワード生成について説明する. 3.3 .1 節で算出したスコアを用いて，スコアが高い上位 3 つの ノードを選択した後，各ノードに関連するキーワー ドをユーザに提示する. このとき，初学者が理解で きるようなキーワードを提示するのが望ましいが，今回は階層を跨ぐノード間の移動が有益かどうか の確認が目的であるため主検討事項としなかった。第 2 階層のノードが選択された場合はセッション名 を，第 1 階層から選ばれた場合は論文のタイトルを キーワードとしてユーザに提示した. また，1ター ン目のキーワードは階層的知識の最上階層のノード に対応する. 今回のモデルでは最上階層は第 3 階層 であり，第 2 階層の研究分野をまとめたさらに抽象的な分野を表す. 例えば図 1 ならば，1 ターン目の キーワードは「自然言語処理」のみとなりキーワー ドの選択が一意に決定し，システムの発話は「あな たが自然言語処理に興味がある理由を教えて下さ い」になる. システムはキーワードの提示からユー ザ発話の取得までを複数ターン繰り返すことで，曖昧な検索意図を明確化する。

## 4 実験

## 4.1 実験設定

提案システムの階層を跨いてノード移動を行う手法の有効性を検証するため，シミュレーション実験 を行った。

データセット：ACL の 2020 年度の年次カンファ レンスのプログラムである “Annual Meeting of the Association for Computational Linguistics (2020)(ACL2020)”を用いた. プログラムに記載されているセッション名を第 2 階層の各 ノードに対応させ，論文のタイトルを第 1 階層の各ノードに対応させた. 第 2 階層の ノード数は 23 , 第 1 階層のノード数は 68 となった。また，スコアの計算に利用する word2vec では，事前学習済みモデルである GoogleNews-vectors-negative301)を利用した。

仮想ユーザと比較モデル： 実験のシナリオとして 潜在的に 3 つの論文に興味を持つユーザ（仮想 ユーザ）を事前に 3 人分設定した。このとき 3 つの論文はランダムに決定した. 各仮想ユーザ は初学者であると想定し専門的な用語を使用せ ず，各ユーザに設定された興味に従って著者が 図 2 のようなユーザ発話を入れてシステムと 5 ターン対話した。

提案システムの階層を跨いてノード移動を行 う手法の有効性を測るため，比較するシステム (ベースライン）として階層を跨ぐ機能を無効 にしたシステムを用意した. ベースラインは図 2 の点線矢印のあるノードから属する子ノード


にしか移動できない挙動をする、スコアの計算 は提案手法と同一であり，スコアの計算を行う ノードの範囲はシステムが遷移可能なノードの みに対して行った。よって，次ノードの選択の みにスコアの計算を使用するため，スコアの更新は行なっていない. 属する子ノードが無く なった地点で，一番初めの分岐点に戻り最初に 選択したノードの次にスコアの高いノードを選択する。キーワード生成としては，属するノー ドが 3 個以下の場合はそのままの個数でユーザ に提示し， 3 個を超える場合はランダムに 3 つ 選択して提示した。

評価指標： 事前に仮想ユーザに設定した 3 つの 論文に対し，システムがどのような順位づけ をしたか把握するために評価指標を導入する。評価指標として, Average Precision (AP) や RR (Reciprocal Rank) も検討したが，今回は正解ア イテムを推薦できたかの精度評価が目的ではな いため，独自の以下評価スコアを導入した.

$
\text { 評価スコア }=\frac{\text { 論文の昇順順位 }}{\text { 論文の総数 }}
$

評価スコアは，論文ごとに算出されたスコアに 基づく順位を総数で割った数であり，対象とす る論文が上位何\%にあたるかを表す。スコアが 低いほど，ユーザが他の論文に比べてその論文 に興味を持っていることを表す. 論文の総数に ついては全ターンの中で遷移可能だった第 1 階層のノードの総数を指す。提案手法はすべての ノードに遷移可能なため，一貫して第 1 階層の ノードの総数の 68 となる. 論文の昇順順位も この論文の総数の中で決定する。

## 4.2 実験結果・考察

評価指標による実験結果を表 1 に示す. 表 1 中の 論文 1 ，論文 2 ，論文 3 はランダムに設定した仮想 ユーザが興味を持つ 3 つの論文を指し，横線が表示 された箇所はシステムがスコアを取得できず，興味 の取りこぼしを起こしていることを示す.

## 4.2.1 スコアの計算の妥当性

表 1 の結果から，提案手法の仮想ユーザ A の論文 1 や論文 3 など設定した 3 つの論文に対してユーザ の興味が強いことを取得できている箇所が散見され ることから，ユーザ発話によるスコアの計算の妥当性が示唆された。また，今回の実験では初学者を想表 1 評価指標による比較

定しユーザ発話に専門的用語などを含めていないた め，ユーザが専門知識を持たなくともシステムは有効なスコアの計算を行えることが示唆された.

## 4.2.2 取りこぼし問題が解決できたか

表 1 の結果から，前提としていた「取りこぼし問題」がベースラインでは発生し，提案システムでは 発生せずスコアを取得できていることから提案シス テムの有効性が示唆された. また，ユーザ A とユー ザ B の論文 3 に着目すると，べースラインはユー ザの興味を取得できていないが，提案システムでは ユーザの強い興味を取れている。このことから，提案システムではユーザの大きな興味の取りこぼしを 防げることが示唆される. しかし, 仮想ユーザが興味があると仮定した論文すべてにおいて提案シス テムが強い興味を把握できるとは限らないことが わかった. また，ユーザ $\mathrm{A}$ の論文 1 やユーザ $\mathrm{C}$ の 論文 3 のスコアに着目すると, ベースラインの方が ユーザの興味が強いことを判断できていることがわ かる.このことから，ベースラインの方が興味の取 りこぼしは起こしやすいが，確実に一つの分野に関 しての興味が把握できると考えられる．以上の考察 から，複数の興味をより効率的に取得するため，階層を跨ぐ挙動に加えノード移動の仕方により工夫が 必要であると考えられる。

## 5 おわりに

本研究では，「興味の取りこぼし問題」に対して，階層的知識をべクトル化し階層を跨いだノード間の 移動を可能にすることで解決する手法を提案し，そ の有用性を検討した．結果として，期待した通りに 提案手法は曖昧な検索意図を明確化しつつ取りこぼ し問題に対して有効であることが示唆された. 今後 の展開としては，本研究で得られた知見をもとに論文推薦の対話システムの構築を行い，最終的には主観評価などを行う予定である.

## 参考文献

[1] Joeran Beel, Bela Gipp, Stefan Langer, and Corinna Breitinger. Research-paper recommender systems: a literature survey. International Journal on Digital Libraries, Vol. 17, No. 4, pp. 305-338, 2016.

[2] Jyotirmoy Gope and Sanjay Kumar Jain. A survey on solving cold start problem in recommender systems. In 2017 International Conference on Computing, Communication and Automation, 2017.

[3] Hung-Yi Lee, Pei-Hung Chung, Yen-Chen Wu, TzuHsiang Lin, and Tsung-Hsien Wen. Interactive spoken content retrieval by deep reinforcement learning. IEEE/ACM Transactions on Audio, Speech, and Language Processing, Vol. 26, No. 12, pp. 2447-2459, 2018.

[4] David Robins. Interactive information retrieval: Context and basic notions. Informing Science The International Journal of an Emerging Transdiscipline, Vol. 3, No. 2, Jan 2000.

[5] Corby Rosset, Chenyan Xiong, Xia Song, Daniel Campos, Nick Craswell, Saurabh Tiwary, and Paul Bennett. Leading conversational search by suggesting useful questions. In The Web Conference 2020, 2020

[6] Qibin Chen, Junyang Lin, Yichang Zhang, Ming Ding, Yukuo Cen, Hongxia Yang, and Jie Tang. Towards knowledge-based recommender dialog system. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing, 2019.

[7] Raymond Li, Samira Kahou, Hannes Schulz, Vincent Michalski, Laurent Charlin, and Chris Pal. Towards deep conversational recommendations. In Proceedings of the 32nd International Conference on Neural Information Processing Systems, 2018

[8] 鈴木亮詞, 工藤聖広, 辻野友孝, 清水堅, 白松俊, 大直忠親, 新谷虎松. 論文リポジトリに基づく研究支援 のための対話的ユーザモデル構築手法の提案. 全国大会講演論文集, 第 72 回, 人工知能と認知科学, pp. 741-742, Mar 2010.

[9] Yi-Cheng Pan, Hung-Yi Lee, and Lin-Shan Lee. Interactive spoken document retrieval with suggested key terms ranked by a markov decision process. IEEE Transactions on Audio, Speech, and Language Processing, Vol. 20, No. 2, pp. 632-645, Feb 2012.

[10] Xiangnan He, Lizi Liao, Hanwang Zhang, Liqiang Nie, $\mathrm{Xia} \mathrm{Hu}$, and Tat-Seng Chua. Neural collaborative filtering. In Proceedings of the 26th International Conference on World Wide Web, 2017.

[11] Tomás Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient estimation of word representations in vector space. In Yoshua Bengio and Yann LeCun, editors, 1st International Conference on Learning Representations, Workshop Track Proceedings, 2013.

## 付録

## A仮想ユーザに事前に設定した 3 つの論文

4 節で行ったシミュレーション実験の，仮想ユー ザに事前にランダムに設定した 3 つの論文を表 A に 示す.

表 A 仮想ユーザが興味を持っていると仮定した 3 つの 論文

 & 興味のある論文のタイトル \\

## B 対話履歴の例

## 4 節で行なったシミュレーション実験の対話履歴 を例として図 B に示す. pinakes がシステムを指し， user がユーザを示す. 例として取り上げたのは 4 節 の仮想ユーザ A に対する提案手法での対話例であ る.
: Automating Frame Analyses to Identify Bias by Word Choice and Labeling,

2: Discourse and Pragmatics,

3: What determines the order of adjectives in $\{E\}$ nglish? Comparing efficiency-based theories using dependency treebanks

(user) 1

(3) pinakes:) Please tell me the reason you chose.

(user )I'm curious about how people's everyday writing changes with or without emotional bias.
}

(6) pinakes :) Please select the keyword you are interested

1: Media Bias the Social Sciences and \{NLP\}: Automating Frame Analyses to Identify Bias by Word Choice and Labeling

2: What Was Written vs. Who Read It: News Media Profiling Using Text Analysis and Social Media Context,

3: Cognitive Modeling and Psycholinguistics

(user)2

(6) pinakes:) Please tell me the reason you chose

(user )l am interested in sentiment analysis contained in SNS. Also, I would like to analyze emotions not only from SNS but also from texts of books such as literature.

(3) pinakes:) Please select the keyword you are interested in from the bottom 1: Media Bias the Social Sciences and \{NLP\}: Automating Frame Analyses to Identify Bias by Word Choice and Labeling

2: What Was Written vs. Who Read It: News Media Profiling Using Text Analysis and Social Media Context

3: Cognitive Modeling and Psycholinguistics

(user) 3

(3) pinakes:) Please tell me the reason you chose (user)By the way, I'm also interested in psychology.

(6) pinakes :) Please select the keyword you are interested in from the bottom 1: What Was Written vs. Who Read It: News Media Profiling Using Text Analysis and Social Media Context,

2: Media Bias the Social Sciences and \{NLP\}: Automating Frame Analyses to Identify Bias by Word Choice and Labeling,

3: Cognitive Modeling and Psycholinguistics

(user) 3

(c) pinakes:) Please tell me the reason you chose

(user )Well, more specifically, I'm interested in emotions, psychology and language. I especially like books, and I'm interested in analyzing emotions from the text of books and how they affect the human mind.

図 B 仮想ユーザ A の提案手法での対話例
 奥田由佳 1 須藤 克仁 ${ }^{1,2}$ 品川政太朗 1,2 中村 哲 1,2 1 奈良先端科学技術大学院大学 2 理化学研究所革新知能統合研究センター \{okuda. yuka.ou0, sudoh, sei . shinagawa,s-nakamura\}@is.naist.jp  