# 不完全情報ゲーム Codenames におけるプレイヤ一間の親密度 とゲームへの習熟度がゲームパフォーマンスに与える影響の 分析

早苗 昭尚 ${ }^{1}$ 加藤 勇護 ${ }^{2}$ 坪倉 和哉 1 小林 邦和 ${ }^{2}$
1 愛知県立大学大学院 情報科学研究科
2 愛知県立大学 情報科学部
\{im222009, is211021,im212008\}@cis.aichi-pu.ac.jp
kobayashi@ist.aichi-pu.ac.jp

## 概要

Codenames とは相手から与えられたヒントをもとに意図を推測し単語が書かれた 25 枚のカードから正解のカードを探し出す不完全情報ゲームの一つである. Codenames ではルール上, 1 つの単語を用いて複数のカードを取らせる必要がある. そのため, Codenames の分析は人間が与えられた条件下でどのように意図を伝えるかの分析と言うことができ，ゲーム AI の実装だけでなく人間の思考のモデル化にも役に立つと考えられる. そこで, 本研究ではプレイヤー間の親密度とゲームへの習熟度に着目し勝率との関係を分析した. その結果, 親密度が高いほど勝率が上がることが示唆された。また，プレイヤーのゲームに対する習熟度による影響は親密度よりもさらに勝率に大きな影響を与えることを確認した.

## 1 はじめに

人工知能技術の発展により, 将棋や囲基といった完全情報ゲームでは，すでに人間のチャンピオンに勝利するほどの能力を獲得している．そこで，より高度な知能を獲得することを目指し, 完全情報ゲー ムより複雑かつ解決が困難なタスクである不完全情報ゲームを対象とした研究が進められている.

不完全情報ゲームの 1 つである不完全情報コミュニケーションゲームは, 他のプレイヤーとコミュニケーションを取りながら進めるゲームであり，例えば人狼ゲームを対象とした研究が進められている [1]. 不完全情報コミュニケーションゲームの中でも, Codenames は自然言語理解に焦点を当てたゲー ムであり, 場は単語が書かれた 25 枚のカードから構成される. 各カードにはそれぞれ色が割り当てられている.プレイヤーはスパイマスターと諜報員に分かれ，スパイマスターのみがカードの色の割り当てを確認できる、スパイマスターは諜報員に自チー ムの色のカードを選択してもらえるようにヒントを与え，諜報員はヒントをもとに単語が書かれたカードを選択するため，ヒントを通してスパイマスターと諜報員が意図を伝達/推測する設計のゲームとなっている.

2019 年には Codenames の AI の実装を目的とした「Codenames AI Competition」が開催されており,関連した研究が行われている $[2,3]$. 文献 [2] では, word2vec [4] や GloVe[5], 文献 [3] では, GPT-2[6] を用いた実装を提案しているが，実装において人間のゲームログは活用されていない，坪倉らは，日本語を対象とした Codenames の研究の第一歩としてゲー ムログの収集を行いヒント行為を「汎化」や「言い換え」などに分類した [7] が, ヒント行為の分類を行ったのみでゲームのパフォーマンスや人間の特性といったことについての研究は行われていない. しかし, Codenamesでは単語によって与えられるヒントから別の単語を推測するというゲームの性質上, パフォーマンスがプレイヤーの前提知識に影響を受けると考えられる。 そこで，本研究ではプレイヤー 間の親密度とゲームへの習熟度に着目し, ヒントの出し手とヒントから推測する人の関係が親密であるほど前提知識の共有部分が多くなるためにゲームのパフォーマンスが向上する，ゲームに習熟しているプレイヤーほど効果的な行動を学ぶためにゲームのパフォーマンスが向上するという仮説のもと，ゲー ムログの収集およびパフォーマンスとの関係の分析を行った。

## 2 Codenames

本章では, Codenamesのルールについて説明する. Codenames では，スパイマスター 1 人と諜報員 1 人以上からなる 2 チームに分かれて行うものと, 2 人で交互にヒントを出し合いカードを取っていくものがある. 本研究ではプレイヤー間の関係性を見るため 2 人で行うルールを用いた。場には 25 枚の単語が書かれたカードがあり，それらのカードにはそれぞれのプレイヤーで異なる配色で取らせるべきカー ド (緑色), 暗殺者カード（黒）どちらでもないカー ド（灰色）が割り当てられている. 2 人で交互にヒントを出し合い計 9 つのヒントで緑色のカードを全て取得できたらプレイヤー側の勝利となる. 暗殺者のカードを取らせてしまった場合や 9 つのヒントの後に緑色以外のカードを取った場合にはプレイヤー 側の負けとなる. 2 人のプレイヤーにはそれぞれ異なる色が見えているが，緑色のカードのうち 3 つは共有しているため取らなければならないカードは 15 枚となる. また, 自分側の暗殺者のカード 3 枚のうち一枚は必ず相手側から見た緑色のカードとなっている.(図 1, 図 2).

プレイヤーが提示するヒントは正解の単語を連想させ, ヒントとカードの単語が意味的に関係する一語の単語（品詞は問わない）である必要がある.ただし, 連想が容易なヒントを出させないためにいくつかルールが設けられている．例えば，場にある単語や言語を変えただけの単語 (例 : 猫 $\rightarrow$ cat), 場にある単語を含む単語はヒントとして使用不可である.なお，すでに取られた単語はヒントとして使用可能である. また, プレイヤーはヒントのほかに相手プレイヤーに取ってほしいカードの枚数を指定できる．ヒントを出されたプレイヤーはカードを取るがこの際に指定した枚数よりも多く取ることが可能である.これは前のヒントをとり逃した場合に役に立つ.

ヒントを出されたプレイヤーは相手のヒントを元に, 正解だと思うカードを選ぶ. 選んだカードが緑色のカードであった場合, さらにもう一枚とるか否か選ぶことができる. 選んだカードが灰色のカー ドであった場合, 相手にターンを渡す。選んだカー ドが暗殺者のカードの場合, 選んだチームはその時点で負けとなるため, 暗殺者のカードを選ぶことは絶対に避けなければならない，プレイヤーは9つまでしかヒントを出すことができないために 15 枚の
カードを取るためには，一つのヒントでなるべく多くのカードを連想させるヒントを出すことが重要である.

以上のようにヒントを出すプレイヤーは単語の意味や関係性などからカードの推測に効果的なヒントを提示し，ヒントを受けたプレイヤーはヒントとなる単語からカードを推測する必要がある。そのため, Codenames は高度な自然言語理解を必要とするボードゲームであり，ゲーム AI の実装は挑戦的な自然言語処理タスクと言える.

## 3 Codenames のデータ収集

Codenames の分析を行うため，ゲームのログを収集した。ゲームはオンラインで Codenames をプレイすることが可能な「CODENAMES ONLINE $\rfloor^{1)}$ で行い, 本学の大学生と大学院生 9 名が参加し, 一つの組み合わせごとに 3 ゲームずつ行い合計 16 通りの組み合わせで 48 ゲーム分のログを取得した. また, プレイヤー間の親密度については「1: 知らない, 5 : 仲が良い」として 1 から 5 の 5 段階で各プレイヤーが相手に対する親密度を主観で評価した。

ゲームごとのログは以下のデータから構成される。

・経過ターン数

・与えたヒント
- 指定枚数

・場に残っているカード

・そのターンで取った緑色のカード

・取ったカード

また, ゲームごとのデータの他にも組み合わせごとのログについて以下のデータを取得した.
- 人名 1
- 人名 2
- game1 の勝敗
- game2 の勝敗
- game3 の勝敗

・勝利数

・敗北数
- game1 の合計ターン数
- game2 の合計ターン数
- game3 の合計ターン数

・1 から 2 への親密度

・2 から 1 への親密度

1) https://codenames.game/

図 1 プレイヤー 1 のゲーム画面

図 3 プレイヤーの親密度と勝利数

なお，ヒントを 9 つ出した後サドンデスというヒントなしで緑色のカードをとり続けるモードとなるがこの場合にはターン数に 101 と記録し，このデー タの他に備考欄に暗殺者のカードを取ったことなどの情報が記載されている。また，それぞれのゲームの実施日も記録されている.

## 4 ログの分析

## 4.1 親密度と勝率の相関分析

この節では収集したログを用いて関係性が親密であるほどゲームのパフォーマンスが向上するという仮説を検証する.

相手との親密度は客観的な厳密な定義が難しく知り合ってからの時間だけでも会う頻度だけでも十分とは言えない. そのため, 本研究では相手との関係性を 5 段階の主観で評価してもらい双方向からの親密度の平均を両者間の親密度の值として用いることとした。

図 3 に親密度と 3 ゲーム中の勝利回数をプロットしたものを示す.この図より, 勝利した組み合わせは親密度 2.5 以上のものしかなかったため相関があるように見えるが，相関係数としては 0.21 とごく弱い正の相関であった。この結果は親密度と勝率の間には明確な関係性はないことを示唆している。この

図 2 プレイヤー 2 のゲーム画面

ような結果が得られた原因の 1 つとして両者間の親密度の認識の違いがあるのではないかと考えた。そこで，双方の親密度の絶対差を用いた親密度差と勝利数，親密度の値を各組み合わせにおいて低く答えたプレイヤーの親密度を用いた低親密度，高く答えたプレイヤーの親密度を用いた高親密度とした際の勝利数の相関関係を分析した。

この分析の結果得られた相関係数を表 1 に示す. また，高親密度と勝利数を散布図としてプロットしたものを図 4 に示す.この結果より親密度差を用いた場合と高親密度を用いた場合に相関係数が増加することが確認できる。

親密度差について大きいほど勝利数が大きくなるという結果であるが，これは親密度差について值が $0,1,2$ の 3 つであるのに対してデータ数が $5,10,1$ と偏っていることに原因があると考えられる．低親密度および高親密度を用いた分析においては，低親密度を用いた分析がほぼ無相関であったのに対して，高親密度を用いた分析において弱い正の相関を示したことからどちらか一方が親密だと判断できるような関係性であることが勝率に関係する可能性が示唆されたが，関係性が親密なほど勝率が高くなるという仮説を肯定するほどの強い相関を得ることはできなかった。

これは個人の認知能力や語彙，ゲームへの習熟度など様々な要因が関係しているからであると考えられる.

表 1 親密度の違いと勝利数との相関係数

図 4 高親密度と勝利数

## 4.2 プレイ回数と勝率の相関分析

この節ではゲームに対する習熟度が勝率に影響をおよぼすのではないかという仮説のについて分析を行う。

本研究におけるデータ収集では全員が Codenames 経験者ではあったが，ルール確認のため数回行う程度であった. そのため, 時系列的にそのプレイヤー において何回目に実施したゲームであったのかがプレイの習熟度に関係し勝率に影響を与えるのではないかと仮定し, プレイ回数と勝利数についての分析を行う。

プレイ回数について，データを取得した日時を用いてそのゲームがプレイヤーにとって何回目のゲー ムであったのかを記録した. 2 人 1 組で行う関係上, 2 人で異なるプレイ回数となるためそのゲームにおけるプレイ回数を 2 人の平均, プレイ回数の絶対差, 低頻度, 高頻度の 4 通りで分析を行った. ここで, 本研究ではプレイ回数が多い方を高頻度, 少ない方を低頻度と表記する。

3 通りのプレイ回数を用いた勝利数との相関係数を表 2 に示す. また, 最も強い相関が得られた低頻度をプレイ回数として用いた際の勝利数との散布図を図 5 に示す.この結果より, プレイ回数による習熟は関係性によるパフォーマンスの向上よりも影響が大きいという結果が得られた. また, プレイ回数について低頻度のプレイヤーのプレイ回数が相関係数 0.54 とこれまでの分析で最も大きい正の相関を示すことがわかった。これは Codenames が二人の認識を共有し協力しなければいけないタスクであるために，一方のみの習熟ではゲーム自体の勝率にあまり影響を与えなかったのではないかと考える.表 2 プレイ回数と勝利数との相関係数

図 5 低頻度のプレイ回数と勝利数

## 5 おわりに

本研究では，不完全情報ゲームである Codenames におけるプレイヤーの親密度に着目しゲームログの収集および勝率の関係の分析とその考察を行った。 データ収集においてはプレイヤー9 名の 16 通りの組み合わせ 48 ゲーム分のデータを収集し, 親密度の分析ではより親密度を高く答えたプレイヤーのデータを用いた際に勝率と弱い正の相関が得られた.しかし，仮説を肯定するほどの強い相関ではなかった。さらに，勝率に影響を与える他の要因の一つとしてプレイ回数についての分析も行った。その結果, 低頻度のプレイヤーのプレイ回数と勝率の間には比較的強い正の相関があり親密度よりも大きな影響があることを示した。今後は, Codenamesのゲームログを追加収集するとともに，他の要因についても分析を進めていき将来的には AIによる実装を行う予定である.

## 参考文献

[1] 片上大輔, 鳥海不二夫, 大澤博隆, 稲葉通将, 篠田孝祐, 松原仁. 人狼知能プロジェクト. 人工知能学会誌, Vol. 30, No. 1, pp. 65-73, 2015.

[2] Kim, A., Ruzmaykin, M., Truong, A., and Summerville, A. Cooperation and code-names: Understanding natural language processing via codenames. AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, Vol.15, No.1, pp. 160-166, 2019

[3] Jaramillo, C., Charity, M., Canaan, R., and Togelius, J.Word Autobots: Usingtransformers for word association in the game codenames. AAAIConference on Artificial In-
telligence and Interactive Digital Entertainment, Vol. 16, No. 1, pp. 231-237, 2020.

[4] Mikolov, T., Chen, K., Corrado, G., and Dean, J. Efficientestimation of word representations in vector space. arXiv preprintarXiv:1301.3781, 2013

[5] J.Pennington, R. Socher, and C. D. Manning. Glove: Global vectors for word representation. In EMNLP2014. pp. 1532-1543, 2014

[6] Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., and Sutskever, I. Language models are unsupervised multitasklearners.OpenAI Blog1(8):9, 2019

[7] 坪倉和哉, 久保谷空史, 早苗昭尚, 大橋玲音, 小林邦和, Codenames のゲーム AI 実装に向けたヒント行為の分類, 人工知能学会全国大会論文集, JSAI2022, 第 36 回, 2022


# 医療文書における数値表現のトークン化による ICD コード予測 と医療タスクへの応用検証

福本拓也 ${ }^{1}$ 五十嵐正尚 ${ }^{2}$ 奥村貴史 ${ }^{3}$ 村松俊平 ${ }^{1}$ 坂根亜美 ${ }^{1}$ 堀口裕正 ${ }^{3}$ 狩野芳伸 ${ }^{1}$
1 静岡大学 2 国立病院機構 3 北見工業大学
${ }^{1}\{$ tfukumoto,smuramatsu,asakane,kano\}@kanolab.net
${ }^{2}\{$ igarashi.masanao.th,horiguchi.hiromasa.nz $\} @$ mail.hosp.go.jp ${ }^{3}$ taka@wide.ad.jp

## 概要

国立病院機構が構築する大規模匿名化電子カルテデータ NCDAを用いて，自由記述テキスト部から主診断 ICD-10 コードを予測するシステムを構築した.予測には Wikipedia と医療テキストとでそれぞれ事前学習された BERT モデルを fine-tuning して比較した. 電子カルテには既存の言語モデルで扱いづらい数值を用いたテキスト表現が多く含まれている. それらの表現を特殊トークンとしてまとめて扱う手法を提案し，予測性能の向上を確認した. このICD-10 コード予測で学習されたモデルを別の医療タスクに応用し, ICD-10コード予測による学習が医療言語処理全般に性能を向上させ得るか調査した.

## 1 はじめに

近年，多くの医療現場で診療記録が電子化されており，情報の集積や管理のし易い環境が整備されている.カルテに記載された病名には ICD-10[1] の分類コードが付与されるが，コーディングと呼ばれる付与作業は診療情報管理士が人手で行っている.

ICD-10コードとは，「疾病及び関連保健問題の国際統計分類」というWHO によって定められた国際的に用いられる病名コードのことであり（本研究では常に ICD-10を対象とし, 以下 ICDコードと記述する)，階層的に分類された病名が記載されている. ICD コードは先頭のアルファベットに何杕かの数字が続き，桁で分類階層を表す記法になっているが， ICD コードは病名と 1 対 1 に対応するわけではない.こうしたICDコードの付与作業は, 高度な専門性が必要なうえ曖昧性のある，難易度の高い作業である. 基本的にすべてのカルテにコードが付されているため，ICDコードをラベルとみなせば潜在的に膨大な学習データが利用できる.
ICD ではコードが近い疾病は疾病の性質も近くなるように定義されており, 少ない桁数に疾病の特徵が圧縮されている．ICDコードの上位桁予測を言語モデルによって解くことができれば，その言語モデルは疾病の特徵を取り込んだモデルになり，医療テキスト処理全般の性能向上が期待できる.

そこで本研究では，まず異なる事前学習済み BERT モデル [2] fine-tuning して複数の手法で ICD コード分類を行い，ICD コードの予測性能を比較し分析した。電子カルテの自由記載テキストには，日付や時刻, 検査数値など数値表現が数多く出現する.しかし, 既存の言語処理モデルは数値表現に弱い. 特に医療文書に出てくる検查数値は, 医師であれば専門知識によって解釈し適切な診断を下しているが，性別や年齢，身長，体重などの文脈によって数値の示す意味が変わってしまい言語処理タスクとしては難易度が高い. 医師がカルテを記載する際には検査結果を具体的な症状などの言葉に変換していることが期待できるため，電子カルテテキストにある数值を特殊トークンに置き換えることで， ICD コード予測の精度が上がるのではないかと考えた. この特殊トークン置換を 3 パターン用意し, ICD コード推測の性能比較に用いた。

さらに，ICDコード予測の fine-tuning によって追加的に学習されたモデルを用いて，別の医療タスクに応用し，ICDコード予測による学習が医療言語モデルに与える影響を調査した。

## 2 関連研究

これまでに，ICDコードを予測する取り組みはいくつか行われてきている. 日本語カルテを対象としたものでは，2016 年に開催された NTCIR-12 の MedNLPDoc Task[3] がある. 552 種類の ICD コードを付与した 200 件の模擬カルテを，訓練データとテ

ストデータに分割したうえでテストデータのコードを推測させるものであった．MedNLPDoc では機械学習を用いたチームを抑え，ルールベースを用いたチームが最高性能を達成した [4].

英語カルテでの取り組みでは，Bagheri ら [5] が HA-GRU[6] を用いたICDコードの 1 标予測と 3 桁予測に取り組んでおり，1 桴予測について Accuracy で 72.5, F1 スコアで 43.5, 3 桁予測については Accuracy で 23.7 の最高性能を達成，F1 スコアで 19.8 を報告している. 特定の種類の疾病に限定した ICD コー ド予測として, Sammani ら [7] が BiGRU[8]を用いて, 出現頻度上位 10 種類の 3 标分類に限定し予測を行った。その結果，F1 スコアで76-99を達成し，上位 10 種類のさらに小分類にあたる 4 析分類 16 種でも，F1 スコア87-98を達成した。

数値表現のトークン化に関して，Loukas ら [9] は，上場企業の定期報告書に対する固有表現抽出タスクにおいて，数値表現を単一のトークンに置き換えることで BERT モデルの性能向上を達成している. 数值をくNUM>トークンに置き換える手法と，1,234.5 のような数値表現を X,XXX.Xに置き換える手法の 2 種類を試しており，後者がより高い性能を示した。

## 3 提案手法

本研究では，いくつかの異なる事前学習を行った BERT モデルを用いて，電子カルテテキストから ICD コードを予測する多クラス分類を行う．具体的には，ICDコードの先頭のアルファベットを予測する 1 析分類と, 先頭のアルファベットとそれに続く数字 2 桁を予測する 3 桁分類の二種類を行う. ICD-10 の分類詳細は付録の表 4 を参照されたい. 電子カルテでは主診断と副診断それぞれに ICD コードが割り振られているが，今回は主診断のみを分類する. システムの概要を図 2 に示す.

## 3.1 数値表現のトークン化

電子カルテのテキストには数値に関する表現が大きく3つある.1つ目はカルテを記載するときや過去の診察について記載するときに現れる日付表現， 2 つ目は検査時刻や経過時間などを表す時間表現，3 つ目は検査数値である. 前処理として，正規表現を用いて日付表現を<DATE>, 時間表現をくTIME>トー クンに変換し, その後残りの数値表現を全て<NUM> トークンに変換する。123.45 のような数值は整数部と小数部をまとめて 1 トークンとする. 変換された
テキストの例を図 1 に示す.

図 1 数值表現トークン化の例

## 3.2 BERT モデルによる分類

事前学習済み BERT モデルを fine-tuning することによって多クラス分類を行う. 東北大学が公開している日本語 Wikipedia で事前学習された bertbase-japanese-whole-word-masking ${ }^{1 \text { ) (以下 cl- }}$ tohoku）と，東京大学が公開している 1.2 億行の日本語大規模カルテ記録で事前学習された UTHBERT $^{2}$ （以下 UTH）とを用い比較する。cl-tohoku のトークナイザは MeCab-Unidic+WordPiece，UTH は MeCab(ipadic-NEologd+万病辞書) + WordPiece を用いる. fine-tuning には，これら事前学習済みモデルの最終層に全結合層を加え，クラス数分の出力ノードを用意して学習した。

図 2 システム概要図

## 3.3 データセット

国立病院機構の電子カルテ集積基盤 NCDA[10] の 2022 年 10 月末時点での匿名化データのうち, 21 病院，58,397 人の患者を対象とする．そのうち，ICD コードが主診断として記録されていて疑い診断ではない患者を抽出したところ，主診断の総数は 105,817 個となった。「紹介状参照」など他の文書を参照する記述 1 行のみのデータは除去した. 患者に主診断の ICD コードが複数紐づくことがある. 対象患者に紐づけられたすべての主診断 ICD コードについて， 1 枌分類では最初のアルファベットが，3枌分類では 3 桁すべてが一致する場合に限定することで，推測対象の ICD コードが一意に定まる患者のみとした. 1 文書の各行を <NL>トークンで連結して 1 文とし，患者 1 人分をまとめて 1 つの文書として扱った。

## 4 実験と結果

## 4.1ICD-10 コードの 1 桁分類

対象データICDコードの先頭アルファベット 1 标を分類する. 先頭アルファベットが傷病及び死亡の外因に属する患者数は少なかった（V,W,Y が 0 人， $\mathrm{X}$ が 1 人）ためこれら 4 クラスを除外し，ICD コードの種類は 22 種類，患者数は 29,566 人，約 368 万行のテキストとなった. 最もサンプル数が多いクラスは $\mathrm{J}$ で 2,927 人，最も少ないクラスは O で 270 人であった. 1 析分類の分布を付録の図 3 に示す.

実験設定と評価結果学習時の Epoch 数は 10 , 中間層は 768 次元, optimizer には Adam を使用し，学習率は 1e-5, 最大系列長は 200 トークン, 損失関数には交差エントロピーを用いた。性能の評価には Micro-Precision, Micro-Recall, Micro-F1,Macro-F1を使用した．訓練データとテストデータを $8: 2$ とする 5 分割交差検証を行い，それぞれの評価値の平均を最終的な評価とした．実験では，数値表現の置き換えを以下の 3 パターン比較した.

・なし数値表現置き換えなし

-日時 <DATE>,<TIME>のみ置き換え
- 日時数 <DATE>,<TIME>,<NUM> の置き換え

実験の評価結果を表 1 に示す.土の後に続く値は， クラス毎の最大最少スコアのレンジを示す. 1 桁分類では，数値表現をそのまま用いた UTH-なしが最も高い性能であった。

考察 cl-tohoku では <DATE>,<TIME>,<NUM>を使うことによる影響がほとんどなかったことから，一般的なテキストで事前学習した言語モデルは，推測に数値表現を利用していないと考えられる。UTH に関しては<DATE>,<TIME>による影響はほとんどなかったものの，<NUM>を用いると明確に性能が低下した. その原因として，電子カルテで事前学習した UTH が検査数値として出現した数値表現の意味をある程度学習できていたところ，特殊トークンに置き換えたせいでその情報が利用できなくなった可能性がある. 別の原因として, 薬品名と共起する

消えてしまい，薬品名の認識に悪影響を及ぼした可能性がある. この場合は，薬品名に隣接する数値表現を NUM トークンに置き換えないようにすれば，悪影響を抑えることができるかもしれない. 1 桁分類は疾患の部位や系統に関する分類であるため，数値表現が手掛かりになりづらく，全体的に置き換えによる差分が小さくなったと考えらえる.

表 1 ICDコード 1 桁分類の評価結果 Micro-Pre. Micro-Rec Micro-F1 Macro-F1

## 4.2ICD-10 コードの 3 桁分類

対象データICD-10コードの先頭から 3 文字にあたる，アルファベット 1 桁+数字 2 桁からなる 3 桁分類を対象とする。学習データが十分に見込めるよう，サンプル数が 100 以上のクラスを用い，コードの種類は 67 種類，患者数は 16,731 人, 約 197 万行のテキストとなった. クラス当たりサンプル数は $\mathrm{T} 78$ が最大の 2,254 人，M17 と L72 で共に最小の 101 人であった。付録の図 4 に分布を示す.

実験設定と評価結果 1 桁分類と同様の条件で，cl-tohokuとUTHを用いて実験を行った。評価結果を表 2 に示す. Micro-Presicionと MicroRecall については，DATE,TIME,NUM トークンを全て用いた cl-tohoku の性能が最も高かった。 また，Micro-Recall,Micro-F1,Macro-F1 については DATE,TIME トークンを用いた UTH の性能が最も高くなった. 両モデルに共通して，日付表現と時間表現を特殊トークンに置き換えたときに Micro-Precision 以外の指標が改善した。

表 2 ICD コード 3 桁分類の評価結果 Micro-Pre. Micro-Rec Micro-F1 Macro-F1

考察 cl-tohokuでは，NUMトークン置き換えによって性能がさらに向上した.これは，一般テキス卜で事前学習した BERT モデルが扱えなかった数値表現を置き換えることによる効果と考えられる。 UTH では NUM トークン置き換えで性能が下がってしまった. これは前述の 1 桁分類と同様の理由だと考える。

また，cl-tohoku はクラスごとの性能ばらつきが大きい. クラスによっては，一般テキストに表れづら

い表現があるためではないかと考えられる。医療系の語彙セットを持たない cl-tohoku-日時数が，UTH日時の性能かなり近いことから，ICD コード予測は具体的な数值表現がなくても適切な語彙セットを持っていれば対応できる可能性がある. そのため，日本語 Wikipedia と電子カルテの両方で事前学習を行ったモデルを作ることで，より良い ICD コード予測を行えると期待できる.

## 4.3ICD コード追加学習の応用検証

前節の ICD コード予測を追加的な学習と考え，この学習により疾病の類似度に関する知識を獲得できたと期待する. その応用検証として，8つの病気，症状に罹患しているかを Twitter 投稿から推測するマルチラベル分類を行う，NTCIR-13 の MedWeb[11] タスクを実行し評価する。

## 4.4 データセット

MedWeb タスクは，ツイートに 8 つの病気または症状（インフルエンザ，下痢／腹痛，花粉症，咳 ／喉の痛み，頭痛，熱，鼻水／鼻づまり，風邪） の罹患の有無を割り当てたマルチラベル分類タスクである．データセットは日本語，英語，中国語の 3 言語が用意されており，各言語につき学習データ 1,920 ツイート，テストデータ 640 ツイートで構成される。本研究では日本語データのみを用いる.

## 4.5 実験

前述の 3 析分類で fine-tuning したモデルの最終層を除去し，新たに最終層を追加して MedWeb データで fine-tuning する. ベースラインは ICD コード予測を行っていないオリジナルの cl-tohoku と UTH とした. ICDコード予測の学習を行ったモデルとして，特殊トークン置き換えをしていない cl-tohokuなしおよび UTH-なしと， 3 桁分類の性能が高かった cl-tohoku-日時数 (DATE,TIME,NUM トークンを置き換え）および UTH-日時（DATE,TIMEを置き換え）の計 6 のモデルを用いて比較実験する。

## 4.6 結果

MedWeb 実験の評価結果を表 3 に示す.

考察 cl-tohokuでは，ICDコード予測で学習したモデルのほうが，学習してないモデルよりも性能が高くなった.これはICDコード予測によって医学知識をある程度学習できたことが要因と考えられる。表 3 マルチラベル分類の結果

Micro-Pre. Micro-Rec. Micro-F1 Macro-F1

UTH では，ICDコード予測で学習してもしなくてもほとんど変化が無かった. ICDコード予測で学習したモデルの疾病の類似度に関する知識は増えていない可能性が高い.

ICD コード予測をしたモデルを用いて MedWebで学習しなおした場合, cl-tohoku でも UTH でも数値表現の特殊トークン置き換えを取り入れると性能が下がってしまった。これは，MedWeb タスクのデー タに数値に関する情報が少なかったことから数値トークンが活用されずかえって悪影響を及ぼしたのではないかと考えられる。

## 5 結論

数値表現を 3 種類の特殊トークンに置き換えることによる ICD-10コード予測の性能向上を試みた.時間と日付に関する数値表現の置き換えは ICD コー ドの上位 3 析分類において, Wikipedia で事前学習した言語モデルと医療テキストで事前学習した言語モデルのどちらでも性能向上に寄与した. 全数値表現を置き換えると，Wikipedia で事前学習した言語モデルでは性能向上が見られたが，医療テキストで事前学習したモデルでは性能が低下した。

また，ICD-10コード予測によって fine-tuning したモデルを他の医療タスクに適用する実験を行った。医療テキストで事前学習した言語モデルでは性能に変化が見られなかったが，Wikipedia で事前学習した言語モデルでは事前に ICD-10コード予測による追加的な学習を約 197 万行の医療テキストで行うことで，約 1.2 億行の医療テキストで事前学習した言語モデルを超える精度を出すことができた。

今後の課題として，数値表現の置き換え条件を詳細にすることで ICD-10 コード予測精度の向上を目指す。さらに，ICD-10コード予測をシングルラベルからマルチラベル分類に変えることによる後段タスクへの影響や，日本語 Wikipedia と電子カルテテキストの両方で事前学習したモデルの性能調査などを行いたい.

## 謝辞

本研究は厚生労働科学研究費補助金 21HA2015, JSPS 科研費 JP22H00804, JP21K18115, JST AIP 加速課題 JPMJCR22U4, およびセコム科学技術財団特定領域研究助成の支援をうけた。

## 参考文献

[1] World Health Organization. ICD-10 : international statistical classification of diseases and related health problems : tenth revision, 2nd ed. 2004. https://apps.who.int/ iris/handle/10665/42980.

[2] Devlin Jacob, Chang Ming-Wei, Lee Kenton, and Toutanova Kristina. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 4171-4186, 2019.

[3] Eiji Aramaki, Mizuki Morita, Yoshinobu Kano, and Tomoko Ohkuma. Overview of the NTCIR-12 MedNLPDoc Task. In Proceedings of the 12th NTCIR Conference on Evaluation of Information Access Technologies (NTCIR-12), pp. 71-75, 2016.

[4] Masahito Sakishita and Yoshinobu Kano. Inference of ICD Codes by Rule-Based Method from Medical Record in NTCIR-12 MedNLPDoc. In Proceedings of the 12th NTCIR Conference on Evaluation of Information Access Technologies (NTCIR-12), pp. 80-84, 2016.

[5] Ayoub Bagheri., Arjan Sammani., Peter G. M. Van Der Heijden., Folkert W. Asselbergs., and Daniel L. Oberski. Automatic ICD-10 Classification of Diseases from Dutch Discharge Letters. In conjunction with the 13th International Joint Conference on Biomedical Engineering Systems and Technologies-BIOSTEC 2020, pp. 281289, 2020.

[6] Du Yong, Wang Wei, and Wang Liang. Hierarchical recurrent neural network for skeleton based action recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 1110-1118, 2015.

[7] Arjan Sammani, Ayoub Bagheri, Peter G. M. van der Heijden, Anneline S. J. M. te Riele, Annette F. Baas, C. A. J. Oosters, Daniel Oberski, and Folkert W. Asselbergs. Automatic multilabel detection of ICD10 codes in Dutch cardiology discharge letters using neural networks. npj Digital Medicine, Vol. 5, No. 37, 2021.

[8] Deng Yaping, Lu Wang, Jia Hao, Tong Xiangqian, and Feng Li. A Sequence-to-Sequence Deep Learning Architecture Based on Bidirectional GRU for Type Recognition and Time Location of Combined Power Quality Disturbance. IEEE Transactions on Industrial Informatics, Vol. 15, No. 8, pp. 4481-4493, 2019.

[9] Lefteris Loukas, Manos Fergadiotis, Ilias Chalkidis, Eirini Spyropoulou, Prodromos Malakasiotis, Ion Androutsopoulos, and Georgios Paliouras. FiNER: Finan- cial Numeric Entity Recognition for XBRL Tagging. In Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 4419-4431, 2022.

[10] Natsuko Kanazawa1, Takuaki Tani, Shinobu Imai, Hiromasa Horiguchi, Kiyohide Fushimi, and Norihiko Inoue. Existing Data Sources for Clinical Epidemiology: Database of the National Hospital Organization in Japan. In Clinical Epidemiology, Vol. 2022:14, pp. 689-698, 2022.

[11] Shoko Wakamiya, Mizuki Morita, Yoshinobu Kano, Tomoko Ohkuma, and Eiji Aramaki. Overview of the NTCIR-13 MedWeb Task. In Proceedings of the 13th NTCIR Conference on Evaluation of Information Access Technologies (NTCIR-13), pp. 40-49, 2017.

## A 付録 (Appendix)

表 4 ICD-10コードの章レベルの分類体系

図 31 桁分類に用いるデータの分布

図 43 桁分類に用いるデータの分布

(C) The Association for Natural Language Processing, (Licensed under CC BY 4.0）https://creativecommons.org/licenses/by/4.0/


# 地方自治体の子育て支援事業比較表作成ツールの開発

金田 大海 多田 紘佳 中村 誠
新潟工科大学 工学部
mnakamur@niit.ac.jp

## 概要

近年, 少子高齢化が深刻化しており, それに伴い総人口が減少傾向にある. 本研究の目的は, 地方自治体（以降，自治体という.)の子育て支援事業の類似事業をまとめ、比較が行なえる表を出力するツー ルの開発である.これにより, 自治体の独自事業の発見が期待できる. そのために本研究では, 子育て支援事業の内容を自治体のウェブサイトから取得し， TF-IDF を用いた SVM による文書分類により, 必要項目と不要項目を分類した後, 必要項目についてクラスタリングを行い，類似する事業をまとめ表を作成し出力するツールを開発する。

## 1 はじめに

近年, 少子高齢化が深刻化しており, 2015 年には 65 歳以上が約 $26.6 \%$ 、 15 歳未満が約 $12.5 \%$ であったのが、2045 年には 65 歳以上が約 $36.8 \%$ に増加、 15 歳未満が約 $10.7 \%$ と減少するとされている。それに伴い総人口が減少傾向にある [1]. 特に, 少子高齢化による人口減少は小規模な自治体ほど顕著に表れている. また, 少子高齢化により「社会保障分野の負担の増大と手取り収入の減少」や「生産年齢人口減少による経済成長の低下」などの問題が発生している [2]. これらの問題に共通する原因は, 生産年齢人口の減少である. このことから, 少子高齢化社会を改善していくには、人口減少の多い自治体で生産年齢人口の減少を止めていかなければならない. そこで現在, 少子高齢化対策としてそれぞれ子育て支援事業などを用意して出生率増加を図っており, ウェブサイトで確認できる. ところが, 子育て支援事業は各自治体のウェブサイトで独立して提示されているため, 自治体間の比較が難しい. そこで, 子育て支援事業を 1 つの表にまとめることで比較しやすくなると考えられる。

類似している事業の対応付けを行う手法の研究はすでに行われている [3]. この研究では, 自治体のウェブサイトの HTML 内にあるアンカーテキストに着目し，編集距離を用いて対応付けを行っている. ここから, 比較結果として精度は高くないが類似事業の対応付けは有効であると分かる.

したがって，本研究の目的は，各自治体の子育て支援事業の類似事業の比較表（以降,「比較表」という。）を出力するツールの開発である. 利用者は, このツールを開発することで，各自治体が子育て支援事業にどれだけ力を入れているか可視化ができ，他の自治体にはない独自の事業を発見できる.また，各自治体は自身の自治体に足りない事業を発見できることから，事業の充実が期待できる。

本研究では，子育て支援事業の内容を自治体のウエブサイトの HTML から取得し, TF-IDF ベクトルを用いた SVM による文書分類で必要事業と不要事業を分類し，必要事業についてクラスタリングを行った結果を表にして出力するツールの開発を行う.

## 2 背景

ここでは, 本研究の目的である比較表を出力するツールの必要性について示す. また, 本研究で使用しているクローリングと web スクレイピング, SVM，クラスタリングについて説明する。

## 2.1 子育て支援事業

本研究で対象としている子育て支援事業とは, 子育てに関係する行政事業の一群を指す。これらについて，全国の自治体でウェブサイトを用意し提示している。図 1 は，柏崎市のウェブサイトである．図 1 のように, 多くの自治体では事業ごとにウェブペ ージを用意しており，そのウェブページに事業の内容などが掲載されている。図 2 は，柏崎市の览童手当のウェブページである. 中には，1つのウェブペ ージに複数の事業をまとめて掲載している自治体もある.このように，ウェブページに記載されているため, クローリングを用いることで事業の内容を収集することが可能である.

図 1 柏崎市の事業が提示されているウェブサイト

図 2 柏崎市の児童手当のウェブページ

## 2.2 比較表

本システムにおける比較用の例を表 1 に示す．新潟県新潟市の「安産教室」や岡山県奈義町の「出産祝金」は独自の事業であることと, 岡山県奈義町には里親制度の事業が足りないことが一目で分かる.比較表作成における問題の本質は，自治体間において類似事業を発見することにある。

表 1 子育て支援事業比較表の例

 &  &  \\

## 2.3 クローリングと web スクレイピング

クローリングとは, ウェブサイトから HTML などの情報を収集することであり，web スクレイピングとは，クローリングにより web サイトから取得した HTML データを解析し, 特定のデータを抽出することである.

本研究では，新潟県内の 23 の自治体と岡山県奈義町を対象に，子育て支援事業に関係すると思われる「妊娠出産」と「子育て」の 2 つのカテゴリーの事業を対象にそれらが書かれているウェブページのクローリングを行う。また，内容が書かれているウェブページをスクレイピングによってテキストファイルに書き出す.

## 2.4 SVM

SVM は, 2 クラスのパターン識別器を構成する手法である。学習モデルから，「マージン最大化」という基準で線形しきい素子のパラメータを学習し,計算によって 2 值のクラスをつくる [4]。本研究では分類方法として「ソフトマージン」を用いる.

本研究では, SVM により子育て支援事業に関係している事業としていない事業に分類するために用いている. スクレイピングにより取得したテキストには，給付金や支援などの事業のみならず，図 3 のようにイベント等の一覧しか書かれていないものや表彰関係，おたよりや報告などと子育て支援のための情報提供には不要な, ウェブページが含まれている.

図 3 不要なウェブページの例

## 2.5 クラスタリング手法

本実験では階層的手法を用いる. 階層的手法とは，最も類似度の高い組み合わせからまとめる手法である. 階層的手法には，クラスタ間における距離の求め方が複数存在する。主な手法は，「群平均法」，

「重心法」，「完全リンク法」，「メジアン法」，「単リンク法」，「ウォード法」，「重み付き平均法」である.
本研究では，各自治体におけるさまざまな子育て支援事業を対象に, TF-IDF でベクトル化し, それからコサイン類似度を計算する。その計算結果を用いてメジアン法でクラスタリングを行う。メジアン法とは，それぞれの重心にクラスタ内の個数に応じた重み付けを行い、それぞれのクラスタの重み付けした重心間距離の 2 乗をクラスタ間の距離とする手法である。

## 2.3 評価手法

比較表の精度については, purity と inverse purity の 2 つから求められる $\mathrm{F}$ 值で評価することが出来る [5]. 図4 に正解クラスタとクラスタリング結果の関係を示す. 同じ図形は類似事業を示している。

図 4 正解クラスタとクラスタリング結果の関係

Purity とは, 図 4 下部の各クラスタにおいて最もよく現れるカテゴリーの出現頻度に注目し, クラス夕内においてそのカテゴリーが占める割合が大きいものを高く評価する評価尺度であり, 式 (2) で求まる.

$
\text { Purity }=\sum_{i} \frac{\left|C_{i}\right|}{n} \text { maxPrecision }\left(C_{i}, L_{j}\right)
$

このとき, C は評価対象とするクラスタ集合， L は人手で作成したカテゴリー集合, $\mathrm{n}$ はクラスタリング対象の文書数である. また, あるカテゴリー $L_{j}$ に対するクラスタ $C_{i}$ の適合率は式 (3) によって求められる。

$
\operatorname{Precision}\left(C_{i}, L_{j}\right)=\frac{\left|C_{I} \cap L_{j}\right|}{\left|C_{i}\right|}
$

Inverse purity とは, 図 4 上部の各カテゴリーに対して最大の再現率となるクラスタに注目し, クラス夕内において各カテゴリーで定められた要素を多く含むクラスタを高く評価する評価尺度であり, 式(4) で求まる.

$
\text { InversePurity }=\sum_{j} \frac{\left|L_{j}\right|}{n} \operatorname{maxRecall}\left(C_{i}, L_{j}\right)
$

このとき，あるカテゴリーに対するクラスタの再現率は式（5）によって求められる.

$
\operatorname{Recall}\left(C_{i}, L_{J}\right)=\frac{\left|C_{i} \cap L_{j}\right|}{\left|L_{j}\right|}
$

また, purity と inverse purity の調和平均 $\mathrm{F}$ は式（6) により定義される。

$
F=\frac{1}{\alpha \frac{1}{\text { Purity }}+(1-\alpha) \frac{1}{\text { InversePurity }}}
$

本研究では $\alpha=0.5$ として評価を行った.

なお、図 4 における purity は 0.6 , inverse purity は 0.65，F 値は 0.62 となる

## 3 提案手法

本研究の各自治体の子育て支援事業の比較表を作成するツールの流れは以下の通りである.

1. あらかじめ各自治体のウェブサイトから，事業内容が書かれている本文を抽出し，テキストフアイルにする.

2. チェックボックスを用いたユーザーインターフエースで比較する自治体を選択する

3. 選択した自治体のテキストファイルを参照する

4. 参照したテキストファイルから, 子育て支援事業に必要な項目と不要な項目をSVM を用いて分類する.

5. 必要項目に分類した方を, TF-IDF でベクトル化し, $\cos$ 類似度を用いたメジアン法のクラスタリングによって比較表を出力する.

このときの、チェックボックスを用いたユーザーインターフェースを図 5 に, 出力結果を図 6 に示す.

類似している事業の対応付けを行う手法の研究 [3]では，「編集距離」を用いているが比較表の精度は高くなかった. そこで, 本研究では TF-IDFベクトルを用いた $\cos$ 類似度によりクラスタリングを行うことで精度の向上を目指す.

図 5 ユーザーインターフェース

図 6 出力結果の一部

## 4 実験

## 4.1 実験の目的

文書分類を用いない比較表作成ツールにより，クラスタリングにメジアン法を用いて比較表を作成したところ, $\mathrm{F}$ 值は 0.371 となった. しかし, この比較表には子育て支援事業と関係のないものも含まれていた。そのため, 不要項目を含むか否かで精度は変わると考えた. また，この比較表は異なる分野の事業が一緒になっていたため, 分野別で比較表を作成することで見やすい表となり, 精度も向上すると考えた。そこで，本実験の目的は，文書分類を用いて不要項目を分類し必要項目のみで比較表を作成することと, 分野別で作成することで, クラスタリングの精度が向上するのか検証する．正解データは，不要な項目も考えたデータを新しく用いる.

## 4.2 実験方法

本実験では，新潟県柏崎市，新潟県新潟市，岡山県奈義町の 3 つの自治体を対象とし, 不要項目の分類を行うか否かでモデルの性能を比較する. 分野別については, 「妊娠出産」と「子育て」の2つの分野を対象とし，それぞれで分類を行ったモデルの性能と文書分類を行ったモデルの性能で比較を行う.性能の比較には, 評価手法を用いた精度の評価を行う.このとき，カテゴリー集合である正解データは，人手によって 3 の自治体の子育て支援事業のみを対象に類似事業を対応付け，それ以外を不要な事業としてまとめた表を用いた。

## 4.3 実験結果

分類の有無について，3つの自治体で作成した比較表の評価結果を表 2 に示す. 1 行目は不要項目の分類を行っていない場合， 2 行目は行った後のクラスタリングの結果を表している。

表 3 分野別による評価結果

また, 分野別で作成した比較表の精度の評価結果を表 3 に示す。

比較表の精度について不要項目の分類を行うか否かで比較すると, $\mathrm{F}$ 值が約 0.144 向上した. これらにより, 不要な項目がなくなることで, 比較表の精度が向上したと考えられる。また，このとき作成した表は，不要な項目がなくなったため類似事業が分かりやすい表となった．参考までに，クローリングやスクレイピングが完全で, 不要項目が存在しない場合の性能を表 2 の 3 行目に示す.

分野別の精度について，表 2 と表 3 の $\mathrm{F}$ 値から，分野別にすることで約 0.029 向上した.この値より,分野別にすることで SVM とクラスタリングの精度が向上したのではないかと考える.このとき作成された表は, 分野別になっているため, 分野ごとの事業が分かりやすい表となった。

## 5 おわりに

実験から，SVM を用いて分野別に作成することで，不要な項目を無くし，比較表の精度を向上させることが出来た. また, 分野別にしたことで見やすい表となった。これらにより, 子育て支援事業の比較表作成ツールを開発することが出来た。

今後は，SVM の教師データを増やすことや，比較表の精度のさらなる向上を目指す.

## 謝辞

本研究は, 科学研究費補助金 (19H04427, 代表 :

中村誠）の助成を受けたものである.

## 参考文献

[1] 河合雅司, 未来の年表人口減少日本でこれから起きること, 講談社現代新書, 2017

[2] 厚生労働省, 少子化の影響と主な対策に関する整理, (引用日: 2023 年 1 月 5 日.)https://www.mhlw.go. jp/shingi/2002/06/s0614-3a.html

[3] 多田紘佳, 中村誠, 地方自治体ウェブサイトから得られる子育て支援に関する行政サービスの比較,電子情報通信学会信越支部大会, P-30 (2019)

[4]サポートベクターマシン入門, 栗田多喜夫, 産業技術総合研究所脳神経情報研究部門, 2002

[5] 杉山一成, 奥村学, 半教師有りクラスタリングを用いた Web 検索結果における人名の曖昧性解消, 自然言語処理, 16 巻(2009) 5 号


# 大規模言語モデルに基づく 複数の外部ツールを利用した推論フレームワーク

稲葉達郎清丸寛一 Fei Cheng 黒橋 禎夫
京都大学
\{inaba,kiyomaru, feicheng, kuro\}@nlp.ist.i.kyoto-u.ac.jp

## 概要

大規模言語モデルは広範な世界知識に加えて数値計算といった記号処理の能力も一定程度有しており、種々の推論タスクで驚異的なスコアを達成している。しかし、言語モデルが保持できる知識の量と実行できる記号処理の複雑さには限界がある。大規模言語モデルによる推論のさらなる高度化を目指して、本研究では大規模言語モデルによる推論時に検索器や電卓など複数の外部ツールの利用を可能にするフレームワークを提案する。提案手法を知識を要する数値推論タスク NumGLUE（Task 2）に適用し、強力なべースラインの性能を大幅に上回る、現時点での最高性能を達成することを確認した。

## 1 はじめに

推論は既知の事柄を手がかりに未知の事柄を推し量る論理的なプロセスである。推論では、言語理解の能力はもちろん、実世界に関する知識、数値計算をはじめとする記号処理の能力も必要となる。計算機による推論の実現は人工知能研究の古くからの目標であり、現在まで中心的な関心であり続けている $[1,2]$ 。

昨今、大規模言語モデル（Large Language Model; LLM） $[3,4,5,6]$ が種々の推論タスクで驚異的なスコアを達成している。これは大規模言語モデルが事前学習を通じて基本的な言語理解の能力に加え、広範な世界知識、そして数値計算を含む記号推論の能力までもを一定程度獲得していることを示している。

しかし、大規模言語モデルであっても保持できる世界知識の量と実行可能な記号処理の複雑さには限界がある。この問題を解決するため、大規模言語モデルによる推論時に検索器や電卓などの外部ツールを呼び出し、その結果を利用する手法が提案されて
いる $[7,8]$ 。しかし、先行研究はいずれも単一の外部ツールの利用に留まっており、推論を実行する上で課題となる知識の問題や記号処理の問題を同時に解決する枠組みにはなっていない。

本研究では、大規模言語モデルによる推論において、検索器や電卓といった複数の外部ツールの利用を可能にするフレームワークを提案する。図 1 に提案手法の概要を示す。提案手法では、大規模言語モデルが推論過程を含めて解答を生成するように入力のテキスト（プロンプト）を設計する [9]。提案手法の鍵は、プロンプトの工夫によって、推論過程の一部として外部ツールを呼び出す文字列を生成させることにある。実行時は、大規模言語モデルが外部ツールを呼び出す文字列を生成したら推論過程の生成を中断し、生成中の推論過程から利用する外部ツールの名前とそれに与える入力を取り出し、外部ツールの実行結果を推論過程に追記する。その後大規模言語モデルに推論過程の生成を再開させ、外部ツールを呼び出す文字列が生成されたらまた上記の手続きを行う。

提案手法の有効性を確認するため、専門知識を要する数値推論タスク NumGLUE（Task 2） [10] のもとで実験を行った。実験の結果、提案手法が強力なベースライン手法の性能を大幅に上回り、現時点での最高性能を達成することを確認した。

## 2 関連研究

大規模言語モデルによる推論は、入力のテキスト （プロンプト）を適当に設計し、大規模言語モデルから推論の解答を引き出すこと（プロンプティング [11]）で解かれる。特に、大規模言語モデルが解答を推論過程付きで生成するようにプロンプトを設計する Chain of Thought プロンプティング [9, 12] はその有効性が広く知られている。

大規模言語モデルによる推論時に外部ツールを利

図 1 提案手法の全体像。出力中のハイライトは、黄緑色が GPT-3、黄色が電卓 (Calculator; CAL)、橙色が化学反応予測器（Chemical reaction predictor; $\mathrm{CRP}_{\mathrm{RP}}$ )、紫色がモル質量検索器（Molar mass list; $\mathrm{MML}_{\mathrm{ML}}$ ）の出力であることを表す。

用する先行研究としては、推論過程の中に現れた数式を電卓で処理して計算結果を推論過程に埋め込むことで計算間違いの問題を緩和する取り組み $[8]$ や、推論過程の生成中に知識検索を実行することで多段の推論を要する質問応答を実行する取り組み [7] がある。これらの先行研究はそれぞれ未熟な計算能力と不完全な世界知識という大規模言語モデルが抱える単一の問題に着目し、それに単一の外部ツールを利用することで対処している。本研究の特徴は、大規模言語モデルによる推論時に複数の外部ツールの利用を可能にすることで複数の問題に同時に対処することにある。

## 3 提案手法

本研究では、大規模言語モデルによる推論において、複数の外部ツールの利用を可能にする枠組みを提案する。図 1 に提案手法の概要を示す。提案手法では大規模言語モデルとして GPT-3 [3] を使用し、外部ツールを呼び出す文字列を含む推論過程が生成されるように Chain of Thought プロンプティング [9] を行う。

プロンプトは、利用可能な外部ツールを明示した説明文、いくつかの問題文と推論過程付きの解答のペア (Few-Shot 事例)、解かせる問題文を結合し
て構成する。Few-Shot 事例として与える推論過程には外部ツールの呼び出し方をアノテーションする。具体的には、<<外部ツール名 >> の文字列を外部ツールを呼び出す文字列としてアノテーションし、 その直前に外部ツールへの入力を特定のフォーマットでアノテーションする。例えば、外部ツールとして電卓（Calculator）を利用する場合、Few-Shot 事例として与える推論過程の中で電卓を利用すべき箇所に <<Calculator>> の文字列をアノテーションし、その直前に電卓に与える数式をアノテーションする。

推論時は GPT-3 がプロンプトに従い、与えられた問題文に対する解答を外部ツールを呼び出す文字列を含む推論過程と一緒に生成する。その時、>>の文字列が生成されたら生成を中断し、その直前の文字列から使用する外部ツールの名前とそのツールへの入力を抽出、外部ツールを実行した後、その結果を生成中の推論過程の末尾に追記する。これを新たな入力とし、GPT-3による推論過程の生成を再開する。未知の外部ツール名が生成されたり、外部ツー ルの実行時エラーが発生したりすると外部ツールが実行結果が得られない。その場合は外部ツールの出力結果に相当する部分も GPT-3 自身に出力させる。 GPT-3 が生成した推論過程付きの解答から最終的

な解答を抜き出す処理もプロンプティングで行う。具体的には、推論過程とその中に含まれる最終的な解答のペアを Few-Shot 事例とするプロンプトを使用して、GPT-3 に推論過程から解答を抽出させる1)。

## 4 知識を要する数値推論への適用

提案手法の適用例として、本研究では専門知識を要する数值推論に取り組む。具体的には、数值推論データセット NumGLUE [10] の Task 2 に取り組む。問題例を例 (1) に示す。

(1) Find the amount of Calcium hydroxide that is required to react with 2 moles of Carbon dioxide to form 2 moles of Calcium carbonate along with 2 moles of Water.

NumGLUE の Task 2 は例 (1)のような化学の専門知識を要する数値推論の問題で大部分が構成される。 これを解くには、言語理解能力、計算能力に加え、化学反応式の作成能力と物質のモル質量の知識が要求される。

本研究では以下の外部ツールを実装し、提案手法の枠組みで推論の実行時に利用することで本タスクを解く。

-電卓 (Calculator; CAL)：四則演算を中心とする数式を大力として、その計算結果を出力する。計算結果は数式を Python の eval 関数 ${ }^{2}$ にに入力して得る。数式中の演算子は Python の文法に合わせて入力前に置換する。電卓を呼び出す際は、<<Calculator>> の文字列を出力させる。入力の数式は同じ行に生成させる。
- 化学反応式予測器 (Chemical reaction predictor; CRP) : 反応物と生成物の化学式を入力として、化学反応式を出力する。化学反応式は、反応物と生成物で各原子の数が同じになるように係数を調整して得る。化学反応式予測器を呼び出す際は、<<Chemical reaction predictor>>の文字列を生成させる。入力の反応物と生成物の化学式は直前の 2 行に出力させる。
- モル質量検索器 (Molar mass list; MML) : 化学式を入力として、そのモル質量を出力する。化学

1）本研究の実験では、ほぼ常に最終的な解答が推論過程の最終行に含まれることが実験的に確認されたため、計算コスト削減のため、推論過程の最終行を抜き出した上でこの手法を適用した。

2) https://docs.python.org/3/library/functions.html\# eval表 1 NumGLUE の Task2 における性能。最良の結果を太字で示す。(†) は NumGLUE の論文 [10] からの引用。

式のモル質量は、各原子の質量に関する知識ベースに基づき、化学式に含まれる原子とその数から計算する。モル質量検索器を呼び出す際は、<<Molar mass list>> の文字列を生成させる。大力の化学式は同じ行に出力させる。

図1 推論を実行する際に用いるプロンプトを示す。説明文として、上記の 3 種類の外部ツールが利用可能なことが明示されたテキストを与える。 Few-Shot 事例には、問題文と推論過程付きの解答のペアの例を与え、推論過程には上記の外部ツールを利用するためのアノテーションを付与する。

## 5 実験

提案手法の有効性を確認するため、知識を要する数值推論に提案手法を適用する。

## 5.1 データセット

数値推論データセット NumGLUE [10] の Task 2 を使用する。4 節で説明した通り、主に化学に関する専門知識を要する数値推論の問題で構成されている。問題の解答は全て数値である。評価にはテストデータの 325 問を使用する。評価指標は正解率である。

## 5.2 比較手法

本研究では GPT-3 (text-davinci-003; 175B パラメー タ3)）を使用し、以下の手法を比較する。

Zero-Shot 問題文のみをプロンプトとしてテキスト生成を行い、その出力を予測とする。

Zero-Shot+CoT [12] 問題文に “Let's think step by step."を付け加えたものをプロンプトとしてテキス

図 2 手法ごとの出力の具体例。赤色のハイライトは誤った知識や誤った計算結果が生成された箇所を示す。緑色のハイライトは外部ツールの利用によってそれらが改善した箇所を示す。

卜生成を行い、推論過程を伴う解答を得る。最終的な予測は、生成された推論過程の末尾に“Therefore, the answer (arabic numerals) is”を追加し、それをプロンプトとしてテキスト生成を実行して得る。

Few-Shot 問題文の前に Few-Shot 事例として数例の問題文と解答のペアを結合したものをプロンプトとしてテキスト生成を行い、その出力を予測として得る。

Few-Shot+CoT 提案手法と同じプロンプトを使用してテキスト生成を実行し、その出力を予測として得る。ただし外部ツールは使用せず、推論過程は全て GPT-3 に生成させる。

Few-Shot+CoT+\{CAL|CRP|MmL $\}$ 提案手法と同じプロンプトを使用してテキスト生成を実行し、その出力を予測とする。推論時、電卓 $(\mathrm{CAL})$ 、化学反応式予測器 ( $\mathrm{CRP})$ 、モル質量検索器 ( $\mathrm{M} \mathrm{ML})$ のいずれか一つの外部ツールを利用する。利用しない外部ツールの実行結果は GPT-3 自身に生成させる。

Few-Shot+CoT+ALL 提案手法。電卓、化学反応式予測器、モル質量検索器の全ての外部ツールを使用して推論を実行する。

Few-Shot 事例として、学習データ中の 20 問を使用した。Few-Shot 事例は、外部ツールのアノテー ション数に偏りが出ないように人手で問題を選択し、推論過程のアノテーションも人手で行った。 Few-Shot 事例の数が性能に与える影響については付録 Aを参照されたい。

## 5.3 結果

表 1 に結果を示す。提案手法は 85.85 ポイントの正解率であり、現時点での最高性能を達成した。外部ツールを利用しない手法はもちろん、単一の外部ツールを利用する手法と比べても、推論性能の大きな改善が確認された。

## 6 ケーススタディ

図 2 に提案手法による改善例を示す。CoT プロンプティングを使用しない Zero-Shot と FewShot は推論に失敗している。CoT プロンプティングに基づく Zero-Shot+CoT と Few-Shot+CoT は $\mathrm{Al} 2(\mathrm{CO} 3) 3$ のモル質量に誤りがあり、Few-Shot+CoT は $12 \times 3 / 342 \times 100$ の計算も間違っている。提案手法の Few-Shot+CoT+ALL は外部ツールに頼ることで正しいモル質量と数値計算に基づき正答できている。

## 7 おわりに

本研究では大規模言語モデルによる推論において、検索器や電卓等の複数の外部ツールの利用を可能にする枠組みを提案した。本論文ではその枠組みを化学の専門知識を要する数值推論タスクに適用し、その高い有効性を確認した。提案の枠組みは汎用的であり、外部ツールを変更・拡張することで様々なタスクに応用可能である。今後、異なるタスクにおいても提案手法の有効性を検証したい。

## 謝辞

この研究は JST、CREST、JPMJCR20D2 と厚生労

働科学研究費補助金 AC 事業 JPMW21AC5001 の支

援を受けたものである。

## 参考文献

[1] Andrew Gordon, Zornitsa Kozareva, and Melissa Roemmele. SemEval-2012 task 7: Choice of plausible alternatives: An evaluation of commonsense causal reasoning. In *SEM 2012: The First Joint Conference on Lexical and Computational Semantics - Volume 1: Proceedings of the main conference and the shared task, and Volume 2: Proceedings of the Sixth International Workshop on Semantic Evaluation (SemEval 2012), pp. 394-398, Montréal, Canada, 7-8 June 2012. Association for Computational Linguistics.

[2] Maarten Sap, Vered Shwartz, Antoine Bosselut, Yejin Choi, and Dan Roth. Commonsense reasoning for natural language processing. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics: Tutorial Abstracts, pp. 27-33, Online, July 2020. Association for Computational Linguistics.

[3] Tom Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared D Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, Sandhini Agarwal, Ariel Herbert-Voss, Gretchen Krueger, Tom Henighan, Rewon Child, Aditya Ramesh, Daniel Ziegler, Jeffrey Wu, Clemens Winter, Chris Hesse, Mark Chen, Eric Sigler, Mateusz Litwin, Scott Gray, Benjamin Chess, Jack Clark, Christopher Berner, Sam McCandlish, Alec Radford, Ilya Sutskever, and Dario Amodei. Language models are few-shot learners. In Advances in Neural Information Processing Systems, Vol. 33, pp. 1877-1901. Curran Associates, Inc., 2020.

[4] Aitor Lewkowycz, Anders Johan Andreassen, David Dohan, Ethan Dyer, Henryk Michalewski, Vinay Venkatesh Ramasesh, Ambrose Slone, Cem Anil, Imanol Schlag, Theo Gutman-Solo, Yuhuai Wu, Behnam Neyshabur, Guy Gur-Ari, and Vedant Misra. Solving quantitative reasoning problems with language models. In Advances in Neural Information Processing Systems, 2022.

[5] Susan Zhang, Stephen Roller, Naman Goyal, Mikel Artetxe, Moya Chen, Shuohui Chen, Christopher Dewan, Mona Diab, Xian Li, Xi Victoria Lin, Todor Mihaylov, Myle Ott, Sam Shleifer, Kurt Shuster, Daniel Simig, Punit Singh Koura, Anjali Sridhar, Tianlu Wang, and Luke Zettlemoyer. OPT: Open Pre-trained Transformer Language Models. arXiv preprint arXiv:2205.01068, 2022.

[6] Aakanksha Chowdhery, Sharan Narang, Jacob Devlin, Maarten Bosma, Gaurav Mishra, Adam Roberts, Paul Barham, Hyung Won Chung, Charles Sutton, Sebastian Gehrmann, Parker Schuh, Kensen Shi, Sasha Tsvyashchenko, Joshua Maynez, Abhishek Rao, Parker Barnes, Yi Tay, Noam Shazeer, Vinodkumar Prabhakaran, Emily Reif, Nan Du, Ben Hutchinson, Reiner Pope, James Bradbury, Jacob Austin, Michael Isard, Guy Gur-Ari,
Pengcheng Yin, Toju Duke, Anselm Levskaya, Sanjay Ghemawat, Sunipa Dev, Henryk Michalewski, Xavier Garcia, Vedant Misra, Kevin Robinson, Liam Fedus, Denny Zhou, Daphne Ippolito, David Luan, Hyeontaek Lim, Barret Zoph, Alexander Spiridonov, Ryan Sepassi, David Dohan, Shivani Agrawal, Mark Omernick, Andrew M. Dai, Thanumalayan Sankaranarayana Pillai, Marie Pellat, Aitor Lewkowycz, Erica Moreira, Rewon Child, Oleksandr Polozov, Katherine Lee, Zongwei Zhou, Xuezhi Wang, Brennan Saeta, Mark Diaz, Orhan Firat, Michele Catasta, Jason Wei, Kathy Meier-Hellstern, Douglas Eck, Jeff Dean, Slav Petrov, and Noah Fiedel. PaLM: Scaling Language Modeling with Pathways. arXiv preprint arXiv:2204.02311, 2022.

[7] Shunyu Yao, Jeffrey Zhao, Dian Yu, Nan Du, Izhak Shafran, Karthik Narasimhan, and Yuan Cao. React: Synergizing reasoning and acting in language models. arXiv preprint arXiv:2210.03629, 2022.

[8] Karl Cobbe, Vineet Kosaraju, Mohammad Bavarian, Mark Chen, Heewoo Jun, Lukasz Kaiser, Matthias Plappert, Jerry Tworek, Jacob Hilton, Reiichiro Nakano, Christopher Hesse, and John Schulman. Training verifiers to solve math word problems. arXiv preprint arXiv:2110.14168, 2021.

[9] Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, brian ichter, Fei Xia, Ed H. Chi, Quoc V Le, and Denny Zhou. Chain of thought prompting elicits reasoning in large language models. In Advances in Neural Information Processing Systems, 2022.

[10] Swaroop Mishra, Arindam Mitra, Neeraj Varshney, Bhavdeep Sachdeva, Peter Clark, Chitta Baral, and Ashwin Kalyan. NumGLUE: A suite of fundamental yet challenging mathematical reasoning tasks. In Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 3505-3523, Dublin, Ireland, May 2022. Association for Computational Linguistics.

[11] Pengfei Liu, Weizhe Yuan, Jinlan Fu, Zhengbao Jiang, Hiroaki Hayashi, and Graham Neubig. Pre-train, prompt, and predict: A systematic survey of prompting methods in natural language processing. ACM Computing Surveys, 2022.

[12] Takeshi Kojima, Shixiang Shane Gu, Machel Reid, Yutaka Matsuo, and Yusuke Iwasawa. Large language models are zero-shot reasoners. In Advances in Neural Information Processing Systems, 2022.
表 2 NumGLUE の Task 2 における Few-Shot 事例の数を変えたときの性能。最良の結果を太字で示す。

## A Few-Shot 事例の数が性能に与え る影響

Few-Shot 事例の数が性能に与える影響を調べた。表 2 に結果を示す。Few-Shot 事例の数を増やすことで、外部ツールの利用の有無に関わらず、精度が向上することが確認された。なお、Few-Shot 事例は 20 例の時点で合計のトークン数が 3,000 近くあり、大規模言語モデルが処理可能なトークン長の制約から、Few-Shot 事例を増やすことによるこれ以上の性能改善は困難である。


# オープンドメイン質問応答における 文集合と位置情報を用いた抽出精度向上に関する検証

初鹿憂柴田千尋
法政大学 理工学部創生科学科
yu.hatsushika.2r@stu.hosei.ac.jp,chiro@hosei.ac.jp

## 概要

近年，BERT や Transformer を用いた深層学習モデルが様々な自然言語処理のタスクで高い精度を上げているが，質問応答もその例外には当たらない. 特に，最近，鈴木ら [1] によって作成された日本語版質問応答データセットが公開されたことにより，日本語でも質問応答に関する研究を進めることが容易になった. 本研究では，日本語版質問応答データセットを用いて Retriever-Reader とよばれる質問応答のためのモデルに対して，精度改善に向けた手法を 2 つ提案し，その結果を検討する. Retriever 側は，質問文に対する関連度が高い記事候補を関連度の高い順に抽出する。一方，Reader が正解の解答を出力できる場合は，候補となる記事中に正解が含まれている場合がほとんどであることが，上記データセットを用いた実験の結果わかっている. したがって, Reader が出力する候補に正解が含まれる確率を，なるべく上げることが重要となる。記事は通常多数の文を含むが，そのすべての文が質問文に関連しているわけではない。そのため，同じ数のトークンを Reader に入力する場合，記事よりも文のほうがより多数の候補を入力することができる．本稿では，提案手法の 1 つとして，Retriverに，記事の代わりに文ごとに候補を抽出させることを提案する。

## 1 はじめに

近年，ニューラルネットワークを用いたモデルがクイズ形式の質問に対して高精度に解答する研究が盛んに行われている [2]. これらの研究が進むことで従来の検索システムに比べて，より自然な言葉での質問応答が可能になると考えられている.

出題範囲に制限のない広範囲な一般常識が必要となるようなクイズに対して，高精度で解答するためには，なるべくたくさんの知識を利用することが必要である。そのため，正解するためには膨大な記事の中から，答えを含む可能性の高いものを抽出するプロセス，及び，抽出された記事のなかから，文脈を考慮して答えとなる短いフレーズを導くためのプロセスが必要となる。

与えられた質問に対して答えを正しく導き出すために用いられる主な手法としては， Retriever-Reader モデルが挙げられる [3]. Retriever とはある記事集合から質問文の情報を用いて関連する記事を抽出することが行われ Reader では Transformerを元にした言語モデルを用いて抽出した関連する記事から答えを導き出すことが行われる．正答数を上げるためには Retriever と Reader 両方の精度を上げる必要がある. Retriever の精度は抽出した $N$ 件の記事の中に答えを含んだ記事が含まれるかで測られ，Reader の精度は答えが出力できるかで測られる。今回の実験では Retrieverに Dense Passage Retriever [4]を，Reader に Fusion-in-Decoder [5] を採用する。本研究では 2 つの手法を提案する. 1 つ目は Retriever に従来用いていた記事集合を文ごとに分割した文集合を用いる. 2 つ目は抽出された記事に対して位置情報を用いる.

## 2 関連研究

## 2.1 Retriever-Reader モデル

Retriever-Reader モデルは文を抽出する役割である Retriever と答えを生成する役割である Reader という 2 つの部分から構成されている. Retriever では記事集合と質問文の類似度を計算することによって全ての記事に対して質問文との関連度スコアを付け，スコア上位から順番に抽出する。 Reader では抽出した記事集合から, 答えとなるフレーズを Transformer モデルにより生成する. 今回は埋め込み表現に変換し連結させることにより言語モデルの入力として解答

を生成する。

図 1 Retriever-Reader モデル

## 2.2 DPR (Dense Passage Retriever)

DPR[4] は質問に対して関連する記事を大規模な記事集合から意味的に抽出するモデルである. まず質問文 $q$ と記事集合 $p$ に対して，BERT [6] を用いて密なべクトル表現 $E(q), E(p)$ にエンコードする.次に式 1 のように内積を計算し関連性の高い記事を順番に出力する.

$
\operatorname{sim}(q, p)=E_{Q}(q)^{T} E_{P}(p)
$

DPR の学習データセットは，Elasticsearch ${ }^{1)}$ を用いて作られ, $\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right)$で定義される. $q$ は質問文, $p^{+}$はポシティブパッセージ， $p^{-}$はネガティブパッセージを表す. モデルは式 1 の損失関数が最小になるように 2 つの BERT エンコーダを学習する. ポジティブパッセージとの類似度が高く, ネガティブパッセージとの類似度が低いほど損失関数は小さくなる.

$
\begin{aligned}
& \mathrm{L}\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right) \\
& =-\log \frac{e^{\operatorname{sim}\left(q_{i}, p_{i}^{+}\right)}}{e^{\operatorname{sim}\left(q_{i}, p_{i}^{+}\right)}+\sum_{j=1}^{n} e^{\operatorname{sim}\left(q_{i} p_{i j}^{-}\right)}}
\end{aligned}
$

## 2.3 FiD (Fusion-in-Decoder)

Fusion-in-Decoder[5] は Retriever-Reader モデルの Readerとして用いられている。言語モデルをべースに作られており，質問文と記事から答えを生成できる. Retriever 側で抽出された複数の記事をエンコー ドした後に連結することで複数の記事を大力可能にしていることが特徴である。モデルとしては，一般

的な翻訳モデルと同じように, 次トークンの予測するデコーダを用いている.

## 3 提案手法

提案手法としては，以下に述べるように，Retriever と Reader に対してそれぞれ 1 つずつ工夫を行なう.

## 3.1 文集合

記事集合として wikipedia などのクイズとは直接関連のない一般的な文書セットを用いた場合，記事の中に多数の文が含まれ，さらに質問文の解答には必要のない文も多数含まれている。例えば表 1 の例に示すように, 質問「ゴルフボールの表面につけられているくぼみのことをなんと言うでしょう」に対し，正答が「ティンプル」であるような問題に対して，「乱流」というタイトルの記事が抽出されている。記事には，3文含まれているが，回答には赤く色付けした 2 文目のみが関係していると考えらえる。

本研究では，関連する文をより多く正確に抽出するために，分け方を記事ごとから文ごとにすることを提案する。具体的には Retrieverに用いる記事集合を文集合に変更して，事前学習を行なう。文集合で

 \\

学習をした Retrieverを用いて文章抽出を行なう。

表 1 抽出した記事に含まれる文章の例

## 3.2 位置情報

もう一つの提案は，Readerの入力に関するものである．前述のように，Retriver は関連度の高い順に記事を列挙する. Retriver が関連度が高いと推定したとしても，必ずしも正答となるフレーズがその記事の中に含まれているわけでは当然ないが，実際に，実験結果から，図 2 に示すように，Retriever

で抽出した記事を分析した結果，解答を含んだ記事が検索順位上位に集まる傾向が高いということがわかる．そこで，情報の重要度を記事位置ごと与えることで，精度が向上する可能性があるため， Reader に入力する際に位置情報を加える手法を提案する. 方法としては記事の埋め込み表現に位置エンコーディングを加算する．位置エンコーディングは Transformer Encoder [7] の位置エンコーディングと同じものを用いる.

図 2 解答が含まれる記事の分布

## 4 データセット

## 4.1 コンテキスト

記事集合や文集合といった DPR で抽出する際の検索元のデータセットをコンテキストと呼ぶ.

## 4.1.1 記事集合

$\mathrm{AI}$ 王クイズ日本一決定戦に公開されていたウィキペディアを用いて作られた記事集合を利用した。記事数としては 4,288,199 件のものを利用する. 実際， 1 件の記事サイズは大きいため, 段落ごとに区切ったデータを記事集合として, 記事に段落があった場合同タイトルの別の記事として保存されている。

## 4.1.2 文集合

今回記事ごとではなく，文ごとのインデックスを作成するために，AI王クイズ日本一決定戦に公開されていたウィキペディアのデータとコードを用いて集められていた記事集合を句点で区切り, 再度ラべルを付け直す。その結果，表 2 に示したようにラべルの総数が約 430 万件から約 2,000 万件に増加した.
このため記事または文べクトルを作成する際に約 5 倍の時間がかかった。

表 2 検索インデックスの総数

## 4.2 訓練データ

本研究では $\mathrm{AI}$ 王クイズ日本一決定戦で公開されていた質問応答タスクの日本語データセットを用いる. JAQKET [1]をもとにして作られている. 訓練データセットとして 22,335 件の質問文と解答が含まれている。また，質問文に対して Elasticsearch を用いることで正解が含まれている記事であるポジティブパッセージを抽出する. さらにネガティブパッセージとして回答が含まれていない記事を付与する. Retrieverの訓練データは質問文, $p^{+}$はポシティブパッセージ， $p^{-}$はネガティブパッセージを用いて $\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right)$で定義される.

Readerにおける訓練データは，質問文を Retriever に入力し検索をかけて得られる記事, 記事タイトルと質問文を上位 $\mathrm{N}$ 件まで組み合わせて作る. 評価データは JAQKET から訓練データに含まれない 1,000 件の問題を利用して，同様にして作られる.

## 5 実験

## 5.1 実験設定

表 3 亿示したハイパーパラメータを基準としてコンテキストと Reader の入力情報に対して変更を加えて提案手法の有効性を検証する． Retriever に事前学習済みの日本語 BERT ${ }^{2}$ を用いた Dense Passage Retriever, Readerに事前学習済みの日本語 $\left.\mathrm{T} 5^{3}\right)$ を用いた Fusion-in-Decoder を採用する。また， Fusion-in-Decoder に入力するコンテキスト数は 50 と 100 で実験を行う.

## 5.2 抽出精度の比較

記事ごとのインデックスを使用した基準モデルと文ごとのインデックスを使用したモデルに関して比較実験を行なった，結果は表 4 のようになり，数値は，上位 $N$ 件までの記事または文を抽出した際に，

表 3 ハイパーパラメーター

答えが含まれた記事が抽出された割合を示す.インデックスのサイズは表 2 より文集合は記事集合の 4 から 5 倍であるため，コンテキスト 1 つ当たりのサイズは小さいと推測される. 文ごとで精度が約 0.85 になるのは上位 100 件の時であるのに対して記事ごとでは上位 50 件の時であるため, 抽出精度が同等に達するために必要なコンテキストの差は 2 倍である.そのため，少ない量の文で解答を抽出できていることが分かる.

## 5.3 解答生成精度の比較

次に記事集合を用いて学習させた FiD と文集合を用いて 60,000 ステップ学習させた FiD に対して評価を行う. 結果は表 5 のようになった. 記事集合でテキスト数 50 の時と, 文集合でテキスト数 100 の時を比較すると表 4 より解答を含んだコンテキストの数は同等であったが精度は記事集合の方が高いが,実際に Reader 入力されている文数やトークン数は，文集合のほうが少ないため，入力する文数やトークン数を揃えて，精度を比較をする必要がある.

表 5 FiD の結果

## 5.4 位置情報を入力した結果

DPRを用いて抽出した記事 50 件に対して Transformer の位置エンコーディング [7] を参考に位置情報を追加する. 位置情報を加えたモデルと基準モデルに対して 90,000 ステップ学習する. 位置情報を加えて学習された FiDに対して行なった評価を表 6 に示す。

次に DPR を用いて抽出した文 50 件， 100 件に対して位置エンコーディングを加えて 60,000 ステップ学習する. 位置情報を加えて学習された FiD に対して行なった評価を表 7 に示す. 表よりわかるように，少なくとも本稿で述べた位置情報の入力の手法では，精度向上に寄与しないことがわかる.

表 7 文集合と位置情報を用いた結果

## 6 結論

本稿では，コンテキストとして用いていた記事集合を文集合に変えたることにより，DPR での抽出精度がどのように変化するかを検討した．その結果，少ない文章数で解答を含めることができていると言える。一方で，FiD で記事集合と文集合で解答を含むコンテキストを抽出する精度が同等であった場合は, Reader の精度は記事集合の方が高くなっている事がわかる.これは，記事集合の場合は，入力の文数が少なくなっているためであり，入力の文数やトークン数を揃えた上で比較する必要があるため，フューチャーワークとする．位置情報の入力に関しては, 精度の改善は認められなかったが，問題それぞれで分布が少しずつ変わっている可能性があるため，今後は広い範囲に対して位置情報を取る改善が必要である.

今後の展望として,コンテキストを増やして記事集合と文集合の比較実験を行うことを考えている.位置情報に関しては抽出データに対して更に分析を行う必要がある. また Retriever-Reader モデルにおいて FiD の出力精度を向上させるために DPR で抽出する情報の性質を検証する必要がある.

## 謝辞

今回研究するにあたり，町田秀輔氏には実験の準備やコードのエラーの解消に助言を頂いたこと深く感謝申し上げます。本研究の一部は JSPS 科研費 JP18K11449 の助成を受けたものです.

## 参考文献

[1] 鈴木正敏, 鈴木潤, 松田耕史, 西田京介, 井之上直也. Jaqket: クイズを題材にした日本語 qa データセットの構築. 言語処理学会第 26 回年次大会発表論文集, pp. 237-240, 2020.

[2] Ai王クイズ日本一決定戦，（2022-9 閲覧）.https:// sites.google.com/view/project-aio/competition3.

[3] Fengbin Zhu, Wenqiang Lei, Chao Wang, Jianming Zheng, Soujanya Poria, and Tat-Seng Chua. Retrieving and reading: A comprehensive survey on open-domain question answering, 2021.

[4] 加藤拓真, 宮脇峻平, 西田京介, 鈴木潤. オープンドメイン qa における dpr の有効性検証. 言語処理学会第 27 回年次大会発表論文集, pp. 1403-1407, 2021.

[5] Gautier Izacard and Edouard Grave. Leveraging passage retrieval with generative models for open domain question answering. In Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics, pp. 874-880, 2021.

[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert:pre-training of deep bidirectional transformers for language understanding. In In NAACL-HLT, 2019.

[7] Denis Rothman, 黒川利明 (訳). Transformer による自然言語処理. 朝倉書店, 2022.


# 答弁の種類に着目した抽象型要約に基づく議会会議録質問応答

河合輝也 ${ }^{1}$ 秋葉友良 ${ }^{1}$ 増山繁 ${ }^{2}$
1 豊橋技術科学大学大学 2 東京理科大学
kawai.teruya.ic@tut.jp akiba@cs.tut.ac.jp masuyama@rs.tut.ac.jp

## 概要

地方議会がウェブで公開している議会会議録は、長く複雑な構造をしているため読みづらく十分に活用されているとは言い難い。本研究では，住民が議事録を読まずに行政の疑問を解決できる質問応答手法を提案する。特に、対話、ニュース記事を複数の側面から要約する研究を、本タスクに適用する。 まず、答弁要約のクラスを 4 種類定義し、サンプルから分布を調べた。その結果、ある議案に関して既に行った対策・措置である「進捗」これから行う対策・措置である「計画」が全体の $92 \%$ 占めていることを確認した。質問に対する回答を「進捗」と 「計画」に着目して要約するモデルを実装し、ベー スラインを大幅に上回る性能を示した。

## 1 はじめに

近年、地方議会が情報を一般公開し行政の透明化を進めている。すべての都道府県議会が独自に情報公開の条例を新たに制定・改定し、現在は本会議の会議録がインターネットで閲覧できる。本会議では委員会の審議を通過した議案について質疑討論が行われる。住民は会議の概要を「〜だより」のような刊行物や各種報道を通じて知る。これらのメディアを通じて得られる情報は、多くの住民に影響があるものや話題性が高いものが中心で議論すべてを網羅していない。ごく少数の住民に関係のある細かい内容は報道されない場合も多く、詳細を知りたい住民は最終的に公開されている会議録を読む必要がある。

議会会議録は複雑な構造で長く読みづらいという問題がある。例えば、東京都議会の会議録は一括質問一括答弁形式になっている。ある場合には議員が約 2 万 2 千文字で 7 つ質問した後に、知事が約 2 万 3 千文字で 7 つ答弁している。このように、挨拶や議論とは直接関係ない話を含み長くなることと、一括質問・一括答弁で質問と答弁の対応関係が複雑な
ため、読みづらい。

本研究では、議会会議録を基に行政に関する質問の回答を出力する質問応答を提案する。提案手法では質問に関連する答弁を抽出・要約する際、特に答弁の種類に着目して設計した。東京都の職員が作成した会議録の人手要約を分析し、4 種類にクラス定義、分類した。4クラス中の「進捗」と「計画」が要約生成において重要な要素であるという仮説を立て、モデルを実装した。

## 2 関連研究

質問応答 $(\mathrm{QA})$ システムは、一般的に質問分析、情報検索、回答抽出、回答選択の各要素から構成される。初期の研究では、ルールベースや統計的手法が用いられていたが、現在ではほとんどの研究がニューラルネットワークを使用している。 $[1,2,3]$ $\mathrm{QA}$ システムが扱う質問は、ファクトイド質問とノンファクトイド質問に分けることができる。ファクトイド質問とは、名前、番号、場所など、事実に基づいた答えを必要とする質問である。非ファクトイド質問とは、理由や事象の説明に基づく回答を求める質問である。QA システムの研究では、ファクトイド型質問が主流だが、この研究ではより難易度の高いノンファクトイド型に取り組む。

テキストの要約は、ニュース記事、論文、書籍など、様々な分野で研究されている。要約には、抽出型と抽象型の 2 種類がある。前者はテキストから単語を選択して文章を生成するものであり、後者は単語の意味情報を捉えて文章を生成するものである。抽出的要約の研究として、Kevin Knight と Daniel Marcu [4] は、文章を構造的に分析し、木構造にして重要な情報を圧縮する方法を提案した。TextRank[5] は文章をグラフ構造で表し、各ノード間の関係から要約を作成する。Latent Semantic Analysis[6] を用いたテキスト要約は、文の行列の特異値分解によりトピックを計算し、文を選択するトピックベースの手法である。
最近の研究で注目されているのが抽象的要約である。Encoder-Decoder モデルを用いて、入力に存在しない単語を出力することが可能になった [7]。これは、Encoderが文を潜在的な表現に圧縮し、Decoder が圧縮された表現から文を生成するモデルである。抽象型要約は文の潜在的な意味を捉えた表現を可能にするが、しばしば冗長な情報や矛盾した情報を生成してしまうという問題がある。Pointer-Generator Networks は、原文から単語をコピーできるアーキテクチャを提案した [8]。また、Transformer は、RNN や CNNを用いず、Attention のみを用いた高速かつ高精度な Encoder-Decoder モデルである [9]。

対話要約タスクをChen らはマルチビュー Sequence-to-Sequeuence モデルで取り組んだ [10]。分類モデルで会話構造を明確にし、対話要約の複数のビューで生成した。ニュース記事のテキストをドメインに合わせた複数の側面 (アスペクト) から要約する研究がある [11]。クエリベースの要約は文書固有の質問に答えるが、実際のユーザーのニーズは多くの場合、抽象的な疑問の解決であると著者らは考えている。ニュース記事の属するドメインにあらかじめ定義された複数の側面から要約を生成する。例えば、地震ドメインのニュースは震源地、震度などの地理的側面と被災者の状況、政府の対応などの被害・復興的側面から要約するように多様なニーズに危える要約生成を著者らは提案した。

## 3 提案手法

提案手法を図 1 に示す。提案手法は抽出・要約フローをコンテンツ選択器と要約モデルで実装している。コンテンツ選択で答弁の「進捗」と「計画」を抽出する。それぞれを要約モデルに入力し、進捗要約と計画要約を生成する。

東京都議会は会議録を職員が要約し「都議会だより」でウェブで公開している。人が要約を作成する際どのような側面に着目するか調べるため、都議会だよりの答弁要約を分類した。人手答弁要約は基本的に 1 2 文で構成されている。119 件の答弁要約を文集合に分割し、答弁要約を分類した。答弁要約のクラス定義とクラス分類結果を表 1,2 に示す。進捗・計画と分類されたものが全体の約 $92 \%$ 占める。よって、その 2 つ側面から要約を生成することを今回の方針とした。

## 3.1 コンテンツ選択器

都議会会議録は一括質問一括答弁形式で記述されているため、 1 発言が複数のトピック (話題) で構成されている。質問に関する答弁部分を抽出するため、答弁をトピック毎のセグメントに分割する。Kanasaki ら [12] の研究を参考に、接続詞、開始表現、終了表現の辞書を作成、マッチしたテキストの前後で分割する。答弁をセグメント集合 $S=\left.\{s_{1}, s_{2}, \ldots, s_{n}\right.\}$ (n: トピック数) と表す。

次に、クエリ (質問とトピック)に基づいてセグメント集合から 1 つのセグメントを選択する。セグメントの検索には統計的手法である Okapi BM25[13] を用いる。提案手法におけるクエリは、質問とそれに関するトピックである。セグメントを検索する際に、質問とトピックは重要性が異なると考えた。質問 $q$ とトピック $t$ のスコアをそれぞれ BM25 で計算し、重み $\alpha$ でバランスをとる、式 1 のように設計した。

$
\bar{s}=\underset{s_{i} \in S}{\arg \max }\left(\alpha \operatorname{score}\left(s_{i}, q\right)+(1-\alpha) \operatorname{score}\left(s_{i}, t\right)\right)
$

予備実験により、 $\alpha=0.4$ のときセグメント選択のパフォーマンスが最大になることが分かった。また、セグメント選択手法は、Okapi BM25 と Sentence BERT[14]を比較した結果、今回のタスクでは前者の手法が優れていたためこちらを採用した。

## 3.2 要約モデル

選択したセグメントからニューラルネット要約モデルで要約を生成する。進捗・計画要約を 2 モデルで行う「進捗/計画要約 2 モデル」と 1 モデルで行う 「進捗/計画要約 1 モデル」の 2 つの手法を試した。図 2 に 2 つの要約手法を示す。2 モデルは進捗要約モデルと計画要約モデルが独立して存在する。それぞれにセグメントを入力すると進捗要約、計画要約

図 1 提案手法

## ・進捗/計画要約2モデル

## $\cdot$進捗/計画要約1モデル

図 22 つの要約手法

が出力される。1 モデルは共通の進捗/計画要約モデルで進捗要約、計画要約を生成する。入力セグメントにタグ付けすることで両者を区別し、進捗タグには進捗要約、計画タグには計画要約が出力される。 1 モデルは共通のモデルによってデータセットが互いに共有され、要約の性能向上に寄与することを期待した。進捗/計画要約 2 モデル、進捗/計画要約 1 モデルのいずれもセグメントを進捗・計画の側面から要約する進捗要約、計画要約を生成する。最終的に進捗要約と計画要約を結合したテキストを質問に関する回答 (要約)とする。

どちらの手法も、モデル学習のために答弁セグメント-進捗要約、答弁セグメント-計画要約のソー ス・ターゲットペアが必要である。都議会だよりの人手要約には進捗、要約の区別がない。ターゲット側のデータ構築のため、人手要約を進捗要約・計画要約に分けるニューラルネット分類モデルを使用した。人手要約は文単位に分割し、学習済みクラス分類モデルによって進捗、計画、その他に分けられる。進捗と計画に分類された文をそれぞれ進捗要約モデル、計画要約モデルのターゲットとして学習に利用する。分類モデルは、表 1 のクラス定義に従って 478 件の人出要約のラベル付けデータを作成し、学習させた。

## 4 実験

表 3 会議録のデータ構造 Volume(年月), Number(号), Date(日付), Title(会議録の表題), SpeakerPosition(発言者の役職), SpeakerName(発言者の氏名), QuuestionSpeaker (発言に対応する質問者の氏名と役職), Speaker (発言者の氏名と役職), Utterance(発言)

表 4 都議会だよりのデータ構造 ID(識別番号), MeetingName(会議名), Date(日付), Headlines (質問者の発言全体の要旨), SubTopic (サブトピック), QuestionSpeaker(質問者),

QuestionSummary(質問の要約), AnswerSpeaker (答弁者), AnswerSummary(答弁の要約)

## 4.1 データセット

東京都議会の会議録とその人手要約「都議会だより」は Web で公開されている。NTCIR-16 QA Lab-PoliInfo-3[15] が提供する JSON 形式で構造化した会議録、都議会だよりデータを使用した。会議録と都議会だよりのデータ構造をそれぞれ表 3,4 に示す。会議録データは発言 (Utterance) が 1 文が 1 フィールドで、その他の項目と共に構成されている。都議会だよりデータは質問要約 (QuestionSummary) や答弁要約 (AnswerSummary) などの項目が含まれる。テストでは都議会だよりの AnswerSummary が空欄で、会議録を基に推論を行う。

## 4.2 学習データ構築

要約モデルを学習するためには答弁セグメント進捗要約、答弁セグメント-計画要約のソース・ター ゲットペアが必要である。ソース側のセグメントは式2のように選択した。

$
\bar{s}_{\text {train }}=\underset{s_{i} \in S}{\arg \max }\left(\beta \operatorname{score}\left(s_{i}, a\right)+(1-\beta) \operatorname{score}\left(s_{i}, t\right)\right)
$

答弁要約 $\mathrm{a}$ とトピック $\mathrm{t}$ から、beta $=0.95$ で BM25 によって各セグメントの類似度を計算、最も高いセ

グメントが $\bar{s}_{\text {train }}$ に代入される。

ターゲット側のデータ構築に利用した分類モデルは日本語 Wikipedia 学習済み BERT モデルをベースに転移学習を行った。以上より、進捗要約モデル、計画要約モデルのソース、ターゲットを作成し学習を行った。

## 4.3 実装の詳細

要約モデルは日本語 Wikipedia 学習済み $\mathrm{T} 5$ モデルをべースに実装した。前処理として、Juman++[16] による単語セグメンテーションと、SentencePiece[17] によるサブワードセグメンテーションを行なった。

## 4.4 比較手法

LAST-1 最終文を抽出し要約とする最も単純な手法。ニュース記事要約タスクでは先頭文を抽出する LEAD-1 が一般に用いられるが、会議録の場合、最後に総括されることが多いため LAST-1 で行う。

要約 1 モデル答弁の種類 (進捗、計画)を考慮しない手法。選択したセグメントを要約モデルのソース、答弁要約をターゲットとする。

NTCIR SOTA モデル同様のタスクに取り組んだ他チームの手法 [15]。セグメント選択時に質問と答弁の 1 対 1 の対応関係を明確にしている。

## 4.5 評価結果

要約の評価は、NTCIR の評価方法に準拠し、リファレンスとの N-gram の重なりを図る指標である ROUGE を使用した。評価結果を表 5 に示す。F-1を見ると、答弁の種類を他の考慮するモデルが比較手法のスコア上回っていることが分かる。答弁の「進捗」「計画」に着目した要約の有効性があったと言える。また、進捗/計画要約 2 モデルと進捗/計画要約 1 モデルを比べると進捗・計画要約モデルは分けて実装した方が高いスコアを示した。1 モデルは要約そのものと進捗・計画要約の特徴を混在してしまい、区別して学習できなかった可能性がある。

表 6 に進捗/計画要約 2 モデルの出力例を示す。進捗要約を緑色、計画要約を青色で表した。フォー マットの観点から見ると、正解要約よりも生成された要約は統一されている。生成要約はすべて進捗要約、計画要約の 2 文だが、正解要約は 3 例が計画要約のみ、 2 例が両方となっている。正解要約は人が重要だと思った部分を可能な限り短い要約に収めているため、要約者の主観で内容が変化する。一方表 5 ROUGE 評価結果

表 6 進捗/計画要約 2 モデルの出力例

 \\

水辺空間を生かした魅力ある都市の顔づくりを進めるため、未来の東京戦略ビジョンに外堀浄化プロジェクトを位置づけた。水源・水量の確保や導水路の整備方法など検討を進め、水の都にふさわしい東京を実現。

都立産業技術研究センターにハイオ技術を活用したへルスケア産業への支援を開始。専門部署を設置し、更なる発展を図る。正解要約

経済的支援策を着実に実施するとともに 3 年度からの次期支援計画の改定を進める。

コールセンター回線増設や聴覚障害の方のファクシミリ受け付け等、体制を充実。

導水の水源、水量の確保や導水路の整備方法等を検討し、着実に進める。

都立産業技術研究センターで支援開始。 2 年度は専門部署を設置し取組を更に発展。

感染症対策本部を中心に課題を検証。課題の検証を行い、今後懸念される感染拡大への備えに万全を期す。

$
\begin{aligned}
& \text { 課題を検証しなが } \\
& \text { ら見直しを図ったき } \\
& \text { た。後とも感染拡 } \\
& \text { 大の備えに万全を期 } \\
& \text { す。 }
\end{aligned}
$

で、生成要約は統一されたフォーマットで要約が構成されているため、何を採用するのかという主観的判断が減少している。

## 5 おわりに

本研究では、議会会議録を基に行政に関する質問の回答を出力する質問応答システムを構築した。人手要約の分析により本稿で定義した「進捗」と「計画」が答弁要約の重要な要素であると仮定した。実際に「進捗」と「計画」の側面から要約する提案システムは性能の向上させることを確認した。特定の側面から要約を生成する提案手法は要約システムの頑健性を高めることにも貢献すると考える。

## 参考文献

[1] Di Wang and Eric Nyberg. A long short-term memory model for answer sentence selection in question answering. In Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 2: Short Papers), pp. 707-712, Beijing, China, July 2015. Association for Computational Linguistics.

[2] Danqi Chen, Adam Fisch, Jason Weston, and Antoine Bordes. Reading Wikipedia to answer open-domain questions. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 1870-1879, Vancouver, Canada, July 2017. Association for Computational Linguistics.

[3] Siva Reddy, Danqi Chen, and Christopher D. Manning. CoQA: A conversational question answering challenge. Transactions of the Association for Computational Linguistics, Vol. 7, pp. 249-266, 2019.

[4] Kevin Knight and Daniel Marcu. Statistics-based summarization - step one: Sentence compression. 052000.

[5] Rada Mihalcea and Paul Tarau. TextRank: Bringing order into text. In Proceedings of the 2004 Conference on Empirical Methods in Natural Language Processing, pp. 404-411, Barcelona, Spain, July 2004. Association for Computational Linguistics.

[6] Makbule Gulcin Ozsoy, Ferda Nur Alpaslan, and Ilyas Cicekli. Text summarization using latent semantic analysis. Journal of Information Science, Vol. 37, No. 4, pp. 405-417, 2011.

[7] Ilya Sutskever, Oriol Vinyals, and Quoc V Le. Sequence to sequence learning with neural networks. In Z. Ghahramani, M. Welling, C. Cortes, N. Lawrence, and K.Q. Weinberger, editors, Advances in Neural Information Processing Systems, Vol. 27. Curran Associates, Inc., 2014.

[8] Abigail See, Peter J. Liu, and Christopher D. Manning. Get to the point: Summarization with pointer-generator networks. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 1073-1083, Vancouver, Canada, July 2017. Association for Computational Linguistics.

[9] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, L ukasz Kaiser, and Illia Polosukhin. Attention is all you need. In I. Guyon, U. Von Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett, editors, Advances in Neural Information Processing Systems, Vol. 30. Curran Associates, Inc., 2017.

[10] Jiaao Chen and Diyi Yang. Multi-view sequence-tosequence models with conversational structure for abstractive dialogue summarization. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 4106-4118, Online, November 2020. Association for Computational Linguistics.

[11] Ojas Ahuja, Jiacheng Xu, Akshay Gupta, Kevin Horecka, and Greg Durrett. ASPECTNEWS: Aspect-oriented summarization of news documents. In Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 6494-6506, Dublin, Ireland, May 2022. Association for Computational Linguistics.

[12] Katsumi Kanasaki, Jiawei Yong, Shintaro Kawamura, Shoichi Naitoh, and Kiyohiko Shinomiya. Cue-PhraseBased Text Segmentation and Optimal Segment Concatenation for the NTCIR-14 QA Lab-Polilnfo Task, pp. 85-96. 112019.

[13] Giambattista Amati. BM25, pp. 257-260. Springer US, Boston, MA, 2009.

[14] Nils Reimers and Iryna Gurevych. Sentence-bert: Sentence embeddings using siamese bert-networks. CoRR, Vol. abs/1908.10084, , 2019.

[15] Hideyuki Shibuki Yasutomo Kimura. Overview of the ntcir-16 qa lab-poliinfo-3 task. In Proceedings of The 16th NTCIR Conference, 2022.

[16] Arseny Tolmachev, Daisuke Kawahara, and Sadao Kurohashi. Juman++: A morphological analysis toolkit for scriptio continua. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 54-59, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[17] Taku Kudo and John Richardson. SentencePiece: A simple and language independent subword tokenizer and detokenizer for neural text processing. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 66-71, Brussels, Belgium, November 2018. Association for Computational Linguistics.


# 算術問題におけるニューラルモデルの構成的推論能力

工藤慧音 1 青木洋一 1 栗林樹生 ${ }^{1,2}$ Ana Brassard ${ }^{3,1}$
吉川将司 1 坂口慶祐 1,3 乾健太郎 1,3
1 東北大学 ${ }^{2}$ Langsmith 株式会社 ${ }^{3}$ 理化学研究所
\{keito.kudo.q4, youichi.aoki.p2 \}@dc.tohoku.ac.jp
\{kuribayashi, yoshikawa, keisuke.sakaguchi, kentaro.inui\}@tohoku.ac.jp
ana.brassard@riken.jp

## 概要

未知の問題への汎化を達成する上で，問題の構成要素を捉え既知の知識を組み合わせる能力が重要となる.しかし，近年の言語モデルがどの程度構成性を捉えられているかは記号推論の文脈ではまだ明らかでない. そこで本研究は, 多段算術記号推論デー タセットを用いた実験を行い，構成的推論能力の検証を行なう，具体的には，問題の複雑さを整理したスキルツリーを定義し統制的に分析する. 実験の結果，言語モデルは体系性の習得が最も困難であり，単純な数式の組み合わせに対する汎化でさえ難しかった. また追加の分析から, 入力系列に書かれない知識へのアクセスが必要な問題で, 体系性に対する汎化が特に困難である明らかとなった。

## 1 はじめに

近年，ニューラルモデルに関する技術の発展により機械による自然言語理解は大きく進歩し, 多くのタスクがニューラルモデルによって解決されるようになってきた. しかし, 言語処理を行う上で必要な要素の 1 つである記号推論能力のニューラルモデルとの融合については，重要な目標の 1 つとして $[1,2]$調査が進行中である [3]. 現状，ニューラルモデルがどの程記号推論を実現については相反する結果が報告されている．例えば，ニューラルモデルが多段推論をある程度解くことができると報告する研究もある一方 [4], 単純な記号演算を行うことさえ困難であるとするものも存在し [5], どのような観点・条件において, どの程度の推論が実現可能なのかといった統制的な分析が必要とされている.

本研究では，多段算術記号推論データセットを用い，問題の複雑さを制御しながらニューラルモデルの多段推論能力を評価する. 特に，未知の問題への

図 1 算術記号推論における構成性の種類

汎化の際に重要となる構成性に焦点を当てて分析を行う. 具体的には, 図 1 に示すように，(i) 体系性, (ii) 生産性，(iii) 代入可能性という3 3つ構成性を軸として調査を行い, 単純な問題設定で学習したモデルが，そこで学習した要素を組み合わせ一段複雑な問題を解けるかという，言語モデルの構成的な汎化性能を評価する。

モデルの能力を系統的に調査するために, 図 2 に示すように, 算術記号推論の複雑さを階層的に定義した構成性に関するスキルツリーを導入する. (スキルツリーは教育学の分野において，段階的な学習過程を可視化するための手法を示す用語である [6]. )この階層を足がかりに，ニューラル言語モデルの構成的なの限界を明らかにする。主な実験結果は以下の通りである.
- 3 種類の構成性の中で体系性への汎化が最も困難であり, 比較的単純な組み合わせであっても汎化を達成することが困難である。
- 特に, 入力系列中に明示されていない知識を要する問題において体系性に対する汎化への困難度が増す。

・本実験の範囲では，途中の推論過程をモデルに学習させた場合であっても, モデルが体系性を捉えることは困難であった.

## 2 問題設定

典型的な記号推論（手続き型プログラミング言語，アセンブリ言語など）は，少なくとも3つの基本的な記号操作，代入 $(\mathrm{a}=2)$, 算術演算 $(1+2)$, 参照 (a=?) で構成される. そこで，これら 3 つの基本演算を組み合わせた以下のような多段算術推論問題を解くことを目標とする。

問題： $A=1, B=2, C=A+2, C=$ ? 答え： 3

最後に特定の変数に代入されている値を問われる. 答えは必ず一意に定まり，問題設定によっては，最後の問いに直接関わらない数式が含まれる. また，問題は以下の 5 種類の基本的な数式を並べ合わせることで生成される：(i) $A=1$ （代入），(ii) $A=B$ (参照\&代入), (iii) $A=1+2$ （演算\&代入), (iv) $A=B+2$ (演算\&代入\&参照，参照)，(v) $A=$ ? (参照).

このような算術推論データセットでは，問題文中の数や推論の複雑さを自由に制御することが可能であり，統制した実験を行うために適している。自然言語でのモデルの推論能力評価という視点からは,自然言語の表現の多様さといった難しさとは切り分けて，純粋な算術推論能力を調査する試みと見ることができる. また, 本研究で考える算術推論の問題は，DROP [7] に見られるような自然言語の算術推論問題に自然に変換することが可能である.

## 3 算術推論におけるスキルツリー

## 3.1 多段記号推論における構成性

構成的な汎化を体系性，生産性，代入可能性の 3 つの軸に分解する [8]. これらの軸を基準として， ニューラル言語モデルがどの程度構成に対する汎化を達成できているかを評価する。

体系性 (systematicity) は，既知の異なる概念を組み合わせてより複雑な概念を理解する能力である.この能力を評価するため, 初めに，数種類の基本的な処理 (例: 加算 $A=1+2, A=$ ? や選択参照 $A=1, B=2, B=$ ?) の学習を行う. その後, 学習した基本的な処理の組み合わによって構成される問題（例 : $A=1+2, B=2+3, B=$ ?) における性能を測定する.

生産性 (productivity) とは既知の短い問題の解き方をもとにして，より長い問題や複雑な問題を理解する能力のことである。この能力を評価するため，初めに, 短い数式 (例: $A=1+2, B=2+3, B=$ ?) でモデルの学習を行う. その後, 同様の問題形式のより長い問題

図 2 構成的な汎化能力を評価するためのスキルツリー.事前学習に利用した基本演算は灰色，WA を計算するためのファインチューニング用いたデータは水色で示している. 各辺に示した“sys” (=体系性) “prod” (=生産性) はそれぞれ，増加する複雑さの種類を表している。

(例: $A=1+2, B=2+3, C=3+4, C=$ ?) を解いたときの性能を測定する。

代入可能性 (substitutivity) は，問題中の特定の構成要素が他の (見たことがない) 構成要素に置き換わった場合であっても，変わらず推論を行うことができる能力である.この能力を評価するため，学習時に見たことがない語彙が問題文中に現れた時に，ニューラルモデルは推論することができるかどうかを測定する．具体的には，学習時とテスト時で問題文に用いる変数名を変えて実験を行う（例： $A=1+2, A=$ ? で学習を行い，その後 $\alpha=1+2, \alpha=$ ? を解くことができるかを評価する）.

## 3.2 スキルツリー

記号推論の複雑さを（階層的に）整理した構成性に関するスキルツリーを導入し，組み合わせの複雑さが異なる問題を用いて段階的にモデルを評価することで，多段記号推論におけるニューラル言語モデルの弱点を正確に明らかにする。

具体的には，10 種類の記号推論タスクを設計する. 各設定の概要と設定間の階層的な関係を図 2 のスキルツリーに示す. 各頂点が複雑さの異なるタスク設定に対応し，各辺が階層的な複雑さの増加を表す. 各設定のデータについては，図 2 に記述された例題と同じ式の形式で問題を作成しており，変数 (A，B など) と数字 (1，2など) のみ無作為に変更してデータセットを作成する（詳細は Appendix C を
表 1 それぞれの設定における正解率を示している. “task” の行は各設定におけるドメイン (学習 $\rightarrow$ 評価)を表している。それぞれのタスク設定はスキルツリー (図 2) の値に対応している. “type” の行はそれぞれの設定において評価の対象としている構成性の種類 (“sys.” = 体系性 “prod." = 生産性, “subst." = 代入可能性) を表している.

参照）。いずれも，一連の記号推論の後に問われた変数に格納された数值を出力する問題である.

## 4 実験

## 4.1 実験設定

学習とテストの設定の組み合わせを適切に選択することにより（例えば，図 2 のタスク $1 ， 2$ を学習ドメイン，4を評価ドメイン)，モデルの構成的な汎化能力を多面的に評価した。例えば，タスク 1 $(A=1+2, A=?)$ と $2(A=1, B=2, B=$ ? )を学習データ, タスク $4(A=1+2, B=2+3, B=$ ? を評価データとして, 演算操作 $(a+b)$ と参照操作 ( $A=c, B=d, B=$ ?) に対してモデルがどれだけ汎化しているのかを評価できる。

形式的には, $\mathscr{D}_{\text {train }}=\left.\{d_{\text {train1 }}, \cdots d_{\text {traink }}\right.\}$ と $d_{\text {test }}$ がそれぞれ学習ドメイン集合と評価ドメインを表すものとする.ここで，「ドメイン」とは，スキルツリー (図 2) の特定の頂点に相当する.

学習設定: 学習用ドメイン $d_{\text {train }}$ の学習データと, 各学習ドメインの問題を解くのに要する基本演算 (代入, 算術演算, 参照) によって構成された学習デー
タの和集合を用いてモデルを学習する． 5 エポック続けて検証データセットにおける正解率が上がらない，または正解率が $100 \%$ に到達した時点で学習を停止する.

評価設定: テストドメイン $d_{\mathrm{test}}$ のテストデータに対する正解率を計算する．ここでは，学習の効率を測るために, (i) ゼロショット正解率 (ZA) と (ii) 加重平均正解率 (WA) という 2 つの指標を用いた [9]. WA の測定では，テストドメイン $d_{\text {test }}$ の学習データを用いてモデルを追加で学習し，モデルのパラメータを更新する度に検証データにおける正解率を測定し加重平均を算出した（詳細は Appendix A を参照のこと).

モデルと事前学習: 事前学習済みの系列変換モデルとして広く使われている T5 [10] の 3 種類のサイズ （base，large，xl）を使用した. 実験は事前学習したパラメータを初期値として行った。これは，最終的な目標は自然言語上での数量推移論 (記号推論) 問題を解くことにあるためである.

## 4.2 実験結果

表 1 の 1 列目に示した 9 つの学習ドメインと評価ドメインの組み合わせについて実験を行った（学習ドメイン $\rightarrow$ 評価ドメイン)．6つの設定については体系性に対して，残り 3 つの設定は生産性に対する汎化性能を評価した. さらに，各設定において，訓練ドメインで用いた変数名とは異なる変数名（例えば，Aの代わりに）を用いた評価データを用いて，代入可能性に対する汎化性能の評価を行った.

表 1 に実験結果を示した. 実験の結果以下の 4 つの傾向が見らた.

・体系性に対する汎化は生産性に対する汎化に比べて困難であった。
- 単純な基本演算の組み合わせ (例: $1,2 \rightarrow 4$ ) であっても，少数の学習データからの汎化は困難であった.

・代入可能性に対する汎化は達成できた.

・モデルサイズによって性能に (特に ZA について) 大きな差は見られなかった.

また，意味解析の文脈でニューラルモデルが体系性に対する汎化能力を欠くことが示唆されていた [11]. 今回の結果は算術多段推論の文脈における, この知見を裏付けるものでもある。ここで，体系性に対する汎化を検証する設定 $(2,3 \rightarrow 5)$ に着目し，

“String” は算術演算の代わりに文字列演算を用いた場合の結果である. “Step” は途中の推論過程を生成させた場合の結果である.

ニューラルモデルがなぜこの設定において苦戦するのかを理解するため，この設定における複雑さを分解し，追加のモデルの性能の分析を行った.

体系性に対する汎化の難しさは算術演算に起因するのか? 四則演算を文字列演算 (詳細は Appendix C を参照のこと) に置き換え，その他は同様の設定で実験を行った. 算術演算と文字列演算の違いは，文字列演算は入力系列の要素をコピーするだけで実現できるのに対し（例：12+34=1234），算術演算（例：1+2=3） はモデルの内部に格納されている算術知識にアクセスする必要がある点である.

実験の結果，モデルサイズが大きい場合には，文字列演算では体系性の弱点を克服する傾向が見られた. (例：x-large モデルでのゼロショット精度で $86.9 \%$ ).このことから，入力には示されていない推論中に生成される中間情報へのアクセスが，体系性に対する汎化の難しさの要因となっていると考えられる。

## 途中の推論過程を見せることに効果はあるのか?先行研究において, 途中の推論過程をモデルに出力 させることで，ニューラルモデルの多段推論能力が 向上することが示唆されている $[12,13]$. 同様に途中の推論過程を明示的に生成させることで，先の分析で明らかとなった体系性に対する汎化の難しさが 緩和されるかを検証した. 具体的には，学習 (事前学習とWAを測定するための学習）時に途中の推論過程 $(A=1+2, B=2+3, C=4+5, B=? ; B=2+3, B=5)$ を出力す るようにモデルを学習させた. 正解率は，途中の推論過程を含む出力が完全に一致する割合とした. 実験の結果，途中の推論過程の生成による大きな性能向上は見られなかった（表 2). このことから，少 なくともこのような統制された実験環境において は，途中の推論過程を生成させる手法の効果は限定的であることが明らかとなった。

## 5 関連研究

ニューラルモデルの構成的な汎化能力の解析と算術多段推論問題については，個別に研究がなされてきた. 本研究はこれら 2 つの研究の方向性を統合したものである. ニューラルモデルの構成的な汎化能力については, SCAN [3], COGS [11], CFQ [14] などのデータセットを用いて分析が行われてきた。これらは主に意味解析の文脈での構成性に着目しており，記号推論における構成的な汎化能力には着目していない。算術推論に関しては，DROP [7]などのべンチマークを用いてニューラルモデルの能力を分析することが一般的である。しかし，最近このようなデータセットにはタスクを解くための表面的な手がかりがあることが報告されている [15]. そのため, ニューラルモデルが実際にどの程度の算術推論を実現しているか不明であった．統制されたデータセッ卜を用いた本研究は，算術推論でのニューラルモデルの弱点を正確に把握することに寄与している.

## 6 おわりに

本研究では，構成的な汎化能力という切り口で，近年のニューラル言語モデルの算術多段推論能力の分析を行った. ニューラルモデルの能力を体系的に分析するため，多段記号推論データセットの複雑さを整理したスキルツリーを定義した. 実験の結果， ニューラルモデルは体系性に対する汎化が弱点であり，単純な構成要素を組み合わせに対する汎化であっても達成できないことが明らかとなった。また，追加の実験を通して，入力系列に書かれていないモデルに格納された知識にアクセスする際に，体系性に対する汎化が特に困難となることが明らかとなった. さらに，途中の推論過程も生成させるように学習したモデルであっても，体系性を捉えることは困難であった。

今後は，自然言語上での記号推論実現を目指す。 そのために，本研究で明らかとなったような言語モデルに不足した記号推論能力を，自由に設計できる特徴がある形式言語で事前学習を行うことで獲得させることを目指す. その後，獲得した能力を後段の自然言語タスクを解くために転移させるという枠組みを想定している.

## 謝辞

本研究は JST CREST JPMJCR20D2 及び JSPS 科研

費 JP22H00524，21K21343 の助成を受けたものです. また，本研究を進めるにあたり多くの協力を賜りました Tohoku NLP グループの皆様に感謝申し上げます。

## 参考文献

[1] Gary F Marcus. The algebraic mind: Integrating connectionism and cognitive science. MIT press, 2003.

[2] A Garcez and L Lamb. Neurosymbolic AI: The 3rd wave. CoRR, 2020.

[3] Brenden M. Lake and Marco Baroni. Generalization without systematicity: On the compositional skills of sequenceto-sequence recurrent networks. In ICML, 2018.

[4] Peter Clark, Oyvind Tafjord, and Kyle Richardson. Transformers as soft reasoners over language. In Christian Bessiere, editor, IJCAI, pp. 3882-3890. International Joint Conferences on Artificial Intelligence Organization, 7 2020. Main track.

[5] Jing Qian, Hong Wang, Zekun Li, Shiyang Li, and Xifeng Yan. Limitations of language models in arithmetic and symbolic induction. CoRR, Vol. abs/2208.05051, , 2022.

[6] Gustavo Tondello and Lennart Nacke. A pilot study of a digital skill tree in gameful education. 102019.

[7] Dheeru Dua, Yizhong Wang, Pradeep Dasigi, Gabriel Stanovsky, Sameer Singh, and Matt Gardner. DROP: A reading comprehension benchmark requiring discrete reasoning over paragraphs. In NAACL, pp. 2368-2378, Minneapolis, Minnesota, June 2019. ACL.

[8] Dieuwke Hupkes, Verna Dankers, Mathijs Mul, and Elia Bruni. Compositionality decomposed: How do neural networks generalise? (extended abstract). In Christian Bessiere, editor, IJCAI, pp. 5065-5069. IJCAI, 72020. Journal track.

[9] Alon Talmor, Yanai Elazar, Yoav Goldberg, and Jonathan Berant. oLMpics-On What Language Model Pre-training Captures. TACL, Vol. 8, pp. 743-758, 122020.

[10] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, and Peter J. Liu. Exploring the limits of transfer learning with a unified text-to-text transformer. JMLR, Vol. 21, No. 140, pp. 1-67, 2020.

[11] Najoung Kim and Tal Linzen. COGS: A compositional generalization challenge based on semantic interpretation. In EMNLP, pp. 9087-9105, Online, November 2020. Association for Computational Linguistics.

[12] Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Ed H. Chi, Quoc Le, and Denny Zhou. Chain of thought prompting elicits reasoning in large language models. CoRR, Vol. abs/2201.11903, , 2022.

[13] Maxwell Nye, Anders Johan Andreassen, Guy Gur-Ari, Henryk Michalewski, Jacob Austin, David Bieber, David Dohan, Aitor Lewkowycz, Maarten Bosma, David Luan, Charles Sutton, and Augustus Odena. Show your work:
Scratchpads for intermediate computation with language models. In DL4C, 2022.

[14] Daniel Keysers, Nathanael Schärli, Nathan Scales, Hylke Buisman, Daniel Furrer, Sergii Kashubin, Nikola Momchev, Danila Sinopalnikov, Lukasz Stafiniak, Tibor Tihon, Dmitry Tsarkov, Xiao Wang, Marc van Zee, and Olivier Bousquet. Measuring compositional generalization: A comprehensive method on realistic data. In ICLR, 2020.

[15] Hadeel Al-Negheimish, Pranava Madhyastha, and Alessandra Russo. Numerical reasoning in machine reading comprehension tasks: are we there yet? In EMNLP, pp. 9643-9649, Online and Punta Cana, Dominican Republic, November 2021. Association for Computational Linguistics.

[16] Noam Shazeer and Mitchell Stern. Adafactor: Adaptive learning rates with sublinear memory cost. CoRR, Vol. abs/1804.04235, , 2018.
表 3 文字列演算の詳細.

 & $7873-73=87$ \\

## A WA の計算方法

4 章で述べたように，学習曲線を定量的に評価するために, 加重平均精度 (WA)を導入した. この指標は, 初期の学習ステップにおける正解率に高い重みを与えることで，汎化の効率（容易さ）を定量的に評価するものである. 具体的には, 以下の式で重み $w_{i}$ （i はモデルの更新回数）を算出した.

$
\begin{aligned}
w_{i} & =-a i+w_{\max } \\
a & =\frac{\left(w_{\max }-w_{\min }\right)}{N} \\
w_{\min } & =\frac{2}{(N+1)(\alpha+1)} \\
w_{\max } & =\alpha w_{\min }
\end{aligned}
$

ここで， $N$ はモデルの更新回数， $\alpha$ は初期の正解率にどれだけ重み付けするかを決めるハイパーパラメータである.この時, $\sum_{i=0}^{N} w_{i}=1$ となる. 本論文における，全ての実験では $\alpha=1000, N=100$ とした.

## B 学習設定

事前学習済みモデルとして T5 [10] (v1.1)を使用した ${ }^{1)}$. モデルのパラメータ数は base, large, x-large それぞれ， 2.5 億， 8 億， 30 億である.

T5 のファインチューニングの設定に従い，最適化器には Adafactor [16] を使用し, 学習率のスケジューラは利用していない. 学習率は事前学習時は $1.0 \times 10^{-5}$, ファインチューニング時はで $5.0 \times 10^{-5}$, バッチサイズは 32 とした. 各モデルの学習は, NVIDIA A6000(48GB), A100(80GB) で行った.

事前学習: 事前学習を行うため, 各ドメイン (基本演算) ごとに 100,000 事例のデータを用意し, それらを結合したデータによってモデルの学習を行った。ただし, 生産性に対する汎化能力の評価の際には評価ドメインの数式よりも短い (構成要素が 1 つ

1) https://huggingface.co/docs/transformers/model_doc/ t5v1. 1少ない) データも含めて事前学習を行った．事前学習は検証データセットにおける正解率が $100 \%$ となるか， 5 epoch の間正解率の改善が見られなくなるまで続けた。

事前学習の結果，全ての設定において事前学習に用いたデータセットと同じドメインの評価データセット (2,000 事例) において，少なくとも $99.5 \%$ の正解率に達した.

ファインチューニング: ファインチューニング時には，各ドメインごとに 3,200 事例のデータを用意した.これは WAを計算するために，モデルを 100 回更新する時に要するデータ数である. (バッチサイズ $32 \times$ モデルのアップデート回数 100)

## C データセットの詳細

各設定において，数式に登場する数値は 0 から 99 までである. また，式の順番は任意である（必ずしも最初の式が先に計算されるべきとは限らない) ことに注意されたい. 算術演算の演算子としては, 算術の加算 + , 減算-, 右の数のうち大きい方を返す max,左右の数のうち小さい方を返す $\min の 4$ 種類としている. また, 文字列演算の詳細については表 3 に示す.


# 根拠を説明可能な質問応答システムのための 日本語マルチホップ QA データセット構築

石井愛 ${ }^{1}$ 井之上直也 ${ }^{1,2}$ 関根聡 ${ }^{1}$
${ }^{1}$ 理化学研究所 AIP ${ }^{2}$ 北陸先端科学技術大学院大学
\{ai. ishii, satoshi. sekine\}@riken.jp naoya-i@jaist. ac.jp

## 概要

推論の根拠を説明可能な質問応答システムの実現のためには，知識データを適切に活用するスキルを開発するための根拠情報を含むデータセットが必要だと考える. 本稿では，クラウドソーシングにより新たに生成する 3 つ組を用いた日本語のマルチホップ QA データセット構築の枠組みを提案し, 初期版のデータセットを公開する。調查分析結果から, 多様な表現の質問に応じて, 知識データの連鎖や数值比較等の様々なスキルが要求されることが示された.

## 1 はじめに

答えを導き出すために複数の情報や知識を用いて推論し, その推論の根拠を説明できる質問応答システムの実現には，構造化された知識を連鎖させながら適切に活用するスキルが重要となると考える. そのようなスキルに関連する既存のデータセットとしては, HotPotQA[1], R4C[2], 2WikiMultiHopQA[3]等の推論の根拠となる情報を含むマルチホップ $\mathrm{QA}$ タスクがある． R4C は HotPotQA をベースとして，推論過程を 3 つ組の組み合わせで付与したデータセットである．R4C の3つ組は HotPotQA の文単位の根拠から単純に 3 つ組を抽出することでは得られず,推論に関連した箇所を適切に出力することで高い評価を得られることが示されている[2].

構造化された知識としては, Wikidata[4], 森羅プロジェクト[5]の Wikipedia 構造化データ[6]等, 3 短組形式で利用可能な知識データがある. これらの知識を活用するスキルを開発するためのデータセットとしては, 2WikiMultiHopQA のように知識データの 3 つ組を用いて質問を生成することが考えられる.

図 1 構成質問の例

ただし，その質問を解く際に用いる知識データが質問作成時に用いたものと同一の場合, その知識デー タを活用するスキルはうまく開発されない可能性がある. また, 既存の知識データでは計算機が利用しやすいよう，3つ組の関係の記述は統一されている. そのため，作成された質問にバリエーションが生まれにくいと考える.

そこで本稿では, クラウドソーシングにより新たな 3 つ組を生成し，それをべースに質問，回答，および根拠の 3 つ組のセットを作成するデータセット構築の枠組みを提案する. クラウドソーシングによる新たな 3 つ組を用いることで，用いる知識データに依らず知識データの活用スキルを開発でき,かつ,多様で自然な表現が含まれるデータセットを生成することを狙う。本稿の貢献は以下のとおりである.

・クラウドソーシングに基づく3つ組を用いたマルチホップ QA データセット構築の枠組みを提案する。

・ データセットの初期版および, データセット構築の枠組みを公開するi.

- 生成したデータセットの定量的・定性的な分析結果を示す.

## 2 データセットの概要

## 2.1 データセットの目的

本データセットでは，マルチホップ推論が必要な質問 $\mathrm{Q}$ と回答 $\mathrm{A}$ および，その根拠を 3 つ組のセッ卜として提供する. 質問 $\mathrm{Q}$ から回答 $\mathrm{A}$ までの推論経路を導出するタスクにより, 知識データを適切に活用するスキルが開発されることを目的とする.

## 2.2 問題の種類

2 つの 3 つ組を前提として，根拠の説明を求める質問は，3つ組のどこか 1 つが共通しているか，並行しているかの 2 パターンと考えられる. 本データセットでは，共通するエンティティをブリッジエンティティとする(1)構成問題, 2 つの 3 つ組を比較する(2)比較問題の 2 種類の問題を作成する.

(1) 構成問題 2 つのページから生成された 2 つの 3 つ組 $(e, r 1, e 1)$ と $(e 1, r 2, e 2)$ を中心, $e 1$ をブリッジエンティティとして $, e, r 1$, および 2 を用いて質問， $e 2$ を用いて回答を作成する. ブリッジェンティティは, 図 1 の “ルーブル美術館”に相当する.

(2) 比較問題 2 つのページに内在する 3 つ組 $(e 1, r 1, e 2)$ と $(e 3, r 2, e 4)$ の $e 2$ と $e 4$ を比較する質問を作成する. 生年月日（例 $: e 1$ と $e 3$ どちらが先に生まれたか? ）や設立年, 所在地や出身国（例 : $e 1$ と $e 3$ の出身国は同じか?）等の情報から質問を作成する.

## 3 データセットの構築

本データセットは，(1)構成問題のための 3 つ組の生成, (2)3つ組を用いた構成問題の生成, (3)比較問題の生成の 3 つのクラウドソーシングタスクにより生成する. 対象とするぺージが人物や企業に関するページに偏らないよう，拡張固有表現[7](ENE) が Wikipedia ページに付与された分類データ[8]を使用し分布を調整する.

## 3.1 クラウドソーシングタスク

(1)構成問題のための 3 つ組の生成まず, 人気

体とほぼ同等となるように対象とするぺージ群を選定する。その際, 固有表現のハイパーリンクが含まれにくい概念の説明のページや，データセットにふさわしくないと考えられるぺージが含まれるカテゴリを手作業で確認し除外した. クラウドソーシングでは，ページ右側の表（Infobox）および冒頭部分

(Abstract) のハイパーリンクを対象に，ページタイトルを Subject, リンク先を Object とする 3 つ組の関係を記述するタスクを実施する。関係記述用画面（図 2）では，クラウドワーカーが関係を記述するボックスを選択すると, 右側の Web ページ部分の対象箇所がハイライトされる.

図 23 つ組の関係記述画面

(2) 3 つ組を用いた構成問題の生成起点とするページの 3 つ組に含まれるブリッジェンティティの候補について, ENE の分布が調整されるよう重みづけしてランダムに選定し，ブリッジェンティティでつながる 2 つの 3 つ組のぺアを生成する。その際， Infobox に含まれる情報のほうが問題生成に使われやすいという事前の調査結果から，Abstract に含まれブリッジェンティティが 6 割以上選択されるよう

図 3 構成質問生成時の根拠選択画面

調整する.クラウトトソーシングタスクでは，ブリッジエンティティでつながる 2 つのページの 3 つ組をぞれぞれ表で表示し（図 3），クラウドワーカーは 2 つの表の情報を用いて問題を作成し, 使用した 3 つ組を各表から選択して根拠のセットとする.

(3)比較問題の生成まず, 対象のページ群を Wikipedia ページに付与されているカテゴリ情報でグルーピングし， ランダムにグループを選定する。 そのグループ内からランダムに 2 ページのぺアを作成する。 その際，ENE の分布が調整されるよう重みづけをする. クラウドソーシングタスクでは，クラウドワーカーは左右に表示された 2 つぺージ（図 4）を見て，質問と答えを作成し，その際使用した情報を 3 つ組の形となるよう入力する. なお, 左右に 2 つのページを表示する画面では, Infoboxを表示するかどうかを制御し，ランダムに 4 割程度 Infobox が表示されるようにする.

図 42 2のページの比較画面

## 3.2 データセットの統計

以下に作成したデータセットの統計を示す. クラウドソーシングは Lancersiiiのタスク形式で実施し,問題として成立しないセットを簡易的な自動チェックおよび手作業にて構成問題 127 件, 比較問題 378 件除外した。

表 1 データセットの統計

## 3.3 データセットのサンプル

データセットのサンプルとして, 付録表 4 に構成問題の例，付録表 5 に比較問題の例を示す.

## 4 分析

作成したデータセットについての調査, 分析結果を示す.

## 4. 1 問題の分野の多様性

問題作成時に対象とする Wikipedia ページの ENE カテゴリが Wikipedia 全体の分布に近くなるよう調整した結果, 表 4 の分布となった. 分布は多少前後するものの，人気の高いページに非常に多く含まれる人名カテゴリへの偏りはある程度避けられている. 構成問題の起点ページ，ブリッジェンティティのページ，比較問題のページの ENE カテゴリの種類数はそれぞれ，46，56，58 と幅広い分野の質問が作成されたといえる. 表 4 の CONCEPT 等, 事前調查によりブリッジエンティティとなるような固有名詞が含まれにくいカテゴリや，「○○の一覧」等のまとめぺージが多く含まれる IGNORED, R18 の制限に相当するようなページが含まれるカテゴリはあらかじめ除外したため $0 \%$ となっている.

表 2 ENE カテゴリの分布（上位 10 カテゴリ）

\cline { 3 - 4 } & ia 全体 & 起点 & ブリッジ & 題 \\

## 4. 2 問題を解くために要求されるスキル

付録表 4 に示した構成問題は，クラウドソーシングで作成した 3 つ組を用いるため, その 3 つ組の関係がどのように表現されているかに質問の自然さが左右されている.

付録表 5 に示した比較問題は $1 \sim 4$ が数値を比較する問題である. 数値の意味をとらえた上で比較や計算するスキルが要求される。 3 は生年月日を用いて初土俵時の年齢を計算した上で比較する必要がある. 4 は個数を数える問題であり，「豊富なのはどちら」という質問に対し, 個数が多いほうを答える必要がある. 5, 6 は数値以外を比較する問題であり，5 のように片方が持つ属性値について質問し， それを持つのはどちらかを問う問題，または 6 のように両方の属性値が合致しているかどうかを問う問題がある. 6 のように属性によらず「石川県」が含まれているかを問う，「ゆかりのある」という表現の意味をとらえるスキルを要求する問題も作成された. 数値を比較する問題の割合は $34 \%$ であった. これは作成開始当初生年月日を比較する問題が多く作成されたため, 数値の比較以外の問題を作成するインストラクションをしたことによる.

## 4. 3 根拠の 3 つ組の特徴

Wikidata と比較した特徵クラウドソーシングで作成された 3 つ組の一部を Wikidata と比較した結果, 本研究の 3 つ組のほうが関係の数は多い傾向があった. Wikipedia は関係の記述が統一されているため, 汎用的である. 対して本研究の 3 つ組は, 表記ゆれが多く質問のバリエーションを高める用途には適していると考える. ただし, 低品質な記述も散見されるため, 改善方法の検討が必要である.

3 つ組抽出元のページ内位置表 3 に問題の根拠として使用された 3 つ組のページ内での出現位置を示す. 構成質問のブリッジェンティティはほぼ設定どおりの割合であり, 比較問題ではクラウドワーカー に見せる画面で比較問題に使用しやすいInfobox を表示するかどうかをランダムにしている効果から， Abstract とそれ以外の本文をあわせた割合と比較して Infobox が 5\%程度少ない結果となった. Both は Infobox と Abstract 両方に含まれる場合の割合であり, other は 3 つ組の Object がページ内の表現と完全一致しない割合である。比較問題の3つ組はクラウドワーカーがページ内の該当箇所をコピーして
Object エンティティとし, 関係を自由記述するようインストラクションに記載しているが， ゚゚ージ内の不要な情報を削除したケースや表 5 の 5 例のように，ページ内で存在しない情報を3つ組にしたケー スが含まれる。

表 3 使用された 3 つ組の出現箇所

## 5 おわりに

知識データを適切に活用するスキルの開発を目的とした，推論の根拠を 3 つ組のセットで含む日本語のマルチホップ QA データセット構築の枠組みを提案した. 調査分析結果から, 幅広いカテゴリの多様な表現の質問が含まれること, その多様な表現の意味を捉えた上での知識データの連鎖や数値比較等,様々なスキルが要求されることを示した。構築は継続中であるがこれまで構築した初期版となるデータセット，および構築のための枠組みとなるスクリプ卜等を

https://github.com/aiishii/jpn_explainable_qa_dataset にて公開予定である。

今後の課題として, 2WikiMultiHopQA にて提案されているような構成問題と比較問題を組み合わせたバリエーションや，2つの 3つ組から新たな関係を導いて用いる問題の追加があげられる。また，デ一タセットの規模を大きくしていく上で品質を確保する手段についても今後検討する予定である.

## 謝辞

本研究は JSPS 科研費 JP20269633 および

19K20332 の助成を受けたものです.

## 参考文献

[1] Z. Yang et al., "HotpotQA: A Dataset for Diverse, Explainable Multi-hop Question Answering," EMNLP 2018, pp. 2369-2380, 2018, doi: 10.18653/V1/D181259 .

[2] N. Inoue, P. Stenetorp, and K. Inui, "R4C: A Benchmark for Evaluating RC Systems to Get the Right Answer for the Right Reason," ACL 2020, pp. 6740-

6750, Jul. 2020, doi:

10. 18653/V1/2020. ACL-MAIN. 602.

［8］関根聡，安藤まや，小林暁雄， and 隅田飛鳥，“拡張固有表現定義の更新と日本語 Wikipedia 分類データ 2019,” 言語処理学会第26回年次大会, 2020.

## A 付録

表 4 構成問題の例

 & 長野県 &  \\

## 表 5 比較問題の例

 & NO & (奈良市, 人口, 約 35 万 2000 人),(ドバイ, 人口, 約 331 万人) \\


# 記憶装置付きニューラルネットワークモデルによる構造化知識 と演算処理を用いた質問応答

村山友理 小林一郎
お茶の水女子大学
\{murayama.yuri,koba\}@is.ocha.ac.jp

## 概要

3 つの DNC モデル，vanilla DNC, rsDNC, DNC-DMS に知識と演算のためのアーキテクチャを新たに組み入れ，構造化知識に対する演算処理を含んだ質問文について正しい答えを生成する能力を向上させることを目指す。rsDNC, DNC-DMS をべースとした提案モデルはそれぞれ GEO データセットにおいて平均 top-1 accuracy，平均 top-10 accuracy で最も良い結果を達成した。さらに，rsDNCをべースとした提案手法は拡張した GEO データセットにおいて平均 top-1 accuracy と平均 top-10 accuracy の両方で他のモデルを上回った。

## 1 はじめに

近年, Transformer [1] などのディープニューラルネットワークはコンピュータビジョンや自然言語処理といったさまざまなタスクの複雑なパターンマッチングにおいて顕著な発展を遂げてきた. しかし， Transformer には長い文脈情報を固定長の系列に工ンコードするせいで context fragmentation problem [2] があり，この問題を解くために過去の情報をメモリ内にキャッシュしておくさまざまな手法 $[2,3,4]$ が提案されてきたが，Transformer をべースとしたモデルは，グラフや木などのデータ構造の表現や変数の使用，長い系列に対する表現の操作といった抽象的な処理を行う能力には限界があるとされてきた. Neural Turing Machine [5] や Differentiable Neural Computer (DNC) [6] は外部に読み書き可能なメモリを持つことで，構造化データ上のアルゴリズムタスクを解き，変数の表現や，長い系列の学習を可能にした. 本研究では，DNC と，さらにDNC を改良した rsDNC [7] と DNC-DMS [8] に対して，質問応答夕スクにおいて重要な要素である知識利用と演算処理を新たに組み入れることを試み，構造化知識に対す
る演算処理を含んだ質問文について正しい答えを生成する能力を向上させることを目指す.

## 2 関連研究

Differentiable Neural Computer (DNC) [6] は外部にメモリ行列 $M \in \mathbb{R}^{N \times W}$ を持つニューラルネットワー クである. メモリ行列 $M$ の $N$ 個の番地に対し，どの番地について主に読み出す，または書き込むかを表す重みを定義するのに attention mechanism が用いられる。

読み出し操作では, read vector $\boldsymbol{r}$ はメモリ $M$ に read weighting $\boldsymbol{w}^{r}$ をかけた，メモリ番地に対する重み付き和として計算される：

$
\boldsymbol{r}=\sum_{i=1}^{N} M[i, \cdot] \boldsymbol{w}^{r}[i]
$

ここで， ‘’は $j=1, \ldots, W$ を表す。

書き込み操作では，メモリ $M$ は write weighting $\boldsymbol{w}^{w}$ を用いてまず erase vector $\boldsymbol{e}$ により不要な番地が消去され，write vector $v$ を足すことで更新される：

$
M[i, j] \leftarrow M[i, j]\left(1-\boldsymbol{w}^{w}[i] \boldsymbol{e}[j]\right)+\boldsymbol{w}^{w}[i] \boldsymbol{v}[j]
$

重みは内容に基づく番地付け，一時的なメモリのリンク付け，動的メモリ割り当て，の 3 つの attention mechanism によって定義される。DNC を改良したモデルとして，QA タスクに特化した robust and scalable DNC (rsDNC) [7] や DNC に対して 3 つの改良 (i.e. de-allocation mechanisms, masked content based addressing, sharpness enhancement)を行なった DNC-DMS [8] などが提案されている.

## 3 提案手法

3 つのモデル，DNC [6], rsDNC [7], DNC-DMS [8] に新たに構造化知識を保存するためのメモリアー キテクチャと，単純な算術演算と論理演算を行うためのプロセッサアーキテクチャを追加する. 図 1 は

図 1 知識メモリとプロセッサを持つ提案モデルの全体図.

DNC に基づく知識メモリとプロセッサを持つ提案モデルの全体図を示す. 各タイムステップ $\mathrm{t}$ で行う処理は以下の通りである：

1. コントローラ $(\mathrm{RNN})$ は大力 $\boldsymbol{x}_{t}$ と, 前タイムステップで文脈メモリ $M_{t-1}^{c} \in \mathbb{R}^{N \times W}$ から読み出した R 個のベクトルのセット $\boldsymbol{r}_{t-1}^{c}=$ $\left[\boldsymbol{r}_{t-1}^{c, 1} ; \ldots ; \boldsymbol{r}_{t-1}^{c, R}\right]\left(\boldsymbol{r}_{t-1}^{c}\right.$ は $\boldsymbol{r}_{t-1}^{c, 1}, \ldots, \boldsymbol{r}_{t-1}^{c, R}$ の結合) に加えて，前タイムステップで知識メモリ $M_{t-1}^{k} \in \mathbb{R}^{N \times W}$ から読み出した $\mathrm{R}$ 個のベクトルのセット $\boldsymbol{r}_{t-1}^{k}=\left[\boldsymbol{r}_{t-1}^{k, 1} ; \ldots ; \boldsymbol{r}_{t-1}^{k, R}\right]$, そして前タイムステップのプロセッサの演算結果のベクトル $v_{t-1}$ を受け取る。それから隠れべクトル $h_{t}$ を出力する.
2. $\boldsymbol{h}_{t}$ の線形変換により, 出力 $\boldsymbol{v}_{t}=W_{y} \boldsymbol{h}_{t}$ と, 現夕イムステップにおける文脈メモリを制御するためのパラメータを格納したベクトル $\xi_{t}=W_{\xi} \boldsymbol{h}_{t}$,現タイムステップにおける知識メモリを制御するためのベクトル $\zeta_{t}=W_{\zeta} \boldsymbol{h}_{t}$, そして現タイムステップのプロセッサに用いられるゲートベクトル $\boldsymbol{g}_{t}=W_{g} \boldsymbol{h}_{t}$ を得る.
3. $\xi_{t}$ によって文脈メモリへの書き込みが行われ, メモリの状態が更新される. 知識メモリへの書き込みは行われない。

4. プロセッサでの演算処理は $g_{t}$ と, 現タイムステップで文脈メモリから読み出したべクトルを結合した $\boldsymbol{r}_{t}^{c}$, 現タイムステップで知識メモリから読み出したべクトルを結合した $\boldsymbol{r}_{t}^{k}$ を用いて行われる。

5. 最後に， $\boldsymbol{r}_{t}^{c}$ と $W_{r}^{c}$ をかけて得られるべクトルと, $\boldsymbol{r}_{t}^{k}$ と $W_{r}^{k}$ をかけて得られるべクトル，及び現タイムステップのプロセッサからのベクトル $\boldsymbol{v}_{t}$ と $W_{v}$ をかけて得られるべクトルに $\boldsymbol{v}_{t}$ を足し，出力 $\boldsymbol{y}_{t}$ を計算する.

$
\boldsymbol{y}_{t}=\boldsymbol{v}_{t}+W_{r}^{c} \boldsymbol{r}_{t}^{c}+W_{r}^{k} \boldsymbol{r}_{t}^{k}+W_{v} \boldsymbol{v}_{t}
$

read vector $\boldsymbol{r}_{t}^{c}$ と $\boldsymbol{r}_{t}^{k}$, value vector $\boldsymbol{v}_{t}$ は次タイムステップの RNNへの入力に追加される.

以上の処理を繰り返すことにより，二つのメモリへの読み書き操作とプロセッサ操作を行う.

## 3.1 知識メモリ構築

知識メモリは知識ベース $(\mathrm{KB})$ を用いて構築される. KB のファクトは Resource Description Framework $(R D F)^{1)}$ 形式の三つ組 (主語, 述語, 目的語) で表現される。例えば，「日本の首都は東京である.」は三つ組 (日本，首都，東京) で表される．DNC のモデルに三つ組の内どれか 2 つを与え，残りの 1 つを返すように学習させることで KB ファクトを学習する.例えば，入力が “日本”，“首都” のとき，出力は “東京”である．モデルは KB のすべてのトリプルを用いて学習し，KB 全体を保存したメモリユニットを作成する。そして，事前学習したメモリユニットを提案モデルの知識メモリユニットとして利用する。

## 3.2 プロセッサ処理

プロセッサユニットにおいて単純な算術演算と論理演算を行うために，13 の演算を設定 ᄂ た:Max, Min, More, Less, Major_city, Major_river, Major_lake, Not, Count, Density, Sum, Context, Knowledge. 文脈义モリからの read vector $\boldsymbol{r}^{c}$ と知識メモリからの read vector $\boldsymbol{r}^{k}$ はオリジナルの語彙トークンのリスト,「文脈リスト」と「知識リスト」にそれぞれ変換される。

Superlatives : Max 演算は知識リストを受け取り，その最大値を返す. Min 演算は同様に知識リストを受け取り，その最小値を返す。

Comparatives : More 演算は文脈リストと知識リストの両方を受け取り, 知識リストの最初の数より大きい数を文脈リスト中から返す. Less 演算は同様に文脈リストと知識リストの両方を受け取り，知識リストの最初の数より小さい数を文脈リスト中から返す. Major_city，Major_river， Major_lake 演算は知識リストを受け取り，それぞれ“150,000”, “750”, “5,000”より大きい数を返す.

表 1 知識ベースの一部.

type alabama state

capital alabama montgomery

population alabama $3894.0 \mathrm{e}+3$

Negation : Not 演算は文脈リストと知識リストの両方を受け取り，文脈リストから知識リストを引いた差を返す。

Calculation : Count 演算は知識リストを受け取り，その要素数を返す. Density 演算は文脈リストと知識リストの両方を受け取り, 要素毎に知識リストで割られた文脈リストを返す. Sum 演算は知識リストを受け取り，その要素の和を返す。

No operation : Context 演算は文脈リストを受け取り，それ自身を返し，Knowledge 演算は知識リストを受け取り，同様にそれ自身を返す。これらの 2 つの演算は上記の演算がどれも適当でない場合のために用意した。

13 の演算の出力は gate vector $\boldsymbol{g}$ のソフトマックス出力と結合し， value vector $\boldsymbol{v}$ を構築する。

## 4 実験

## 4.1 データセット

GEO データセット $[9]^{2}$ はアメリカの地理に関する 880 の質問文と Prolog 形式のファクトのデータベースを含む，質問文の語彙サイズは 280 である.質問文は superlatives, comparatives, negation や count, density, sum といった calculation を含む. GEO データセットには質問文に対する答えが含まれていなかったため，答えを人手でアノテーションを行った. 答えはデータベースからの地理エンティティのリストであり，長さは 0 から 386 エンティティである. 例えば，“Which rivers flow through Alaska?” という質問は答えがなく，別の質問 “Give me the cities in the U.S. ?"は 386 エンティティというかなり多くの答えを持つ. 600 サンプルを学習に， 280 サンプルをテストに用いた.

GEO のデータベースから RDF 形式の三つ組を作成し, 表 1 に示す. 三つ組 (type， alabama， state) はalabama のtype は stateであると意味する. type リレーションに対するオブジェクトエンティティとして，5つのエンティティ：state， city, river, mountain, lakeを我々のKBに

2) https://cs.stanford.edu/ pliang/software/表 2 GEO データセットと GEO 1380 における平均 Acc@k.

追加した.この KB は地理ドメイン内の 11 リレー ション, 1,275 エンティティ, 2,250トリプルを含む. さらに, 新たな $500 \mathrm{QA}$ ペアを人手で作成し $\mathrm{GEO}$ データセットを拡張した.この拡張したデータセットを“GEO 1380” と呼ぶ. 1,000 サンプルを学習に， 380 サンプルをテストに用いた.

## 4.2 結果

表 2 に GEO データセットと GEO 1380 における全てのモデルのテスト 3 実行分の平均 top-1 accuracy (Acc@1) と top-10 accuracy (Acc@10)を示す.“+KM” と“+P” はそれぞれ提案手法である知識メモリユニット (KM) の追加，プロセッサユニット (P) の追加を表す.

GEO データセットにおいて, rsDNC+KM+P は Acc@1 で最も良い結果を達成し，DNC-DMS+KM は Acc@10で最も高いスコアを得た. GEO 1380 デー タセットでは， rsDNC+KM は他のモデルを上回った. QA タスクに特化した $\mathrm{rsDNC}$ を基にしたモデルは良い結果になる傾向がある. 提案モデルのほとんどはオリジナルのモデルより低いが，提案手法のポイントは異なるハイパーパラメータだと上回ることがあるため，アーキテクチャによるものだとは考えていない. すべてのスコアが GEO 1380 で上がったため，より大きなデータセットはモデルの精度向上に有効である.

表 3 に，GEO 1380 データセットにおける全てのモデルの各質問タイプのテスト 3 実行分の平均 Acc@10を示す.

Simple : 1Hop は “What states border Texas?” のように質問文が 1 つのリレーションを含むことを意味する. 例えば, “What states border states that border states that border states that border Texas?” は 4 つのリ
表 3 GEO 1380 データセットにおける各質問タイプの平均 Acc@10.

レーションを含むため，この例は4Hop である. 1 Hop は GEO と GEO 1380 の両方の $30 \%$ 以上を占めるため，このタイプで高いスコアを得ることが全体の良い結果につながる. 4Hop のポイントが 2Hop のポイントより高いのは，4Hop の方が 2 Hop より難しいにも関わらず奇妙に思えるかもしれないが，これは 4Hop のサンプル数が少ないせいだと考えられ， multi-hop のサンプルを拡張する必要がある.

Superlatives : Argmax は "What is the largest state?”のように質問文が “largest”, "highest”, "longest” などといった単語を含むことを意味する. Argmax と Argminにおいて, rsDNC+KM+Pが最も高いスコアを得た. superlativesの他のタイプでは, rsDNC+KM+P はトップスコアに届かなかったが，それでもべストなモデルと比べて遜色ない.

Comparatives : このタイプは “What states high point are higher than that of Colorado?” のように 3 つの表現：More, Less, Major を扱う. ホップ数が増えると，スコアは下がった.

Negation : Not は “What state has no rivers?” のように質問文が否定表現を含むことを意味する. 我々の rsDNC+KM は他のモデルを上回った.

Calculation : このタイプは "How many states are in the USA?” のように 3 つの演算: Count, Density, Sumを扱う. Count とSumのポイントは他のタイプ
と比べて比較的高い一方で，Density の結果はとても低い。

## 4.3 課題

質問タイプ数のバランスを取るためにデータセットをより拡張する必要がある。また，GEO データセットのサイズは僅か 880 であり，拡張を行なってもまだ 1380 であり，ニューラルネットワークの学習には小さすぎるため，WikiTableQuestions [10]のような大規模データセットを用いて学習することが望まれる。

## 5 おわりに

3 つの DNC モデル，vanilla DNC, rsDNC, DNC-DMS に知識メモリとプロセッサを追加し，実験を行い，背景知識や単純な算術演算と論理演算を必要とする質問応答タスクに対して効果を分析した. 提案した rsDNC+KM+P と DNC-DMS+KM はそれぞれ GEO データセットにおいて平均 Acc@1 と平均 Acc@10 で最も良い結果を達成した. さらに，提案モデル rsDNC+KM は GEO 1380 データセットにおいて平均 Acc@1 と平均 Acc@10 の両方で他のモデルを上回った. 今後の課題では，提案モデルに順次実行，条件分岐，反復といった制御命令を処理するアーキテクチャを加えて改良したい。

## 謝辞

本研究は JSPS 科研費 JP20J23182 の助成を受けたものです.

## 参考文献

[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, L ukasz Kaiser, and Illia Polosukhin. Attention is all you need. In I. Guyon, U. Von Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett, editors, Advances in Neural Information Processing Systems, Vol. 30. Curran Associates, Inc., 2017.

[2] Zihang Dai, Zhilin Yang, Yiming Yang, Jaime Carbonell, Quoc Le, and Ruslan Salakhutdinov. Transformer-XL: Attentive language models beyond a fixed-length context. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 2978-2988, Florence, Italy, July 2019. Association for Computational Linguistics.

[3] Jack W. Rae, Anna Potapenko, Siddhant M. Jayakumar, and Timothy P. Lillicrap. Compressive transformers for long-range sequence modelling. CoRR, Vol. abs/1911.05507, , 2019.

[4] Pedro Henrique Martins, Zita Marinho, and Andre Martins. $\infty$-former: Infinite memory transformer. In Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 5468-5485, Dublin, Ireland, May 2022. Association for Computational Linguistics.

[5] Alex Graves, Greg Wayne, and Ivo Danihelka. Neural turing machines, 2014. cite arxiv:1410.5401.

[6] Alex Graves, Greg Wayne, Malcolm Reynolds, Tim Harley, Ivo Danihelka, Agnieszka Grabska-Barwińska, Sergio Gómez Colmenarejo, Edward Grefenstette, Tiago Ramalho, John Agapiou, Adrià Puigdomènech Badia, Karl Moritz Hermann, Yori Zwols, Georg Ostrovski, Adam Cain, Helen King, Christopher Summerfield, Phil Blunsom, Koray Kavukcuoglu, and Demis Hassabis. Hybrid computing using a neural network with dynamic external memory. Nature, Vol. 538, No. 7626, pp. 471-476, October 2016.

[7] Jörg Franke, Jan Niehues, and Alex Waibel. Robust and scalable differentiable neural computer for question answering. CoRR, Vol. abs/1807.02658, , 2018.

[8] Róbert Csordás and Jürgen Schmidhuber. Improving differentiable neural computers through memory masking, de-allocation, and link distribution sharpness control. CoRR, Vol. abs/1904.10278, , 2019.

[9] John M. Zelle and Raymond J. Mooney. Learning to parse database queries using inductive logic programming. In Proceedings of the Thirteenth National Conference on Artificial Intelligence - Volume 2, AAAI'96, p. 1050-1055. AAAI Press, 1996.

[10] Panupong Pasupat and Percy Liang. Compositional semantic parsing on semi-structured tables. In Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 14701480, Beijing, China, July 2015. Association for Computational Linguistics.

[11] Sepp Hochreiter and Jürgen Schmidhuber. Long shortterm memory. Neural computation, Vol. 9, No. 8, pp. 1735-1780, 1997.

[12] T Tieleman and G Hinton. Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude. 2012.

[13] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 41714186, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[14] Mor Geva, Ankit Gupta, and Jonathan Berant. Injecting numerical reasoning skills into language models. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 946-958, Online, July 2020. Association for Computational Linguistics.

[15] M. Stone. Cross-validatory choice and assessment of statistical predictions. Roy. Stat. Soc., Vol. 36, pp. 111-147, 1974.

## A 実験設定

すべてのモデルのハイパーパラメータは主に [6] に基づく；隠れ層サイズ 256 の 1 層 LSTM [11]，バッチサイズ 2 , 学習率 $1 \times 10^{-4}$, メモリ次元 $256 \times 64$,読み出しへッド数 4 , 書き込みへッド数 1 , モメンタム 0.9 の RMSProp オプティマイザ [12]. [7] に従い rsDNC [7] のドロップアウト率は $10 \%$ とした. HuggingFace ${ }^{3)}$ bert-base-uncased model を隠れ次元 768 の BERT [13] encoder に使用した。数字は [14] を参考に 1 标ずつ分割した. 5 分割交差検証 [15] で 5 エポックずつモデルを学習させた. ランダムな初期化の下で各モデルを 3 回実行し, 平均の結果を報告する.

知識ベースを用いて知識メモリを構築するために，3つのオリジナルモデルをメモリ次元 $256 \times 64$ で， 5 分割交差検証で 10 エポックずつ学習させた.他の設定は前述の通りである. DNC, rsDNC, DNCDMS の top-10 accuracy はそれぞれ 78.90\%, 78.39\%， $79.63 \%$ だった. 知識メモリ構築に用いる事前学習モデルと提案手法に用いる学習モデルは同じ種類である。つまり，DNCを用いて学習した知識メモリが，DNCをべースとした提案モデルで使用される。

## B データセット

GEO データセット [9] と GEO 1380 の各質問タイプ数を表 4 に示す. Compound タイプは “How many states have a higher point than the highest point of the state with the largest capital city in the U.S.?”のように 4 つのタイプ: Superlatives, Comparatives, Negation, Calculationを複合した質問文を扱っており，さまざまな組み合わせが用意されている。


# FAQ チャットボットの誤りタイプの類型化と自動分類の検討

山岸駿秀 貞光九月 北岸郁雄
株式会社マネーフォワード
}

\{yamagishi.hayahide, sadamitsu.kugatsu, kitagishi.ikuo\}@moneyforward.co.jp
## 概要

FAQチャットボットを導入した組織では、回答に用いる FAQ 集を継続的に改善する必要がある。FAQ 集の改善では、FAQ 集の内容等を網羅的に把握し、正しく回答できなかった事例に対して適切な改善策を選ぶ。本研究では、このような事例の誤りタイプを類型化し、誤りタイプ別に改善策をまとめる。 また、誤りタイプの自動分類に必要な特徴量をまとめ、分類の可能性を議論する。

## 1 はじめに

企業等において、提供サービスに関するユーザの質問に自動で回答するFAQチャットボットが普及している。従来からある Web 上の静的なサポートページはサービスの詳細な理解に役立つのに対し、 チャットボットは高頻度な質問に簡潔かつ動的に返答できる。これらを図 1 のように併用することで、 ユーザ自己解決率の向上などに繋げられる。

本研究で扱うチャットボットは、想定質問文と回答文からなる $\mathrm{QA}$ ペアを事前に登録した $\mathrm{FAQ}$ 集に対し、ユーザ質問文（クエリ）の関連 $\mathrm{QA}$ ペアを検索して回答する。本研究では、各クエリにつき一問一答で回答し、文脈等は考慮しないものとする。回答文ではクエリに直接関連する説明のみを行い、詳細は文中にリンクを張ったサポートサイトの記事内で説明することもある。回答後にはクエリ 1 つと回答文 1 つのペア (応対) が応対履歴として蓄積される。 チャットボットの運用担当者は、日常的には FAQ 集の整備による応対内容の改善を行う。例えば、新機能の情報が FAQ 集にないことが原因で誤答になる事例は、新機能に関する $\mathrm{QA}$ ペアを追加すれば改善できる。FAQ 集の改善は、FAQ 検索エンジンやチャットボットのUI 等の改良と比べて、運用担当者が速やかに実施しやすいことが利点となる。

チャットボットの運用担当者が FAQ 集を改善するためには、既存の FAQ 集の内容やサービスの機

図1チャットボットとサポートサイトのイメージ図能等を網羅的に把握している必要がある。しかし、 サービスの機能が増加すると FAQ 集の内容も増加するため、全体の把握も困難になると考えられる。

本研究では、FAQチャットボットの改善活動において、各応対事例の誤りタイプを類型化し、各誤りタイプに必要な改善策をまとめる。また、誤りタイプの自動分類に必要な特徵量を整理して分類器を構築し、自動分類の実現可能性を議論する。

## 2 誤りタイプの整理

FAQ 集を拡充する技術は盛んに研究されている。例えば、過去のクエリを「印刷関連」のようにジャンル別に整理し、拡充すべきジャンルを特定する手法 $[1,2]$ や、外部情報源から新規 QA ペアを抽出する方法 $[3,4]$ などがある。本研究では、 $\mathrm{FAQ}$ 集の拡充で改善する応対事例は全体の一部であると考元、拡充が必要または不要な事例の特徴をまとめる。

チャットボットの改善方法を整理するため、応対履歴を分析して誤りタイプを調べる。チャットボットは、実験用として、BM25による FAQ 検索をもとに構築した。FAQ 検索では、クエリと、FAQ 集の $\mathrm{QA}$ ペアに含まれる想定質問のみとの類似度を測り、類似質問に対応する回答文を得る。FAQ 集は、当社のカスタマーサポートがマネーフォワードクラウド会計・確定申告1)の質問に回答できるように整備したものを使う。FAQ 集の回答文には、同サービスのサポートサイト2) の関連記事 (引用記事) のリンクを付与した。このチャットボットに、あらかじめ

1) https://biz.moneyforward.com/

2) https://biz.moneyforward.com/support/
表 1 FAQチャットボットの回答誤りタイプ

\right. &  &  &  &  \\

収集したユーザクエリ 1574 件を入力して応対履歴を得た。これらを目視で分析し、正解ではないと思われる応対 1030 件の誤りタイプを分析した。

分析を通して、各応対事例を、FAQ 集の改善により課題が解決できる改善可能系と、FAQ 集を改善しても課題が解決されない改善困難系の 2 つに大別した。さらに、改善可能系を 4 つ、改善困難系を 3 つの誤りタイプにそれぞれ細分類した。表 1 に、本研究で整理した計 7 つの誤りタイプを示す。

改善可能系: QA ペア検索失敗ユーザの課題解決に直結する $\mathrm{QA}$ ペアが $\mathrm{FAQ}$ 集内にあるが、 $\mathrm{FAQ}$ 検索の精度不足で誤答となった場合が該当する。FAQ 検索の対象となる想定質問の拡充により、類似質問

改善可能系: 引用記事のみ正解回答文には「詳細は以下の記事をご覧ください」といった形でサポートサイトの記事 (引用記事) へのリンクを含む場合がある。こうした回答文の一部では、課題解決につながる内容が回答文自体にはなく、引用記事にのみ存在する状態が発生する。表 1 の例では、メンバー追加方法に関する質問に対してメンバー追加にかかる料金を説明している。この例の引用記事の夕イトルは「「メンバー追加・管理」の使い方」であり、課題解決につながる内容を含む。しかし、ユー ザは回答文を誤りと判断するため、引用記事に解決手段の記述があっても記事が読まれにくく、課題解決に繋がらない。回答文を読むだけで課題解決につながる QA ペアを追加することが改善策となる。

改善可能系: あいまいな質問クエリに、関連 QA ペアを絞るために必要な情報が不足している場合が該当する。こうしたクエリでは、チャットボットの運用担当者でも、ユーザが望んでいる回答内容を判断できない。表 1 の例では、どの取得状態に関する質問かわからないため、電子証明書に関する回答が正しいかどうかもわからない。改善策には、限られた情報でも答えられる QA ペアの追加がある。前述

追加すればよい。またUIを改良し、ユーザから追加情報を得る手段を実装することも改善策となる。

改善可能系: 回答手段なし課題解決につながる $\mathrm{QA}$ ペアが FAQ 集になく、サポートサイトにも関連記事がないことから、チャットボットやサポートサイトに回答手段がない場合が該当する。FAQ 集は高頻度な質問への回答をまとめたものであるため、低頻度な質問や、ユーザの利用状況特有の質問などには対応できない。サポートサイトは FAQ 集よりも詳細な情報を持つ傾向にあるが、全てを網羅することは難しいため、対応できない内容もある。改善には、回答手段なしの中で高頻度な質問に関する $\mathrm{QA}$ ペアやサポートサイト記事を追加する必要がある。

改善困難系: サービス機能なし提供するサービスに、ユーザの課題解決につながる機能がない場合が該当する。表 1 の例のように、回答としては現在非対応である旨を説明することが正しい。しかし、 この回答ではユーザの課題は解決しない。根本的な改善には、サービスの改善が必要である。

改善困難系: 回答対象外 FAQ 集が対象外としている質問が該当する。表 1 の例はマネーフォワードクラウド請求書に関する質問であるが、今回用いた FAQ 集はクラウド会計・年末調整が回答対象である
表 2 各誤りタイプへの分類に必要な特徴量（検索ヒット数には各誤りタイプにおける平均を記載）

図 2 誤りタイプ分類器の概要図

ため、回答できない。対象外の質問であることを検知し、適切な窓口へ誘導することが改善策となる。

改善困難系: 質問の誤字脱字質問文に誤字脱字があることにより、適切な $\mathrm{QA}$ ペアを発見できない場合が該当する。改善策としては、応対時に誤字脱字を検出して再大力を促すことが考えられる。

## 3 誤りタイプの自動分類の検討

本節では誤りタイプ分類の自動化を検討する。本研究では FAQ 集の改善で解決する誤りタイプを優先し、改善可能系 (QAペア検索失敗、引用記事のみ正解、あいまいな質問、回答手段なし）の検出に必要な特徴量と分類器を設計する。改善困難系も実運用上は検出すべきであるが、今回は対象外とする。

## 3.1 分類に必要な特徵量

分類に必要な特徵量の整理結果を表 2 に示す。

検索記事の有無による分類 2 節の類型化から、誤りタイプの特定にはサポートサイトの記事が有用であると考え、4つの誤りタイプをユーザ課題の解決につながる記事（正解記事）の有無により 2 群に分ける。QA ペア検索失敗と引用記事のみ正解は、 どちらも正解記事を持つため、記事特定可能群とする。また、回答手段なしは正解記事がなく、あいまいな質問は正解記事を絞れないことから、どちらも正解記事がないとみなし、記事不定群とする。サポートサイトから正解記事を探索するため、質問文
を用いたサイト内検索を導入する。サイト内検索で得られた、ヒットした記事の件数 (検索ヒット数) と、内容（検索記事）を特徴量に用いる。2 群の区別には、クエリと検索記事の整合性を調べ、検索記事が正解記事かどうか確認することが重要となる。

記事特定可能群内の分類この群はクエリと引用記事の整合性を用いて分類を試みる。QA ペア検索失敗の回答文は誤りであるので、引用記事はクエリと関連しない。引用記事のみ正解は回答文自体は誤りに見えるが、引用記事はクエリと関連する。

記事不定群内の分類この群は、クエリと検索ヒット数を用いて分類を試みる。あいまいな質問はクエリに含まれる情報が少なく、正解記事を絞れないため、検索ヒット数が多くなる。回答手段なしはクエリに含まれる情報が多く、全てに該当する記事が見つかりにくいため、検索ヒット数が少なくなる。また、クエリに含まれる情報を直接抽出し、検索ヒット数の妥当性を確認することも重要である。

以上の議論から、クエリ、引用記事、検索記事、検索ヒット数の 4 つの特徴量を使うことで分類できると考えられる。なお、4つすべての誤りタイプでクエリと回答文との整合性は低いことが前提となるため、これらの分類に回答文は不要である。

## 3.2 分類器の概要

図 2 に誤りタイプ分類器の概要を示す。分類器は、BERT [5] と 1 層の全結合層で構築する [6]。

BERT はクエリとサポートサイトの記事との整合性、または記事間の整合性を判定するために用いる。クエリと記事は特殊記号 [SEP] で繋いで入力する。複数の記事を用いる場合も、記事間を同じ特殊記号で繋ぐ。BERT の出力として、最終層の文頭記号 [CLS] に対応するべクトルを得る。

全結合層は、BERT から得られた整合性情報や検索ヒット数から最適な誤りタイプを推論する。入力は、検索ヒット数を BERT の出力ベクトルと結合させたものとする。学習時は、BERT と合わせて全体の fine-tuning を実施する。
表 3 誤りタイプ分類の実験結果

## 4 実験

## 4.1 実験設定

本節では、3節で述べた誤りタイプ分類の検証実験を行う。2 節で用いた応対履歴から、各誤りタイプのデータ量を揃えるために各 100 件ずつサンプリングし、学習用、検証用、評価用データとして、 320 件、 40 件、 40 件に分けた。BERT の事前学習済みモデルには bert-base-japanese-v23)を使用した。 この BERT は入力文長に 512 単語の制限がある。記事特定可能群と記事不定群の分類には、クエリと検索記事の整合性を評価し、検索記事が正解記事かを判断することが重要となる。しかし、正解記事が得られるかはサイト内検索の検索エンジンの性能に大きく依存する。本実験では、検索で必ず正解記事が得られる状況を作り、検索エンジンの性能が極めて高い場合に整合性評価が機能することを確認する。記事特定可能群は、検索記事に正解記事を用いる。記事不定群は正解記事を持たないため、検索結果のうちヒット順 1 位の記事を検索記事とする。記事の検索には Wordpress の検索機能を用いた4)。

多くの記事は長文であるため、文長制限に収めるために検索結果のスニペットを検索記事とする。本実験では、各記事のクエリ関連箇所を目視で抜き出してスニペットとした。引用記事の取得には検索が不要のため、引用記事は記事の先頭 5 文を与える。

## 4.2 結果

表 3 に分類実験の結果を示す。 3.1 節で述べた特徵量を加えることで、分類精度が向上した。実験パタン 1 では、多くの分類結果が $\mathbf{Q A}$ ペア検索失敗に集まっていた。一方、引用記事を用いた実験パタン 2 では記事特定可能群内の分類精度が向上し、検索

3) https://huggingface.co/cl-tohoku/bert-base-japanese-v2

4）クエリには、質問文を $\mathrm{MeCab}$ (辞書: mecab-ipadic-neologd[7] 2020-09-14 Ver.) で形態素解析し、名詞・形容詞・動詞を抽出した結果を用いた。記事を用いた実験パタン 3 では記事特定可能群と記事不定群を区別する精度が向上した。また、全ての特徴量を用いた実験パタン 4 では、各群内の分類精度の向上が見られた。例えば、表 1 の引用記事のみ正解のクエリ例「メンバーの追加ができません」は、 パタン 1 では誤っているが、検索記事やヒット数を用いた実験パタン $3,4,5$ では正しく分類できた。各実験結果の混同行列は付録 5 を参照されたい。

また、実験パタン 5 では、整合性評価が正しく行われた場合の精度を確認するため、記事特定可能群の検索記事の文頭に正解フラグ [TRUE] を付与し、整合性評価の正解を直接与えた。この実験で、整合性評価の精度を高めることで分類精度を高められることを確認した。実験パタン 5 でも誤分類となった事例は、あいまいな質問で多く見られた。例えば、表 1 のあいまいな質問のクエリ例「取得状態が設定エラーとなります」は、回答手段なしに分類された。 あいまいな質問は検索ヒット数が他の誤りタイプより多い傾向にあるが、この例のヒット数は 7 と平均的であった。ヒット数が数十件の事例は正しく分類できていたため、平均的なヒット数では分類根拠としては不十分であったと思われる。したがって、記事不定群内の分類精度を高めるためには、クエリ文面から内容を抽出する精度向上と、記事検索の精度向上の双方が必要であると考えられる。

## 5 おわりに

本研究では、FAQチャットボットの応対の誤りタイプを類型化し、各誤りタイプに必要な改善策をまとめた。また、FAQ 改善の効率化に向けて誤りタイプ自動分類を検討し、分類器の特徴量としてサポー トサイトの検索結果が有用であることを示した。

今回の実験では、サポートサイトの記事検索精度が極めて高い状況を仮定したが、実運用に向けては、記事検索や、クエリと記事の整合性判定の精度向上を進める必要がある。また、今回議論の対象外とした誤りタイプも考慮した分類も進める。

## 謝辞

誤りタイプの体系の整理方法について繰り返し議論いただいた、株式会社マネーフォワードビジネスカンパニー CS 本部の竹下晴基氏、古山三紗子氏に謝意を表します。

## 参考文献

[1] 土居誉生, 森克利, 嘉門勇輝, 稲田徹. 応対ログからの FAQ 自動抽出システム NANQ. 人工知能学会研究会資料言語・音声理解と対話処理研究会, Vol. 93, pp. 167-168, 2021.

[2] 戸田隆道, 友松祐太, 杉山雅和. 提示候補とクエリの差分を用いたチャットボットの新規問い合わせ抽出手法. 言語処理学会第 27 回年次大会, pp. 1550-1553, 2021.

[3] Wataru Sakata, Tomohide Shibata, Ribeka Tanaka, and Sadao Kurohashi. FAQ retrieval using query-question similarity and bert-based query-answer relevance. In Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR'19, p. 1113-1116, New York, NY, USA, 2019. Association for Computing Machinery.

[4] 坂田亘, 田中リベカ, 黒橋禎夫. 公式ウェブサイトをベースにした QA チャットボットの自動構築. 言語処理学会第 26 回年次大会, pp. 327-330, 2020.

[5] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 4171-4186, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[6] Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue, Anthony Moi, Pierric Cistac, Tim Rault, Rémi Louf, Morgan Funtowicz, Joe Davison, Sam Shleifer, Patrick von Platen, Clara Ma, Yacine Jernite, Julien Plu, Canwen Xu, Teven Le Scao, Sylvain Gugger, Mariama Drame, Quentin Lhoest, and Alexander M. Rush. Transformers: State-of-the-art natural language processing. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 38-45, Online, October 2020. Association for Computational Linguistics.

[7] 佐藤敏紀, 橋本泰一, 奥村学. 単語分かち書き辞書 mecab-ipadic-NEologd の実装と情報検索における効果的な使用方法の検討. 言語処理学会第 23 回年次大会 (NLP2017), pp. NLP2017-B6-1. 言語処理学会, 2017.
表 4 各実験の混同行列の抜粋

## A 付録

## A. 1 実験の混同行列

表 4 に、 4.2 節の表 3 で示した各分類実験の混同行列をまとめた。

引用記事は、引用記事のみ正解とそれ以外を区別するために導入した。実験パタン 1 と 2 を比較すると、実験パタン 2 において引用記事のみ正解の分類精度が向上していることがわかる。また、回答手段なしは関連する記事がサポートサイトに存在しないため、引用記事が不正解となることから、こちらの分類精度も向上した。したがって引用記事は、引用記事のみ正解や回答手段なしを特定するために有用である。

検索記事は、正解記事が存在する記事特定可能群と、正解記事が絞り込めないまたは存在しない記事不定群を区別するために導入した。実験パタン 1 と 3 を比較すると、実験パタン 3 では両群を区別する精度が向上している。また、検索ヒット数は、記事不定群内を分類する目的で導入した。実験パタン 3 の各群を見ると、記事特定可能群内と比較して、記事不定群内の分類精度が高い。したがって、検索記事と検索ヒット数は、両群の区別や、記事不定群内の分類をする上で有用である。

実験パタン 5 は、クエリと検索記事の整合性評価が完全に機能した場合の分類精度を確認するため、整合性評価の正解を外部から与えた。整合性評価の正解を与えなかった実験パタン 4 と比較すると、他群へ誤って分類する例がなくなったことがわかる。したがって、検索記事の整合性評価の精度を高めることで、両群の区別の精度を高められる。一方、記事不定群では、あいまいな質問の多くが回答手段なしに分類された。 これは、 4.2 節で述べたとおり、あいまいな質問であっても検索ヒット数が少ない事例があったことが原因である。今後は、記事検索の精度を高めることで検索ヒット数の妥当性を高めるとともに、クエリの内容理解の精度を高めることで、検索ヒット数に過度に依存しないような分類器の構築が必要である。