# 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 節で述べたとおり、あいまいな質問であっても検索ヒット数が少ない事例があったことが原因である。今後は、記事検索の精度を高めることで検索ヒット数の妥当性を高めるとともに、クエリの内容理解の精度を高めることで、検索ヒット数に過度に依存しないような分類器の構築が必要である。