JP4680691B2 - 対話システム - Google Patents

対話システム Download PDF

Info

Publication number
JP4680691B2
JP4680691B2 JP2005175570A JP2005175570A JP4680691B2 JP 4680691 B2 JP4680691 B2 JP 4680691B2 JP 2005175570 A JP2005175570 A JP 2005175570A JP 2005175570 A JP2005175570 A JP 2005175570A JP 4680691 B2 JP4680691 B2 JP 4680691B2
Authority
JP
Japan
Prior art keywords
state
recognition
input
candidate set
recognition candidate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005175570A
Other languages
English (en)
Other versions
JP2006349954A (ja
Inventor
拓郎 池田
英志 北川
俊之 福岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005175570A priority Critical patent/JP4680691B2/ja
Priority to CNB200510112519XA priority patent/CN100504844C/zh
Priority to US11/244,071 priority patent/US20060287868A1/en
Publication of JP2006349954A publication Critical patent/JP2006349954A/ja
Application granted granted Critical
Publication of JP4680691B2 publication Critical patent/JP4680691B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、システムからの質問に対するユーザの応答に応じた状態遷移を行う対話システムに関し、特に、過去の状態に対する再入力を受け付けることが可能な対話システムに関する。
従来、ユーザからの入力を受け付ける手段として例えば音声認識モジュールを利用し、ユーザとシステム間の対話を実現する対話システムが知られている。このような対話システムは、例えば、音声ポータルをはじめとする情報提供システム、コールセンター業務の音声自動応答システム、カーナビゲーションシステムなどに用いられている。
従来の対話システムは、対話の進行内容が記述された対話シナリオを処理することで、システムとユーザとの対話を実現している。一般に、対話シナリオは状態遷移モデルで表される。各状態には、システム出力の内容と、ユーザ入力からシステムが認識する認識語彙が記述された認識候補集合とが割り当てられており、システム出力に対して行われたユーザ入力の認識結果によって、次に遷移すべき状態が決定される。これを繰り返すことで対話が進行していく。対話シナリオはVoiceXMLなどの言語によって、認識候補集合はSRGS(Speech Recognition Grammar Specification)などの言語によって記述される。
ユーザからの入力を受け付けるためには音声認識技術が用いられる。これは、音声認識モジュール(ASR:Automatic Speech Recognition)が、ユーザの入力した音声をテキスト情報に変換するものである。音声認識モジュールは、指定された認識候補集合を参照して、ユーザ入力が認識候補集合に記述された認識語彙のいずれかと一致していると推定される場合にそれを認識結果として返す。音声認識モジュールは認識結果とともに、その認識結果が実際のユーザ入力と一致している尤度を信頼度として返す機能を備えている。音声認識モジュールは、同時に複数の認識候補集合を参照して認識を行うこともできる。
また、システムからの情報を提示するためには、音声合成技術が用いられる。これは、音声合成モジュール(TTS:Text To Speech)によりテキスト情報を自動的に読み上げるものである。ユーザは、対話システムに直接的につながった入力装置および出力装置のほか、一般加入電話、携帯電話、PDAなどの移動体通信機器、カーナビゲーションなどの機器からネットワーク回線を介して対話システムに接続し、サービスを利用する。
対話システムでは、入力した情報の変更・訂正などを行うため、ユーザが再入力を行う場合が多い。特に、音声対話システムでは、システムからの質問に対してユーザが何らかの応答を行った後に、システムの認識間違いやユーザの言い間違い・言いよどみ等の理由によりユーザが再入力を行うことが多い。このような再入力を容易に行わせることを目的として、複数個の異なる項目の一連の音声入力を行う場合において、認識結果の確認、訂正を行う場合にキー操作を必要とせず、ただ言い直すだけで容易に入力訂正を行える音声認識装置が提案されている(特許文献1参照)。
特開平5−66794号公報
しかしながら、従来の対話システムでは、各質問に対して有効な応答となる認識候補集合と、それに一致するユーザ入力が行われた場合の処理とを、すべて対話シナリオに記述しておく必要がある。そのため、再入力可能な対話システムを実現するには、次の質問を行っている時点でも、再入力を受理する(前の質問に対する)認識候補集合を有効にし、さらに、実際に再入力が行われたときの処理を対話シナリオに明示的に記述しなければならなかった。
特に、システムの質問の順番があらかじめ決まっておらず、ユーザ入力の内容などの状況に応じて対話の流れが決まるような対話シナリオの場合、対話シナリオの記述が非常に複雑になり、コストがかかるという問題があった。すなわち、この場合、前の質問が何であったかという対話の履歴を参照して再入力を受理する認識候補集合を設計しなければならず、また、あり得る対話の流れをすべて考慮した上で、再入力が行われたときの処理を対話シナリオに記述する必要があったからである。
本発明は、前記課題を解決するために、再入力が行われる場合を想定して対話シナリオを記述しなくても、ユーザの再入力を適切に処理することが可能な対話システムを提供することを目的とする。
本発明にかかる対話システムとユーザとの「対話」とは、音声によって媒介される対話に限定されない。例えば、ユーザがキーボードまたは手書き文字入力装置等の入力装置を利用して入力したテキストデータ等を介したやりとりも、本発明における「対話」の概念に含まれる。
上述の目的を達成するために、本発明にかかる対話システムは、ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部と、前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを記憶する対話シナリオ記憶部と、前記対話シナリオに記述された状態遷移モデルに基づき、前記入力部からのユーザ入力に応じて、遷移すべき状態を決定する状態管理部と、現在の状態を記憶しておく現状態記憶部と、前記状態管理部によって決定された状態に割り当てられた処理を実行する処理実行部と、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を、前記状態遷移モデルの各状態に対応付けてあらかじめ記憶する認識候補集合記憶部と、次の状態へ遷移する際に、遷移前の状態を記憶しておく再入力可能状態記憶部と、次の状態へ遷移する際に、遷移前の状態に割り当てられた認識候補集合を記憶しておく再入力用認識候補集合記憶部と、ユーザ入力があったとき、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識処理部とを備え、前記認識処理部が決定した認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、前記状態管理部が、前記再入力可能状態記憶部に記憶された状態を、遷移すべき状態として決定することを特徴とする。
この構成では、ある状態から次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する。そして、ユーザ入力があったとき、認識処理部が、その時点における状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する。さらに、このように決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、前記状態管理部が、前記再入力可能状態記憶部に記憶された状態を、次に遷移すべき状態として決定する。これにより、従来のように、ユーザにより再入力が行われる可能性を想定して対話シナリオを記述しておかなくても、前の状態に対する再入力を受け付けて適切に処理することが可能な対話システムを提供できる。
本発明にかかる対話システムは、ユーザ入力があったとき、その時点で前記現状態記憶部に記憶されている状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方において、ユーザ入力に該当する認識語彙候補があった場合、どちらの認識候補集合を優先するかを所定の基準に基づいて決定する再入力判定部をさらに備えたことが好ましい。
この構成によれば、前の状態に対する再入力の認識語彙候補と、現在の状態に対する入力の認識語彙候補のどちらにも該当するユーザ入力があった場合に、再入力判定部が、どちらの状態への入力として扱うかを決定する。なお、このような場合に、どちらを優先するかは、対話システム毎に、そのシステムの目的等に応じて任意に設定すれば良い。
本発明にかかる対話システムは、前記再入力用認識候補集合記憶部に記憶された認識候補集合を、ユーザが再入力を行う場合に想定される認識語彙候補を含んだ認識候補集合に変換する再入力用認識候補集合変換部をさらに備えたことが好ましい。この構成によれば、再入力用認識候補集合記憶部に記憶された認識候補集合を、例えば、再入力を行う場合にユーザが良く使うと想定される表現等を加えた認識語彙候補を含んだ認識候補集合に変換することにより、ユーザによる再入力をより的確に認識することが可能となる。
上記の場合、前記認識処理部が、更に、前回の認識結果を記憶しておき、前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合から前記前回の認識結果を除くことが考えられる。ユーザによる再入力は、前回の認識結果が誤認識である場合になされるため、前回の認識結果を認識候補集合から除くことにより、再入力時の認識精度を向上させることができるからである。
あるいは、上記の場合、前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合へ、当該認識候補集合に記述された認識語彙候補のいずれかに対してユーザが再入力を行う場合に用いられる語彙を付加した新たな認識語彙候補を追加することも考えられる。再入力の場合、特に音声入力にて言い直しを行う場合に、ユーザは前回の入力を否定するような語彙(間投詞等)を付け加えることが多い。従って、そのような語彙を認識語彙候補の前後いずれかまたは前後両方に付加した新たな認識語彙候補を、認識候補集合へ追加することにより、再入力時の認識精度を向上させることができる。
また、本発明にかかる対話システムにおいて、ある状態からユーザ入力が行われず次の状態に遷移する場合、前記再入力可能状態記憶部に記憶された状態と、前記再入力用認識候補集合記憶部に記憶された認識候補集合とを更新しないことが好ましい。この構成によれば、ユーザ入力が行われなかった状態に対して、誤って再入力を受け付けてしまうことが防止される。
また、本発明にかかる対話システムにおいて、前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われた場合、前記認識処理部による認識結果を明示的にユーザに確認する状態を生成する再入力結果確認状態生成部をさらに備えたことが好ましい。この構成によれば、ユーザによる再入力に対する認識結果をユーザに確認させた上で次の状態へ遷移することができるからである。
また、本発明にかかる対話システムにおいて、前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われたとき、そのときの状態で呼び出したアプリケーションプログラムによる手続きの結果を元に戻すための手続きを呼び出すことが好ましい。この構成によれば、例えば誤認識によって開始されてしまった手続きの結果を元に戻すことができるからである。
また、本発明にかかる対話システムにおいて、前記再入力可能状態記憶部に、過去の状態を複数記憶するための領域を備えると共に、再入力用認識候補集合記憶部に、過去の状態に割り当てられた認識候補集合を複数記憶するための領域を備え、過去の状態へのユーザ入力に対して得られた認識結果を保存しておく認識結果履歴記憶部をさらに備えたことが好ましい。この構成によれば、2回以上前の状態に対する再入力も受け付けて適切に処理することが可能となる。
また、本発明にかかるプログラムは、ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部とを備えたコンピュータに、ユーザとの対話処理を実行させるプログラムであって、前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを参照し、前記状態遷移モデルに基づき前記入力部からのユーザ入力に応じて遷移すべき状態を決定し、決定された状態を現状態記憶部へ記憶すると共に、決定された状態に割り当てられた処理を実行する処理実行ステップと、次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する記憶ステップと、ユーザ入力があったとき、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を前記状態遷移モデルの各状態に対応付けてあらかじめ記憶した認識候補集合記憶部を参照し、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識ステップとを前記コンピュータに実行させ、前記認識ステップにおいて決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、次の前記処理実行ステップにおいて、前記コンピュータに、前記再入力可能状態記憶部に記憶された状態を遷移すべき状態として決定させることを特徴とする。
本発明によれば、対話において、ユーザの再入力が行われる場合を想定して対話シナリオを記述しなくても、ユーザの再入力を適切に処理することが可能な対話システムを提供することができる。
[第1の実施形態]
本発明にかかる対話システムの基本的な実施形態について以下に説明する。図1は、本実施形態にかかる対話システムの概略構成を示すブロック図である。
図1に示すように、本実施形態の対話システムは、対話シナリオ記憶部101、状態管理部102、現状態記憶部103、処理実行部104、入力部105、出力部106、認識候補集合記憶部107、認識処理部108、再入力可能状態記憶部109、および、再入力用認識候補集合記憶部110を備えている。
この対話システムはコンピュータによって構築され、状態管理部102、処理実行部104、および、認識処理部108は、前記コンピュータのプロセッサが所定のプログラムを実行することによって実現される機能的ブロックである。すなわち、これらの各部は必ずしもハードウェアとして実装されるわけではない。対話シナリオ記憶部101、現状態記憶部103、認識候補集合記憶部107、再入力可能状態記憶部109、および、再入力用認識候補集合記憶部110は、前記コンピュータの内蔵記憶装置または前記コンピュータがアクセス可能な外部記憶装置によって実現される。
入力部105は、ユーザ入力を受け付ける機能を持ち、例えば、音声入力の対話システムの場合であればマイクロフォンによって実現され、テキストデータや数値データによる入力を用いる対話システムの場合であればキーボード、テンキー、あるいはタブレット等の入力デバイスによって実現される。音声入力の場合は、入力部105または認識処理部108が、ユーザの発話内容を認識するための音声認識機能を有する。また、ユーザが手書き文字によってテキストデータ等を入力する場合は、入力部105または認識処理部108は、ユーザの筆跡から文字や記号等を認識するための文字認識機能を有する。音声認識機能および文字認識機能を実現する仕組みについては周知であるため、ここでは詳細な説明は省略する。出力部106は、システムからの出力をユーザに提示する機能を持ち、例えば、スピーカやディスプレイ等によって実現される。
対話シナリオ記憶部101には、システムとユーザとの対話を実現するための対話シナリオが記憶されている。対話シナリオは状態遷移モデルに基づいて記述されている。各状態には、その状態において実行すべき処理が割り当てられている。各状態に割り当てられた処理の具体的内容として、例えば、(1)システム出力(システムからユーザへの質問等)の内容、(2)ユーザ入力の認識語彙が記述された認識候補集合と、認識候補集合に一致するユーザ入力が行われた場合、または、ユーザ入力を正しく認識できなかった場合に、次に遷移すべき状態、が対話シナリオにおいて状態毎に記述されている。なお、対話シナリオの具体例については後述する。状態管理部102が、次に遷移すべき状態を決定し、処理実行部104が、対話シナリオに従って、状態管理部102により決定された状態に割り当てられた処理を実行することにより、システムとユーザとの対話が実現される。
状態管理部102で次に遷移すべき状態が決定されると、その状態の名称が現状態記憶部103に記憶される。処理実行部104は、対話シナリオ記憶部101の対話シナリオを参照し、状態管理部102で決定された状態に割り当てられたシステム出力の内容と認識候補集合とに基づいて、認識処理部108および出力部106を制御する。認識候補集合記憶部107には、対話シナリオに記述されている状態遷移モデルの各状態のそれぞれに対応づけられて、ユーザからの入力として想定される語彙の集合が、認識候補集合としてあらかじめ記憶されている。すなわち、状態遷移モデルに含まれる状態のうち、ユーザから何らかの入力がなされる状態と同じ数の認識候補集合が、認識候補集合記憶部107に記憶されている。認識処理部108は、認識候補集合記憶部107に記憶された認識候補集合の中から、現在の状態に対応する認識候補集合として指定された認識候補集合を参照し、入力部105から入力されたユーザ入力の認識処理を行う。認識処理部108は、ユーザ入力が認識候補集合に記述された認識語彙のいずれかに一致していると推定した場合、その認識語彙を認識結果として状態管理部102へ渡す。状態管理部102は、現状態記憶部103に記憶されている現在の状態と、認識処理部108による認識結果とに基づいて、次に遷移すべき状態を決定する。本実施形態の対話システムは、このような一連の処理を繰り返すことで対話を進行する。
また、本実施形態の対話システムにおいて、再入力可能状態記憶部109は、現時点の状態に遷移する前の状態の名称を記憶する。なお、本実施形態においては、各状態に「質問1」、「質問2」のような名称(図4および図6参照)を付与し、現状態記憶部103や再入力可能状態記憶部109にはこれらの名称が記憶されるものとした。ただし、それぞれの状態を識別するための標識は、このような名称に限定されず、任意の標識でよい。再入力用認識候補集合記憶部110は、現在の状態に遷移する前の状態に割り当てられた認識候補集合を記憶している。このように、本実施形態の対話システムは、状態遷移が行われる際に、遷移前の状態の名称を再入力可能状態記憶部109に記憶し、また、遷移前の状態に割り当てられている認識候補集合を再入力用認識候補集合記憶部110に記憶する。
そして、遷移後の状態に割り当てられた処理を実行するときに、ユーザ入力が行われると、遷移後の状態に割り当てられている認識候補集合に加えて、再入力用認識候補集合記憶部109に記憶されている遷移前の状態に割り当てられている認識候補集合も、同時に参照する。遷移後の状態に割り当てられている認識候補集合を先にチェックするのか、再入力用認識候補集合記憶部109に記憶されている遷移前の状態に割り当てられている認識候補集合を先にチェックするのか、両方の認識候補集合を合わせてチェックするのかは、システムの設計によってどちらでも良い。同じ回答の選択肢がある対話が続くような場合は、対話内容により、どちらかを優先するように設計することが望ましい。
ユーザが、遷移前の状態に対応する再入力を行った場合は、再入力された語彙は、再入力用認識候補集合記憶部109に記憶されている遷移前の状態に割り当てられている認識候補集合に記述された語彙と一致する。この場合、現状態記憶部103の内容を再入力可能状態記憶部109に記憶されている遷移前の状態に一時的に戻した後、ユーザ入力の認識結果に基づいて決定された状態へと遷移する。これにより、遷移前の状態でユーザ入力が行われた場合と同様の対話が継続されることになる。
以上のとおり、本実施形態の対話システムでは、再入力が行われる場合を想定して対話シナリオを記述しなくても、現在の状態に割り当てられた認識候補集合に加えて、前回の状態に割り当てられた認識候補集合も同時に参照することにより、ユーザの再入力を受理することができる。
[第2の実施形態]
本発明にかかる対話システムの他の実施形態について以下に説明する。図2は、本実施形態にかかる対話システムの概略構成を示すブロック図である。なお、第1の実施形態において説明した構成と同様の機能を有する構成については、第1の実施形態と同じ参照符号を付記し、その詳細な説明を省略する。
本実施形態にかかる対話システムは、図2に示すように、第1の実施形態にかかる対話システムの構成にさらに加えて、再入力判定部111を備えている。再入力判定部111は、現在の状態に割り当てられた認識候補集合と、前回の状態に割り当てられた認識候補集合とのそれぞれで認識結果が得られた場合、いずれの認識結果を優先するかを決定する機能を有する。
現在の状態に割り当てられた認識候補集合と、前回の状態に割り当てられた認識候補集合とのそれぞれで認識結果が得られた場合、認識結果とともに返される信頼度を比較して、どちらの認識候補集合を優先するかを決定してもよい。また、現在の状態に割り当てられた認識候補集合と、前回の状態に割り当てられた認識候補集合との間で何らかの重み付けを行い、どちらの認識候補集合を優先するかを決定してもよい。現在の状態に割り当てられた認識候補集合と、前回の状態に割り当てられた認識候補集合とに共通して含まれる認識結果の候補に一致するユーザ入力が行われた場合には、再入力判定部111でどちらを優先するか決定する。通常は、現在の状態に割り当てられた認識候補集合を優先する方が自然であると考えられるが、対話システムの目的等に応じて、どちらを優先するかは任意である。
以下、本実施形態に係る対話システムにおける処理の具体例について説明する。ここでは、対話システムがユーザの年齢と性別とを順番に質問してユーザ登録を行うような対話シナリオを想定する。図3は、まず、対話システムが年齢(質問1)を質問した際にユーザが「29歳」と答え、次に、対話システムが性別(質問2)を質問している間に、ユーザが先の質問1に対して「30歳」という応答を再入力している対話例を示している。図3に示すように、本実施形態にかかる対話システムでは、質問2を質問している際、質問1に対する認識候補集合と質問2に対する認識候補集合の両方が有効な認識候補集合とされている。なお、認識候補集合が「有効」であるとは、その認識候補集合が認識処理部108によって参照され、認識処理に用いられるという意味である。
図4は、上記の例において対話シナリオで記述された状態遷移モデルの一例を表す。図4の状態遷移モデルでは、状態S1において対話システムが年齢(質問1)を質問し、この質問に対するユーザの応答が「10代」であれば状態S2へ、「20代」であれば状態S3へ、「30代」であれば状態S4へ遷移する。そして、状態S3において対話システムが性別(質問2)を質問し、この質問に対するユーザの応答が「男」であれば状態S5へ、「女」であれば状態S6へ遷移する。ただし、状態S3においてユーザが質問1に対する応答を再入力すると、再入力された応答に応じて、その応答が状態S1において入力された場合と同じ状態へ遷移する。
このような状態遷移モデルを実現するためには、すなわち、二つ目の質問2(性別)を質問している状態でも一つ目の質問1(年齢)に対する応答の再入力を受理し、なおかつ適切に処理するためには、従来の対話システムでは、対話シナリオにおいて、年齢を受理する認識候補集合を有効にした上で、実際に年齢が入力された場合にどのような処理を行うかを対話シナリオに明示的に記述しておく必要があった(図5参照)。特に、この例のように、ユーザ入力の内容によって次に遷移する状態が異なるような対話シナリオの場合は、遷移前の状態と遷移後の状態との両方に複雑な処理を記述する必要があった。また、図4の状態S7またはS8から状態S3への遷移のように、年齢以外の何らかの質問がされた後に性別を質問するという対話の流れもあるため、前の質問(状態)が何であったかという全ての対話の流れを考慮した上で対話シナリオを記述しなければならず、対話シナリオの開発コストが非常に高かった。
これに対して、本実施形態にかかる対話システムでは、第1の実施形態と同様に、現在の状態へ遷移する前の状態の名称と、現在の状態へ遷移する前の状態に割り当てられている認識候補集合とが、再入力可能状態記憶部109および再入力用認識候補集合記憶部110にそれぞれ記憶されており、認識処理部108が、現在の状態へ遷移する前の状態に割り当てられている認識候補集合と、現在の状態に割り当てられている認識候補集合との両方を参照して認識処理を行う。さらに、状態管理部102が、現状態記憶部103に記憶されている現在の状態と、認識処理部108による認識結果とに基づいて、次に遷移すべき状態を決定する。これにより、本実施形態の対話システムでは、再入力が行われる場合を想定して対話シナリオに記述しなくても、再入力が行われた場合の処理を適切に行うことが可能である。
図6は、本実施形態の対話システムにおいて用いられる対話シナリオである。図5と図6から分かるように、図5の従来の対話システムで用いられる対話シナリオに比較して、本実施形態の対話システムにおいて用いられる対話シナリオは非常にシンプルである。
次に、図7に、本実施形態にかかる対話システムにおける処理の流れをフローチャートで示す。最初に、対話シナリオにおいて初期状態として記述されている状態から、処理が開始される(Op11)。処理実行部104が、初期状態として記述されている状態に割り当てられている処理を実行する。具体的には、まず、出力部106より、対話シナリオにおいてその状態に割り当てられているシステム出力(システムからユーザへの質問等)を行う(Op12)。次に、認識候補集合記憶部107に記憶されている認識候補集合のうち、現在の状態に割り当てられている認識候補集合を有効化する(Op13)。そして、前記システム出力に対してユーザ入力が行われると、処理実行部104の制御の下で、認識処理部108が、Op13で有効化された認識候補集合とユーザ入力とを対比することにより、認識処理を行う(Op14)。そして、Op14の認識処理の結果に基づき、状態管理部102が、状態遷移モデルに含まれる状態のうちのどの状態へ遷移すべきかを決定する(Op15)。
Op15で遷移先として決定された状態が終了状態であれば(Op16にてYES)、状態管理部102は対話を終了する。一方、Op15で遷移先として決定された状態が終了状態でなければ(Op16にてNO)、状態管理部102は、遷移前の状態の名称を再入力可能状態記憶部109に記憶する(Op17)。さらに、状態管理部102は、遷移前の状態に割り当てられている認識候補集合を、再入力用認識候補集合記憶部110に記憶する(Op18)。
その後、処理実行部104が、Op15で遷移先として決定された状態に割り当てられた処理を実行することにより、出力部106より、対話シナリオにおいてその状態に割り当てられているシステム出力(システムからユーザへの質問等)を行う(Op19)。すなわち、ここで、Op11の初期状態からOp15で決定された状態へ、状態の遷移が行われたこととなる。次に、認識処理部108が、現在の状態(すなわち遷移後の状態)に割り当てられた認識候補集合と、再入力用認識候補集合記憶部110に記憶されている認識候補集合との両方を有効にして(Op20)、ユーザ入力とこれらの認識候補集合とを対比することにより、ユーザ入力の認識処理を行う(Op21)。ユーザ入力の認識結果が得られた場合、再入力判定部111が、そのユーザ入力が再入力であるか否かを判断する(Op22)。Op22における再入力判定部111による判断手法については後述する。
Op22において前記ユーザ入力が再入力でないと判断された場合は、Op15へ戻り、状態管理部102が次に遷移すべき状態を決定する。一方、Op22において前記ユーザ入力が再入力であると判断された場合は、現在の状態を、再入力可能状態記憶部109に記憶されている状態(すなわち一つ前の状態)に変更してから(Op23)、Op15へ戻る。
前記Op22において、再入力判定部111は、ユーザ入力が一致した認識語彙の含まれる認識候補集合が、現在の状態に割り当てられたものであるか、前の状態に割り当てられたもの(再入力用認識候補集合記憶部110に記憶されている認識候補集合)であるかによって、ユーザ入力が再入力であるか否かを判断する。前の状態に割り当てられた認識候補集合と、現在の状態に割り当てられた認識候補集合とのそれぞれに含まれる認識語彙に一致するユーザ入力が行われた場合には、認識結果とともに返された信頼度を比較して、どちらを優先するかを決定してもよい。さらに、信頼度に対して、再入力が行われる可能性に応じた重み付けを行ってもよい。前の状態に割り当てられた認識候補集合と、現在の状態に割り当てられた認識候補集合との両方に共通して記述されている認識語彙に一致する入力が行われた場合(例えば、ある状態において父親の年齢を質問し、その次の状態において母親の年齢を続けて質問するような対話シナリオの場合)は、現在の状態に割り当てられた認識候補集合に一致した(すなわち、再入力でない)と、判断するようにしてもよい。
[第3の実施形態]
本発明にかかる対話システムのさらに他の実施形態について以下に説明する。図8は、本実施形態にかかる対話システムの概略構成を示すブロック図である。なお、前述の各実施形態において説明した構成と同様の機能を有する構成については、それらの実施形態と同じ参照符号を付記し、その詳細な説明を省略する。
図8に示すように、本実施形態の対話システムは、第2の実施形態にかかる対話システムの構成にさらに加えて、再入力用認識候補集合変換部112と、再入力確認状態生成部113とを有する。再入力用認識候補集合変換部112は、ユーザが再入力したときの認識性能を向上させるために、前回の状態に割り当てられた認識候補集合をより再入力しやすい認識候補集合へ変換する。再入力確認状態生成部113は、ユーザ入力の認識結果が再入力であると判断された場合、前の状態の処理を行う前に、その再入力に対する認識結果をユーザに明示的に確認する対話を行う状態を生成する。
ユーザが応答を再入力する場合は、状況によって、「いや、〜」のような否定を表す語彙や、「〜だって」のような強調を表す語彙、「やっぱり〜」のような変更を表す語彙を伴って入力することが多い。このため、再入力用認識候補集合変換部112は、前回の状態に割り当てられた認識候補集合に記述された各認識語彙に対して、このような再入力時に特有の語彙を、登録されている語彙の前後いずれか、もしくは両方に追加したものを新たな認識語彙として追加する。また、認識誤りが理由でユーザが再入力を行う場合、前回の状態に割り当てられた認識候補集合に記述されている認識語彙から過去の認識結果を除くことで、同じ誤認識を繰り返すことを防止することができる。
また、ある状態から、ユーザの応答がないまま、次の状態に遷移する場合には、再入力可能状態記憶部109と再入力用認識候補集合記憶部110の更新を行わないことで、さらに先の状態において前回の状態に対する再入力を行うことが可能である。また、最初の応答から一定時間以上経過した後の再入力の可能性が低い場合には、経過時間に応じて、再入力用認識候補集合記憶部110に記憶された認識候補集合を有効にするか否かを決定してもよい。
以下、本実施形態に係る対話システムの動作について説明する。ここでは、一つの例として、いくつかの条件を入力してレストラン検索サービスを行うような対話シナリオを想定する。図9は、まず、対話システムが希望の料理のジャンル(質問1)を質問した際に、ユーザが「和食」と答えたにもかかわらず、「洋食」と誤って認識された後、システムが検索条件の確認(質問2)を行っている際に、ユーザが、質問1に対する再入力として、もう一度「いや、和食だって」と入力している対話例を示している。
図10は、本実施形態の対話シナリオで記述された状態遷移モデルを表している。図10に示すように、この対話シナリオでは、最初の状態(S1)における料理のジャンルの質問(質問1)に対するユーザ入力の認識結果(「和食」、「洋食」、「中華」)に応じて、互いに異なる状態(S2〜S4)に遷移する。また、状態S3では、対話システムが検索条件の確認(質問2)を行っている際に、ユーザ入力がなければ次の状態(S5)に遷移する。
図11に、本実施形態にかかる対話システムにおける処理の流れをフローチャートで示す。なお、本実施形態にかかる対話システムは、図7に示した第2の実施形態にかかる対話システムの処理において、Op17の後にOp30の処理を、Op22の後にOp31の処理をそれぞれ追加したものである。Op11〜Op23の処理内容については、第2の実施形態と共通なので説明を省略する。
Op30では、再入力用認識候補集合変換部112が、前回の状態に割り当てられている認識候補集合を変換し、変換した認識候補集合を再入力用認識候補集合記憶部110に記憶する。上述のように、ユーザが応答を再入力する場合は、再入力時に特有の語彙(付属的語彙)を伴って入力する場合が多い。従って、このような応答を受理するために、再入力用認識候補集合変換部112は、前回の状態に割り当てられた認識候補集合に記述された語彙の前後いずれか、もしくは両方に、再入力時に特有の語彙を付加したものを新たな認識語彙として追加することにより、認識候補集合を変換する。
再入力時に特有の付属的語彙としては、「いや、〜」、「違う、〜」のような否定を表す語彙や、誤認識を修正するときの、「〜だって」、「〜だってば」、「〜だよ」のような強調を表す語彙、入力内容を修正したいときの「やっぱり〜」のような変更を表す語彙などが考えられる。なお、ここに挙げた付属的語彙は単なる例示であって、これらにのみ限定されるものではない。また、同じ誤認識を繰り返すことを防ぐために、認識候補集合に記述された認識語彙から、過去の認識結果(この例の場合だと「洋食」)を取り除いたものに、認識候補集合を変換することも考えられる。
また、Op31では、再入力判定部111によってユーザ入力の認識結果が再入力であると判断された場合、前の状態の処理を行う前に、ユーザに明示的に認識結果を確認する対話を行う。これは、再入力確認状態生成部113で生成した状態に割り当てられた処理を処理実行部104が実行することで実現する。この例では、「和食でよろしいですか?」のように、再入力の認識結果をユーザに明示的に確認する。これにより、再入力でないのに再入力と誤って判断された場合に、それまでの入力が破棄され、ユーザの予期しない状態に遷移してしまうことを防止できる。
本実施形態にかかる対話システムでは、ユーザの入力が行われず次の状態に遷移する場合には、現状態記憶部103に記憶された状態と、再入力用認識候補集合記憶部110に記憶された認識候補集合を更新する処理(Op17,Op18)を行わない。これにより、この例の場合では、「洋食で調べますね?(図9参照)」という質問2に対するユーザ入力が行われず、次の状態であるS5に遷移して、例えば「予算はいくらですか?」のような質問(図10の質問3)が行われた後でも、料理のジャンル(質問1)に対して再入力を行うことが可能になる。
[第4の実施形態]
本発明にかかる対話システムのさらに他の実施形態について以下に説明する。図12は、本実施形態にかかる対話システムの概略構成を示すブロック図である。なお、前述の各実施形態において説明した構成と同様の機能を有する構成については、それらの実施形態と同じ参照符号を付記し、その詳細な説明を省略する。
図12に示すように、本実施形態の対話システムは、第3の実施形態にかかる対話システムと基本的構成は同様であるが、直前の状態だけではなく、さらに前の状態に対しても再入力を受け付けることを可能とするために、再入力可能状態記憶部109と再入力用認識候補集合記憶部110のそれぞれに、過去の複数の状態とそれぞれの状態における認識候補集合が記憶される。
以下、本実施形態に係る対話システムの動作について説明する。ここでは、航空機の運賃照会サービスと予約サービスを行う対話シナリオを想定する。図13は、本実施形態の対話システムにおいて対話シナリオに記述された状態遷移モデルを表している。この対話シナリオでは、まず、最初の状態S1において、希望するサービス(質問1)を質問し、次の状態S2において、出発地と到着地(質問2)を質問する。その後の対話の流れは、ユーザが状態S1において選択したサービスによって異なる。すなわち、ユーザが状態S1において「運賃」照会サービスを選択していた場合は、状態S2から状態S3へ遷移して運賃の案内を行う。一方、ユーザが状態S2において「予約」サービスを選択していた場合は、状態S2から状態S4へ遷移して日時(質問3)を質問する。
このような状態遷移モデルにおいて、前回の質問に対する再入力だけでなく、それより過去の質問に対する再入力を受理可能にするためには、再入力用認識候補集合記憶部110と再入力可能状態記憶部109において、それぞれ複数状態分の状態と認識候補集合とを記憶する。そして、状態が遷移する際に、遷移前の状態を再入力可能状態記憶部109に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部110に、それぞれ追加記憶する。そして、認識処理を行う際は、現在の状態に割り当てられた認識候補集合とともに、再入力用認識候補集合記憶部110に記憶されたすべての認識候補集合も同時に有効にする。過去の質問に対する再入力が行われた場合には、現在の状態を、再入力可能状態記憶部109に記憶された状態のうちユーザ入力が一致した認識候補集合が割り当てられている状態に変更した後、次に遷移すべき状態を決定する。
例えば、図13に示す状態遷移モデルにおいて、運賃案内を行っている時点(状態S3)でユーザが「予約」と入力すれば、認識処理部108が状態S1に対応する認識候補集合に含まれる語彙が入力されたものと認識する。これにより、ユーザは、対話の途中で、希望するサービスを「運賃」照会から「予約」へ変更することが可能になる。この場合、状態S1に対する再入力が受け付けられたこととなるので、次に状態S2へ遷移し、再び、出発地と目的地の質問がなされる。
ここで、本実施形態のさらなる改良例として、図14に示すように、認識結果履歴記憶部114をさらに追加し、すでに認識結果が得られている状態についてはスキップするようにしてもよい。図15に、認識結果履歴記憶部114の記憶内容の一例を概念的に示す。図15の例では、図13に示した状態S1に対するユーザ入力の認識結果が「運賃」であり、状態S2に対するユーザ入力の認識結果が、出発地については「東京」、到着地については「大阪」であったものとする。認識結果履歴記憶部114の記憶内容が図15のとおりである場合、状態S3で運賃案内を行っている時点でユーザが「予約」と入力すると、状態管理部102は、認識結果履歴記憶部114の記憶内容を参照し、状態S1およびS2に対するユーザ入力の認識結果が既に得られていることを確認し、状態S2をスキップして状態S4へ遷移する。従って、ユーザは、運賃照会サービスを利用する過程で状態S2において入力した出発地と到着地をもう一度入力する必要がない。
過去のどの時点までの質問に対する再入力を受理可能にするかについては、再入力用認識候補集合記憶部110に記憶された認識候補集合のそれぞれを有効にするか否かを、各認識候補集合が記憶されてからの経過時間に応じて決定してもよい。あるいは、いくつ前の状態の認識候補集合までを有効にするかを、それまでの状態遷移回数に応じて決定してもよい。また、所定のタスク(例えば航空券の予約)が完了した時点で、再入力可能状態記憶部109と、再入力用認識候補集合記憶部110の内容をクリアするようにしてもよい。
なお、再入力用認識候補集合記憶部110に記憶されている認識候補集合に一致するユーザ入力が行われた場合には、状態実行部104が、現在の状態で呼び出した外部アプリケーションの手続きの結果を元に戻すための手続きを呼び出すようにしてもよい。例えば、ある状態に割り当てられた処理の中で、アプリケーションプログラム呼び出しの手続きと、そのアプリケーションプログラムによる処理結果を元に戻すための手続きとの両方を呼び出し可能とすれば良い。なお、前記処理結果を元に戻す手続きは必ずしも対話シナリオに記述を要するわけではなく、ユーザ入力が再入力であったと判断された場合は対話シナリオによらずに自動的にこの手続が実行されるようにしてもよい。
例えば、データベースと連携して動作する対話システムの場合、ある状態において、データベースへの書き込みを行うアプリケーションプログラムを呼び出してデータベースへの書き込み処理を開始したとする。この後、ユーザが再入力を行ったとき、データベースへの書き込みを取り消すようなAPIを呼び出すようにすることにより、前回のユーザ入力の影響を打ち消すことができる。
以上の各実施形態に加えて、以下の付記を開示する。
(付記1)
ユーザ入力を受け付ける入力部と、
ユーザへ情報を提示する出力部と、
前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを記憶する対話シナリオ記憶部と、
前記対話シナリオに記述された状態遷移モデルに基づき、前記入力部からのユーザ入力に応じて、遷移すべき状態を決定する状態管理部と、
現在の状態を記憶しておく現状態記憶部と、
前記状態管理部によって決定された状態に割り当てられた処理を実行する処理実行部と、
前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を、前記状態遷移モデルの各状態に対応付けてあらかじめ記憶する認識候補集合記憶部と、
次の状態へ遷移する際に、遷移前の状態を記憶しておく再入力可能状態記憶部と、
次の状態へ遷移する際に、遷移前の状態に割り当てられた認識候補集合を記憶しておく再入力用認識候補集合記憶部と、
ユーザ入力があったとき、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識処理部とを備え、
前記認識処理部が決定した認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、前記状態管理部が、前記再入力可能状態記憶部に記憶された状態を、遷移すべき状態として決定することを特徴とする対話システム。
(付記2)
ユーザ入力があったとき、その時点で前記現状態記憶部に記憶されている状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方において、ユーザ入力に該当する認識語彙候補があった場合、どちらの認識候補集合を優先するかを所定の基準に基づいて決定する再入力判定部をさらに備えた、付記1記載の対話システム。
(付記3)
前記再入力用認識候補集合記憶部に記憶された認識候補集合を、ユーザが再入力を行う場合に想定される認識語彙候補を含んだ認識候補集合に変換する再入力用認識候補集合変換部をさらに備えた、付記1または2に記載の対話システム。
(付記4)
前記認識処理部は、更に、前回の認識結果を記憶しておき、
前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合から前記前回の認識結果を除く、付記3に記載の対話システム。
(付記5)
前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合へ、当該認識候補集合に記述された認識語彙候補のいずれかに対してユーザが再入力を行う場合に用いられる語彙を付加した新たな認識語彙候補を追加する、付記3記載の対話システム。
(付記6)
ある状態から、ユーザ入力が行われず次の状態に遷移する場合、前記再入力可能状態記憶部に記憶された状態と、前記再入力用認識候補集合記憶部に記憶された認識候補集合とを更新しない、付記1〜5のいずれか一項に記載の対話システム。
(付記7)
前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われた場合、前記認識処理部による認識結果を明示的にユーザに確認する状態を生成する再入力結果確認状態生成部をさらに備えた、付記1〜6のいずれか一項に記載の対話システム。
(付記8)
前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われたとき、そのときの状態で呼び出したアプリケーションプログラムによる手続きの結果を元に戻すための手続きを呼び出す、付記1〜7のいずれか一項に記載の対話システム。
(付記9)
前記再入力可能状態記憶部に、過去の状態を複数記憶するための領域を備えると共に、再入力用認識候補集合記憶部に、過去の状態に割り当てられた認識候補集合を複数記憶するための領域を備え、
過去の状態へのユーザ入力に対して得られた認識結果を保存しておく認識結果履歴記憶部をさらに備えた、付記1〜8のいずれか一項に記載の対話システム。
(付記10)
ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部とを備えたコンピュータに、ユーザとの対話処理を実行させるプログラムであって、
前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを参照し、前記状態遷移モデルに基づき前記入力部からのユーザ入力に応じて遷移すべき状態を決定し、決定された状態を現状態記憶部へ記憶すると共に、決定された状態に割り当てられた処理を実行する処理実行ステップと、
次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する記憶ステップと、
ユーザ入力があったとき、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を前記状態遷移モデルの各状態に対応付けてあらかじめ記憶した認識候補集合記憶部を参照し、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識ステップとを前記コンピュータに実行させ、
前記認識ステップにおいて決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、次の前記処理実行ステップにおいて、前記コンピュータに、前記再入力可能状態記憶部に記憶された状態を遷移すべき状態として決定させることを特徴とするプログラム。
(付記11)
ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部とを備えたコンピュータに、ユーザとの対話処理を実行させるプログラムを記録した記録媒体であって、
前記プログラムは、
前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを参照し、前記状態遷移モデルに基づき前記入力部からのユーザ入力に応じて遷移すべき状態を決定し、決定された状態を現状態記憶部へ記憶すると共に、決定された状態に割り当てられた処理を実行する処理実行ステップと、
次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する記憶ステップと、
ユーザ入力があったとき、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を前記状態遷移モデルの各状態に対応付けてあらかじめ記憶した認識候補集合記憶部を参照し、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識ステップとを前記コンピュータに実行させ、
前記認識ステップにおいて決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、次の前記処理実行ステップにおいて、前記コンピュータに、前記再入力可能状態記憶部に記憶された状態を遷移すべき状態として決定させることを特徴とするプログラムを記録した記録媒体。
(付記12)
ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部とを備えたコンピュータによる対話処理方法であって、
前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを参照し、前記状態遷移モデルに基づき前記入力部からのユーザ入力に応じて遷移すべき状態を決定し、決定された状態を現状態記憶部へ記憶すると共に、決定された状態に割り当てられた処理を実行する処理実行ステップと、
次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する記憶ステップと、
ユーザ入力があったとき、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を前記状態遷移モデルの各状態に対応付けてあらかじめ記憶した認識候補集合記憶部を参照し、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識ステップとを含み、
前記認識ステップにおいて決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、次の前記処理実行ステップにおいて、前記再入力可能状態記憶部に記憶された状態を遷移すべき状態として決定することを特徴とする対話処理方法。
本発明は、対話シナリオにユーザの再入力を処理するコードを記述していなくても、ユーザの再入力を許容するユーザビリティの高い対話システムとして利用可能である。
本発明の第1の実施形態にかかる対話システムのブロック図 本発明の第2の実施形態にかかる対話システムのブロック図 第2の実施形態にかかる対話システムにおける対話例 第2の実施形態にかかる対話システムにおける状態遷移モデル 従来の対話シナリオの一例 第2の実施形態にかかる対話システムにおけるシナリオ例 第2の実施形態にかかる対話システムの動作例を示すフローチャート 本発明の第3の実施形態にかかる対話システムのブロック図 第3の実施形態にかかる対話システムにおける対話例 第3の実施形態にかかる対話システムにおける状態遷移モデル 第3の実施形態にかかる対話システムの動作例を示すフローチャート 本発明の第4の実施形態にかかる対話システムのブロック図 第4の実施形態にかかる対話システムにおける状態遷移モデル 第4の実施形態にかかる対話システムの改良例のブロック図 図14に示す認識結果履歴記憶部の記憶内容の一例を概念的に示す図
符号の説明
101 対話シナリオ記憶部
102 状態管理部
103 現状態記憶部
104 処理実行部
105 入力部
106 出力部
107 認識候補集合記憶部
108 認識処理部
109 再入力可能状態記憶部
110 再入力用認識候補集合記憶部
111 再入力判定部
112 再入力用認識候補集合変換部
113 再入力確認状態生成部
114 認識結果履歴記憶部

Claims (10)

  1. ユーザ入力を受け付ける入力部と、
    ユーザへ情報を提示する出力部と、
    前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを記憶する対話シナリオ記憶部と、
    前記対話シナリオに記述された状態遷移モデルに基づき、前記入力部からのユーザ入力に応じて、遷移すべき状態を決定する状態管理部と、
    現在の状態を記憶しておく現状態記憶部と、
    前記状態管理部によって決定された状態に割り当てられた処理を実行する処理実行部と、
    前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を、前記状態遷移モデルの各状態に対応付けてあらかじめ記憶する認識候補集合記憶部と、
    次の状態へ遷移する際に、遷移前の状態を記憶しておく再入力可能状態記憶部と、
    前記再入力用認識候補集合記憶部に記憶された認識候補集合を、ユーザが再入力を行う場合に想定される認識語彙候補を含んだ認識候補集合に変換する再入力用認識候補集合変換部と、
    次の状態へ遷移する際に、遷移前の状態に割り当てられた認識候補集合を記憶しておく再入力用認識候補集合記憶部と、
    ユーザ入力があったとき、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識処理部とを備え、
    前記認識処理部が決定した認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、前記状態管理部が、前記再入力可能状態記憶部に記憶された状態を、遷移すべき状態として決定することを特徴とする対話システム。
  2. ユーザ入力があったとき、その時点で前記現状態記憶部に記憶されている状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方において、ユーザ入力に該当する認識語彙候補があった場合、どちらの認識候補集合を優先するかを所定の基準に基づいて決定する再入力判定部をさらに備えた、請求項1記載の対話システム。
  3. 前記再入力用認識候補集合変換部は、前回の状態に対応付けられた認識候補集合に記述された語彙の前後いずれか、もしくは両方に、再入力時に特有の語彙を付加したものを新たな認識語彙として追加することにより、前記認識候補集合を変換する、請求項1または2に記載の対話システム。
  4. 前記認識処理部は、更に、前回の認識結果を記憶しておき、
    前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合から前記前回の認識結果を除く、請求項3に記載の対話システム。
  5. 前記再入力用認識候補集合変換部が、前記再入力用認識候補集合記憶部に記憶された認識候補集合へ、当該認識候補集合に記述された認識語彙候補のいずれかに対してユーザが再入力を行う場合に用いられる語彙を付加した新たな認識語彙候補を追加する、請求項3記載の対話システム。
  6. ある状態からユーザ入力が行われず次の状態に遷移する場合、前記再入力可能状態記憶部に記憶された状態と、前記再入力用認識候補集合記憶部に記憶された認識候補集合とを更新しない、請求項1〜5のいずれか一項に記載の対話システム。
  7. 前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われた場合、前記認識処理部による認識結果を明示的にユーザに確認する
    状態を生成する再入力結果確認状態生成部をさらに備えた、請求項1〜6のいずれか一項に記載の対話システム。
  8. 前記再入力用認識候補集合記憶部に記憶された認識候補集合の認識候補語彙に該当するユーザ入力が行われたとき、そのときの状態で呼び出したアプリケーションプログラムによる手続きの結果を元に戻すための手続きを呼び出す、請求項1〜7のいずれか一項に記載の対話システム。
  9. 前記再入力可能状態記憶部に、過去の状態を複数記憶するための領域を備えると共に、再入力用認識候補集合記憶部に、過去の状態に割り当てられた認識候補集合を複数記憶するための領域を備え、
    過去の状態へのユーザ入力に対して得られた認識結果を保存しておく認識結果履歴記憶部をさらに備えた、請求項1〜8のいずれか一項に記載の対話システム。
  10. ユーザ入力を受け付ける入力部と、ユーザへ情報を提示する出力部とを備えたコンピュータに、ユーザとの対話処理を実行させるプログラムであって、
    前記入力部および出力部を介したユーザとの対話に応じた状態遷移モデルが記述された対話シナリオを参照し、前記状態遷移モデルに基づき前記入力部からのユーザ入力に応じて遷移すべき状態を決定し、決定された状態を現状態記憶部へ記憶すると共に、決定された状態に割り当てられた処理を実行する処理実行ステップと、
    次の状態へ遷移する際に、遷移前の状態を再入力可能状態記憶部へ記憶すると共に、遷移前の状態に割り当てられた認識候補集合を再入力用認識候補集合記憶部へ記憶する記憶ステップと、
    前記再入力用認識候補集合記憶部に記憶された認識候補集合を、ユーザが再入力を行う場合に想定される認識語彙候補を含んだ認識候補集合に変換する再入力用認識候補集合変換ステップと、
    ユーザ入力があったとき、前記状態遷移モデルの状態のそれぞれに対して想定されるユーザ入力の認識語彙候補が記述された認識候補集合を前記状態遷移モデルの各状態に対応付けてあらかじめ記憶した認識候補集合記憶部を参照し、そのときの状態に対応付けられた前記認識候補集合と、前記再入力用認識候補集合記憶部に記憶された認識候補集合との両方を参照し、前記ユーザ入力に該当する認識語彙候補を決定する認識ステップとを前記コンピュータに実行させ、
    前記認識ステップにおいて決定された認識語彙候補が、前記再入力用認識候補集合記憶部に記憶された認識候補集合に記述された認識語彙候補であった場合、次の前記処理実行ステップにおいて、前記コンピュータに、前記再入力可能状態記憶部に記憶された状態を遷移すべき状態として決定させることを特徴とするプログラム。
JP2005175570A 2005-06-15 2005-06-15 対話システム Expired - Fee Related JP4680691B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005175570A JP4680691B2 (ja) 2005-06-15 2005-06-15 対話システム
CNB200510112519XA CN100504844C (zh) 2005-06-15 2005-09-30 对话系统
US11/244,071 US20060287868A1 (en) 2005-06-15 2005-10-06 Dialog system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005175570A JP4680691B2 (ja) 2005-06-15 2005-06-15 対話システム

Publications (2)

Publication Number Publication Date
JP2006349954A JP2006349954A (ja) 2006-12-28
JP4680691B2 true JP4680691B2 (ja) 2011-05-11

Family

ID=37519410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005175570A Expired - Fee Related JP4680691B2 (ja) 2005-06-15 2005-06-15 対話システム

Country Status (3)

Country Link
US (1) US20060287868A1 (ja)
JP (1) JP4680691B2 (ja)
CN (1) CN100504844C (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007211838A1 (en) * 2006-02-01 2007-08-09 Icommand Ltd Human-like response emulator
JP4197344B2 (ja) * 2006-02-20 2008-12-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声対話システム
JP2008170817A (ja) * 2007-01-12 2008-07-24 Toyota Motor Corp 対話制御装置、対話制御方法及び対話制御プログラム
JP2008203559A (ja) * 2007-02-20 2008-09-04 Toshiba Corp 対話装置及び方法
JP4812029B2 (ja) * 2007-03-16 2011-11-09 富士通株式会社 音声認識システム、および、音声認識プログラム
US20080243498A1 (en) * 2007-03-30 2008-10-02 Verizon Data Services, Inc. Method and system for providing interactive speech recognition using speaker data
JP5049934B2 (ja) * 2008-09-22 2012-10-17 株式会社東芝 対話文生成装置及び方法
US20130066634A1 (en) * 2011-03-16 2013-03-14 Qualcomm Incorporated Automated Conversation Assistance
DE112012006308B4 (de) * 2012-05-02 2016-02-04 Mitsubishi Electric Corporation Sprachsynthesevorrichtung
JP6115941B2 (ja) * 2013-03-28 2017-04-19 Kddi株式会社 対話シナリオにユーザ操作を反映させる対話プログラム、サーバ及び方法
DE102014017385B4 (de) * 2014-11-24 2016-06-23 Audi Ag Kraftfahrzeug-Gerätebedienung mit Bedienkorrektur
EP3089159B1 (en) * 2015-04-28 2019-08-28 Google LLC Correcting voice recognition using selective re-speak
JP6515764B2 (ja) * 2015-09-28 2019-05-22 株式会社デンソー 対話装置及び対話方法
US10272349B2 (en) * 2016-09-07 2019-04-30 Isaac Davenport Dialog simulation
JP2018054790A (ja) * 2016-09-28 2018-04-05 トヨタ自動車株式会社 音声対話システムおよび音声対話方法
JP6515897B2 (ja) * 2016-09-28 2019-05-22 トヨタ自動車株式会社 音声対話システムおよび発話意図理解方法
JP6895037B2 (ja) * 2016-11-06 2021-06-30 ナレルシステム株式会社 音声認識方法、コンピュータプログラム及び装置
CN107644641B (zh) * 2017-07-28 2021-04-13 深圳前海微众银行股份有限公司 对话场景识别方法、终端以及计算机可读存储介质
US11416678B2 (en) 2018-02-05 2022-08-16 Nec Corporation Question group extraction method, question group extraction device, and recording medium
JP7259349B2 (ja) * 2019-01-23 2023-04-18 カシオ計算機株式会社 対話装置、対話方法、及びプログラム
US11386890B1 (en) * 2020-02-11 2022-07-12 Amazon Technologies, Inc. Natural language understanding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109493A (ja) * 1999-10-12 2001-04-20 Mitsubishi Electric Corp 音声対話装置
JP2003015683A (ja) * 2001-06-27 2003-01-17 Nec Corp 音声認識装置、ビームサーチ方法、およびビームサーチプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219591A (ja) * 1994-01-28 1995-08-18 Canon Inc 音声処理装置および方法
JPH10124085A (ja) * 1996-10-18 1998-05-15 Matsushita Electric Ind Co Ltd 音声認識装置及び認識方法
WO1999007740A2 (en) * 1997-08-06 1999-02-18 Zymogenetics, Inc. Lipocalin homologs
US6839669B1 (en) * 1998-11-05 2005-01-04 Scansoft, Inc. Performing actions identified in recognized speech
FI116991B (fi) * 1999-01-18 2006-04-28 Nokia Corp Menetelmä puheen tunnistamisessa, puheentunnistuslaite ja puheella ohjattava langaton viestin
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
GB9928011D0 (en) * 1999-11-27 2000-01-26 Ibm Voice processing system
WO2002060162A2 (en) * 2000-11-30 2002-08-01 Enterprise Integration Group, Inc. Method and system for preventing error amplification in natural language dialogues
US7228278B2 (en) * 2004-07-06 2007-06-05 Voxify, Inc. Multi-slot dialog systems and methods
US7720684B2 (en) * 2005-04-29 2010-05-18 Nuance Communications, Inc. Method, apparatus, and computer program product for one-step correction of voice interaction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109493A (ja) * 1999-10-12 2001-04-20 Mitsubishi Electric Corp 音声対話装置
JP2003015683A (ja) * 2001-06-27 2003-01-17 Nec Corp 音声認識装置、ビームサーチ方法、およびビームサーチプログラム

Also Published As

Publication number Publication date
JP2006349954A (ja) 2006-12-28
CN1881206A (zh) 2006-12-20
CN100504844C (zh) 2009-06-24
US20060287868A1 (en) 2006-12-21

Similar Documents

Publication Publication Date Title
JP4680691B2 (ja) 対話システム
US11238845B2 (en) Multi-dialect and multilingual speech recognition
KR102596446B1 (ko) 모바일 디바이스들에서의 모달리티 학습
US8275618B2 (en) Mobile dictation correction user interface
KR101255402B1 (ko) 대안들의 목록을 사용하는 오인된 단어들의 다시 받아쓰기
JP4680714B2 (ja) 音声認識装置および音声認識方法
US7848926B2 (en) System, method, and program for correcting misrecognized spoken words by selecting appropriate correction word from one or more competitive words
EP2466450B1 (en) method and device for the correction of speech recognition errors
US20160188574A1 (en) Intention estimation equipment and intention estimation system
US7529657B2 (en) Configurable parameters for grammar authoring for speech recognition and natural language understanding
US7603279B2 (en) Grammar update system and method for speech recognition
KR101590724B1 (ko) 음성 인식 오류 수정 방법 및 이를 수행하는 장치
US20090106026A1 (en) Speech recognition method, device, and computer program
JP2017058673A (ja) 対話処理装置及び方法と知能型対話処理システム
CN111540353B (zh) 一种语义理解方法、装置、设备及存储介质
JP2008203559A (ja) 対話装置及び方法
US20060195319A1 (en) Method for converting phonemes to written text and corresponding computer system and computer program
JP2010191400A (ja) 音声認識装置およびデータ更新方法
WO2013014877A1 (ja) 信頼度算出装置、翻訳信頼度算出利用方法および翻訳エンジン用プログラム
CN111508497B (zh) 语音识别方法、装置、电子设备及存储介质
JP5558284B2 (ja) 音声認識システム、音声認識方法、および音声認識プログラム
JP5688677B2 (ja) 音声入力支援装置
KR20220128397A (ko) 자동 음성 인식을 위한 영숫자 시퀀스 바이어싱
US20190279623A1 (en) Method for speech recognition dictation and correction by spelling input, system and storage medium
Sun Adapting spoken dialog systems towards domains and users

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101026

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110203

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees