(57)【要約】【課題】本発明は、ユーザの情報要求内容を高精度に特定することができるようにする新たな対話技術の提供を目的とする。【解決手段】ユーザの情報要求に１つ以上の解釈が存在する場合において、ユーザの情報要求のそれぞれと、システムが保持するユーザ情報要求内容のそれぞれとの組み合わせから得られる、１つ以上のユーザ情報要求内容候補のそれぞれに対し、過去の対話データから得られる統計的基準を用いて、正解と考えられるものに高いスコアを与える形でスコアを与え、スコアの高い候補を優先的なユーザ情報要求内容とすることでユーザの情報要求内容を高精度で取得する。それと同時に、スコアの低いユーザ情報要求内容候補であっても、次のユーザ情報要求との組み合わせによっては高いスコアを持つユーザ情報要求内容候補を生成する可能性があることを考慮して、次のユーザ入力まで保持し続けるようにする。【選択図】          図１
2004354787.tif 000002
【特許請求の範囲】
【請求項１】
ユーザとの対話機能を有して、ユーザが情報要求を入力するたびに、ユーザとのやり取りの履歴を用いてユーザの情報要求内容を特定し、それに応じてユーザに対して応答する対話装置で実行される対話方法であって、
ユーザの情報要求に応答して、該ユーザ情報要求に１つ以上の解釈が存在することで得られるユーザ情報要求のそれぞれと、ユーザの情報要求内容の候補を記憶する記憶手段に記憶されるユーザ情報要求内容のそれぞれとの組み合わせから、１つ以上の新たなユーザ情報要求内容の候補を生成する過程と、
上記生成したユーザ情報要求内容の候補に対して、過去の対話データから得られる統計的基準を用いてスコアを付与する過程と、
上記スコアに応じて、上記生成したユーザ情報要求内容の候補の中からユーザの情報要求内容を特定する過程と、
上記生成したユーザ情報要求内容の候補を上記記憶手段に書き込むことで、上記記憶手段に記憶されるユーザ情報要求内容の候補を更新する過程とを備えることを、
特徴とする統計情報を用いた対話方法。
【請求項２】
請求項１記載の統計情報を用いた対話方法において、
上記付与する過程では、ユーザ入力の情報要求とそれに対する応答とが連鎖するパターンの出現確率に応じたスコアを付与することを、
特徴とする統計情報を用いた対話方法。
【請求項３】
請求項１記載の統計情報を用いた対話方法において、
上記付与する過程では、上記記憶手段に記憶されるユーザ情報要求内容と後続するユーザ入力の情報要求とが共起するパターンの出現確率に応じたスコアを付与することを、
特徴とする統計情報を用いた対話方法。
【請求項４】
請求項１記載の統計情報を用いた対話方法において、
上記付与する過程では、ユーザ入力の情報要求とそれに対する応答とが連鎖するパターンの出現確率と、上記記憶手段に記憶されるユーザ情報要求内容と後続するユーザ入力の情報要求とが共起するパターンの出現確率とに応じたスコアを付与することを、
特徴とする統計情報を用いた対話方法。
【請求項５】
ユーザとの対話機能を有して、ユーザが情報要求を入力するたびに、ユーザとのやり取りの履歴を用いてユーザの情報要求内容を特定し、それに応じてユーザに対して応答する対話装置であって、
ユーザの情報要求内容の候補を記憶する記憶手段と、
ユーザの情報要求に応答して、該ユーザ情報要求に１つ以上の解釈が存在することで得られるユーザ情報要求のそれぞれと、上記記憶手段に記憶されるユーザ情報要求内容のそれぞれとの組み合わせから、１つ以上の新たなユーザ情報要求内容の候補を生成する生成手段と、
上記生成手段の生成したユーザ情報要求内容の候補に対して、過去の対話データから得られる統計的基準を用いてスコアを付与する付与手段と、
上記スコアに応じて、上記生成手段の生成したユーザ情報要求内容の候補の中からユーザの情報要求内容を特定する特定手段と、
上記生成手段の生成したユーザ情報要求内容の候補を上記記憶手段に書き込むことで、上記記憶手段に記憶されるユーザ情報要求内容の候補を更新する更新手段とを備えることを、
特徴とする統計情報を用いた対話装置。
【請求項６】
請求項５記載の統計情報を用いた対話装置において、
上記付与手段は、ユーザ入力の情報要求とそれに対する応答とが連鎖するパターンの出現確率に応じたスコアを付与することを、
特徴とする統計情報を用いた対話装置。
【請求項７】
請求項５記載の統計情報を用いた対話装置において、
上記付与手段は、上記記憶手段に記憶されるユーザ情報要求内容と後続するユーザ入力の情報要求とが共起するパターンの出現確率に応じたスコアを付与することを、
特徴とする統計情報を用いた対話装置。
【請求項８】
請求項５記載の統計情報を用いた対話装置において、
上記付与手段は、ユーザ入力の情報要求とそれに対する応答とが連鎖するパターンの出現確率と、上記記憶手段に記憶されるユーザ情報要求内容と後続するユーザ入力の情報要求とが共起するパターンの出現確率とに応じたスコアを付与することを、
特徴とする統計情報を用いた対話装置。
【請求項９】
請求項１ないし４のいずれか１項に記載の統計情報を用いた対話方法の実現に用いられる処理をコンピュータに実行させるための対話プログラム。
【請求項１０】
請求項１ないし４のいずれか１項に記載の統計情報を用いた対話方法の実現に用いられる処理をコンピュータに実行させるための対話プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、過去の対話データから得られる統計的基準を用いることでユーザの情報要求内容を高精度に特定することができるようにする統計情報を用いた対話方法及びその装置と、その対話方法の実現に用いられる対話プログラム及びそのプログラムを記録した記録媒体とに関する。
【０００２】
【従来の技術】
ユーザが文字列または音声を用いてシステムに情報要求を入力するたびに、ユーザとシステムのやり取りの履歴を用いて、システムが保持するユーザ情報要求内容を更新し、その更新したユーザ情報要求内容に応じて、ユーザに対して文字列または音声により応答する処理を行う対話システムがある。
【０００３】
ユーザが対話システムに情報要求を入力する際に用いるユーザの文字列または音声をユーザ発話と呼び、ユーザ発話によって対話システムに伝達される情報要求内容のことを対話行為と呼ぶ。ユーザ発話から対話行為を導出することを言語理解といい、音声対話システムの場合は特に音声理解という。
【０００４】
なお、対話行為は、対話行為タイプとそれに付随する情報とに分けられる。対話行為タイプとは対話行為の大まかな意味種別を表す記号である。
【０００５】
対話システムが保持するユーザ情報要求内容は対話状態と呼ばれ、対話システムはユーザ発話の入力のたびに、ユーザとシステムのやり取りの履歴を用いて、対話状態を更新する。この更新プロセスのことを談話理解と呼ぶ。言語理解、談話理解など、ユーザ発話の入力により、システムの内部状態が変更されることを一般に理解という。ユーザの入力が音声に限られた対話システムのことを、特に音声対話システムと呼ぶ。
【０００６】
対話システムにおける、談話理解に関する技術として以下のものが挙げられる。
【０００７】
第１に、あるユーザ発話の対話行為タイプを直前のいくつかの対話行為タイプから統計的に推定する技術がある。これを統計的対話行為タイプの推定と呼び、下記の非特許文献１に記載の技術が挙げられる。この非特許文献１に記載の技術は、あるユーザ発話がどの対話行為タイプに属するかを推定することによって、音声認識器の受理すべき文法規則や語彙を絞り込み、音声認識精度が向上できることを示した。
【０００８】
第２に、プラン認識を用いて談話理解の精度向上を行う技術が提案されている（例えば、非特許文献２，３参照）。これは、ユーザがある目的を達成するために行うユーザ発話群の構造（プランと呼ぶ）をあらかじめ規定しておき、ユーザ発話に曖昧性があるとき、プランに最も合致する解釈を選ぶことによって、曖昧性を解消する技術のことである。プランに基づく談話理解は、主にキーボードを用いた対話システムを対象に研究されてきたが、近年では音声対話システムにも応用されている。
【０００９】
第３に、ＩＳＳＳ（Ｉｎｃｒｅｍｅｎｔａｌ  Ｓｅｎｔｅｎｃｅ  Ｓｅｑｕｅｎｃｅ  Ｓｅａｒｃｈ）という手法が下記の非特許文献４及び特許文献１に示されている。この手法は対話における現象の一つである、幾つかの発話区間にまたがる対話行為に対処するための手法であり、入力として、対話行為を構成するユーザ発話の断片（単語、フレーズ）を受け付け、逐次的に対話状態を更新する。ある時点までのユーザ発話の断片が対話行為を構成するのかしないのか明確でない場合には、その双方を考慮して、複数の対話状態をあらかじめ用意されたスコア規則を用いてスコア付きで保持することにより、ユーザ発話入力後に、最尤な対話状態を決定する。
【００１０】
音声対話システムにおいて、音声認識の複数の候補とＩＳＳＳとを組み合わせる方法により、談話理解の精度が向上することが報告されている（ＩＳＳＳ−Ｎ法。例えば、非特許文献５参照）。
【００１１】
上記の従来技術はすべて、ユーザ発話における理解の曖昧性を解消する技術である。ユーザ発話に対応する対話行為候補は複数あるが、対話行為タイプの推定、プラン認識を用いた談話理解はともに、複数の候補から最尤な候補を選びだすための技術であり、ＩＳＳＳは複数の対話行為候補とある時点での対話状態から得られる複数の対話状態をスコア付きで表すことによって、複数の対話行為から最尤の候補を選ぶ問題を、複数の対話行為と対話状態の組み合わせから最もよいものを選ぶ問題として、対話行為の曖昧性を解消する技術である。
【００１２】
【非特許文献１】
Ｍａｓａａｋｉ  Ｎａｇａｔａ  ａｎｄ  Ｔｓｕｙｏｓｈｉ  Ｍｏｒｉｍｏｔｏ．  Ｆｉｒｓｔ  ｓｔｅｐｓ  ｔｏｗａｒｄ  ｓｔａｔｉｓｔｉｃａｌ  ｍｏｄｅｌｉｎｇ  ｏｆ  ｄｉａｌｏｇｕｅ  ｔｏ  ｐｒｅｄｉｃｔ  ｔｈｅ  ｓｐｅｅｃｈ  ａｃｔ  ｔｙｐｅ  ｏｆ  ｔｈｅ  ｎｅｘｔ  ｕｔｔｅｒａｎｃｅ．  Ｓｐｅｅｃｈ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ，  Ｖｏｌ．１５，  ｐｐ．１９３−２０３，  １９９４．
【非特許文献２】
Ｃｈａｒｌｅｓ  Ｒｉｃｈ，  Ｎｅａｌ  Ｌｅｓｈ，  ａｎｄ  Ｃａｎｄａｃｅ  Ｓｉｄｎｅｒ．  ＣＯＬＬＡＧＥＮ：  Ａｐｐｌｙｉｎｇ  ｃｏｌｌａｂｏｒａｔｉｖｅ  ｄｉｓｃｏｕｒｓｅ  ｔｈｅｏｒｙ．  Ｖｏｌ．２２，  Ｎｏ．４，  ｐｐ．１５−２５，  ２００１．
【非特許文献３】
Ｙｕｓｕｋｅ  Ｓｈｉｎｙａｍａ，  Ｔａｋｅｎｏｂｕ  Ｔｏｋｕｎａｇａ，  ａｎｄ  Ｈｏｚｕｍｉ  Ｔａｎａｋａ．  Ｋａｉｒａｉ−ｓｏｆｔｗａｒｅ  ｒｏｂｏｔｓ  ｕｎｄｅｒｓｔａｎｄｉｎｇ  ｎａｔｕｒａｌ  ｌａｎｇｕａｇｅ．  Ｔｈｉｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｗｏｒｋｓｈｏｐ  ｏｎ  Ｈｕｍａｎ−Ｃｏｍｐｕｔｅｒ  Ｃｏｎｖｅｒｓａｔｉｏｎ，  ２０００．
【非特許文献４】
Ｍｉｋｉｏ  Ｎａｋａｎｏ，  Ｎｏｂｏｒｕ  Ｍｉｙａｚａｋｉ，  Ｊｕｎ−ｉｃｈｉ  Ｈｉｒａｓａｗａ，  Ｋｏｈｊｉ  Ｄｏｈｓａｋａ，  ａｎｄ  Ｔａｋｅｓｈｉ  Ｋａｗａｂａｔａ．  Ｕｎｄｅｒｓｔａｎｄｉｎｇ  ｕｎｓｅｇｍｅｎｔｅｄ  ｕｓｅｒ  ｕｔｔｅｒａｎｃｅｓ  ｉｎ  ｒｅａｌｔｉｍｅ  ｓｐｏｋｅｎ  ｄｉａｌｏｇｕｅ  ｓｙｓｔｅｍｓ．  Ｉｎ  Ｐｒｏｃ．  ３７ｔｈ  ＡＣＬ，  ｐｐ．２００−２０７，  １９９９  ．
【非特許文献５】
宮崎昇，  中野幹生，  相川清明，”ｎ−ｂｅｓｔ音声認識と逐次理解法によるロバストな音声理解”，ＳＩＧ−ＳＬＰ−４０，  ２００２，  １２１−１２６
【特許文献１】
特開平１１−２３７８９４号公報
【００１３】
【発明が解決しようとする課題】
ＩＳＳＳでは、複数の対話行為と対話状態との組み合わせから最もよいものを選ぶことが必要である。
【００１４】
従来方法では、手作業によるルールを作成し、対話状態をスコアリングして、例えば、スコアが最も高い対話状態を最尤であるとしていた。
【００１５】
しかしながら、スコアリングのルールは、設計者の経験則に基づくものであるため、場合によってはスコアリングを誤ることも多く、ルール作成およびチューニングには高いコストと専門知識が必要であるという問題がある。
【００１６】
本発明はかかる事情に鑑みてなされたものであって、複数の対話行為と対話状態との組み合わせから得られる複数の対話状態のスコアリングに、手作業によるルールを用いるのではなく、人間と機械との対話記録から得られる統計情報を元にスコアリングを行うことで、ユーザの情報要求内容を高精度に特定することができるようにする新たな対話技術の提供を目的とする。
【００１７】
【課題を解決するための手段】
この目的を達成するために、本発明の対話装置は、ユーザとの対話機能を有して、ユーザが情報要求を入力するたびに、ユーザとのやり取りの履歴を用いてユーザの情報要求内容を特定し、それに応じてユーザに対して応答する処理を行うために、（１）ユーザの情報要求内容の候補を記憶する記憶手段と、（２）ユーザの情報要求に応答して、そのユーザ情報要求に１つ以上の解釈が存在することで得られるユーザ情報要求のそれぞれと、記憶手段に記憶されるユーザ情報要求内容のそれぞれとの組み合わせから、１つ以上の新たなユーザ情報要求内容の候補を生成する生成手段と、（３）生成手段の生成したユーザ情報要求内容の候補に対して、過去の対話データから得られる統計的基準を用いてスコアを付与する付与手段と、（４）付与手段の付与したスコアに応じて、生成手段の生成したユーザ情報要求内容の候補の中からユーザの情報要求内容を特定する特定手段と、（５）生成手段の生成したユーザ情報要求内容の候補を記憶手段に書き込むことで、記憶手段に記憶されるユーザ情報要求内容の候補を更新する更新手段とを備えるように構成する。
【００１８】
以上の各処理手段が動作することで実現される本発明の対話方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００１９】
このように構成される本発明の対話装置では、ユーザが情報要求を入力すると、そのユーザ情報要求に１つ以上の解釈が存在することで得られるユーザ情報要求のそれぞれと、記憶手段に記憶されるユーザ情報要求内容のそれぞれとの組み合わせから、１つ以上の新たなユーザ情報要求内容の候補を生成して、それらのユーザ情報要求内容の候補に対して、過去の対話データから得られる統計的基準を用いてスコアを付与する。
【００２０】
例えば、ユーザ入力の情報要求とそれに対する応答とが連鎖するパターンの出現確率に応じたスコアを付与したり、記憶手段に記憶されるユーザ情報要求内容と後続するユーザ入力の情報要求とが共起するパターンの出現確率に応じたスコアを付与したり、その両方の出現確率に応じたスコアを付与する。
【００２１】
そして、その付与したスコアに応じて、生成したユーザ情報要求内容の候補の中からユーザの情報要求内容を特定するとともに、生成したユーザ情報要求内容の候補を記憶手段に書き込むことで、記憶手段に記憶されるユーザ情報要求内容の候補を更新する。
【００２２】
このようにして、本発明では、ユーザが文字列または音声を用いてシステムに情報要求を入力するたびに、ユーザとシステムとのやり取りの履歴を用いて、システムが保持するユーザ情報要求内容を更新し、その更新したユーザ情報要求内容に応じて、ユーザに対して文字列または音声により応答するときに、ユーザの情報要求に１つ以上の解釈が存在し、システムが保持するユーザ情報要求内容に１つ以上の解釈が存在する場合において、ユーザの情報要求のそれぞれと、システムが保持するユーザ情報要求内容のそれぞれとの組み合わせから得られる、１つ以上のユーザ情報要求内容候補のそれぞれに対し、過去の対話データから得られる統計的基準を用いて、正解と考えられるものに高いスコアを、そうでないものには低いスコアを与え、スコアの高い候補を優先的なユーザ情報要求内容とすることで、ユーザの情報要求内容を高精度で取得し、同時に、その時点ではスコアの低いユーザ情報要求内容候補であっても、次のユーザ情報要求との組み合わせによっては、高いスコアを持つユーザ情報要求内容候補を生成する可能性があることを考慮して、スコアの低いユーザ情報要求内容候補についても次のユーザ入力まで保持し続けるようにするのである。
【００２３】
この構成に従って、本発明によれば、話の流れ（文脈）を考えてユーザの伝えたいことを理解して、それに対して応答することを実現するときにあって、複数の対話行為と対話状態との組み合わせから得られる複数の対話状態のスコアリングに、手作業によるルールを用いるのではなく、人間と機械との対話記録から得られる統計情報を元にスコアリングを行うことで、ユーザの情報要求内容を高精度に特定することができるようになる。
【００２４】
【発明の実施の形態】
以下、実施の形態に従って本発明を詳細に説明する。
【００２５】
図１に、本発明を具備する音声対話システム１の一実施形態例を図示する。
【００２６】
この図に示すように、本発明を具備する音声対話システム１は、ユーザ発話を受け付け、対話状態の内容が一定の条件を満たせば、ユーザに応答を返すように処理するものであって、大きく分けて、対話装置１０と統計情報管理装置２０とで構成される。
【００２７】
この対話装置１０は、ユーザ発話を受け付けるユーザ発話受付部１１と、ユーザ発話を対話行為に変換する対話行為変換部１２と、対話状態と対話行為とをもとに対話状態を更新する対話状態更新部１３と、対話状態を管理する対話状態管理部１４と、更新された対話状態をもとにユーザに情報を伝達する応答生成部１５とを備える。
【００２８】
一方、統計情報管理装置２０は、人間と機械との対話記録を保持する対話記録保持部２１と、対話記録保持部２１に保持される対話記録から統計情報を抽出する統計情報抽出部２２と、統計情報抽出部２２の抽出した統計情報を格納する統計情報保持部２３とを備える。
【００２９】
以下、会議室予約システムへの適用を具体例にして、このように構成される本発明の音声対話システム１の処理について詳細に説明する。
【００３０】
会議室予約システムでは、ユーザがシステムに会議室名、日にち、時間を伝え終わった後に、システムは会議室の予約を行い、その旨をユーザに伝える。図２に示すように、ユーザが一方的にシステムに要件を伝えるだけではなく、状況によっては、システムが発話によってユーザ発話を促す場合もある。
【００３１】
このとき、会議室予約システムは、図３に示すように、ユーザの発話のすべてを聞き取れるとは限らない。
【００３２】
そこで、本発明の音声対話システム１は、話の流れ（文脈）を考えて、ユーザの伝えたいことを理解するようにしている。
【００３３】
これを実現するために、本発明の音声対話システム１は、過去の対話データから得られる統計的基準を用いて、ユーザの対話行為によって変化していく対話状態に対してスコアを付与し、図４に示すように、ユーザが伝えたと思われる内容をすべて考慮して、その付与したスコアに従って、話の流れからもっともらしいものを選ぶようにしている。
【００３４】
このとき付与するスコアとして、ユーザ発話の対話行為タイプとそれに対するシステム発話の対話行為タイプとが連鎖するパターンの出現確率（以下、連鎖確率と称することがある）と、システムが保持する対話状態とそれに対するユーザ発話とが共起するパターンの出現確率（以下、共起確率と称することがある）とに応じたスコアを付与するようにしている。
【００３５】
すなわち、大まかな対話の流れを表す図５に示すような連鎖確率と、局所的で詳細な対話の流れを表す図６に示すような共起確率とに応じたスコアを付与するようにしている。
【００３６】
上述したように、対話行為とは、ユーザ発話によって対話システムに伝達される内容のことであり、対話状態とは、対話システムが保持するユーザ情報要求内容のことである。
【００３７】
本発明に言う対話状態とは、システムが内部に保持する様々な対話に関する情報のことを指し、話の流れ（文脈）を指すものであって、対話の各時点でのユーザ意図の理解結果（スロットと呼ばれる属性値対から構成されるフレーム表現で記述される）や、ユーザとシステムとの間の発話履歴や、生成元となった対話状態の履歴などを含んでいる。
【００３８】
会議室予約システムへの適用を具体例にして説明するならば、対話状態は、図７に示すようなデータ構造を有しており、図１に示す対話状態管理部１４は、このようなデータ構造を持つ対話状態を管理することになる。
【００３９】
次に、本発明の音声対話システム１の備える各手段について説明する。
【００４０】
〔イ〕統計情報管理装置２０
〔イ−１〕対話記録保持部２１
対話記録保持部２１は、人間と機械との対話記録を保持する。
【００４１】
対話記録保持部２１に保持される対話記録とは、人間と音声対話システムとが対話した履歴を記録したデータであるとする。対話記録には、行われたそれぞれの対話に関する、ユーザ発話、システムの発話の開始時間と終了時間、およびユーザ発話前後のシステムの対話状態が保存されている。
【００４２】
ユーザ音声とシステム音声とはすべて録音され、すべてのユーザ音声は書き起こされている。書き起こされたユーザ音声は、プログラムを用いた自動処理と手作業による修正によって、対話行為の表現に変換されているものとする。
【００４３】
〔イ−２〕統計情報抽出部２２
統計情報抽出部２２は、対話記録保持部２１に保持される対話記録から２種類の統計情報を抽出する。
【００４４】
一つは、対話行為タイプ（対話行為の意味種別を表わす）の連鎖確率であり、もう一つは、対話の各時点での対話状態とその直後の対話行為との共起確率である。
【００４５】
連鎖確率にはｎ−ｇｒａｍ  確率を用いる。ｎ−ｇｒａｍ  確率とは、あるｎ個の対話行為タイプの組合せが対話記録にどの程度の頻度で現れるかを調べたものである。実施形態例では、ｔｒｉｇｒａｍ  確率  （３−ｇｒａｍ  確率）を用いる。
【００４６】
図８に、対話行為タイプの３−ｇｒａｍ  確率の対数の一例を示す。ここで、図中に示す「ｒｅｆｅｒ−ｓｔａｒｔ−ｔｉｍｅ」は会議予約システムにおける開始時刻を指定する発話の対話行為タイプを表し、「ｂａｃｋｃｈａｎｎｅｌ  」はあいづちの対話行為タイプを表し、「ａｓｋ−ｄａｔｅ」は日付を質問する発話の対話行為タイプを表し、「ａｓｋ−ｓｔａｒｔ−ｔｉｍｅ」は開始時間を質問する発話の対話行為タイプを表し、「ｒｅｑｕｅｓｔ  」は“おねがいします”といったユーザ要求発話の対話行為タイプを表し、「ｒｅｆｅｒ−ｄａｙ  」は日に言及する発話の対話行為タイプを表し、「ｒｅｆｅｒ−ｍｏｎｔｈ  」は月に言及する発話の対話行為タイプを表し、「ｒｅｆｅｒ−ｒｏｏｍ」は会議室に言及する発話の対話行為タイプを表している。
【００４７】
一方、共起確率とは、対話記録から、対話の各時点での対話状態とその直後の対話行為との組を抽出し、その組が対話記録における全組の組み合わせのうちどの程度の頻度で現れるかを調べたものである。
【００４８】
上述の組とは、単純な対話状態と対話行為との  ｂｉｇｒａｍ（２−ｇｒａｍ）とは限らない。なぜなら、対話状態に含まれる内容の複雑さのため、データがスパースになることも予想されるからである。
【００４９】
そのため、実施形態例では、工夫として、対話状態が保持するユーザ意図の理解結果が対話行為によってどのように更新されるか、更新される項目は更新時にどういった状態であったかなどの共起の仕方を、図９に示す７つの項目値を使って区分けされることになる図１０に示すような複数のクラス（図１０の例では１７クラス）で表し、対話状態とその直後の対話行為との組がどのクラスに属しているのかを判断して、その組の共起確率として、それが属するクラスの共起確率を代替として用いるようにしている。
【００５０】
ただし、データのスパースさが発生しないことが分かっていれば、こういった工夫は必要ない。
【００５１】
次に、図９について、以下に詳しく説明する。
【００５２】
対話状態は、図７に示したように、複数のスロットと呼ばれる属性値対（ａｔｔｒｉｂｕｔｅ−ｖａｌｕｅ  ｐａｉｒ）から構成されるフレーム表現であり、その他に、ユーザとシステムとの間の発話履歴を保持し、システムの質問・確認はユーザの情報要求内容のスロットと関連付けられるものとなる（ｅ．ｇ．，  会議室予約システムにおいて、対話状態として開始時間のスロットが存在するとき、「３時からですか？」というシステムの確認発話は情報要求内容の開始時間に対応し、「何時からですか？」というシステムの質問発話も同様に情報要求内容の開始時間に対応することになる）。
【００５３】
このとき、本発明では、対話状態と対話行為との組を、図９に示す以下の７つの項目値によってクラス分けしている。
【００５４】
（１）直前に質問したスロットを更新するか
対話行為の更新対象であるスロットが、システムが直前に質問した内容に関連付けられたスロットであるかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００５５】
（２）確認中のスロットを更新するか
対話行為の更新対象であるスロットが、システムが直前に確認した内容に関連付けられたスロットであるかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００５６】
（３）これまでに確認したスロットに関する対話行為か
対話行為の更新対象であるスロットが、システムが直前までに確認した内容に関連付けられたスロットであるかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００５７】
（４）値を持たないスロットに関する対話行為か
対話行為の更新対象であるスロットが、すでに過去の対話行為によって値が入力されているかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００５８】
（５）値を持つスロットに関する対話行為で、更新後も値が同じか
対話行為の更新対象であるスロットが、すでに過去の対話行為によって値が入力されており、その値を対話行為が変更しないかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００５９】
（６）値を持つスロットに関する対話行為で、値を変更するか
対話行為の更新対象であるスロットが、すでに過去の対話行為によって値が入力されており、その値を対話行為が変更するかどうかを示す値である。該当すれば１となり、違うならば０となる。
【００６０】
（７）最初の対話状態についてか
実施例におけるシステムでは、システムは対話の最初においてのみ「ご用件をどうぞ」と発話する。このようなユーザが返答として何を言ってもいいような質問をオープンな質問というが、こういった質問の直後とそうでない場合との対話行為では、分布が異なるため、区別される必要がある。初回の対話状態に対する対話行為であれば１となり、違うならば０となる。
【００６１】
以上に説明した図９に示す７つの項目において、番号１，２，３，７は独立事象である。一方、番号４，５，６の組はいずれか１つが１であるか、または、すべてが０であるかの４通りの組み合わせとなる。従って、起こり得る事象は、２４  ×４＝６４通りである。これらの中で実際に対話中に起こった１７通りを図１０に示してある。
【００６２】
ここで、図１０中に示す共起パターンの各ビットは、左から右の順に図９で説明した７つの項目の項目番号に対応しており、それらのビットの値には、図９で説明した１または０の２値のいずれか一方の値が割り当てられる。そして、図１０に示す共起確率は、対応する共起パターンが起こった確率を示している。
【００６３】
本発明では、対話状態とその直後の対話行為との組が示す共起パターンを求めると、その共起パターンを検索キーにして図１０のテーブルを検索することで、その組が図１０に示す１７個のクラスの内のどのクラスに属しているのかを判断して、その組の共起確率として、それが属するクラスの共起確率を代替として用いるようにしている。
【００６４】
〔イ−３〕統計情報保持部２３
統計情報保持部２３は、統計情報抽出部２２の抽出した統計情報を格納する。具体的には、統計情報抽出部２２の抽出した連鎖確率の対数（後述するスコアｓｎｇｒａｍ  に相当するもの）を連鎖パターンに対応付けて格納するとともに、統計情報抽出部２２の抽出した共起確率の対数（後述するスコアｓｃｏｌ  ）を共起パターンに対応付けて格納する。
【００６５】
〔ロ〕対話装置１０
〔ロ−１〕ユーザ発話受付部１１
ユーザ発話受付部１１は、ユーザ発話を受け付けるものであり、マイクと音声認識器とから構成されている。
【００６６】
この音声認識器には、ユーザ発話のたびに、マイクを通してユーザ音声が入力され、これを受けて、音声認識器は音声認識結果を出力する。このとき、音声認識器は最尤の音声認識結果を出力することに加えて、上位ｎ個の音声認識結果の仮説（図１中に示すｎ−ｂｅｓｔ）を出力する。
【００６７】
〔ロ−２〕対話行為変換部１２
対話行為変換部１２は、ユーザ発話を対話行為に変換するものであり、ユーザ発話受付部１１の出力する音声認識結果の仮説を入力とし、対応する対話行為を出力する。
【００６８】
具体的には、ユーザ発話受付部１１の出力する上位ｎ個の音声認識結果のそれぞれについて、構文解析・意味解析を行うプログラム処理を施すことで対話行為を生成し、このとき、複数の解釈が存在する場合には、複数の対話行為を生成する。
【００６９】
簡単な例を挙げると、「２時」とだけユーザが時間を指定した場合、開始時間に関する対話行為と終了時間に関する対話行為のどちらにも対応できるようにするために、図４にも示したように、両方の場合、すなわち２つの対話行為を生成する。ここでは、説明の便宜上、上位ｎ個の音声認識結果から、ｍ個の対話行為を生成するものとする。（図１中に示すｍ−ｂｅｓｔ）。
【００７０】
また、それぞれの対話行為に対しては、音声認識時のスコアと構文解析・意味解析の妥当性の観点とから、スコア付けされているものとする。実施形態例では、この対話行為のスコア（後述するスコアｓａｃｔ  ）  として、音声認識時における認識結果順序の逆数の対数を用いている。したがって、認識結果順序の低いものはスコアが低くなる。
【００７１】
〔ロ−３〕対話状態管理部１４
対話状態管理部１４は、対話の各時点でのユーザ意図の理解結果などについて記載する図７に示したような対話状態を保持しており、要求に応じて、その保持する対話状態の情報を提供する。ここで、対話状態はスコア付きで一つ以上保持されているとし、対話の最初には、初期の対話状態が一つ保持されているとする。
【００７２】
対話状態管理部１４の管理する対話状態は、上述したように、システムが内部に保持する様々な対話に関する情報のことを指し、対話の各時点でのユーザ意図の理解結果や、ユーザとシステムとの間の発話履歴や、生成元となった対話状態の履歴などを含んでいる。
【００７３】
〔ロ−４〕対話状態更新部１３
対話状態更新部１３は、対話行為変換部１２の出力するｍ個のスコア付き対話行為と、対話状態管理部１４の保持するｋ個のスコア付き対話状態とを受け取り、これらの対話行為と対話状態との組み合わせによって、新たにｍ×ｋ個のスコア付き対話状態を生成する。
【００７４】
このとき、対話状態更新部１３は、ｍ×ｋ個のそれぞれの対話状態のスコアＳｔ＋１  を、
Ｓｔ＋１  ＝Ｓｔ  ＋α×ｓａｃｔ  ＋β×ｓｎｇｒａｍ  ＋γ×ｓｃｏｌ  
の計算式に従って算出する。
【００７５】
ここで、Ｓｔ  は更新前の対話状態のスコア、ｓａｃｔ  は対話行為のスコア（対話行為変換部１２の割り付けるスコア）、ｓｎｇｒａｍ  は対話行為タイプの連鎖確率に関するスコア、ｓｃｏｌ  は対話状態と対話行為との共起確率に関するスコアである。また、α，β，γはそれぞれ重み係数である。
【００７６】
本実施形態例では、ｓｎｇｒａｍ  には対象の対話行為の３−ｇｒａｍ  確率の対数（図８に示したもの）を用い、ｓｃｏｌ  には対象となる対話状態と対話行為との組の属するクラスの共起確率の対数（図１０に示したものの対数）を用いる。また、α、β、γは例えばすべて１を用いる。
【００７７】
このようにして計算されたスコアを持つｍ×ｋ個の対話状態は、対話状態管理部１４に渡され、それまでに保持されていた対話状態に代わって保持されることになる。
【００７８】
ここで、対話の進行に伴って対話状態の組み合わせ数が多くなり、処理に支障をきたす場合には、保持する対話状態の最大数（対話状態ビーム幅と呼ぶ）を決定し、高スコアの対話状態のみを残し、低スコアの対話状態を破棄することで、実時間的な処理を行うことを可能にする。
【００７９】
〔ロ−５〕応答生成部１５
応答生成部１５は、対話状態管理部１４から、ｍ×ｋ個の対話状態をスコア付きで受け取り、最もスコアの高いものを最尤の対話状態とし、その対話状態に基づいて、ユーザ応答を決定し、音声によって応答を伝達する。
【００８０】
このとき応答に用いられたシステム発話は、図７に示した対話状態の記録するユーザとシステムとの間の発話履歴に登録されることで、システムの持つ対話状態のすべてに反映されることになる。
【００８１】
次に、図１１及び図１２の処理フローに従って、このように構成される対話装置１０の実行する処理について詳細に説明する。
【００８２】
ここで、図１１はユーザ発話受付部１１／対話行為変換部１２／対話状態更新部１３の実行する処理フローであり、図１２は応答生成部１５の実行する処理フローである。
【００８３】
対話装置１０は、ユーザが発話すると、図１１の処理フローに示すように、先ず最初に、ステップ１０で、ユーザ音声を入力し、続くステップ１１で、その入力したユーザ音声について音声認識を行うことで、上位ｎ個の音声認識結果を得る。
【００８４】
続いて、ステップ１２で、上位ｎ個の音声認識結果のそれぞれについて構文・意味解析を行うことで、ｍ個の対話行為を生成するとともに、それらの対話行為に対して、音声認識時のスコアと構文・意味解析の妥当性の観点とから、スコアｓａｃｔ  を付与する。
【００８５】
例えば、「２時」とだけユーザが時間を指定した場合、開始時間に関する対話行為と終了時間に関する対話行為のどちらにも対応できるようにするために、図４にも示すように、開始時間に関する対話行為と終了時間に関する対話行為とを生成するとともに、その２つの対話行為に対して、音声認識時のスコアと構文・意味解析の妥当性の観点とから、スコアｓａｃｔ  を付与するのである。
【００８６】
ここで、構文・意味解析の妥当性とは、例えば、「第３会議室予約します」という解析結果が得られた場合と、「第３会議室を予約します」という解析結果が得られた場合とを考えた場合、「第３会議室の予約」という対話行為としては後者の方がより正確な文章となっていることで妥当性が高いと判断することになる。
【００８７】
続いて、ステップ１３で、対話状態管理部１４に保持される対話状態から、スコアＳ（以下で、この時点のスコアをＳｔ  と記述する）の高い順にｋ個の対話状態を読み出す。後述するステップ１８の処理に従って、対話状態管理部１４に保持される対話状態にはスコアＳが付与されており、図７に示すように、対話状態管理部１４に保持される対話状態はこのスコアＳを記録しているので、この記録されるスコアＳの高い順にｋ個の対話状態を読み出すのである。
【００８８】
続いて、ステップ１４で、ステップ１３で読み出したｋ個の対話状態と、ステップ１２で生成したｍ個の対話行為とから、これまでの対話状態に代わるｍ×ｋ個の新たな対話状態を生成して、対話状態管理部１４に登録する。
【００８９】
続いて、ステップ１５で、新たに生成した対話状態の中から未処理のものを１つ選択する。
【００９０】
続いて、ステップ１６で、選択した対話状態について、その対話状態の生成元となった「対話状態→対話行為」の共起パターン（図１０に示したもの）を特定して、その特定した共起パターンを検索キーにして、統計情報保持部２３を検索することで、その共起パターンの指す共起確率に関するスコアｓｃｏｌ  を取得する。
【００９１】
続いて、ステップ１７で、選択した対話状態に記録される発話履歴の記述する対話行為タイプの連鎖から、対話行為タイプの連鎖パターンを特定して、その特定した連鎖パターンを検索キーにして、統計情報保持部２３を検索することで、その連鎖パターンの指す連鎖確率に関するスコアｓｎｇｒａｍ  を取得する。
【００９２】
続いて、ステップ１８で、選択した対話状態のスコアＳｔ＋１  を、
Ｓｔ＋１  ＝Ｓｔ  ＋α×ｓｃｏｌ  ＋β×ｓｎｇｒａｍ  ＋γ×ｓｃｏｌ  
に従って算出して、その選択した対話状態（対話状態管理部１４に登録されている）に記録する。
【００９３】
続いて、ステップ１９で、ステップ１４で生成した全ての対話状態を処理したのか否かを判断して、未処理のものが残されていることを判断するときには、ステップ１５に戻り、未処理のものが残されていないことを判断するときには、処理を終了する。
【００９４】
このようにして、対話装置１０は、ユーザが発話すると、図４に示すような形で、対話状態（図中に示す「開始スロット，終了スロット，スコア」を記録するもの）を更新していくように処理するのである。
【００９５】
一方、対話装置１０は、ユーザが発話することでそれに応答する場合には、図１２の処理フローに示すように、先ず最初に、ステップ２０で、図１１の処理フローに従って新たに生成したｍ×ｋ個の対話状態のスコアが算出されるのを待って、ｍ×ｋ個の対話状態のスコアが算出されると、続くステップ２１で、対話状態管理部１４から、ｍ×ｋ個の対話状態をスコア付きで読み出す。
【００９６】
続いて、ステップ２２で、読み出した対話状態の中から、最も高いスコアのものを最尤の対話状態として特定し、続くステップ２３で、その特定した最尤の対話状態に基づいて、ユーザ応答を決定する。
【００９７】
続いて、ステップ２４で、その決定したユーザ応答を音声出力し、続くステップ２５で、ｍ×ｋ個の対話状態のそれぞれに、発話履歴として、システム発話の対話行為が行われたことを記録して、処理を終了する。
【００９８】
このようにして、本発明の音声対話システム１では、ユーザの情報要求に１つ以上の解釈が存在し、システムが保持するユーザ情報要求内容に１つ以上の解釈が存在する場合において、ユーザの情報要求のそれぞれと、システムが保持するユーザ情報要求内容のそれぞれとの組み合わせから得られる、１つ以上のユーザ情報要求内容候補のそれぞれに対し、過去の対話データから得られる統計的基準を用いて、正解と考えられるものに高いスコアを、そうでないものには低いスコアを与え、スコアの高い候補を優先的なユーザ情報要求内容とすることで、ユーザの情報要求内容を高精度で取得し、同時に、その時点ではスコアの低いユーザ情報要求内容候補であっても、次のユーザ情報要求との組み合わせによっては、高いスコアを持つユーザ情報要求内容候補を生成する可能性があることを考慮して、スコアの低いユーザ情報要求内容候補についても次のユーザ入力まで保持し続けるようにするのである。
【００９９】
この構成に従って、本発明の音声対話システム１によれば、話の流れ（文脈）を考えて、ユーザの伝えたいことを理解できるようになって、それに応答できるようになる。
【０１００】
次に、本発明の有効性を検証すべく行った対話実験の結果について説明する。この対話実験は全部で３種類行った。それぞれの実験概要と結果とを以下に示す。
【０１０１】
（１）対話実験１
音声認識器の出力を５−ｂｅｓｔにし、対話状態ビーム幅（保持する対話状態の最大数）を１５で実験した。１６名の被験者から２５６の対話データを収集した。タスク達成に５分以上かかった対話を失敗としたとき、タスク達成率は８８．３％（２２６／２５６）であった。
【０１０２】
（２）対話実験２
音声認識器の出力を１−ｂｅｓｔにし、対話状態ビーム幅を１で実験した。２８名の被験者から２２４の対話データを収集した。タスク達成に５分以上かかった対話を失敗としたとき、タスク達成率は８８．３％であった。タスクが達成された対話の平均タスク達成時間は１０７．６６秒であった。
【０１０３】
（３）対話実験３
音声認識器の出力を１−ｂｅｓｔにし、対話状態ビーム幅を３０で実験した。２８名（対話実験２と同一）の被験者から２２４の対話データを収集した。タスク達成に５分以上かかった対話を失敗としたとき、タスク達成率は９１．０％であった。タスクが達成された対話の平均タスク達成時間は９５．８６秒であった。同一被験者の、同一タスク（会議室の予約内容）での対話の場合を対話実験２と比較した場合、タスク達成時間は統計的に有意に短縮された。
【０１０４】
以上の対話実験から次のことが検証できた。
【０１０５】
対話実験１において、比較的良好な達成率が得られたことは、人手で作成したルールによる対話状態のスコアリングをしなくても、音声対話システムとして十分機能していることを示す。また、対話実験２と対話実験３との結果により、対話状態を１つ以上持つことの意義が示された。
【０１０６】
【発明の効果】
以上説明したように、本発明によれば、話の流れを考えてユーザの伝えたいことを理解して、それに対して応答することを実現するときにあって、複数の対話行為と対話状態との組み合わせから得られる複数の対話状態のスコアリングに、手作業によるルールを用いるのではなく、人間と機械との対話記録から得られる統計情報を元にスコアリングを行うことで、ユーザの情報要求内容を高精度に特定することができるようになる。
【０１０７】
そして、本発明によれば、人手によるルール記述をなくすことで、システム作成のコストも低く抑えることが可能となる。
【図面の簡単な説明】
【図１】本発明の音声対話システムの一実施形態例である。
【図２】会議室予約システムの会話形態を説明する図である。
【図３】会議室予約システムの会話における問題点を説明する図である。
【図４】本発明の音声対話システムの実行する処理を説明する図である。
【図５】連鎖確率を説明する図である。
【図６】共起確率を説明する図である。
【図７】対話状態のデータ構造の一例を示す図である。
【図８】連鎖確率のデータ値の一例を示す図である。
【図９】共起パターンのクラス分けに用いる項目を説明する図である。
【図１０】共起確率のデータ値の一例を示す図である。
【図１１】対話装置の実行する処理フローである。
【図１２】対話装置の実行する処理フローである。
【符号の説明】
１    音声対話システム
１０  対話装置
１１  ユーザ発話受付部
１２  対話行為変換部
１３  対話状態更新部
１４  対話状態管理部
１５  応答生成部
２０  統計情報管理装置
２１  対話記録保持部
２２  統計情報抽出部
２３  統計情報保持部
【図１】
2004354787.tif 000003
【図２】
2004354787.tif 000004
【図３】
2004354787.tif 000005
【図４】
2004354787.tif 000006
【図５】
2004354787.tif 000007
【図６】
2004354787.tif 000008
【図７】
2004354787.tif 000009
【図８】
2004354787.tif 000010
【図９】
2004354787.tif 000011
【図１０】
2004354787.tif 000012
【図１１】
2004354787.tif 000013
【図１２】
2004354787.tif 000014