(57)【要約】【課題】対話システムにおいて、ユーザからの自然文による質問が曖昧である場合でも、適切な回答生成を可能とする。【解決手段】対話システムは、あらかじめ定められた複数の質問と、前記複数の質問の属性を表す１つ以上の属性項目と、前記複数の質問ごとの前記属性項目の内容を表す属性値を対応付けて保持する記憶手段と、ユーザの質問文のテキストからキーワードを抽出する抽出手段と、前記複数の質問の内、前記テキストと合致する質問の候補を求める第一意図理解手段と、前記複数の質問のそれぞれと前記テキストの一致度を表すスコアを求める第二意図理解手段と、質問を特定する質問特定手段と、を備え、前記質問特定手段は、前記第二意図理解手段の処理結果から、質問が一意に定まる場合は、当該結果からユーザの質問を特定し、質問が一意に定まらない場合は、前記第一および第二意図理解手段の処理結果からユーザの質問を特定する、対話システムである。【選択図】図５
2019020774.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの質問文のテキストを取得する取得手段と、
あらかじめ定められた複数の質問と、前記複数の質問の属性を表す１つ以上の属性項目と、前記複数の質問ごとの前記属性項目の内容を表す属性値を対応付けて保持する記憶手段と、
前記テキストから、前記属性項目もしくは前記属性値またはこれらの類義語に関連するキーワードを抽出する抽出手段と、
前記キーワードと前記記憶手段を用いて、前記複数の質問の内、前記テキストと合致する質問の候補を求める第一意図理解手段と、
前記複数の質問のそれぞれと前記テキストの一致度を表すスコアを前記複数の質問ごとに求める第二意図理解手段と、
前記第一意図理解手段または前記第二意図理解手段の処理結果から、質問を特定する質問特定手段と、
を備え、
前記質問特定手段は、
前記第二意図理解手段の処理結果から、質問が一意に定まる場合は、前記第二意図理解手段の処理結果からユーザの質問を特定し、
前記第二意図理解手段の処理結果から、質問が一意に定まらない場合は、前記第一意図理解手段および前記第二意図理解手段の処理結果からユーザの質問を特定する、
対話システム。
【請求項２】
前記質問特定手段は、前記スコアを正規化した値が所定の閾値以上となる質問が１つとなる場合に、質問が一意に定まると判断する、
請求項１に記載の対話システム。
【請求項３】
前記質問特定手段における、前記第二意図理解手段を用いる質問の特定は、
前記複数の質問すべてを対象に前記スコアを正規化した値が所定の閾値以上となる質問を、ユーザの質問であると特定することにより行い、
前記質問特定手段における、前記第一意図理解手段および前記第二意図理解手段を用いる質問の特定は、
前記第一意図理解手段によって得られる質問の候補を対象に前記スコアを正規化した値が所定の閾値以上となる質問を、ユーザの質問であると特定することにより行う、
請求項１または２に記載の対話システム。
【請求項４】
前記質問特定手段によって質問が一意に定まらない場合に、前記抽出手段によりキーワードが抽出されていない前記属性項目についてユーザへの問いかけ文を生成する問いかけ文生成手段、
をさらに備える請求項１から３のいずれか１項に記載の対話システム。
【請求項５】
前記問いかけ文生成手段は、前記抽出手段によりキーワードが抽出されていない前記属性項目の内、前記属性値が複数種類存在する前記属性項目の前記属性値を用いて問いかけ文を生成する、
請求項４に記載の対話システム。
【請求項６】
前記問いかけ文生成手段は、前記複数の質問の内、前記スコアを正規化した値が所定値以上の質問のみを対象とし、かつ、平均情報量（エントロピー）が最大の前記属性項目の前記属性値を用いて問いかけ文を生成する、
請求項５に記載の対話システム。
【請求項７】
前記問いかけ文生成手段は、前記属性項目の内、複数の属性項目について、前記属性値を問いかけ文として用いる、
請求項６に記載の対話システム。
【請求項８】
前記質問特定手段において質問が一意に定まるまで、前記問いかけ文生成手段、前記第一意図理解手段、前記第二意図理解手段および前記質問特定手段の処理を繰り返す、
請求項４から７のいずれか１項に記載の対話システム。
【請求項９】
前記第二意図理解手段は、機械学習により生成した分類器を用いてスコアを求める、
請求項１から８のいずれか１項に記載の対話システム。
【請求項１０】
あらかじめ定められた複数の質問と、前記複数の質問の属性を表す１つ以上の属性項目と、前記複数の質問ごとの前記属性項目の内容を表す属性値を対応付ける記憶手段を備えるコンピュータが実行する対話方法であって、
ユーザの質問文のテキストを取得する取得ステップと、
前記テキストから、前記属性項目もしくは前記属性値またはこれらの類義語に関連するキーワードを抽出する抽出ステップと、
前記キーワードと前記記憶手段を用いて、前記複数の質問の内、前記テキストと合致する質問の候補を求める第一意図理解ステップと、
前記複数の質問のそれぞれと前記テキストの一致度を表すスコアを前記複数の質問ごとに求める第二意図理解ステップと、
前記第一意図理解ステップまたは前記第二意図理解ステップの処理結果から、質問を特定する質問特定ステップと、
を含み、
前記質問特定ステップでは、
前記第二意図理解ステップの処理結果から、質問が一意に定まる場合は、前記第二意図理解ステップの処理結果からユーザの質問を特定し、
前記第二意図理解ステップの処理結果から、質問が一意に定まらない場合は、前記第一意図理解ステップおよび前記第二意図理解ステップの処理結果からユーザの質問を特定する、
対話方法。
【請求項１１】
請求項１０に記載の方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対話システムに関し、特に、ユーザからの質問に対して回答を生成する質問応答システムに関連する。
【背景技術】
【０００２】
質問応答システムでは、ユーザからの自然文による質問に対して、適切な回答を生成することが望まれている。
【０００３】
特許文献１では、ユーザ入力された自然文を解析した結果と、それぞれの状況において要求される機能を判別するように機械学習された識別機を用いる。そして、これらを比較することで、ユーザがシステムに要求している機能を抽出している。
【０００４】
特許文献２では、ユーザ入力された質問文中の単語や文節の曖昧度を求めて、曖昧度の高い単語や文節の意味を特定するための問いかけ文を生成する。これを繰り返し行い、適切な回答を生成している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１５１９２８号公報
【特許文献２】特開２００４−１１０５２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１ではユーザの入力が曖昧である場合に、適切な回答を生成することができない。また、特許文献２は、自明の事柄が省略された場合も絞込み対話が発生してしまうため、ユーザとシステムとの間の冗長な対話が発生してしまう。
【０００７】
本発明は、対話システムにおいて、ユーザからの自然文による質問が曖昧である場合でも、質問を特定し、適切な回答を生成することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第一の態様は、
ユーザの質問文のテキストを取得する取得手段と、
あらかじめ定められた複数の質問と、前記複数の質問の属性を表す１つ以上の属性項目と、前記複数の質問ごとの前記属性項目の内容を表す属性値を対応付けて保持する記憶手段と、
前記テキストから、前記属性項目もしくは前記属性値またはこれらの類義語に関連するキーワードを抽出する抽出手段と、
前記キーワードと前記記憶手段を用いて、前記複数の質問の内、前記テキストと合致する質問の候補を求める第一意図理解手段と、
前記複数の質問のそれぞれと前記テキストの一致度を表すスコアを前記複数の質問ごとに求める第二意図理解手段と、
前記第一意図理解手段または前記第二意図理解手段の処理結果から、質問を特定する質問特定手段と、
を備え、
前記質問特定手段は、
前記第二意図理解手段の処理結果から、質問が一意に定まる場合は、前記第二意図理
解手段の処理結果からユーザの質問を特定し、
前記第二意図理解手段の処理結果から、質問が一意に定まらない場合は、前記第一意図理解手段および前記第二意図理解手段の処理結果からユーザの質問を特定する、
対話システムである。
【０００９】
このような構成によれば、前記質問特定手段は、ユーザの質問文が曖昧である場合でも、第一意図理解手段によって得られる質問の候補または第二意図理解手段によって得られるスコアから、質問を特定することができる。よって、適切な回答を返すことができる。
【００１０】
本発明において、記憶手段は、あらかじめ定められた複数の質問を保持する。また、記憶手段は、前記複数の質問を特定するための項目として、前記複数の質問の属性（特徴）を表す「属性項目」を保持する。さらに、記憶手段は、各属性が実際にとる値（内容）である「属性値」を保持する。
【００１１】
例えば、「車のトラブルに関する質問応答システム」の場合、「属性項目」は、車のトラブルに関する任意の質問を特定可能とする項目であることが好ましい。例えば、「属性項目」は、［＜パーツ＞，＜症状＞，＜質問形式＞］等とすることができる。また、上記の例において、あらかじめ定められた質問「エンジンから異音がする場合どうすればよいか？」が設けられているとすると、この質問に対応する「属性値」は、［「エンジン」，「異音」，「ｈｏｗ」］等とすることができる。
【００１２】
本発明において、前記質問特定手段は、前記スコアを正規化した値が所定の閾値以上となる質問が１つとなる場合に、質問が一意に定まると判断する、ことが好ましい。
【００１３】
また、本発明において、前記質問特定手段における、前記第二意図理解手段を用いる質問の特定は、前記複数の質問すべてを対象に前記スコアを正規化した値が所定の閾値以上となる質問を、ユーザの質問であると特定することにより行う、ことが好ましい。さらに、前記質問特定手段における、前記第一意図理解手段および前記第二意図理解手段を用いる質問の特定は、前記第一意図理解手段によって得られる質問の候補を対象に前記スコアを正規化した値が所定の閾値以上となる質問を、ユーザの質問であると特定することにより行う、ことが好ましい。
【００１４】
このように、第二意図理解手段の処理結果のみで質問を一意に特定することができない場合であっても、第一意図理解手段の処理結果を用いることで、質問特定手段は質問を特定することができる。
【００１５】
本発明において、前記質問特定手段によって質問が一意に定まらない場合に、前記抽出手段によりキーワードが抽出されていない前記属性項目についてユーザへの問いかけ文を生成する問いかけ文生成手段をさらに備える、ことが好ましい。
【００１６】
これにより、最初にユーザ入力された質問からキーワードが抽出されていない属性項目等について問いかけることができるため、ユーザの質問が曖昧である場合でも対処することができる。具体的な例として、上述の「車のトラブルに関する質問応答システム」において、ユーザから「エンジンがなんかおかしいな」といった質問が入力されたとする。この場合、抽出手段によってキーワード「エンジン」が抽出されるため、属性項目＜パーツ＞については「エンジン」に関する質問であると判断できる。ここで、属性項目＜症状＞については不明であるため、キーワードが抽出されていない属性項目＜症状＞を用いて「どのような症状でしょうか？」と問いかけ文を生成することができる。
【００１７】
本発明において、前記問いかけ文生成手段は、前記抽出手段によりキーワードが抽出さ
れていない前記属性項目の内、前記属性値が複数種類存在する前記属性項目の前記属性値を用いて問いかけ文を生成する、ことができる。
【００１８】
これにより、問いかけ文生成手段は、具体的な属性値の内容について問いかけ文を生成することができるため、ユーザとの冗長な対話を回避することができる。具体的には、上述の質問において、属性項目＜パーツ＞が「エンジン」に絞り込まれた結果、例えば、問いかけ文生成手段は、キーワードが抽出されていない属性項目＜症状＞の属性値について「Ａですか？またはＢですか？」といった問いかけ文を生成することができる。また、問いかけ文生成手段は、属性値が複数種類存在する属性項目の属性値を用いることで、例えば、属性項目＜症状＞の属性値が「ｘｘｘ」の１種類しか存在しない場合に、「ｘｘｘですか？」といった冗長な問いかけ文の生成を回避することができる。
【００１９】
本発明において、前記問いかけ文生成手段は、前記複数の質問の内、前記スコアを正規化した値が所定値以上の質問のみを対象とし、かつ、平均情報量（エントロピー）が最大の前記属性項目の前記属性値を用いて問いかけ文を生成する、ことができる。
【００２０】
このように、問いかけ文生成手段は、ユーザの質問により近いと想定される質問に絞り込み、かつ、平均情報量を基にして、どの属性項目について問いかけをするかを決定することができるので、質問の特定に要する対話回数を最小限に留めることができる。
【００２１】
また、本発明において、前記問いかけ文生成手段は、前記属性項目の内、複数の属性項目について、前記属性値を問いかけ文として用いる、こともできる。
【００２２】
さらに、本発明において、前記質問特定手段において質問が一意に定まるまで、前記問いかけ文生成手段、前記第一意図理解手段、前記第二意図理解手段および前記質問特定手段の処理を繰り返す、こともできる。
【００２３】
また本発明において、前記第二意図理解手段は、機械学習により生成した分類器を用いて前記スコアを求める、ことが好ましい。
【００２４】
なお、本発明は、上記手段の少なくとも一部を備える対話システムとして捉えることもできる。本発明は、また、上記処理の少なくとも一部を実行する対話方法として捉えることができる。また、本発明は、この方法をコンピュータに実行させるためのコンピュータプログラム、あるいはこのコンピュータプログラムを非一時的に記憶したコンピュータ可読記憶媒体として捉えることもできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【００２５】
例えば、本発明の一態様は、
あらかじめ定められた複数の質問と、前記複数の質問の属性を表す１つ以上の属性項目と、前記複数の質問ごとの前記属性項目の内容を表す属性値を対応付ける記憶手段を備えるコンピュータが実行する対話方法であって、
ユーザの質問文のテキストを取得する取得ステップと、
前記テキストから、前記属性項目もしくは前記属性値またはこれらの類義語に関連するキーワードを抽出する抽出ステップと、
前記キーワードと前記記憶手段を用いて、前記複数の質問の内、前記テキストと合致する質問の候補を求める第一意図理解ステップと、
前記複数の質問のそれぞれと前記テキストの一致度を表すスコアを前記複数の質問ごとに求める第二意図理解ステップと、
前記第一意図理解ステップまたは前記第二意図理解ステップの処理結果から、質問を特定する質問特定ステップと、
を含み、
前記質問特定ステップでは、
前記第二意図理解ステップの処理結果から、質問が一意に定まる場合は、前記第二意図理解ステップの処理結果からユーザの質問を特定し、
前記第二意図理解ステップの処理結果から、質問が一意に定まらない場合は、前記第一意図理解ステップおよび前記第二意図理解ステップの処理結果からユーザの質問を特定する、
対話方法である。
【発明の効果】
【００２６】
本発明によれば、対話システムにおいて、ユーザからの自然文による質問が曖昧である場合でも、質問を特定し、適切な回答を生成することが可能となる。
【図面の簡単な説明】
【００２７】
【図１】図１は、実施形態に係る音声対話システムの構成を示す図である。
【図２】図２は、実施形態に係る記憶部の構成の例を示す図である。
【図３】図３は、実施形態に係る機械学習型分類部の処理の例を示す図である。
【図４】図４は、実施形態に係る質問特定部の処理の例を示す図である。
【図５】図５は、実施形態に係る音声対話処理の流れの例を示すフローチャートである。
【図６】図６は、実施形態に係る問いかけ文生成処理の流れの例を示すフローチャートである。
【図７】図７は、実施形態に係る問いかけ文生成処理の質問の絞り込み方法の例を示す図である。
【図８】図８は、実施形態に係る問いかけ文生成処理の属性項目の選択方法の例を示す図である。
【発明を実施するための形態】
【００２８】
以下、図面を参照して、本発明の実施の形態を例示的に詳しく説明する。なお、以下の説明は本発明を例示的に説明するものであり、本発明は以下の実施形態に限定されるものではない。
【００２９】
＜システム構成＞
図１は、本実施形態に係る音声対話システムの構成を示す図である。本実施形態に係る音声対話システムは、音声対話装置１００およびスマートフォン２００を備える。
【００３０】
本実施形態に係る音声対話装置１００は、演算装置、記憶装置、入出力装置などを含む情報処理装置（コンピュータ）である。記憶装置に格納されたプログラムを演算装置が実行することで、音声対話装置１００の、取得部１１０、記憶部１２０、抽出部１３０、ルールベース型分類部１４０、機械学習型分類部１５０、質問特定部１６０、問いかけ文生成部１７０、回答生成部１８０等の機能が提供される。
【００３１】
また、本実施形態に係るスマートフォン２００は、マイクやスピーカー等を含む情報処理装置（コンピュータ）を備える。スマートフォン２００は、ユーザの発話内容（質問）を取得し、発話内容をテキストに変換した後、音声対話装置１００に出力する。また、スマートフォン２００は、音声対話装置１００より問いかけ文や回答文を取得し、音声等でユーザに出力する。
【００３２】
取得部１１０は、本実施形態では、スマートフォン２００を介してユーザの質問文のテキストを取得する。
【００３３】
記憶部１２０は、あらかじめ定められた複数の質問と、複数の質問の属性を表す１つ以上の属性項目と、複数の質問それぞれに対して属性項目が実際とる値（内容）である属性値を保持する。
【００３４】
図２は、本実施形態に係る「車のトラブルに関する質問応答システム」における記憶部１２０の例を示す。図２の例では、記憶部１２０に複数の質問（ＩＤ）１２１ならびに属性項目１２２（パーツ）、属性項目１２３（症状）および属性項目１２４（質問形式）を記憶している。また、図２の例では、記憶部１２０に＜パーツ＞に該当する属性値「エンジン」および「タイヤ」、＜症状＞に該当する属性値「ｘｘｘ」および「ｙｙｙ」、＜質問形式＞に該当する属性値「ｈｏｗ」および「ｗｈａｔ」を記憶している。
【００３５】
なお、図２の例では属性項目が３つの場合を示しているが、属性項目の数はいくつであっても構わない。また、記憶部１２０の属性項目および属性値の内容は特に限定されない。また、図２では、記憶部１２０の構成として表（テーブル）を用いているが、データ構造は特に限定されない。記憶部１２０は、あらかじめ定められた質問を特定できるように構成されていればよい。
【００３６】
なお、記憶部１２０のすべての属性値の内容が一致する質問が複数あってもよい。例えば、図２の属性項目［＜パーツ＞，＜症状＞，＜質問形式＞］の属性値が、［「エンジン」，「異音」，「ｈｏｗ」］である質問が２つ以上あってもよい。このような構成とした場合でも、後述するように、記憶部１２０を用いて質問の候補を求めることができる。また、記憶部１２０は、手動で作成してもよく、機械学習等を用いて作成してもよい。さらに、記憶部１２０の内容は固定でもよいし、追加、更新および削除等を行ってもよい。
【００３７】
抽出部１３０は、入力されたテキストから、記憶部１２０の属性項目もしくは属性値またはこれらの類義語に関連するキーワードを抽出する。ここで、ユーザが以下のような曖昧な質問をした場合、抽出部１３０は、図２に示す記憶部１２０を参照して、質問文中の属性値に関連するキーワード「エンジン」を抽出する。
「エンジンがなんかおかしいな」
【００３８】
なお、抽出方法は特に限定されない。たとえば、抽出部１３０は、形態素解析等を用いてテキストに含まれるすべての単語等を抽出してもよい。
【００３９】
ルールベース型分類部１４０（第一意図理解手段）は、記憶部１２０および抽出部１３０の抽出結果から、ユーザの質問と合致する質問の候補を求める。まず、ルールベース型分類部１４０は、抽出部１３０の抽出したキーワードと、記憶部１２０の属性値を参照する。そして、ルールベース型分類部１４０は、キーワードに関連する属性値を有する質問を、ユーザの質問の候補として出力する。ここで、キーワードが抽出された属性項目を属性項目群Ａ、キーワードが抽出されていない属性項目を属性項目群Ｂと称する。
【００４０】
例えば、ユーザが上述のような曖昧な質問をした場合、まず、ルールベース型分類部１４０は抽出部１３０が抽出した質問文のキーワード「エンジン」および記憶部１２０の属性値を参照する。そして、ルールベース型分類部１４０は、キーワード「エンジン」に関連する属性値を有する質問を候補として求める。記憶部１２０が図２に示す構成の場合、＜パーツ＞の属性値に「エンジン」が設定されている質問１から５が質問の候補として出力される。この場合、属性項目＜パーツ＞は属性項目群Ａ、属性項目＜症状＞および＜質問形式＞は属性項目群Ｂに含まれる。
【００４１】
機械学習型分類部１５０（第二意図理解手段）は、あらかじめ定められた質問のそれぞ
れと、取得部１１０より出力されたテキストとの一致度（スコア）を求める。本実施形態では、機械学習型分類部１５０は、機械学習を用いて生成された分類器を用いてスコアの算出を行う。機械学習を用いた分類器の作成方法に関しては、既存の手法を用いる。分類器によって求められたスコアの例を図３（Ａ）に示す。
【００４２】
質問特定部１６０は、ルールベース型分類部１４０または機械学習型分類部１５０の処理結果を用いてユーザの質問を特定する。本実施形態では、機械学習型分類部１５０の処理結果から質問が一意に定まる場合は、質問特定部１６０は、当該質問をユーザの質問であると特定する。また、機械学習型分類部１５０の処理結果からユーザの質問が一意に定まらない場合は、質問特定部１６０は、ルールベース型分類部１４０および機械学習型分類部１５０を用いて判断を行う。質問特定部１６０の詳細については、図５のフローチャートを用いた処理説明において行う。
【００４３】
問いかけ文生成部１７０は、質問特定部１６０において質問が一意に定まらない場合に、ユーザへの問いかけ文を生成する。そして、生成された問いかけ文はスマートフォン２００を介してユーザに出力される。本実施形態では、問いかけ文生成部１７０は、ルールベース型分類部１４０の算出結果から得られる質問の候補を対象に、属性項目群Ｂの属性値を用いて問いかけ文を生成する。問いかけ文生成部１７０の詳細については、図５および６のフローチャートを用いた処理説明において行う。
【００４４】
回答生成部１８０は、質問特定部１６０によって特定された質問に対する回答を生成する。そして、生成された回答はスマートフォン２００を介してユーザに出力される。本実施形態では、回答生成部１８０は、質問と回答が１対１に対応付けられる第２記憶手段（不図示）を参照して回答文を生成する。
【００４５】
＜処理内容＞
本実施形態に係る音声対話システムにおける処理について、上述と同様、ユーザから「エンジンがなんかおかしいな」といった質問が入力された例について図５を参照して説明する。
【００４６】
ステップＳ１０２において、取得部１１０は、スマートフォン２００を介してユーザの質問のテキストを取得する。
【００４７】
ステップＳ１０４において、機械学習型分類部１５０は、あらかじめ定められた複数の質問ぞれぞれと、取得されたテキストとの一致度（スコア）を算出する。
【００４８】
ステップＳ１０６において、質問特定部１６０は、ステップＳ１０４の処理結果を用いて質問が一意に定まるか否かを判断する。具体的には、質問特定部１６０は、ステップＳ１０４において複数の質問すべてに対して算出されたスコアを合計値が１となるように正規化し、正規化後の値（確信度）が所定の閾値以上となる質問が一意に定まるか否かを判断する。ここで、所定の閾値とは、それ以上であればユーザの意図した質問であるとみなせるような確信度の値である。図３（Ｂ）は、図３（Ａ）のすべての質問を対象に、スコアを正規化して得られる確信度の例である。質問特定部１６０は、質問が一意に定まる場合には、当該質問をユーザの質問であると特定し、ステップＳ１１８に進む。質問が一意に定まらない場合は、ステップＳ１１０に進む。
【００４９】
ステップＳ１０８において、ステップＳ１０６の処理の結果、質問が一意に定まらないと判断された場合（Ｓ１０６−ＮＯ）、抽出部１３０は、ステップＳ１０２において取得したテキストから、記憶部１２０の属性項目もしくは属性値またはこれらの類義語に関連するキーワードを抽出する。
【００５０】
ステップＳ１１０において、ルールベース型分類部１４０は、抽出されたキーワードと記憶部１２０を参照して、ユーザの質問の候補を算出する。
【００５１】
ステップＳ１１２において、質問特定部１６０は、ステップＳ１１０の処理結果から質問が一意に定まるか否かを判断する。具体的には、候補として算出された質問のみを対象に、再度、スコアの正規化を行う。そして、質問特定部１６０は、得られた値（確信度）が所定の閾値以上となる質問が一意に定まるか否かを判断する。本実施形態では、ステップＳ１０６とステップＳ１１２において同じ閾値を用いるが、異なる値を用いてもよい。質問が一意に定まる場合には、質問特定部１６０は当該質問をユーザの質問であると特定して、ステップＳ１１８に進む。質問が一意に定まらない場合は、ステップＳ１１４に進む。図４（Ａ）は、あらかじめ定められた質問すべてを対象にスコアを正規化した例を示す。図４（Ｂ）は、ルールベース型分類部１４０が算出した質問の候補のみを対象にスコアを正規化した例を示す。
【００５２】
ステップＳ１１４では、ステップＳ１１２において質問が一意に定まらないと判断された場合（Ｓ１１２−ＮＯ）、問いかけ文生成部１７０がユーザへの問いかけ文を生成する。本実施形態では、問いかけ文生成部１７０は、属性項目群Ｂに含まれる属性項目の属性値を用いて問いかけ文を生成する。そして、生成された問いかけ文は、スマートフォン２００を介してユーザに出力される。ステップＳ１１４の詳細については、後述の図６のフローチャートを用いた処理説明において行う。
【００５３】
ステップＳ１１６において、システムからユーザに対して問いかけがされた後に、ユーザからの応答が検出された場合は、ルールベース型分類部１４０は、再度、質問の候補の算出を行い、ステップＳ１１２に進む。そして、質問が一意に定まるまでステップＳ１１２から１１６の処理を繰り返す。
【００５４】
ステップＳ１１８では、上記ステップにおいて質問が一意に定まる場合（Ｓ１０６−ＹＥＳ、Ｓ１１２−ＹＥＳ）、回答生成部１８０は、質問に適した回答を行う。回答は、スマートフォン２００を介してユーザに出力される。
【００５５】
（問いかけ文生成処理）
ステップＳ１１４の処理の詳細を、図６および７を参照して説明する。
【００５６】
≪ステップＳ１１４１≫
ステップＳ１１４１において、問いかけ文生成部１７０は質問の絞り込みを行う。具体的には、問いかけ文生成部１７０は確信度が所定値以上の質問を選択する。ここで、所定値とは、それ未満であればユーザの意図した質問ではないとみなせるような確信度の値である。本実施形態では、所定値は上述の所定の閾値未満の値を用いるが、所定の閾値以上でもよい。図７は、問いかけ文生成部１７０が、所定値０．１０で質問を絞り込む例である。図７の例では、問いかけ文生成部１７０は、ステップＳ１１０において算出された５つの質問を、質問１から４の４つに絞り込んでいる。
【００５７】
≪ステップＳ１１４２≫
ステップＳ１１４２において、問いかけ文生成部１７０は、問いかけ文に用いる属性項目を選択する。まず、問いかけ文生成部１７０は、キーワードが抽出されていない属性項目群Ｂに着目する。そして、問いかけ文生成部１７０は、属性項目群Ｂに含まれる属性項目の内、ステップＳ１１４１の処理で絞り込まれた質問に対応する属性値が複数種類存在する属性項目を選択する。図７の例では、問いかけ文生成部１７０は、まず、属性項目群Ｂに含まれる属性項目＜症状＞、＜質問形式＞に着目する。そして、属性項目ごとに絞り
込まれた質問１から４に対応する属性値が複数種類存在する属性項目を選択する。具体的には、属性項目＜症状＞に該当する属性値は「ｘｘｘ」、「ｙｙｙ」、「ｚｚｚ」および「ｗｗｗ」の４種類、属性項目＜質問形式＞に該当する属性値は「ｈｏｗ」の１種類のみである。よって、図７の例では、問いかけ文生成部１７０は、複数の属性値が存在する属性項目＜症状＞を選択する。
【００５８】
≪ステップＳ１１４３≫
ステップＳ１１４３において、ステップＳ１１４２の処理結果から選択された属性項目が１つか否かを判断する。選択された属性項目が１つの場合には、問いかけ文生成部１７０は、当該属性項目を問いかけ文に用いる属性項目とし、ステップＳ１１４５に進む。選択された属性項目が２つ以上の場合は、ステップＳ１１４４に進む。
【００５９】
≪ステップＳ１１４４≫
ステップＳ１１４４では、ステップＳ１１４３において属性項目が１つに決定されない場合（Ｓ１１４３−ＮＯ）に、問いかけ文生成部１７０は、ステップＳ１１４２において選択された複数の属性項目から問いかけ文に用いる属性項目を決定する。
【００６０】
ここで、後述するステップＳ１１４５では、問いかけ文生成部１７０は、ステップＳ１１４４において決定する属性項目について、２種類の属性値を用いて問いかけ文を生成する。例えば、属性項目＜症状＞について「Ａですか？またはＢですか？」（属性値が３種類以上存在する場合は「Ａですか？またはＢですか？それとも他の症状ですか？」）といった問いかけ文を生成する。
【００６１】
よって、ステップＳ１１４４における属性項目の決定方法として、問いかけ文生成部１７０は、例えば、上記の問いかけを行う場合の平均情報量（エントロピー）を考慮して属性項目を決定することができる。具体的には、問いかけ文生成部１７０は、属性項目ごとに各属性値の確信度を用いて平均情報量の算出を行い、求まる値が最大の属性項目を用いて問いかけ文を生成する。以下、図８を用いて、平均情報量を考慮した属性項目の決定方法について説明する。
【００６２】
図８は、ステップＳ１１４２において複数の属性項目が選択された例である。このような場合、問いかけ文生成部１７０は、ステップＳ１１４１において絞り込まれた質問を対象に再度正規化を行った確信度から、以下の式１を用いて平均情報量を求める。
2019020774.tif 000003
Ｅは属性項目ごとの平均情報量、Ｐ１からＰ３は所定の属性値で集約した確信度の合計値である。
【００６３】
ここで、問いかけ文生成部１７０は、２種類の属性値を選ぶ。例えば、図８に示す記憶部３２０の属性項目＜症状＞の場合、問いかけ文生成部１７０は、１つ目の属性値は「ｘｘｘ」、２つ目の属性値は「ｙｙｙ」を選ぶ。なお、本実施形態では、属性値が３種類以上存在する場合は、後述するステップＳ１１４５の処理と同様に、スコアの降順で上位２種類の属性値を用いるが、属性値の選択方法については特に限定されない。例えば、問いかけ文生成部１７０は、属性値をランダムに２種類選択してもよい。
【００６４】
そして、１つ目の属性値で集約した確信度の合計値をＰ１、２つ目の属性値で集約した確信度の合計値をＰ２とする。また、属性値が３種類以上ある場合は、３つ目以降のすべての属性値の確信度の合計値をＰ３（Ｐ３＝１−Ｐ１−Ｐ２）とする。
【００６５】
図８に示す記憶部３２０の例では、属性項目＜症状＞の平均情報量は１．５７（Ｐ１＝０．３１，Ｐ２＝０．２８，Ｐ３＝０．４１）、属性項目＜質問形式＞の平均情報量は０．９９（Ｐ１＝０．４５，Ｐ２＝０．５５，Ｐ３＝０．００）である。よって、問いかけ文生成部１７０は、問いかけ文生成に用いる属性項目を、平均情報量が最大の属性項目＜症状＞に決定する。
【００６６】
なお、平均情報量の算出に用いる属性値の選択方法は特に限定されず、例えば、問いかけ文生成部１７０は属性値をランダムに選んでもよい。また、平均情報量の算出に用いる属性値の種類は２種類に限定されず、例えば、問いかけ文生成部１７０は、１種類または３種類以上の属性値を用いて平均情報量を算出してもよい。
【００６７】
なお、ステップＳ１１４４における属性項目の決定方法として、上述の平均情報量を考慮する方法以外に、例えば、問いかけ文生成部１７０は、ランダムに属性項目を選んでもよい。また、あらかじめ属性項目に優先順位を設定して、問いかけ文生成部１７０は優先順位に従って優先度の高い属性項目を選んでもよい。さらに、問いかけ文生成部１７０は、属性値の種類に応じて、例えば、種類が最も多い属性項目を選んでもよい。
【００６８】
≪ステップＳ１１４５≫
ステップＳ１１４５では、上述の通り、ステップＳ１１４３（Ｓ１１４３−ＹＥＳ）またはステップＳ１１４４において決定された属性項目の属性値を２種類用いて問いかけ文を生成する。例えば、属性項目＜症状＞の属性値「ｘｘｘ」および「ｙｙｙ」を用いる場合、問いかけ文生成部１７０は、以下の問いかけ文を生成する。
「ｘｘｘですか？またはｙｙｙですか？それとも他の症状ですか？」
ここで、本実施形態では、問いかけ文生成部１７０は、属性値が３種類以上存在する場合は、スコアの降順で上位２種類の属性値を用いるが、属性値の選択方法については特に限定されない。例えば、問いかけ文生成部１７０は、属性値をランダムに２種類選択してもよい。
【００６９】
なお、本実施形態では、問いかけ文に２種類の属性値を用いる例について説明したが、数は特に限定されない。例えば、問いかけ文生成部１７０は、該当する属性項目の全ての属性値を用いて問いかけ文を生成してもよい。
【００７０】
＜本実施形態の有利な効果＞
本実施形態によれば、ユーザの質問が曖昧なため問い返しが必要な場合でも、得られる情報量を考慮して問いかけを行うことで、質問の特定に要する対話回数を最小限に留めることができる。
【００７１】
＜変形例＞
取得部１１０が取得するデータはテキストに限らない。例えば、取得部１１０はユーザの発話の音声等を取得してもよい。また、取得部１１０は、通信等によりデータ取得してもよい。
【００７２】
また、本実施形態では、音声対話装置システムが、２つの分類部（意図理解部）を用いる例について説明したが、それぞれの構成は特に限定されない。第一の分類部については、複数の質問とそれらの特徴等を保持するテーブル等を用いる構成であればよく、第二の分類部については、複数の質問のそれぞれとユーザの質問とのスコア（一致度）が求まる構成であればよい。例えば、音声対話装置１００は、スコアの算出に、ルールベース型分類部１４０で用いるものとは異なるルールベース型の分類器を用いてスコアを求めてもよい。
【００７３】
また、音声対話装置１００は、回答生成部１８０で用いる第２記憶手段（不図示）を有していなくてもよい。例えば、回答は記憶部１２０に設けられていてもよい。さらに、音声対話装置１００は、回答生成部１８０を有していなくてもよく、この場合、質問特定部１６０が質問の特定および回答の生成を行ってもよい。
【００７４】
また、本実施形態では、ステップＳ１１４において、問いかけ文生成部１７０は、いずれか１つの属性項目（の属性値）を用いてユーザへの問いかけ文を生成しているが、問いかけ文に用いる属性項目は１つに限らない。例えば、問いかけ文生成部は＜症状＞について問いかけるとともに、＜質問形式＞について同時に問いかけてもよい。このように複数の属性項目について問いかけ文を生成することで、問いかけに要する対話回数をさらに抑えることができる。
【００７５】
さらに、本実施形態では、ステップＳ１１４において、問いかけ文生成部１７０は属性項目群Ｂに含まれるいずれかの属性値を用いて問いかけ文を生成する例について説明したが、問いかけ文の生成方法はこれに限らない。ユーザの質問を特定できるような問いかけ文であればよい。例えば、上述の例において、問いかけ文生成部１７０は、ユーザの質問から自明な内容（属性項目群Ａ）である「エンジン」を用いて「エンジンのどのようなトラブルでしょうか？」といった問いかけ文を生成してもよい。さらに、記憶部１２０に設けられた単語等を含まない問いかけ文を生成してもよく、例えば、上述の例において質問中のキーワード「エンジン」以外を用いて、「なんかおかしい、とは具体的にどのようなトラブルでしょうか」といった問いかけ文を生成してもよい。
【００７６】
なお、スマートフォン２００への入力は音声に限らず、例えば、キーボードで入力されたテキスト等でもよい。また、スマートフォン２００からユーザへの出力はテキスト等であってもよい。さらに、本実施形態に係るスマートフォン２００は、音声をテキストに変換する役割を果たしていればよく、例えば、ＰＣ等に置き換えることもできる。また、質問応答システムは、スマートフォン２００を用いなくてもよい。例えば、音声対話装置１００に、マイク、スピーカーおよびディスプレイ等を設けて、ユーザの質問を直接取得してもよく、ユーザに直接問いかけおよび回答を行ってもよい。
【００７７】
また、本実施形態では、正規化後の確信度を用いた例について説明したが、これに限らない。例えば、機械学習型分類部１５０によって求められたスコアそのものを用いて質問の特定等を行ってもよい。この場合、上記の所定の閾値等は、スコアに対して設ければよい。
【００７８】
また、本実施形態では、「車のトラブルに関する質問応答システム」を例に説明をしたが、質問の対象はこれに限定されない。
【００７９】
＜その他＞
上記の実施形態および変形例の構成は、本発明の技術的思想を逸脱しない範囲内で、適宜組み合わせて利用することができる。また、本発明は、その技術的思想を逸脱しない範囲で適宜変更を加えて実現しても構わない。
【符号の説明】
【００８０】
１００：音声対話装置
１１０：取得部
１２０，２２０，３２０：記憶部
１３０：抽出部
１４０：ルールベース型分類部
１５０：機械学習型分類部
１６０：質問特定部
１７０：問いかけ文生成部
１８０：回答生成部
２００：スマートフォン
【図１】
2019020774.tif 000004
【図２】
2019020774.tif 000005
【図３】
2019020774.tif 000006
【図４】
2019020774.tif 000007
【図５】
2019020774.tif 000008
【図６】
2019020774.tif 000009
【図７】
2019020774.tif 000010
【図８】
2019020774.tif 000011