(57)【要約】【課題】質問者の質問に情報の不足があったとしても、質問者の意図に応じた適切な回答を返すことができる、システム、方法、およびプログラムを提供する。【解決手段】対話システムは、ユーザ端末から質問を受信する質問受信部と、予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、を算出する確信度算出部と、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するアクション決定部と、を備える。【選択図】図２
2020091579.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末から質問を受信する質問受信部と、
予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、を算出する確信度算出部と、
前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するアクション決定部と
を備えたことを特徴とする対話システム。
【請求項２】
前記第１の確信度は、前記質問の文と前記第１のトピックの単語または文とがどのぐらい類似しているかに基づいて算出され、前記第２の確信度は、前記質問の文と前記第２のトピックの単語または文とがどのぐらい類似しているかに基づいて算出されることを特徴とする請求項１に記載の対話システム。
【請求項３】
前記第１のトピックおよび前記第２のトピックは、前記質問の内容を示し、前記第１のトピックおよび前記第２のトピックは、階層化されるように分類されていることを特徴とする請求項１または２に記載の対話システム。
【請求項４】
前記アクション決定部は、前記問い返しに対する返答に基づいて、前記ユーザ端末へ前記質問に対する回答を送信するように構成されたことを特徴とする請求項１から３のいずれか一項に記載の対話システム。
【請求項５】
前記確信度算出部は、前記予め登録されている質問に対する前記受信した質問の第３の確信度を算出するように構成され、
前記アクション決定部は、前記第３の確信度が閾値未満であったときに、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するように構成されたことを特徴とする請求項１から４のいずれか一項に記載の対話システム。
【請求項６】
対話システムが実施する方法であって、
ユーザ端末から質問を受信するステップと、
予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、を算出するステップと、
前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するステップと
を含むことを特徴とする方法。
【請求項７】
請求項６に記載の方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータと対話する技術に関する。
【背景技術】
【０００２】
従来、企業の従業員向けのヘルプデスクや顧客向けのコールセンターでは、オペレータの者は、従業員や顧客からの問い合わせを受けると、事前に用意されているＦＡＱ（Frequently Asked Questions）の中から適切な回答を探し出して対応していた。ＦＡＱは、よくある質問とその回答を集めた問答集である。
【０００３】
昨今、ヘルプデスクやコールセンターに、チャットボットとも呼ばれる自動的に会話を行うプログラムによる対話システムを導入する企業が増えている。このような対話システムでは、コンピュータが、ＦＡＱ内の質問の中から、質問者からの質問に近い質問を選び出して、回答を返している。特許文献１では、質問者の端末から送信された質問と、過去に蓄積された質問との間で、単語・語順の一致率や質問の参照率に基づく類似度が算出される。そして、過去に蓄積された質問の中で類似度が高い質問が、質問者からの質問に近い質問であると判断されている（特許文献１の段落［００１９］−［００２０］など）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２５２４８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、質問者からの質問は、必ずしも、ＦＡＱ内の質問の中から適切な質問を選び出すために必要な全ての情報を含んでいるとは限らない。例えば、質問者の意図は、“ＰＤＦのパスワードについて教えてほしい”であったとする。しかし、実際の質問が“ＰＤＦについて教えてほしい”であると、コンピュータは、ＦＡＱ内の質問の中から、パスワード以外に関するＰＤＦについての質問を選んでしまう可能性がある。そのため、質問者は、自分が意図していた質問に対する回答を得ることができない。このように、従来は、質問者の質問に情報の不足があると、質問者が意図する質問に対する回答を得ることは困難であった。
【０００６】
そこで、本発明は、このような問題に鑑みてなされたものであり、その目的とするところは、質問者の質問に情報の不足があったとしても、質問者の意図に応じた適切な回答を返すことができる、対話システム、方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
このような目的を達成するために、本発明の第１の態様は、対話システムである。このシステムは、ユーザ端末から質問を受信する質問受信部と、予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、を算出する確信度算出部と、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するアクション決定部と、を備える。
【０００８】
本発明の第２の態様は、対話システムによって実施される方法である。この方法は、ユーザ端末から質問を受信するステップと、予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、を算出するステップと、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するステップと、を含む。
【０００９】
本発明の第３の態様は、プログラムである。このプログラムは、コンピュータに第２の態様の方法を実行させるプログラムである。
【発明の効果】
【００１０】
本発明によれば、質問者が意図する質問に絞り込むことができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る対話システムを含む全体の概要図である。
【図２】本発明の一実施形態に係る対話システムの機能ブロック図である。
【図３】本発明の一実施形態に係るＦＡＱデータベースの一例である。
【図４】本発明の一実施形態に係る確信度データベースの一例である。
【図５】本発明の一実施形態に係るアクションデータベースの一例である。
【図６】本発明の一実施形態に係る対話システムにおける対話の処理フローの一例を示すフローチャートである。
【図７】本発明の一実施形態に係る対話システムにおけるアクションを決定する処理フローの一例を示すフローチャートである。
【図８】本発明の一実施形態に係る対話システムにおけるアクションを決定する処理フローの一例を示すフローチャートである。
【図９】本発明の一実施形態に係る対話システムにおけるアクションを決定する処理フローの一例を示すフローチャートである。
【図１０】本発明の一実施形態に係る対話システムにおけるアクションを決定する処理フローの一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。なお、本明細書では、テキストによるチャットを用いた実施形態を説明するが、本発明は、音声によるチャット（例えば、音声チャット、ボイスチャットとも呼ばれる）を用いた実施形態にも適用可能である。
【００１３】
図１は、本発明の一実施形態に係る対話システム１０１を含む全体の概要図である。概要図には、対話システム１０１、および、１または複数のユーザ端末１０２が含まれる。対話システム１０１とユーザ端末１０２は、任意のネットワークを介して互いにデータを送受信することができる。以下、それぞれについて説明する。
【００１４】
対話システム１０１は、質問をユーザ端末１０２から受信して、質問に対する回答をユーザ端末１０２へ送信するためのコンピュータである。対話システム１０１は、ユーザ端末１０２からの質問に対して問い返し、その問い返しに対する返答をもとに質問の内容を絞り込んでいくことができる。具体的には、対話システム１０１は、ユーザ端末１０２から、質問データを受信することができる。また、対話システム１０１は、ユーザ端末１０２へ、質問に対する問い返しデータを送信することができる。また、対話システム１０１は、ユーザ端末１０２から、問い返しに対する返答データを受信することができる。また、対話システム１０１は、ユーザ端末１０２へ、質問に対する回答データを送信することができる。なお、対話システム１０１の詳細については、図２を参照しながら説明する。
【００１５】
ユーザ端末１０２は、質問をする質問者（以下、ユーザとも言う）が使用する、パーソナルコンピュータ、タブレット、スマートフォンなどの任意のコンピュータである。具体的には、ユーザ端末１０２は、対話システム１０１へ、ユーザによって入力された質問データを送信することができる。また、ユーザ端末１０２は、対話システム１０１から、質問に対する問い返しデータを受信することができる。また、ユーザ端末１０２は、対話システム１０１へ、ユーザによって入力された、問い返しに対する返答データを送信することができる。また、ユーザ端末１０２は、対話システム１０１から、質問に対する回答データを受信することができる。
【００１６】
図２は、本発明の一実施形態に係る対話システム１０１の機能ブロック図である。対話システム１０１には、質問受信部２０１、確信度算出部２０２、アクション決定部２０３、ＦＡＱデータベース２０４、確信度データベース２０５、アクションデータベース２０６が含まれる。対話システム１０１は、プロセッサおよびメモリを含むコンピュータである。また、対話システム１０１は、質問受信部２０１、確信度算出部２０２、アクション決定部２０３を動作させるためのプログラム、または、後述する処理を実行するためのプログラム、を格納した記憶媒体を含む。
【００１７】
質問受信部２０１は、ユーザ端末１０２から、ユーザによって入力された質問データを受信することができる。質問データは、ユーザが質問したいことを示す、１または複数の文字を含むデータである。質問受信部２０１は、受信した質問データを確信度算出部２０２が参照できるようにメモリ（図示せず）に記憶させることができる。
【００１８】
確信度算出部２０２は、質問受信部２０１が受信した質問（以下、“ユーザからの質問”とも言う）の、ＦＡＱ内の質問に対する確信度、および、ＦＡＱ内の質問のトピックに対する確信度を算出することができる。具体的に確信度算出部２０２を説明する前に、ＦＡＱデータベース２０４について説明する。
【００１９】
ＦＡＱデータベース２０４は、ＦＡＱ（Frequently Asked Questions）、および、各質問のトピックを管理するためのデータベースである。上述のとおり、ＦＡＱは、よくある質問とその回答を集めた問答集である。ＦＡＱデータベース２０４内のＦＡＱは、ヘルプデスクやコールセンターのＦＡＱに限らず、一方の者による任意の発言と、その発言に対する他方の者による発言と、からなる発言の対を集めたものであってよい。図３を参照しながら、ＦＡＱデータベース２０４の詳細を説明する。
【００２０】
図３は、本発明の一実施形態に係るＦＡＱデータベース２０４の一例である。ＦＡＱデータベース２０４には、質問ごとに、「質問」、「トピック１」・・・「トピックｎ」、「回答」などのデータが格納されている。「質問」は、ユーザから質問されるであろうと想定される、よくある質問である。「トピック１」・・・「トピックｎ」（ｎは、２以上の整数である）は、その質問の内容（つまり、その質問がどのようなことに関するのか）を示す。トピックは、１または複数の文字を含む。例えば、トピックは、単語または文である。トピックは、トピック１からトピックｎへの順に上層から下層へと階層化されるように分類されている。つまり、上層から下層へのトピックになるにつれて、トピックは、質問のより詳細な内容を示すようになる。「トピック１」〜「トピックｎ」は、人間によって手動で付与されてもよいし、あるいは、コンピュータによって自動で付与されてもよい。「回答」は、その質問に対する回答である。
【００２１】
ここで、「トピック」について説明する。上述のとおり、「トピック」は、質問の内容を示している。まず、ＦＡＱデータベース２０４内の全ての質問は、「トピック１」に従って分類され、次に、「トピック２」に従って分類され、・・・、次に、「トピックｎ」に従って分類される。そして、それぞれの質問に、該当するトピック（つまり、トピック１〜トピックｎ）が付与される。このように、本発明の一実施形態に係る対話システム１０１では、予め、よくある質問およびその回答と、その質問の階層化されたトピックとが登録されている。
【００２２】
なお、ある質問のトピックｋ＋１（ｋは、１以上の整数である）は、そのある質問のトピックｋを細分化したものとすることができる。あるいは、ある質問のトピックｋ（ｋは、１以上の整数である）と、別の質問のトピックｋ以外のトピック（例えば、トピックｋ＋１）とが、同一の内容であってもよい。つまり、例えば、質問１の「トピック２」と質問２の「トピック３」とが同一の内容であってもよい。また、上位のトピックが異なる質問の下位のトピックが、同一の内容であってもよい。つまり、例えば、「トピック１」が異なる質問３と質問４の「トピック２」が同一の内容であってもよい。また、下位のトピックが異なる質問の上位のトピックが、同一の内容であってもよい。つまり、例えば、「トピック１」が同一の質問５と質問６の「トピック２」が異なる内容であってもよい。
【００２３】
図２の確信度算出部２０２の説明に戻る。確信度算出部２０２は、ユーザからの質問の、ＦＡＱ内の質問に対する確信度を算出することができる。また、確信度算出部２０２は、ユーザからの質問の、ＦＡＱ内の質問のトピックに対する確信度を算出することができる。具体的には、確信度算出部２０２は、例えばディープラーニング（深層学習とも呼ばれる）によって、ユーザからの質問の、ＦＡＱデータベース２０４内の各質問に対する確信度を算出することができる。つまり、確信度算出部２０２は、ＦＡＱ内の全ての質問に対して確信度を算出することができる。また、確信度算出部２０２は、例えばディープラーニングによって、ユーザからの質問の、ＦＡＱデータベース２０４内の質問の各トピックに対する確信度を算出することができる。つまり、確信度算出部２０２は、ＦＡＱ内の全てのトピックに対して確信度を算出することができる。確信度算出部２０２は、算出した確信度を確信度データベース２０５に格納することができる。
【００２４】
ここで、確信度について説明する。確信度とは、“ユーザからの質問がＦＡＱ内の質問に近い（つまり、類似している）度合いを示す数値”である。また、確信度とは、“ユーザからの質問がＦＡＱ内の質問のトピックに近い（つまり、類似している）度合いを示す数値”である。ユーザからの質問とＦＡＱ内の質問は、確信度の数値が高いほど、類似していると判断される。また、ユーザからの質問とＦＡＱ内の質問のトピックは、確信度の数値が高いほど、類似していると判断される。確信度は、ユーザからの質問の文とＦＡＱ内の質問の文とがどのぐらい類似しているかに基づいて算出されてもよい。また、確信度は、ユーザからの質問の文とＦＡＱ内の質問のトピックの単語または文とがどのぐらい類似しているかに基づいて算出されてもよい。確信度は、その質問をしたユーザおよび他のユーザのうちの少なくとも一方の過去のコンピュータとの対話の内容に基づいて算出されてもよい。
【００２５】
確信度データベース２０５は、確信度算出部２０２が算出した確信度を管理するためのデータベースである。図４に示されるように、確信度データベース２０５には、ユーザからの質問の、ＦＡＱ内の各質問に対する確信度、および、ＦＡＱ内の質問の各トピックに対する確信度が格納されている。
【００２６】
アクション決定部２０３は、確信度に基づいて、ユーザからの質問に対して問い返すこと、および、ユーザからの質問に対して回答することができる。具体的には、アクション決定部２０３は、確信度データベース２０５に格納された確信度がアクションデータベース２０６に格納された確信度の条件を満たすか否かに基づいて、問い返しおよび回答を実行することができる。
【００２７】
アクションデータベース２０６は、ユーザからの質問のＦＡＱ内の質問に対する確信度およびユーザからの質問のＦＡＱ内の質問のトピックに対する確信度に応じて対話システム１０１が実行すべき動作を管理するためのデータベースである。図５を参照しながら、アクションデータベース２０６の詳細を説明する。
【００２８】
図５は、本発明の一実施形態に係るアクションデータベース２０６の一例である。アクションデータベース２０６には、「確信度」の条件と、その条件が満たされるときに対話システム１０１が実行すべき「アクション」が格納されている。以下、「確信度」の条件ごとに説明する。
【００２９】
＜質問の確信度が閾値以上＞
ユーザからの質問の、ＦＡＱ内のある質問に対する確信度が、閾値以上であるという条件である。この条件が満たされると、アクション決定部２０３は、ＦＡＱ内のその質問（つまり、確信度が閾値以上である質問）の回答データをユーザ端末１０２へ送信することができる。
【００３０】
＜複数の質問の確信度の和が閾値以上＞
ユーザからの質問の、ＦＡＱ内の複数の質問に対する確信度の和が、閾値以上であるという条件である。この条件が満たされると、アクション決定部２０３は、ＦＡＱ内のそれらの複数の質問（つまり、確信度の和が閾値以上である複数の質問）のうちのいずれかがユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。例えば、アクション決定部２０３は、＜質問の確信度が閾値以上＞ではなかった場合に、＜複数の質問の確信度の和が閾値以上＞であるか否かを判断することができる。
【００３１】
＜トピック１とトピック２の確信度が両方とも閾値以上＞
ユーザからの質問の、あるトピック１に対する確信度が閾値以上であり、かつ、あるトピック２に対する確信度が閾値以上であるという条件である。例えば、アクション決定部２０３は、＜複数の質問の確信度の和が閾値以上＞ではなかった場合に、＜トピック１とトピック２の確信度が両方とも閾値以上＞であるか否かを判断することができる。
【００３２】
（１）トピック１とトピック２の確信度が両方とも閾値以上であるという条件が満たされ、かつ、そのトピック１とそのトピック２との両方を有する質問がＦＡＱ内に存在するとする。そうすると、アクション決定部２０３は、ＦＡＱ内のその質問（つまり、トピック１とトピック２との両方を有する質問）がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００３３】
（２）トピック１とトピック２の確信度が両方とも閾値以上であるという条件が満たされ、かつ、そのトピック１とそのトピック２との両方を有する質問がＦＡＱ内に存在しないとする。そうすると、アクション決定部２０３は、そのトピック１（つまり、確信度が閾値以上であるトピック１）を有する質問をＦＡＱ内から抽出することができる。また、アクション決定部２０３は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。つまり、ユーザに提案されるトピック２の確信度は、閾値未満である。
【００３４】
＜トピック２の確信度が閾値以上＞
ユーザからの質問の、あるトピック２に対する確信度が閾値以上であるという条件である。この条件が満たされると、アクション決定部２０３は、そのトピック２（つまり、確信度が閾値以上であるトピック２）をトピック２’として、メモリ（図示せず）に記憶させることができる。例えば、アクション決定部２０３は、＜トピック１とトピック２の確信度が両方とも閾値以上＞ではなかった場合に、＜トピック２の確信度が閾値以上＞であるか否かを判断することができる。
【００３５】
（１）トピック２の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話（つまり、既に実行された、質問、質問に対する問い返し、問い返しに対する返答）によってトピック１’（後述する）が記憶されていないとする。そうすると、アクション決定部２０３は、そのトピック２（つまり、確信度が閾値以上であるトピック２）を有する質問をＦＡＱ内から抽出することができる。また、アクション決定部２０３は、抽出した質問に付与されているトピック１のうちのいずれかがユーザが意図しているトピック１ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００３６】
（２）トピック２の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話によってトピック１’が記憶されており、かつ、そのトピック１’とそのトピック２との両方を有する質問がＦＡＱ内に存在するとする。そうすると、アクション決定部２０３は、ＦＡＱ内のその質問（つまり、トピック１’とトピック２との両方を有する質問）がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００３７】
（３）トピック２の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話によってトピック１’が記憶されており、かつ、そのトピック１’とそのトピック２との両方を有する質問がＦＡＱ内に存在しないとする。そうすると、アクション決定部２０３は、そのトピック２（つまり、確信度が閾値以上であるトピック２）を有する質問をＦＡＱ内から抽出することができる。また、アクション決定部２０３は、抽出した質問に付与されているトピック１のうちのいずれかがユーザが意図しているトピック１ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００３８】
＜トピック１の確信度が閾値以上＞
ユーザからの質問の、あるトピック１に対する確信度が閾値以上であるという条件である。この条件が満たされると、アクション決定部２０３は、そのトピック１（つまり、確信度が閾値以上であるトピック１）をトピック１’として、メモリ（図示せず）に記憶させることができる。例えば、アクション決定部２０３は、＜トピック２の確信度が閾値以上＞ではなかった場合に、＜トピック１の確信度が閾値以上＞であるか否かを判断することができる。
【００３９】
（１）トピック１の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話（つまり、既に実行された、質問、質問に対する問い返し、問い返しに対する返答）によってトピック２’が記憶されていないとする。そうすると、アクション決定部２０３は、そのトピック１（つまり、確信度が閾値以上であるトピック１）を有する質問をＦＡＱ内から抽出することができる。また、アクション決定部２０３は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００４０】
（２）トピック１の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話によってトピック２’が記憶されており、かつ、そのトピック１とそのトピック２’との両方を有する質問がＦＡＱ内に存在するとする。そうすると、アクション決定部２０３は、ＦＡＱ内のその質問（つまり、トピック１とトピック２’との両方を有する質問）がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００４１】
（３）トピック１の確信度が閾値以上であるという条件が満たされ、かつ、既に実行された対話によってトピック２’が記憶されており、かつ、そのトピック１とそのトピック２’との両方を有する質問がＦＡＱ内に存在しないとする。そうすると、アクション決定部２０３は、そのトピック１（つまり、確信度が閾値以上であるトピック１）を有する質問をＦＡＱ内から抽出することができる。また、アクション決定部２０３は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信することができる。
【００４２】
＜上記以外＞
上述のいずれの条件にも該当しない場合、アクション決定部２０３は、質問の内容が不明であるため詳細な内容を入力するよう促すメッセージをユーザ端末１０２へ送信することができる。
【００４３】
このように、アクション決定部２０３は、アクションデータベース２０６に基づいて、所定の動作を実行することができる。本発明の一実施形態では、すでに対話の中でトピック１（またはトピック２）が特定されると、それらがメモリ（図示せず）に記憶される。そして、記憶されたトピック１（またはトピック２）が、アクションを決定するために用いられる。
【００４４】
図６は、本発明の一実施形態に係る対話システムにおける対話の処理フローの一例を示すフローチャートである。
【００４５】
ステップ６０１（Ｓ６０１）で、対話システム１０１は、ユーザ端末１０２から、質問データを受信する。
【００４６】
ステップ６０２（Ｓ６０２）で、対話システム１０１は、Ｓ６０１で受信した質問の、ＦＡＱデータベース２０４内の質問に対する確信度、および、ＦＡＱデータベース２０４内の質問のトピックに対する確信度を算出する。そして、対話システム１０１は、算出した確信度を確信度データベース２０５に格納する。
【００４７】
ステップ６０３（Ｓ６０３）で、対話システム１０１は、Ｓ６０２で算出した確信度およびアクションデータベース２０６に基づいて、アクションを決定する。
【００４８】
ステップ６０４（Ｓ６０４）で、対話システム１０１は、Ｓ６０３で決定したアクション（つまり、問い返し、回答など）を実行する。
【００４９】
ステップ６０５（Ｓ６０５）で、対話システム１０１は、Ｓ６０４のアクションが回答であるかを判断する。回答であった場合は、処理を終了し、回答でなかった場合はＳ６０１へ進む。回答でなかった場合はＳ６０１へ進み、対話システム１０１は、Ｓ６０４の問い返しに対する返答（つまり、質問やトピック）を、ユーザからの質問とみなして、以降の処理を実行する。
【００５０】
図７、図８、図９、図１０は、本発明の一実施形態に係る対話システムにおけるアクションを決定する処理フローの一例を示すフローチャートである。
【００５１】
ステップ７０１（Ｓ７０１）で、対話システム１０１は、ユーザからの質問の、ＦＡＱ内のある質問に対する確信度が、閾値以上であるか否かを判断する。閾値以上である場合には、Ｓ７０２へ進み、閾値未満である場合には、Ｓ７０３へ進む。
【００５２】
ステップ７０２（Ｓ７０２）で、対話システム１０１は、Ｓ７０１で確信度が閾値以上であったＦＡＱ内の質問の回答データをユーザ端末１０２へ送信する。
【００５３】
ステップ７０３（Ｓ７０３）で、対話システム１０１は、ユーザからの質問の、ＦＡＱ内の複数の質問に対する確信度の和が、閾値以上であるか否かを判断する。閾値以上である場合には、Ｓ７０４へ進み、閾値未満である場合には、図８へ進む。
【００５４】
ステップ７０４（Ｓ７０４）で、対話システム１０１は、Ｓ７０３で確信度の和が閾値以上であったＦＡＱ内の複数の質問のうちのいずれかがユーザが意図している質問ではないか提案するための問い返しデータを、ユーザ端末１０２へ送信する。
【００５５】
その後、対話システム１０１は、ユーザ端末１０２から、Ｓ７０４で提案した質問のうちユーザが意図していた質問を示す返答データを受信したとすると、再度確信度（つまり、返答で示される質問についての確信度）を算出し、Ｓ７０１へ進む。そして、Ｓ７０１にて閾値以上と判断された場合、Ｓ７０２にて回答データをユーザ端末１０２へ送信する。
【００５６】
図８のステップ８０１（Ｓ８０１）で、対話システム１０１は、ユーザからの質問の、あるトピック１に対する確信度が閾値以上であり、かつ、あるトピック２に対する確信度が閾値以上であるか否かを判断する。閾値以上である場合には、Ｓ８０２へ進み、閾値未満である場合には、図９へ進む。
【００５７】
ステップ８０２（Ｓ８０２）で、対話システム１０１は、Ｓ８０１で確信度が閾値以上であったトピック１とトピック２との両方を有する質問がＦＡＱ内に存在するか否かを判断する。存在する場合には、Ｓ８０３へ進み、存在しない場合には、Ｓ８０４へ進む。
【００５８】
ステップ８０３（Ｓ８０３）で、対話システム１０１は、Ｓ８０２でＦＡＱ内に存在すると判断した質問がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。
【００５９】
その後、対話システム１０１は、ユーザ端末１０２から、Ｓ８０３で提案した質問のうちユーザが意図していた質問を示す返答データを受信したとすると、再度確信度（つまり、返答で示される質問についての確信度）を算出し、Ｓ７０１にて閾値以上と判断された場合、Ｓ７０２にて回答データをユーザ端末１０２へ送信する。
【００６０】
ステップ８０４（Ｓ８０４）で、対話システム１０１は、Ｓ８０１で確信度が閾値以上であったトピック１を有する質問をＦＡＱ内から抽出する。そして、対話システム１０１は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。その後、対話システム１０１が、ユーザ端末１０２から、提案したトピック２のうちユーザが意図していたトピック２を示す返答データを受信すると、ユーザが意図していたトピック２をトピック２’として、メモリ（図示せず）に記憶させ、再度確信度（つまり、返答で示されるトピック２（すなわち、メモリに記憶されたトピック２’）を、ユーザからの質問とみなす。そのみなされた質問についての確信度）を算出し、Ｓ７０１へ進む。
【００６１】
図９のステップ９０１（Ｓ９０１）で、対話システム１０１は、ユーザからの質問の、あるトピック２に対する確信度が閾値以上であるか否かを判断する。閾値以上である場合には、Ｓ９０２へ、閾値未満である場合には、図１０へ進む。
【００６２】
ステップ９０２（Ｓ９０２）で、対話システム１０１は、Ｓ９０１で確信度が閾値以上であったトピック２をトピック２’として、メモリ（図示せず）に記憶させる。そして、対話システム１０１は、既に実行された対話によってトピック１’が記憶されているか否かを判断する。記憶されている場合には、Ｓ９０４へ、記憶されていない場合には、Ｓ９０３へ進む。
【００６３】
ステップ９０３（Ｓ９０３）で、対話システム１０１は、Ｓ９０１で確信度が閾値以上であったトピック２を有する質問をＦＡＱ内から抽出する。そして、対話システム１０１は、抽出した質問に付与されているトピック１のうちのいずれかがユーザが意図しているトピック１ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。その後、対話システム１０１が、ユーザ端末１０２から、提案したトピック１のうちユーザが意図していたトピック１を示す返答データを受信したとすると、ユーザが意図していたトピック１をトピック１’として、メモリ（図示せず）に記憶させ、再度確信度（つまり、返答で示されるトピック１（すなわち、メモリに記憶されたトピック１’）を、ユーザからの質問とみなす。そのみなされた質問についての確信度）を算出し、Ｓ７０１へ進む。
【００６４】
ステップ９０４（Ｓ９０４）で、対話システム１０１は、トピック１’とトピック２との両方を有する質問がＦＡＱ内に存在するか否かを判断する。存在する場合には、Ｓ９０５へ、存在しない場合には、Ｓ９０６へ進む。
【００６５】
ステップ９０５（Ｓ９０５）で、対話システム１０１は、Ｓ９０４でＦＡＱ内に存在すると判断した質問がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。
【００６６】
その後、対話システム１０１は、ユーザ端末１０２から、Ｓ９０５で提案した質問のうちユーザが意図していた質問を示す返答データを受信したとすると、再度確信度（つまり、返答で示される質問についての確信度）を算出し、Ｓ７０１にて閾値以上と判断された場合、Ｓ７０２にて回答データをユーザ端末１０２へ送信する。
【００６７】
ステップ９０６（Ｓ９０６）で、対話システム１０１は、Ｓ９０１で確信度が閾値以上であったトピック２を有する質問をＦＡＱ内から抽出する。そして、対話システム１０１は、抽出した質問に付与されているトピック１のうちのいずれかがユーザが意図しているトピック１ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。その後、対話システム１０１が、ユーザ端末１０２から、提案したトピック１のうちユーザが意図していたトピック１を示す返答データを受信したとすると、ユーザが意図していたトピック１をトピック１’として、メモリ（図示せず）に記憶させ、再度確信度（つまり、返答で示されるトピック１（すなわち、メモリに記憶されたトピック１’）を、ユーザからの質問とみなす。そのみなされた質問についての確信度）を算出し、Ｓ７０１へ進む。
【００６８】
図１０のステップ１００１（Ｓ１００１）で、対話システム１０１は、ユーザからの質問の、あるトピック１に対する確信度が閾値以上であるか否かを判断する。閾値以上である場合には、Ｓ１００２へ、閾値未満である場合には、質問の内容が不明であるため詳細な内容を入力するよう促すメッセージをユーザ端末１０２へ送信して、処理を終了する。
【００６９】
ステップ１００２（Ｓ１００２）で、対話システム１０１は、Ｓ１００１で確信度が閾値以上であったトピック１をトピック１’として、メモリ（図示せず）に記憶させる。そして、対話システム１０１は、既に実行された対話によってトピック２’が記憶されているか否かを判断する。記憶されている場合には、Ｓ１００４へ、記憶されていない場合には、Ｓ１００３へ進む。
【００７０】
ステップ１００３（Ｓ１００３）で、対話システム１０１は、Ｓ１００１で確信度が閾値以上であったトピック１を有する質問をＦＡＱ内から抽出する。そして、対話システム１０１は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。その後、対話システム１０１が、ユーザ端末１０２から、提案したトピック２のうちユーザが意図していたトピック２を示す返答データを受信したとすると、ユーザが意図していたトピック２をトピック２’として、メモリ（図示せず）に記憶させ、再度確信度（つまり、返答で示されるトピック２（すなわち、メモリに記憶されたトピック２’）を、ユーザからの質問とみなす。そのみなされた質問についての確信度）を算出し、Ｓ７０１へ進む。
【００７１】
ステップ１００４（Ｓ１００４）で、対話システム１０１は、トピック１とトピック２’との両方を有する質問がＦＡＱ内に存在するか否かを判断する。存在する場合には、Ｓ１００５へ、存在しない場合には、Ｓ１００６へ進む。
【００７２】
ステップ１００５（Ｓ１００５）で、対話システム１０１は、Ｓ１００４でＦＡＱ内に存在すると判断した質問がユーザが意図している質問ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。
【００７３】
その後、対話システム１０１は、ユーザ端末１０２から、Ｓ１００５で提案した質問のうちユーザが意図していた質問を示す返答データを受信したとすると、再度確信度（つまり、返答で示される質問についての確信度）を算出し、Ｓ７０１にて閾値以上と判断された場合、Ｓ７０２にて回答データをユーザ端末１０２へ送信する。
【００７４】
ステップ１００６（Ｓ１００６）で、対話システム１０１は、Ｓ１００１で確信度が閾値以上であったトピック１を有する質問をＦＡＱ内から抽出する。そして、対話システム１０１は、抽出した質問に付与されているトピック２のうちのいずれかがユーザが意図しているトピック２ではないかと提案するための問い返しデータを、ユーザ端末１０２へ送信する。その後、対話システム１０１が、ユーザ端末１０２から、提案したトピック２のうちユーザが意図していたトピック２を示す返答データを受信したとすると、ユーザが意図していたトピック２をトピック２’として、メモリ（図示せず）に記憶させ、再度確信度（つまり、返答で示されるトピック２（すなわち、メモリに記憶されたトピック２’）を、ユーザからの質問とみなす。そのみなされた質問についての確信度）を算出し、Ｓ７０１へ進む。
【００７５】
このように、本発明の一実施形態では、ユーザからの質問の、ＦＡＱ内の質問に対する確信度、および、ユーザからの質問の、ＦＡＱ内の質問のトピックに対する確信度のうちの少なくとも一方に基づいて、ユーザからの質問を絞り込んでいくことができる。
【００７６】
ここまで、本発明の実施形態について説明したが、上記実施形態はあくまで一例であり、本発明は上述した実施形態に限定されず、その技術的思想の範囲内において種々異なる形態にて実施されてよいことは言うまでもない。
【００７７】
また、本発明の範囲は、図示され記載された例示的な実施形態に限定されるものではなく、本発明が目的とするものと均等な効果をもたらす全ての実施形態をも含む。さらに、本発明の範囲は、各請求項により画される発明の特徴の組み合わせに限定されるものではなく、全ての開示されたそれぞれの特徴のうち特定の特徴のあらゆる所望する組み合わせによって画されうる。
【符号の説明】
【００７８】
１０１  対話システム
１０２  ユーザ端末
２０１  質問受信部
２０２  確信度算出部
２０３  アクション決定部
２０４  ＦＡＱデータベース
２０５  確信度データベース
２０６  アクションデータベース
【図１】
2020091579.tif 000003
【図２】
2020091579.tif 000004
【図３】
2020091579.tif 000005
【図４】
2020091579.tif 000006
【図５】
2020091579.tif 000007
【図６】
2020091579.tif 000008
【図７】
2020091579.tif 000009
【図８】
2020091579.tif 000010
【図９】
2020091579.tif 000011
【図１０】
2020091579.tif 000012
【手続補正書】
【提出日】令和2年3月5日(2020.3.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザ端末から質問を受信する質問受信部と、
予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、前記予め登録されている質問に対する前記受信した質問の第３の確信度とを算出する確信度算出部と、
前記第３の確信度が閾値未満であったときに、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するアクション決定部と
を備え、
前記アクション決定部は、
前記第１の確信度および前記第２の確信度が両方とも閾値以上であったとき、前記第１のトピックおよび前記第２のトピックを有する前記予め登録されている質問が存在するかどうかに基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するかどうかを制御する、ことを特徴とする対話システム。
【請求項２】
前記第１の確信度は、前記質問の文と前記第１のトピックの単語または文とがどのぐらい類似しているかに基づいて算出され、前記第２の確信度は、前記質問の文と前記第２のトピックの単語または文とがどのぐらい類似しているかに基づいて算出されることを特徴とする請求項１に記載の対話システム。
【請求項３】
前記第１のトピックおよび前記第２のトピックは、前記質問の内容を示し、前記第１のトピックおよび前記第２のトピックは、階層化されるように分類されていることを特徴とする請求項１または２に記載の対話システム。
【請求項４】
前記アクション決定部は、前記問い返しに対する返答に基づいて、前記ユーザ端末へ前記質問に対する回答を送信するように構成されたことを特徴とする請求項１から３のいずれか一項に記載の対話システム。
【請求項５】
前記アクション決定部は、
前記第１の確信度および前記第２の確信度が両方とも閾値以上ではない場合、前記第２の確信度が閾値以上であるか否かを判定し、前記第２の確信度が閾値以上であるという判定に応答して、前記第２のトピックを別の第２のトピックとして記憶し、
前記第１の確信度および前記第２の確信度が両方とも閾値以上ではなく、かつ前記第２の確信度が閾値以上ではない場合、前記第１の確信度が閾値以上であるか否かを判定し、前記第１の確信度が閾値以上であるという判定に応答して、前記第１のトピックを別の第１のトピックとして記憶する
ようにさらに構成される、請求項１に記載の対話システム。
【請求項６】
前記アクション決定部は、前記第１の確信度および前記第２の確信度が両方とも閾値以上ではなく、かつ前記第２の確信度が閾値以上である場合、前記別の第１のトピックおよび前記第２のトピックを有する前記予め登録されている質問が存在するかどうかに基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するかどうかを制御するようにさらに構成される、請求項５に記載の対話システム。
【請求項７】
前記アクション決定部は、前記第１の確信度および前記第２の確信度が両方とも閾値以上ではなく、かつ前記第２の確信度が閾値以上ではなく、かつ前記第１の確信度が閾値以上である場合、前記第１のトピックおよび前記別の第２のトピックを有する前記予め登録されている質問が存在するかどうかに基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するかどうかを制御するようにさらに構成される、請求項５に記載の対話システム。
【請求項８】
対話システムが実施する方法であって、
ユーザ端末から質問を受信するステップと、
予め登録されている質問の第１のトピックに対する前記受信した質問の第１の確信度と、前記予め登録されている質問の第２のトピックに対する前記受信した質問の第２の確信度と、前記予め登録されている質問に対する前記受信した質問の第３の確信度とを算出するステップと、
前記第３の確信度が閾値未満であったときに、前記第１の確信度および前記第２の確信度に基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するステップと
を含み、
前記送信するステップは、
前記第１の確信度および前記第２の確信度が両方とも閾値以上であったとき、前記第１のトピックおよび前記第２のトピックを有する前記予め登録されている質問が存在するかどうかに基づいて、前記ユーザ端末へ前記質問に対する問い返しを送信するかどうかを制御することをさらに含む、ことを特徴とする方法。
【請求項９】
請求項８に記載の方法をコンピュータに実行させるためのプログラム。