# Web 文書からの用語検索における用語候補のランキングの検討

池内省吾 ${ }^{1}$ 南條浩輝 ${ }^{2}$ 馬 青 1
1 龍谷大学理工学研究科 2 京都大学学術情報メディアセンター
${ }^{1}$ t20m002@mail.ryukoku.ac.jp ${ }^{2}$ nanjo@media.kyoto-u.ac.jp ${ }^{1}$ qma@math.ryukoku.ac.jp

## 概要

適切な用語を用いないと正確な問い合わせが行 えないことがある。我々は，適切な用語がわからな いユーザの支援の研究を行っている. 具体的には， ユーザからの用語に関する説明文を検索質問として Web 検索を行って，Web 文書から用語を抽出する $「$ Web 文書からの用語検索」を研究している. 本稿 では，Web 文書群から得た用語候補のランキングに ついて述べる.

## 1 はじめに

用語検索は，用語を説明する説明文から用語を求 める処理である. 辞書逆引き [1] とは，説明文と近 い定義文を見つけてその見出し語を求める処理であ り，辞書に掲載されている語に対する用語検索は，辞書逆引きで求めることが可能である。一方，新語 や専門用語は辞書形式で定義されていないことがあ る.そこで，我々はユーザによる説明文を検索質問 として一般の Web ページを検索し，そこから用語抽出を行う「Web 文書からの用語検索」の手法を提案 している [2]. 本稿では, 用語検索において出力す る複数の用語候補のランキング方法について検討を 行った結果を報告する.

## 2 Web 文書からの用語検索

我々が提案している BERTを用いた Web 文書か らの用語検索 [2] について述べる。これは以下の 3 つの処理を順に適用して用語を求めるものである.

1. Web 文書検索: 与えられた説明文からなる検索質問で Web 検索を行い，Web 文書集合を取得 する

2. 用語候補抽出: Web 文書集合それぞれの文書に ついて，与えられた検索質問と文書中のテキス トを連結して BERT に入力し，質問応答の枠組 みを利用して用語候補を抽出する。
3. 用語候補ランキング: 得られた用語候補をラン キングして出力する

## 2.1 Web 文書検索

本研究では, Web 文書として Google スニペット を用いる. Google スニペットは, Goolge 検索エンジ ンに検索質問を入力して得られる検索結果ページに おいて，検索結果の Web ページのタイトルや URL の下に表示される短い説明のことである ${ }^{1)}$. Google スニペットの取得は， Google API Client Libraries [3] を用いて行う。

## 2.2 用語候補抽出

用語候補抽出には BERTを用いた質問応答の枠組 みを用いる。具体的には，SQuAD 2.0 [4] で用いら れた方法 [5] を用いる。これは，質問 $q$ と文書 $d$ を 連結させたもの（[CLS] $q[\mathbf{S E P}] d)$ に対して, 解答可能な場合には文書中の正解の開始位置と終了位置（Start/End）を出力するように，解答不可能な場合には開始位置と終了位置として [CLS] の位置を出力するように BERTを学習 (fine-tuning) するもので ある. 本研究では, BERT の日本語 Pretraining モデ ルとして，京都大学提供 BERT（BERT-BASE-WWM 版 $)^{2)}$ を用いる.

## 2.3 用語候補ランキング

得られた用語候補を何らかの方法でランキング （順位づけ）し，出力する. 我々は, 以前の研究 [2] において頻度に基づいたランキングを行ったもの の，他のランキング手法を検討していなかった. 本研究ではこの検討を行う.


## 3 実験のデータ

## 3.1 用語検索用の検索質問

これは，先行研究 [2] で本タスクのために作成され たものである.

## 3.2 用語抽出用 BERT の学習データ

用語抽出用 BERT の学習データとして，解答可能性付き読解データセット [6] を使用する。これは，文書読解タスク用のデータセットであり，(質問，解答，文書）の組に対して，解答可能性スコアがつ けれらている. 解答可能性スコアは, 文書読解に よって質問に答えることができるかについて人手で 判断されたスコアである. このデータセットの（質問 $q_{i}$, 解答 $a_{i}$, 文書 $d_{i}^{k}$ ) の組について, 質問 $q_{i}$ に 対する解答 $a_{i}$ (本研究での用語) は文書 $d_{i}^{k}$ に必ず 含まれている。一つの質問・解答について複数 $(k)$ の文書が用意されている. 読解タスクにおいては解答不能文書が定義されているが，これは解答を含ま ないという意味ではなく，解答根拠が存在しないと いう意味である。

本研究での用語検索では解答根拠は不要である. さらに，求めた Web 文書に用語が存在しない場合も ある。そこで，読解タスクのデータセットそのもの を学習に使うのではなく, 次のように修正して学習 データとする。

1. 解答可能データ集合: 文書読解タスク用データ セットの $\left(q_{i}, a_{i}, d_{i}^{k}\right)$ の組を全て解答可能デー 夕集合とする． $a_{i}$ の $d_{i}^{k}$ における開始位置と終了位置を BERT に学習させる.

2. 解答不能データ集合: 文書読解タスク用データ セットの $\left(q_{i}, a_{i}, d_{i}^{k}\right)$ の組に対して， $d_{i}^{k}$ を別 の $q_{j}$ に対応する文書 $d_{j}^{l}(j \neq i)$ に置き換えたも のを解答不能データ集合とする ${ }^{3)}$ 。開始位置と 終了位置を共に [CLS] の位置として BERT に学習させる。

## 4 用語候補ランキング

Web 文書からの用語検索では，検索質問と各 Web 文書を連結した文字列を BERT に入力して用語候補を求め，その候補をランキングして出力する（図
$ が含まれていないことも確認する.
}

図 1 複数文書からの用語候補の抽出とランキング

1).

最も単純なランキング手法として頻度に基づくも の（多数決）がある. 実際に，我々も以前に多数決方法による用語検索を行った [2] ものの，他のラン キング手法は十分に検討できていなかった. このよ うな背景に基づき，本研究では多数決方式と他の 4 種類ランキング方法（下記）を検討する。

1. Maj (Majority): 多数決（頻度）に基づいてラン キングを行う。

2. T-TSum (Sum of Term-Term similarities): 用語候補間で類似度をとり，その和に基づいてランキ ングを行う。これは用語候補の内でもっとも中心となるような用語が目的の用語であることを 期待するものである.

3. Q-T (Qery-Term similarity): 検索質問（単語列） と用語候補（単語）との類似度に基づいてラン キングを行う．正解用語と検索質問は同じ意味 を表していると仮定し，両者の類似度を直接求 めることで目的の用語が求められると期待する ものである.

4. Q-T ${ }_{s n i}$ (Query-Term_snippet similarity): 検索質問 (単語列) と用語候補のスニペット（単語列） との類似度に基づいてランキングを行う．正解用語による検索で得られるスニペットを正解用語の説明とみなし，これが検索質問と近いと期待するものである.
5. $\mathbf{Q}_{s n i}-\mathbf{T}_{s n i}$ (Query_snippet-Term_snippet similarity): 検索質問のスニペット（単語列）と用語候補のスニペット（単語列）との類似度に基 づいてランキングを行う．両者ともにスニペッ トとすることで，正解用語と検索質問間で高い 類似度が得られることを期待するものである。

Maj 以外のランキング手法についての概要を図 2 から図 5 に示す.

本研究では，「Xのスニペット」として，Xを検索 クエリとして，Google API Client Librariesを用いて 1 件だけ取得したものを採用した。

本研究では, 用語候補 (単語) や検索質問（単語

図 2 T-Tsum (Sum of Term-Term similarilites)

図 4 Q-T ${ }_{s n i}$ (Query-Term_snippet similarity)

列)，それらのスニペット（単語列）間の類似度を 求めるために，これらを同一次元のベクトル（分散表現）で表現する. 分散表現は，用語候補，検索質問，スニペットを同一に扱い（それらを string と する)，[CLS] string [SEP] を BERT に入力して求め る. 具体的には, 各 token に対応する BERT の出力 embedding の平均値（average pooling）を求める. べ クトル間の類似度はコサイン距離とする。

## 5 実験結果と考察

23 件の検索質問を用いて用語検索を行った. 図 1 に示す通り各質問について M 件（最大 100 件）の Web 文書を検索し, 各 Web 文書から 1 件の用語候補 を取り出して重なりをとり，用語候補の集合（図1 の $\mathrm{N}$ 件）を得た. この用語候補中に正解の用語を含 むものは 17 件，含まないものは 6 件であった. こ の 6 件に関してはどのようなランキング手法を適用 しても正解を上位にランクすることはできない. 求 める Web 文書数を多くし，各文書から複数の用語候補を出力するなどが必要であることがわかる.

はじめに多数決ランキングを行った. 用語候補中 に正解を含むもの 17 件のうち 11 件で正解の用語が

図 3 Q-T (Query-Term similarity)

図 $5 \mathrm{Q}_{s n i}-\mathrm{T}_{s n i}$ (Query_snippet-Term_snippet similarity)

1 位であった。残りの 6 件は， 3 位， 3 位，4 位，5 位，6位，13 位であった. 結果は表 1 の Majに示さ れている。23 件に対する平均逆順位 (MRR) は 0.54 であった（表 2). 1 位ではない 6 件については，正解の用語に代わって検索質問に関係はするものの別 の語が上位に来ていることが多い. 例えば，正解用語が「バナナ」である時には，「マンゴー」や「み かん」が上位にランクされていた． 4 位以降も「パ パイヤ」「ぶどう」「パイナップル」と続き，バナナ と同じカテゴリの果物が続く. 検索質問が曖昧で,抽出する用語が絞りきれない時には，このようなこ とになると考えられる。用語「アイシャドー」に対 しては，「目元」「アイ」「ニベア」「油分」「アイスク リーム」が上位にランクされており，化粧品とは別 カテゴリの食品カテゴリの語が含まれていた. 用語「コールドゲーム」に対しては，「野球」「ヤクルト」 $「 3$ 月 21 日」「甲子園球場」「8 試合」「順延になった」「9月 20 日」などが上位にランクされており，野球 に関する用語が抽出されていると考えられるが，日付などの別のカテゴリと考えられる語も含まれてい た.これらに対しては，用語間の類似度や用語と検索質問の類似度を求めることで明らかに異なる候補
表 1 用語ごとの検索結果

正解となる用語の出現順位を表す * : 順位が 100 件以内に正解がなかった

であるもの（食品や日付など）を除くことができる 可能性がある.

次に，類似度に基づく 4 種類のランキングを行っ た. MRR は $0.05 \sim 0.13$ と低いものであった. この 結果も表 2 に示されている.

T-TSum では，多数決で上位にランクできるもの については低いランクをつけてしまったものの，多数決ランキングで低いランクのものについて，よ り高いランクに出力できていた。実際に多数決で 6 位のアイシャドーは 5 位に，13 位のコールドゲー ムについては 7 位にランクすることができた（表 1 T-TSum).

Q-T では，単語列（検索質問）と単語（用語候補） との間で類似度をとろうとしており，うまく働かな かったものと考えられる。

を取り出して，単語列同士の類似度を測った. Q-T表 2 各手法による MRR の値

よりも類似度の求め方としては適切と考えられる が，課題が大きいことがわかる。

$\mathbf{Q}_{s n i}-\mathbf{T}_{s n i}$ では，用語候補と検索質問の双方からス ニペット（単語列）を取り出して，単語列同士の類似度を測った。検索質問のスニペットが正解用語の スニペットと類似し，かつそれ以外の用語候補のス ニペットと類似しないことを期待したが，そのよう なスニペットの取得に課題があったと考える.

## 6 まとめ

用語検索において出力する複数の用語候補のラン キング方法について検討を行った. 多数決によるラ ンキングが精度が高かった. 類似度に基づく手法そ れ自体は高精度ではなかったが，多数決手法が苦手 とするようなものに対して高いランクに出力できる 可能性があることがわかった. 今後は多数決手法と 類似度に基づく手法の併用による用語検索の高精度化を検討していきたい.

謝辞: 本研究は科研費基盤研究 (C) 19K12241 の補助 を受けた。

## 参考文献

[1] 粟飯原俊介, 長尾真, 田中久美子. 意味的逆引き辞書『真言』. 言語処理学会第 19 回年次大会発表論文集, pp. 406-409, 2013

[2] 池内省吾, 南條浩輝, 馬青. BERT を用いた Web 文書か らの用語検索. 情報処理学会研究報告 Vol.2021-NL249, pp. $1-6,2021$.

[3] Google. Google API Client Libraries. https:// developers.google.com/api-client-library.

[4] Pranav Rajpurkar, Robin Jia, , and Percy Liang. Know What You Don' $t$ Know: Unanswerable Questions for SQuAD. $A C L$, Vol. 2, p. 784-789, 2018.

[5] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. NAACL, Vol. 1, p. 4171-4186, 2019.

[6] 鈴木正敏, 松田耕史, 岡崎直観, 乾健太郎. 読解による 解答可能性を付与した質問応答データセットの構築.言語処理学会第 24 回年次大会, pp. 702-705, 2018.

## A 付録

表 A 作成した検索質問 23 件


 池内省吾 ${ }^{1}$ 南條浩輝 ${ }^{2}$ 馬 青 1 1 龍谷大学理工学研究科 2 京都大学学術情報メディアセンター ${ }^{1}$ t20m002@mail.ryukoku.ac.jp ${ }^{2}$ nanjo@media.kyoto-u.ac.jp ${ }^{1}$ qma@math.ryukoku.ac.jp  