(57)【特許請求の範囲】
【請求項１】
応答情報と想定質問情報との対応関係と、前記応答情報を抽象度毎に階層構造として記憶する記憶手段と、
前記想定質問情報毎に、質問情報との一致率を算出する一致率算出手段と、
前記応答情報毎に、該応答情報に対応する想定質問情報の一致率の和を求め、該和に対して該応答情報の存在する階層に応じた値を乗じて期待値を算出する期待値算出手段と、
前記期待値に応じて、応答情報を決定する決定手段
を備える応答装置。
【請求項２】
前記決定手段は、前記期待値が上位から予め定められた順位までの応答情報と該応答情報の階層構造における上又は下の階層に位置する応答情報を、前記質問情報に対応する応答情報として決定する
ことを特徴とする請求項１に記載の応答装置。
【請求項３】
前記決定手段は、前記期待値に対応する応答情報の文字数が多くなるほど小さくなる値を該期待値に乗じて算出した評価値に基づいて、前記質問情報に対応する応答情報を決定する
ことを特徴とする請求項１又は２に記載の応答装置。
【請求項４】
応答情報と想定質問情報との対応関係と、前記応答情報を抽象度毎に階層構造として記憶する記憶手段を具備するコンピュータを、
前記想定質問情報毎に、質問情報との一致率を算出する一致率算出手段と、
前記応答情報毎に、該応答情報に対応する想定質問情報の一致率の和を求め、該和に対して該応答情報の存在する階層に応じた値を乗じて期待値を算出する期待値算出手段と、
前記期待値に応じて、応答情報を決定する決定手段
として機能させるための応答プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、応答装置及び応答プログラムに関する。
【背景技術】
【０００２】
特許文献１には、電子メールシステムを用いたヘルプデスク業務等、大量の電子メールを取扱う電子メール管理システムにおいて、問い合わせがあった場合、過去に受信した類似する電子メール案件を利用者に提示でき、かつ問い合わせメールに対する回答メールも自動的に送信することができるようにすることを課題とし、着信メールと類似した過去の受信メール、又は過去の受信メールとこの受信メールに対する返信メールの組を検索し、検索された類似メールの類似度が予め設定した閾値より高ければ、この類似メールにリンクした返信メール等を自動返送し、ユーザーが前記着信メールを開いた時に、前記検索しておいた類似メールをユーザーに提示することが開示されている。
【０００３】
特許文献２には、通信ネットワークを介して受け付けたユーザーの問い合わせに対して、迅速で的確な回答をすることができるコンタクトセンターシステムを提供することを課題とし、問い合わせと回答とを対応づけたデータベースを用意し、ユーザーからの問い合わせから抽出された情報を用いて関連する回答をデータベースから検索して自動的に返信し、データベースに回答が無い場合は、ユーザーからの問い合わせから抽出された情報を用いて関連する関連部門のリストを作成し、リストは、ユーザーからの問い合わせとの一致度が高い関連部門ほど上位になるように作成され、所定の条件を超えて忙しい関連部門は下位に回され、ユーザーからの問い合わせは、リストの上位から順に自動的に転送され、関連部門のいずれかから回答が得られたとき、回答はユーザーが希望する通信手段で配信されることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２７５１３７号公報
【特許文献２】特開２００４−１９２５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、質問情報に対応する応答情報を決定する場合に、想定質問情報との一致率だけで応答情報を決定する場合に比較して、質問者にとってより満足度の高い応答情報を決定するようにした応答装置及び応答プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、応答情報と想定質問情報との対応関係と、前記応答情報を抽象度毎に階層構造として記憶する記憶手段と、前記想定質問情報毎に、質問情報との一致率を算出する一致率算出手段と、前記応答情報毎に、該応答情報に対応する想定質問情報の一致率の和を求め、該和に対して該応答情報の存在する階層に応じた値を乗じて期待値を算出する期待値算出手段と、前記期待値に応じて、応答情報を決定する決定手段を備える応答装置である。
【０００８】
請求項２の発明は、前記決定手段は、前記期待値が上位から予め定められた順位までの応答情報と該応答情報の階層構造における上又は下の階層に位置する応答情報を、前記質問情報に対応する応答情報として決定することを特徴とする請求項１に記載の応答装置である。
【０００９】
請求項３の発明は、前記決定手段は、前記期待値に対応する応答情報の文字数が多くなるほど小さくなる値を該期待値に乗じて算出した評価値に基づいて、前記質問情報に対応する応答情報を決定することを特徴とする請求項１又は２に記載の応答装置である。
【００１０】
請求項４の発明は、応答情報と想定質問情報との対応関係と、前記応答情報を抽象度毎に階層構造として記憶する記憶手段を具備するコンピュータを、前記想定質問情報毎に、質問情報との一致率を算出する一致率算出手段と、前記応答情報毎に、該応答情報に対応する想定質問情報の一致率の和を求め、該和に対して該応答情報の存在する階層に応じた値を乗じて期待値を算出する期待値算出手段と、前記期待値に応じて、応答情報を決定する決定手段として機能させるための応答プログラムである。
【発明の効果】
【００１２】
請求項１の応答装置によれば、質問情報に対応する応答情報を決定する場合に、想定質問情報との一致率だけで応答情報を決定する場合に比較して、質問者にとってより満足度の高い応答情報を決定することができる。
【００１４】
請求項２の応答装置によれば、上又は下の階層に位置する応答情報も含めて、質問情報に対応する応答情報として決定することができる。
【００１５】
請求項３の応答装置によれば、期待値の他に応答情報の文字数が少ないものを選ばれやすくして、応答情報を決定することができる。
【００１６】
請求項４の応答プログラムによれば、質問情報に対応する応答情報を決定する場合に、想定質問情報との一致率だけで応答情報を決定する場合に比較して、質問者にとってより満足度の高い応答情報を決定することができる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態による処理例を示すフローチャートである。
【図３】本実施の形態による処理例を示すフローチャートである。
【図４】質問テーブルのデータ構造例を示す説明図である。
【図５】応答テーブルのデータ構造例を示す説明図である。
【図６】階層構造の例を示す説明図である。
【図７】満足度テーブルのデータ構造例を示す説明図である。
【図８】階層構造の例を示す説明図である。
【図９】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、すべての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２０】
本実施の形態である応答装置は、質問情報に対応する応答情報を決定するものであって、図１の例に示すように、質問受付モジュール１１０、質問検索モジュール１２０、質問一致率計算モジュール１３０、質問ＤＢ（ＤａｔａＢａｓｅ）１４０、最終応答生成モジュール１５０、応答満足度期待値推定モジュール１６０、階層型応答ＤＢ１７０、応答提示モジュール１８０を有している。
この応答装置は、ユーザーからの質問（質問には、疑問又は理由を問いただすことの他に、要求、これに類似するものを含む）に対して、応答（応答には、回答、これに類似するものを含む）を行うものである。
【００２１】
質問受付モジュール１１０は、質問検索モジュール１２０と接続されている。質問受付モジュール１１０は、質問情報を受け付ける。質問情報を受け付ける形態としては、例えば、ユーザーから送信されてきた電子メール（以下、単にメールともいう）から質問情報を抽出すること、チャット、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋｉｎｇ  Ｓｅｒｖｉｃｅ）等によって受け付けたユーザーからの質問情報を抽出すること、電話によるユーザーの質問を音声認識し、その音声認識結果である質問情報を受け取ること等であってもよい。質問情報（以下、単に質問ともいう）とは、質問が記載されたテキストデータである。また、応答情報（以下、単に応答ともいう）とは、応答が記載されたテキストデータである。
【００２２】
質問ＤＢ１４０は、質問検索モジュール１２０と接続されている。質問ＤＢ１４０は、想定質問情報を記憶する。想定質問情報とは、質問情報として予め用意されたものである。例えば、想定質問情報として、予想され得る質問情報であってもよいし、過去の質問情報であってもよいし、説明書（マニュアル）等を用いて作成された質問情報であってもよい。例えば、質問ＤＢ１４０は、質問テーブル４００を記憶している。図４は、質問テーブル４００のデータ構造例を示す説明図である。質問テーブル４００は、ＱＩＤ欄４１０、質問文欄４２０、応答（ＡＩＤ）欄４３０を有している。ＱＩＤ欄４１０は、その想定質問情報を本実施の形態において一意に識別する情報（以下、ＱＩＤ（Ｑｕｅｓｔｉｏｎ  ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）ともいう）を記憶している。質問文欄４２０は、想定質問情報を記憶している。応答（ＡＩＤ）欄４３０は、その想定質問情報に対応する応答情報を本実施の形態において一意に識別する情報（以下、ＡＩＤ（Ａｎｓｗｅｒ  ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）ともいう）を記憶している。なお、想定質問情報と応答情報とは１対１に対応していてもよいし、複数の想定質問情報と１つの応答情報とが対応していてもよいし、１つの想定質問情報と複数の応答情報とが対応していてもよい。なお、１つの想定質問情報と複数の応答情報とが対応する場合は、その想定質問情報に対して複数の応答情報を提示することになる。
説明書等を用いて作成された質問情報としては、例えば、章、節等で階層構造を有している説明書の目次を用いて質問情報を作成してもよい。具体的には、目次に「とは何か？」等の文字列を文尾に付加して想定質問情報としてもよいし、目次そのものを想定質問情報としてもよい。
【００２３】
質問一致率計算モジュール１３０は、質問検索モジュール１２０と接続されている。質問一致率計算モジュール１３０は、質問情報と応答情報に対応する想定質問情報との一致率を算出する。質問受付モジュール１１０が受け付けた質問情報と質問ＤＢ１４０に記憶されている想定質問情報との両者の間の一致率を算出する。一致率の算出としては、例えば、形態素解析を行い、両者（質問受付モジュール１１０が受け付けた質問情報、質問ＤＢ１４０に記憶されている想定質問情報）から単語を抽出し、その単語が一致する割合を算出すればよい。また、意味空間における両者のベクトルの類似度（内積）を算出してもよい。「応答情報に対応する想定質問情報」としては、例えば、質問テーブル４００と応答テーブル５００のようなデータ構造で実現することができる。
【００２４】
質問検索モジュール１２０は、質問受付モジュール１１０、質問一致率計算モジュール１３０、質問ＤＢ１４０、最終応答生成モジュール１５０と接続されている。質問検索モジュール１２０は、質問受付モジュール１１０が受け付けた質問情報に類似する想定質問情報を質問ＤＢ１４０から検索する。その場合に、質問受付モジュール１１０が受け付けた質問情報と質問ＤＢ１４０内の想定質問情報との類似性は、質問一致率計算モジュール１３０によって算出された一致率に基づいて評価する。評価とは、例えば、一致率を昇順にソートして、予め定められた順位までの想定質問情報を抽出してもよいし、予め定められた一致率以上の想定質問情報を抽出するようにしてもよい。
【００２５】
階層型応答ＤＢ１７０は、最終応答生成モジュール１５０と接続されている。階層型応答ＤＢ１７０は、応答情報を抽象度毎に階層構造として記憶する。記憶されている応答情報は、想定質問情報に対応して予め用意したものである。例えば、応答情報として、過去の質問情報に実際に応答したものであってもよいし、説明書等を用いて作成された応答情報であってもよい。例えば、階層型応答ＤＢ１７０は、応答テーブル５００、図６に示す階層構造を示すデータ構造を記憶している。図５は、応答テーブル５００のデータ構造例を示す説明図である。応答テーブル５００は、ＡＩＤ欄５１０、応答文欄５２０を有している。ＡＩＤ欄５１０は、ＡＩＤを記憶している。応答文欄５２０は、応答情報を記憶している。また、階層構造には、木構造の他に非巡回有向グラフを含む。「抽象度毎に」とは、最上階（ルート）にある応答情報を、最も抽象度が高い応答情報とし、階層が下がる毎に、その抽象度を下げた（具体性を上げた）応答情報とするものである。したがって、上位の階層にある応答情報ほど、広い範囲の質問情報に対応することができ、下位の階層にある応答情報ほど、対応する質問情報の範囲は狭くなる。また、「応答情報の階層」とは、階層構造内で応答情報（ノード）が位置している階層のことをいい、最上階からの距離（ノード数）としてもよい。具体的には、ルートの階層を階層１とし、その子の階層を階層２、さらにその子の階層（親からは孫の階層）を階層３、以下同様としたものである。例えば、応答テーブル５００の階層構造を図６に示す。図６の例については、後述する。
説明書等を用いて作成された応答情報としては、例えば、想定質問情報を作成した際に用いた説明書において、その説明書の目次を用いて応答情報を作成してもよい。具体的には、目次に「マニュアル」等の文字列を文頭、「にございます」等の文字列を文尾に付加して応答情報としてもよい。
【００２６】
応答満足度期待値推定モジュール１６０は、最終応答生成モジュール１５０と接続されている。応答満足度期待値推定モジュール１６０は、応答情報毎に、質問一致率計算モジュール１３０によって算出された一致率とその応答情報の階層に基づいて、質問者の満足度に対する期待値を算出する。具体的には、応答情報毎に、その応答情報とその応答情報の階層下にある応答情報に対応する一致率の和を求めるとともに、その和に対してその応答情報の存在する階層に応じた値を乗じることで期待値を算出する。つまり、応答情報の具体性、及び質問受付モジュール１１０が受け付けた質問情報と質問ＤＢ１４０内の想定質問情報との一致率から、質問受付モジュール１１０が受け付けた質問情報に対する応答情報の満足度の期待値を算出するものである。「応答情報に対応する一致率」とは、応答情報に対応する想定質問情報において、その想定質問情報と質問受付モジュール１１０が受け付けた質問情報との一致率のことである。
【００２７】
最終応答生成モジュール１５０は、質問検索モジュール１２０、応答満足度期待値推定モジュール１６０、階層型応答ＤＢ１７０、応答提示モジュール１８０と接続されている。最終応答生成モジュール１５０は、応答満足度期待値推定モジュール１６０によって算出された期待値に応じて、応答情報を決定する。例えば、最も高い期待値である応答情報を、出力すべき応答情報としてもよい。また、以下のようにしてもよい。
例えば、期待値の高い応答情報を組み合わせて、最終的な応答情報を生成する。具体例として、最終応答生成モジュール１５０は、期待値が上位から予め定められた順位までの応答情報とその応答情報の階層構造における上又は下の階層に位置する応答情報を、質問情報に対応する応答情報として決定するようにしてもよい。より具体的には、最も期待値が高い応答情報とその応答情報よりも１つ下位の階層にある応答情報を抽出してもよい。
また、最終応答生成モジュール１５０は、期待値に対応する応答情報の文字数が多くなるほど小さくなる値をその期待値に乗じて算出した評価値に基づいて、質問情報に対応する応答情報を決定するようにしてもよい。短く答えられる応答情報を優先しようとするものである。応答満足度期待値推定モジュール１６０によって算出された各期待値に対して、応答情報の文字数が多くなるほど小さくなる値を乗じて算出した値を、新たな期待値とするものである。ここでの「応答情報」は、対象としている期待値に対応する応答情報である。また、「文字数が多くなるほど小さくなる値」としては、例えば、文字数の逆数、文字数の負数等がある。
【００２８】
応答提示モジュール１８０は、最終応答生成モジュール１５０と接続されている。応答提示モジュール１８０は、最終応答生成モジュール１５０が決定した最終的な応答情報をユーザーに提示する。ここで提示するとは、例えば、質問者のメールアドレス等に応答情報を送信すること、液晶ディスプレイ等の表示装置に表示すること、スピーカー等の音声出力装置からテキストデータに基づいた音声を出力すること等が含まれる。
【００２９】
図２は、本実施の形態による処理例を示すフローチャートである。
ステップＳ２０２では、質問受付モジュール１１０が、質問情報である質問文を受け付ける。
ステップＳ２０４では、質問検索モジュール１２０が質問一致率計算モジュール１３０を制御して、ステップＳ２０２で受け付けた質問文と質問ＤＢ１４０内の各質問文との一致率を計算する。
ステップＳ２０６では、質問検索モジュール１２０が、一致率を用いて、ステップＳ２０２で受け付けた質問文と類似する質問文を選択する。
ステップＳ２０８では、最終応答生成モジュール１５０が、ステップＳ２０２で受け付けた質問文に対する応答情報である応答文を生成する。詳細については、図３の例に示すフローチャートを用いて後述する。
ステップＳ２１０では、応答提示モジュール１８０が、応答文を提示する。
【００３０】
図３は、本実施の形態による処理例を示すフローチャートである。
ステップＳ３０２では、複数の類似質問文を受け付ける。複数の類似質問文とは、受け付けた質問文に対して類似した質問文の検索結果を一致率（類似度）の高い者順に並べた列である。
ステップＳ３０４では、類似質問文それぞれに対応する応答文を取得する。それぞれの質問文に対応する応答文を予め与えておいた関係を用いて取得する。例えば、関係は、図４、図５の例を用いて前述したように、質問ＤＢ１４０内の各質問文（ＱＩＤ）に対応する応答文のＡＩＤを付加しておく。
ステップＳ３０６では、それぞれの応答文の上位の応答文を最上位まで得る。階層型応答ＤＢ１７０の応答文の階層構造を辿り、上位の応答文を得る。得た応答文にさらに上位の応答文があればさらに取得し、最上位の応答文まで得る。
ステップＳ３０８では、各応答文の満足度の期待値を計算する。得た応答文に対して逆に元の質問文（複数の質問文があり得る）のそれぞれの類似度を取得する。また、応答文に与えられた満足度を取得し、類似度と満足度から満足度の期待値を得る。
ステップＳ３１０では、期待値の高い応答文を一つ又は複数選び、最終的な応答文とする。満足度の期待値の高い応答文を最終応答文とする。複数の応答文を統合する場合は、応答文の階層構造の一部を提示することで、ユーザーへナビゲーションを提供してもよい。
【００３１】
以下、具体例を用いて説明する。例えば、ある製品に関するユーザーからの質問をメールで受け付ける窓口業務において、メール内容のテキストを解析し、応答する場合の処理について、本実施の形態以外の従来の技術（質問応答システム）、本実施の形態を比較して説明する。
ユーザーからの質問として、例えば、質問１：「先週から、テレビの音が出なくなったが、どのように対応すればよいか？」であったとする。
【００３２】
質問応答システム、本実施の形態は、図４、図５の例に示すような質問と応答のペアデータ（質問テーブル４００、応答テーブル５００）を予め用意しておく。なお、応答テーブル５００のＡＩＤ：２のように、「♯ｃａｌｌ」は自動応答の対応をせずに、人間のオペレータが対応することを示す。
従来技術の質問応答システムでは、ユーザーからの質問１に対して、単語「テレビ」「音」のマッチングから、例えば質問テーブル４００のＱＩＤ＝１の質問文が最も類似していると判断した場合、ユーザーにＱＩＤ＝１に対応する応答ＩＤはＡＩＤ＝１であるので応答テーブル５００からＡＩＤ＝１の応答文を取得して、その内容で応答を行う。
この応答は、ユーザーにとって指示が具体的であり、この応答が妥当である場合、ユーザーの満足度は比較的高いと予想できる。
ここで、ユーザーの状況は、テレビの音声出力先の設定の問題であった場合を考える。その場合、ＡＩＤ＝１の応答文は全く回答になっておらず、一般的にユーザーの満足度は低い。応答テーブル５００の中ではＡＩＤ＝３又はＡＩＤ＝２がこの質問をカバーする応答文である。
このような、応答の間違いを防ぐために、単語のマッチングを厳密にし、十分マッチしていないと見なされる場合は、人間のオペレータが対応する方法が考えられる。
例えば、今回、ＱＩＤ＝１の質問文は、「リモコン」「ボタン」の単語が質問１には含まれていないため、ＱＩＤ＝１を含むすべての質問にマッチしないと質問応答システムが判断する。そして、質問応答システムは、人間のオペレータによる対応を促すべきと判断する。
このように、人間のオペレータが対応する場合、誤回答は少なくなると考えられるが、今度はユーザーの状況を把握するためにオペレータが何度もメールのやり取りを行うため、ユーザーやオペレータの負担が大きくなる。つまり、このような質問応答システムは、ユーザーの状況を把握するために、予め与えられた情報をすべて収集するまで、ユーザーへの問い合わせを繰り返す。
【００３３】
本実施の形態の処理について説明する。
応答Ｘがカバーしている質問すべてを応答Ｙがカバーしている場合、応答Ｘは応答Ｙより具体的であると定義する。この場合、応答Ｙは応答Ｘよりも抽象度が高いことになる。
この定義にしたがって、階層型応答ＤＢ１７０を階層的（前述の通り、非巡回有向グラフを含む）に作成しておく。
例えば、「マニュアル４．３．１．ミュート機能設定の項目にございます。」（ＡＩＤ：１）という回答は、「マニュアル４．３．音声設定メニューにございます。」（ＡＩＤ：３）という回答よりも具体的であり、階層構造としては、下層に位置する。
この階層構造は、既存の質問応答データベースを整理することで構成してもよいし、はじめから応答が階層構造となるように応答とその応答に対応する質問を用意してもよい。前者の方法を採る場合は、階層構造にならない部分や、非連結な部分が生じる可能性があるが、適宜応答を追加、修正することで全体が階層構造になるようにしておく。
図６の例は、前述の階層型応答ＤＢ１７０の応答の階層構造を図示したものである。ノード２（ＡＩＤ：２）を最上階（ルート）とし、その直下（子）にはノード３（ＡＩＤ：３）、ノード４（ＡＩＤ：４）があり、ノード３の直下（子）にはノード１（ＡＩＤ：１）がある。つまり、階数１にはノード２があり、階数２にはノード３、４があり、階数３にはノード１がある。
【００３４】
ここで、回答が具体的であるほど、ユーザーの満足は高いと考えることができる。そこで、満足度の数値を階層構造の下位ほど高くなるように設定する。
具体的には、各ノードの階層構造の階数を満足度とすることができる。又は、ユーザーからの回答群に対して、各回答がカバーしている頻度割合を応答確率の推定値と見なし、その逆数を満足度とすることもできる。また、階層と満足度の関係については、図８の例を用いて後述する。この満足度は、上位の応答は下位の応答に対応する質問をすべてカバーしているので、下位ほど高くなる。なお、厳密には等しいこともある。
図７の例に示す満足度テーブル７００は、各応答における満足度の例である。満足度テーブル７００は、ＡＩＤ欄７１０、満足度欄７２０を有している。ＡＩＤ欄７１０は、ＡＩＤを記憶している。満足度欄７２０は、そのＡＩＤに対応する満足度を記憶している。ここでは、階数１（ノード２）は満足度１であり、階数２（ノード３、４）は満足度２であり、階数３（ノード１）は満足度３である。
【００３５】
ここで、質問１が与えられたとする。
この質問１に対して、質問テーブル４００の各質問文とのマッチングを行い、それらが一致している割合（あるいは確率）を推定する。これは、単語の一致率などを用いて計算可能である。
マッチングを行った結果が以下であったとする。
ＱＩＤ＝１：０．５
ＱＩＤ＝２：０．１
ＱＩＤ＝３：０．２
ＱＩＤ＝４：０．２
ＱＩＤ＝５：０
【００３６】
各応答の一致率を、その応答がカバーしている質問の一致率の和として計算すると以下のようになる。
ＡＩＤ＝１がカバーしている質問は、ＱＩＤ＝１のみである。したがって、ＡＩＤ＝１：０．５となる。
ＡＩＤ＝２がカバーしている質問は、ＱＩＤ=１、２、３、４、５である。したがって、ＡＩＤ＝２：０．１＋０．５＋０．２＋０．２＋０＝１．０となる。
ＡＩＤ＝３がカバーしている質問は、ＱＩＤ＝１、３、４である。したがって、ＡＩＤ＝３：０．５＋０．２＋０．２＝０．９となる。
ＡＩＤ＝４がカバーしている質問は、ＱＩＤ＝５である。したがって、ＡＩＤ＝４：０となる。
なお、ＡＩＤ＝３には、ＱＩＤ＝３、４が対応しているため、ＡＩＤ＝３又はＡＩＤ＝３を含むＡＩＤ＝２では、ＱＩＤ＝３、４の一致率である０．２と０．２を加算している。
ここで、図７を踏まえて、各応答の一致率に対して満足度をそれぞれ乗算して満足度の期待値を求めると、以下のようになる。
ＡＩＤ＝１：０．５＊３＝１．５
ＡＩＤ＝２：１．０＊１＝１．０
ＡＩＤ＝３：０．９＊２＝１．８
ＡＩＤ＝４：０    ＊２＝０
【００３７】
ここで、最も満足度の期待値が高いものを応答とする。たとえば、上述の例の場合ＡＩＤ＝３に対応する応答文を提示する。また、期待値が上位のもの（上位から予め定められた順位までのもの）を複数同時に提示するようにしてもよい。たとえば、上述の例の場合ＡＩＤ＝３、１に対応する応答文をそれぞれ提示する。また、期待値が上位のものについて、それらとその応答の階層構造上の上下のもの（上のもの、下のもののいずれか、又はその両方）を同時に提示するようにしてもよい。たとえば、上述の例の場合で、上のものを提示するなら、ＡＩＤ＝３、２を提示することになる。
ただし、複数の応答を組み合わせて最終的な応答とする場合、内容が長くなりすぎると、ユーザーは何をすべきかわからなくなり応答の満足度が低下することが考えられる。
そこで、応答数の上限設定や、応答が長くなるほど小さくなる値を満足度の期待値（の和）に乗算して評価値とするなど、応答の長さを抑制するようにしてもよい。
【００３８】
「階層に応じた値」、「階層に基づいて」（階層と満足度の関係について）について、図８を用いて説明する。図８は、階層構造の例を示す説明図である。この階層構造は、ノードＡ８１０が階層１であり、ノードＡ８１０の直下に階層２としてノードＢ８２０、ノードＥ８３０があり、ノードＢ８２０の直下に階層３としてノードＣ８２２、ノードＤ８２４があり、ノードＥ８３０の直下に階層３としてノードＦ８３２、ノードＧ８３４がある。前述の実施の形態では、ノードＢ８２０、ノードＥ８３０における満足度は同じであり、ノードＣ８２２、ノードＤ８２４、ノードＦ８３２、ノードＧ８３４における満足度は同じになっている。しかし、これに限られる必要はない。
例えば、最上階（ルート）から最下層のノードまで系列を単位として、階層に応じた値を用いてもよい。具体的には、系列として、（１）ノードＡ８１０−ノードＢ８２０−ノードＣ８２２、（２）ノードＡ８１０−ノードＢ８２０−ノードＤ８２４、（３）ノードＡ８１０−ノードＥ８３０−ノードＦ８３２、（４）ノードＡ８１０−ノードＥ８３０−ノードＧ８３４、の４つがある。（１）の系統と（２）の系統で、同じ階層であるノードＣ８２２とノードＤ８２４であっても、満足度の値を異ならせてもよい。（１）の系統と（３）の系統で、同じ階層であるノードＢ８２０とノードＥ８３０、ノードＣ８２２とノードＦ８３２であっても、満足度の値を異ならせてもよい。つまり、各系列において、上位と比べて下位ほど満足度の値が高くなるようになっていればよく、各系列の満足度の値は独立である。もちろんのことながら、異なる系統であっても、同じ階層に同じ満足度の値を用いてもよい。
【００３９】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図９に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ９０１を用い、記憶装置としてＲＡＭ９０２、ＲＯＭ９０３、ＨＤ９０４を用いている。ＨＤ９０４として、例えばハードディスクを用いてもよい。質問受付モジュール１１０、質問検索モジュール１２０、質問一致率計算モジュール１３０、最終応答生成モジュール１５０、応答満足度期待値推定モジュール１６０、応答提示モジュール１８０等のプログラムを実行するＣＰＵ９０１と、そのプログラムやデータを記憶するＲＡＭ９０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ９０３と、質問ＤＢ１４０、階層型応答ＤＢ１７０等の機能を有する補助記憶装置（フラッシュメモリ等であってもよい）であるＨＤ９０４と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置９０６と、ＣＲＴ、液晶ディスプレイ等の出力装置９０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース９０７、そして、それらをつないでデータのやり取りをするためのバス９０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００４０】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図９に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図９に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図９に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００４１】
また、前述の実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より大きい」、「より小さい（未満）」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より大きい」、「より小さい（未満）」、「以上」、「以下」としてもよい。
【００４２】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００４３】
１１０…質問受付モジュール
１２０…質問検索モジュール
１３０…質問一致率計算モジュール
１４０…質問ＤＢ
１５０…最終応答生成モジュール
１６０…応答満足度期待値推定モジュール
１７０…階層型応答ＤＢ
１８０…応答提示モジュール
【要約】
【課題】質問情報に対応する応答情報を決定する場合に、想定質問情報との一致率だけで応答情報を決定する場合に比較して、質問者にとってより満足度の高い応答情報を決定するようにした応答装置を提供する。
【解決手段】応答装置の記憶手段は、応答情報を抽象度毎に階層構造として記憶し、一致率算出手段は、質問情報と前記応答情報に対応する想定質問情報との一致率を算出し、期待値算出手段は、前記応答情報毎に、該応答情報と該応答情報の階層下にある応答情報に対応する一致率の和を求めるとともに、該和に対して該応答情報の存在する階層に応じた値を乗じることで期待値を算出し、決定手段は、前記期待値に応じて、応答情報を決定する。
【選択図】図１【図１】
0005464295.tif 000002
【図２】
0005464295.tif 000003
【図３】
0005464295.tif 000004
【図４】
0005464295.tif 000005
【図５】
0005464295.tif 000006
【図６】
0005464295.tif 000007
【図７】
0005464295.tif 000008
【図８】
0005464295.tif 000009
【図９】
0005464295.tif 000010