"コンピュータを使って、対話システムにおいて行動を実行する方法であって、ユーザの意図の複数の思考状態を複数の行動の図にする変換処理を読み出すステップと、ユーザが話した言葉を受信するステップと、前記話した言葉に基づいて、前記ユーザの意図の思考状態を決定するステップと、前記決定された思考状態および前記読み出された変換処理に基づいて、実行する行動を選択するステップと、前記選択する行動を実行するステップと、を含むことを特徴とする方法。前記選択する行動は、前記ユーザにさらなるフィードバックを要求する行動を含むことを特徴とする請求項1に記載の方法。前記選択する行動は、前記ユーザに前記話した言葉の全部または一部を明瞭化する要求を含むことを特徴とする請求項2に記載の方法。前記選択する行動は、前記ユーザに前記話した言葉の全部または一部を確認する要求を含むことを特徴とする請求項2に記載の方法。前記選択する行動は、前記ユーザが要求した情報を前記ユーザに通知することを含むことを特徴とする請求項1に記載の方法。変換処理を読み出すステップは、変換処理を生成するステップ、を含むことを特徴とする請求項1に記載の方法。変換処理を生成するステップは、複数の変換処理パラメータを生成するステップと、所定の目標を有する、シミュレートしたユーザ入力を生成するステップと、前記生成された、シミュレートしたユーザ入力に基づいて、ユーザの意図の、シミュレートした思考状態を決定するステップと、前記シミュレートした思考状態および前記複数の変換処理パラメータに基づいて行動を実行するステップと、前記実行された行動が前記所定の目標を満たすときには、前記複数の変換処理パラメータを出力するステップと、を含むことを特徴とする請求項6に記載の方法。前記実行された行動が前記所定の目標を満たさないときには、前記実行された行動に基づいて前記シミュレートしたユーザ入力を修正するステップと、前記修正された、シミュレートしたユーザ入力に基づいて、ユーザの意図の第2のシミュレートした思考状態を決定するステップと、前記第2のシミュレートした思考状態および前記複数の変換処理パラメータに基づいて第2の行動を実行するステップと、前記実行された第2の行動が前記所定の目標を満たすときには、前記複数の変換処理パラメータを出力するステップと、をさらに含むことを特徴とする請求項7に記載の方法。前記実行された複数の行動に基づいて、部分観測マルコフ決定過程POMDP:partiallyobservableMarkovdecisionprocess成果スコアを決定するステップと、前記POMDP成果スコアに基づいて変換処理閾値が満たされているという判定に応じて、前記複数の変換処理パラメータを出力するステップと、をさらに含むことを特徴とする請求項8に記載の方法。前記POMDP成果スコアに基づいて変換処理閾値が満たされていないという判定に応じて、前記シミュレートした思考状態、前記第2のシミュレートした思考状態、前記実行された行動、前記実行された第2の行動、および前記POMDP成果スコアのうちの1つまたは複数に基づいて、前記複数の変換処理パラメータを修正するステップと、所定の目標を有する第2のシミュレートしたユーザ入力を生成するステップと、前記第2のシミュレートしたユーザ入力に基づいて、ユーザの意図の第3のシミュレートした思考状態を決定するステップと、前記第3のシミュレートした思考状態および前記修正された複数の変換処理パラメータに基づいて第3の行動を実行するステップと、をさらに含むことを特徴とする請求項9に記載の方法。前記決定された思考状態は、前記ユーザの意図の複数の思考状態特徴を備えることを特徴とする請求項1に記載の方法。前記話した言葉に基づいて、前記ユーザの意図の思考状態を決定するステップは、未観測ノードの各々が1つのドメイン概念を表すとともに1つの対話スロットに対応する1つの確率分布テーブルを有する、複数の未観測ノードを備える確率的オントロジーPOT:probabilisticontologytreeを読み出すステップと、前記話した言葉をテキストに変換するステップと、前記テキストと、前記複数の未観測ノードが表す前記複数のドメイン概念との間の関係性に基づいて、複数の未観測ノードに対応する1または複数の対話スロットに前記テキストを割り当てるステップと、前記テキストが割り当てられる対話スロットの各々に対して、1つの確率分布テーブルを有する1つの観測ノードを前記POT内に生成するステップと、複数の未観測ノードの複数の確率分布テーブルおよび複数の観測ノードの複数の確率分布テーブルからなる結合確率に基づいて、ユーザの意図の思考状態を決定するステップと、を含むことを特徴とする請求項1に記載の方法。POTを読み出すステップは、ノードの各々が1つのドメイン概念を表す複数のノードを備えるオントロジーを読み出すステップと、ノード種類と、ヌルセマンティクスと、ノード必須性と、前記ノードが表す前記ドメイン概念とに基づいて、オントロジーノードの各々に対して1つの確率分布テーブルを決定するステップと、前記読み出したオントロジーおよび前記決定された複数の確率分布テーブルに基づいてベイジアンネットワークを生成するステップと、を含むことを特徴とする請求項12に記載の方法。前記話した言葉は、自動音声認識を用いてテキストに変換され、1または複数の対話スロットに前記テキストを割り当てるステップは、前記テキストが1つの対話テキストに正しく割り当てられた尤度に基づいて、割り当ての各々に対して1つの信頼度スコアを決定するステップ、を含むことを特徴とする請求項12に記載の方法。前記複数の観測ノードの前記複数の確率分布テーブルは、前記信頼度スコアと、前記複数の観測ノードに対応する前記ドメイン概念とに基づいて決定されることを特徴とする請求項14に記載の方法。前記複数の未観測ノードの前記複数の確率分布テーブルおよび前記複数の観測ノードの前記複数の確率分布テーブルからなる前記結合確率は、子ノードが、前記子ノードの親ノードにメッセージを移すメッセージパッシングアルゴリズムを用いて決定され、メッセージの各々は、前記子ノードおよび前記子ノードのすべての派生ノードからなる結合確率分布を有することを特徴とする請求項12に記載の方法。行動を実行する対話システムであって、ユーザの意図の複数の思考状態を複数の行動の図にする変換処理を読み出す変換処理モジュールと、ユーザが話した言葉を受信するマイクロフォンと、前記話した言葉に基づいてユーザの意図の思考状態を決定する思考追跡モジュールと、前記決定された思考状態および前記読み出された変換処理に基づいて、実行する行動を選択する変換処理インターフェイスと、前記選択された行動を実行するシステムインターフェースと、を備えることを特徴とする対話システム。行動を実行するための、コンピュータが実行可能なプログラムを有する、一時的でないコンピュータ読み取り可能な記憶媒体であって、ユーザの意図の複数の思考状態を複数の行動の図にする1つの変換処理を読み出す変換処理モジュールと、ユーザが話した言葉を受信するマイクロフォンと、前記話した言葉に基づいてユーザの意図の思考状態を決定する思考追跡モジュールと、前記決定された思考状態および前記読み出された変換処理に基づいて、実行する行動を選択する変換処理インターフェイスと、前記選択された行動を実行するシステムインターフェースと、を備えることを特徴とする記憶媒体。コンピュータを使って、ユーザの意図の思考状態を決定する方法であって、ユーザが話した言葉を受信するステップと、前記話した言葉をテキストに変換するステップと、未観測ノードの各々が1つのドメイン概念を表すとともに1つの対話スロットに対応する1つの確率分布テーブルを有する、複数の未観測ノードを備える確率的オントロジーPOTを読み出すステップと、前記テキストと、前記複数の未観測ノードが表す前記複数のドメイン概念との間の関係性に基づいて、複数の未観測ノードに対応する1または複数の対話スロットに前記テキストを割り当てるステップと、前記テキストが割り当てられる対話スロットの各々に対して、1つの確率分布テーブルを有する1つの観測ノードを前記POT内に生成するステップと、複数の未観測ノードの複数の確率分布テーブルおよび複数の観測ノードの複数の確率分布テーブルからなる結合確率に基づいて、ユーザの意図の思考状態を決定するステップと、を含むことを特徴とする方法。コンピュータを使って、対話システムにおいて行動を実行する方法であって、会話属性を行動の図にする変換処理を読み出すステップと、1または複数の会話属性を有しており、ユーザが話した言葉を受信するステップと、前記1または複数の会話属性および前記読み出した変換処理に基づいて、実行する行動を選択するステップと、前記選択された行動を実行することと、を含むことを特徴とする方法。1つの行動選択変換処理は、所定の思考状態分布に従って実行される行動を指令する複数のパラメータを含むことができる。例えば、そのような変換処理は、複数の思考状態閾値を含んでもよく、対話システムは、思考状態が所定の閾値を満たすときは第1の行動を実行してもよく、思考状態が前記特定の閾値を満たさないときは第2の行動を実行してもよい。変換処理パラメータは、手入力で離散化してもよいが、そうすることは時間がかかり、エラーを招き易くなり、複数の高次元のドメイン概念間にある部分的構造をたびたび無視してしまう。対話システム内で、話された言葉を受信することに応じた行動の選択および実行が記載されている。ユーザの意図の複数の思考状態を、実行する複数の行動の図にすることを含む変換処理を読み出す、または生成する。一実施形態において、前記変換処理は、複数の思考状態特徴を複数の行動の図にしてもよい。ユーザの意図の前記思考状態を、前記話された言葉に基づいて決定する。行動は、前記決定された思考状態および前記変換処理に基づいて選択される。前記選択された行動が、前記ユーザにさらなるフィードバックを求める場合には、前記さらなるフィードバックを要求し、処理を繰り返す。前記選択された行動が、前記ユーザにさらなるフィードバックを求めない場合には、前記行動が実行される。変換処理を生成することは、POMDPを用いて、複数の特定の思考状態に応じて実行する複数の行動をどれにするかを繰り返し決定することを含んでよい。初期の複数の変換処理パラメータは、手入力の選択によって、事前に生成された複数の変換処理に基づいて、ランダムな選択によって、または任意の他の適切な基準に基づいて決定される。所定の目標に対応する、シミュレートしたユーザ入力が生成されると、前記シミュレートしたユーザ入力からなる思考状態が決定される。一実施形態では、実際にユーザが話す言葉を受信し、かつ、他の音響ノイズが存在してもよい環境を最良にシミュレートするために、前記シミュレートしたユーザ入力を、ノイズによって故意に不明瞭化する。行動は、前記決定された思考状態に基づいて、および、前記変換処理パラメータに基づいて実行される。前記行動を実行しても前記目標を達成しないときには、前記シミュレートしたユーザ入力を修正し、前記思考状態を再決定し、行動を再実行する。前記行動を実行することにより前記目標を達成するときには、繰り返しのユーザ入力および行動実行処理に対して、POMDPによる成果スコアを決定する。もし、変換処理閾値を満たさないときには、前記複数の変換処理パラメータを修正し、前記変換処理閾値が満たされるまで前記処理を継続する。ユーザの意図の思考状態を決定することは、確率的オントロジーツリーPOT:ProbabilisticOntologyTreeを用いることを含んでよい。一実施形態において、POTは、オントロジーに基づいて生成されるが、POTを生成するという目的で、既存のままであったりするし、または修正されたりする。オントロジーノードの各々に対して1つの確率分布テーブルを決定し、前記オントロジーおよび前記決定された複数の確率分布テーブルに基づいて、ベイジアンネットワークを生成する。前記生成された、または読み出されたPOTは、各々の未観測ノードが1つの対応する確率分布テーブルを有する複数の未観測ノードを有する。話された言葉は、例えば、自動音声認識を用いてテキストに変換され、前記変換されたテキストを、複数のPOTノードに対応する1または複数の対話スロットに割り当てる。複数の観測ノードは、前記割り当てられた対話スロットに基づいてPOT内で生成され、前記観測ノードのスロット割り当て信頼度およびドメインに基づいて、前記観測ノードに対して確率分布テーブルを生成する。思考状態は、POTの未観測ノードおよび観測ノードの複数の確率分布テーブルの結合確率に基づいて決定される。本明細書に記載された特徴および効果は包括的ではない。具体的には、図面および明細書を考慮すれば、一当業者にとっては多くの他の特徴および効果があることは明らかである。さらに、明細書に用いられる言語は、主に読み易さおよび教育上の目的から選択されたのであり、発明特定事項を詳しく説明するために、または制限するために選択されたわけではない、ということに留意されたい。対話システムの概要図1は、一実施形態に係る、対話システムSDS:SpokenDialogSystemにおいて思考追跡および変換処理パラメータ化を実行するための環境を説明する図である。SDS100は、スタンドアロン型のシステムとして実装してもよいし、他のシステムと通信可能に接続してもよいし、または大型システム内のコンポーネントとして実装してもよい。一実施形態において、SDS100は、車両内に組み入れてもよい。前記実施形態において、ユーザは、SDS100と情報のやり取りをして、前記車両に関する情報にアクセスすることと、店舗、レストラン、サービス、または他のエンティティに関する情報にアクセスすることと、進行方向または他のナビゲーション指示を受信することと、電話をかけることと、媒体を読み出して再生すること、もしくは車両システムに関係する任意の他の機能を行うことと、ができる。代替的に、SDS100は、携帯電話、コンピュータ、ウェブサイト、または思考追跡および変換処理パラメータ化を利用する任意の他のシステムの内部に実装してもよい。SDS100は、マイクロフォン110と、思考追跡モジュール120と、変換処理モジュール130と、インターフェイスモジュール140とを備える。代替的な実施形態においては、より多くの、またはより少ない構成要素が存在するようにしてもよいし、もしくは2またはそれ以上の構成要素からなる機能を合わせてもよい例えば、思考追跡モジュール120および変換処理モジュール130を単一のモジュール内に実装してもよい。マイクロフォン110は、ユーザが話した言葉を受信する。話した言葉は、コマンド、要求、問い合わせ、明瞭化、システムナビゲーション要求、または1形態をとる、ユーザからの任意の音を含む。マイクロフォン110は、SDS100が処理および分析する、話した言葉を記録する。思考追跡モジュール120は、ユーザがから話した言葉の観測に基づいて、SDS100に従ったユーザの意図を決定する。ユーザの意図を決定するために、思考追跡モジュール120は、1または複数のPOTを用いて、1または複数のドメイン内の概念の集合に関する1つの確率分布を保持および更新する。後記するように、ユーザが言葉を発する場合には、思考追跡モジュール120は、その言葉をテキストに変換し、続いて、ある程度の信頼度を伴って、前記テキストから複数の観測を抽出する。よって、思考追跡モジュール120は、最も確からしいユーザの意図に関する複数の仮説からなる1つの結合確率分布を計算して、ユーザの意図の思考状態を決定する。変換処理モジュール130は、SDS100が実行する、または他のシステムに実行するように要求する行動の集合を、ユーザの意図の思考状態の集合の図にする変換処理を記憶する。一実施形態において、変換処理モジュール130は、思考追跡モジュール120を用いて、ユーザの意図を決定し、前記決定したユーザの意図に応じて、そして前記記憶された変換処理に基づいて、実行する行動をインターフェイスモジュール140に要求する。変換処理モジュール130は、変換処理を生成する、および/または修正する学習機能を、任意に備えることができる。後記するように、変換処理モジュール130が実施する変換処理を最適化するために、変換処理モジュール130は、POMDPによる意思決定手段を利用して、学習時に変換処理パラメータを自動的に調整する。インターフェイスモジュール140は、変換処理モジュール130が要求する行動を実行するために、SDS100または外部システムのインターフェイスとなる機能を有する。一実施形態において、インターフェイスモジュール140は、SDS100に関係する行動を実行する。例えば、インターフェイスモジュール140は、ユーザに明瞭化を要求すること、ユーザが話す言葉を確認すること、または、ユーザが要求した情報をユーザに通知することができる。代替的には、インターフェイスモジュール140は、SDS100の電源を入れたりまたは消したりして、ユーザとのやりとりを再開したり、またはやりとりを中止したりすることができる。インターフェイスモジュール140は、ユーザが要求する情報を、例えば、インターネット、データベース、またはローカルストレージから読み出すことができる。インターフェイスモジュール140は、車両とのインターフェイスとなって複数の車両機能を実行すること、電話とのインターフェイスとなって複数の電話機能を実行すること、ナビゲーションシステムとのインターフェイスとなって複数のナビゲーション機能を実行すること、または、SDS100と通信可能に接続されている任意の他のシステムとのインターフェイスとなることができる。使用する場合の一例において、SDS100は、マイクロフォン110を介してユーザから問い合わせを受信する。思考追跡モジュール120は、前記問い合わせとなる言葉をテキストに変換し、後記するように、前記テキストを1または複数の対話スロットに割り当てる。対話スロットに割り当てられたテキスト、言葉からテキストへの変換の信頼度、および対話スロット割り当ての信頼度に基づいて、思考追跡モジュール120は、ユーザの意図の思考状態の結合確率分布を決定する。前記結合確率分布に基づいて、変換処理モジュール130は、実行する行動を決定し、インターフェイスモジュール140は、決定した行動を実行する。図2は、一実施形態に係る、複数のPOTを用いて、複数のユーザ対話観測に基づいて、ユーザの意図の複数の思考状態の1つの結合確率分布を決定する思考追跡モジュール120を説明する図である。図示するように思考追跡モジュール120は、計算機用のプロセッサ200と、メモリ210とを備える。他の実施形態においては、思考追跡モジュール120は、図2に図示されている特徴以外の他の特徴を含んでもよいことが知られている。図3は、一実施形態に係る、ユーザの意図の決定に基づいて、実行する行動を決定する変換処理モジュール130を説明する図である。図示されている変換処理モジュール130は、計算機用のプロセッサ300と、メモリ310とを備える。他の実施形態においては、変換処理モジュール130は、図3に図示されている特徴以外の他の特徴を含んでもよいことが知られている。一実施形態において、思考追跡モジュール120および変換処理モジュール130は、それぞれの複数のプロセッサおよび複数のメモリで実装されている。代替的には、思考追跡モジュール120および変換処理モジュール130は、同一のプロセッサおよびメモリで実装してもよい。例えば、メモリ210の複数のモジュールおよびメモリ310の複数のモジュールは、単一のメモリ内に実装してもよい。一実施形態において、思考追跡モジュール120は、思考追跡モジュール330内に実装されている。説明を単純化するため、本明細書の説明の残り部分については、思考追跡モジュール120および変換処理モジュール130は、別々なものとして説明する。プロセッサ200およびプロセッサ300は、複数のデータ信号を処理し、さまざまなコンピュータアーキテクチャを含むことができる。前記コンピュータアーキテクチャは、複数命令セットコンピュータCISC:complexinstructionsetcomputer、縮小命令セットコンピュータRISC:reducedinstructionsetcomputer、または命令セットの組み合わせを実装しているアーキテクチャを含む。図2および図3の各々には、単一のプロセッサのみが図示されているが、複数のプロセッサを含んでもよい。プロセッサ200、300は、数値演算ユニット、マイクロプロセッサ、汎用コンピュータ、またはお互いに、並びに、メモリ210、310、マイクロフォン110、およびインターフェイス140との間で、電子データ信号の送信、受信、処理をするように具備されているその他のいくつかの情報家電を含む。メモリ210、310はそれぞれ、プロセッサ200、300が実行できる命令および/またはデータを記憶する。前記命令および/またはデータは、本明細書に記載されている、任意の、および/またはすべての技術を実行するためのコードつまり、モジュールを有してもよい。メモリ210、310は、DRAMDynamicRandomAccessMemory装置、SRAMStaticRandomAccessMemory装置、フラッシュRAM不揮発性ストレージ、上記したものの組み合わせ、または本発明に関する技術分野において既知であるいくつかの他の記憶装置、といった任意の一時的でないコンピュータ読み取り可能な記憶媒体でよい。図2に示す実施形態において、メモリ210は、POTモジュール220と、意味論的理解モジュール230と、観測モジュール240と、結合確率モジュール250とを含む。図3に示す実施形態において、メモリ310は、学習モジュール320と、思考追跡モジュール330と、変換処理インターフェイス340と、システム行動モジュール350とを含む。他の実施形態において、メモリは、本明細書に記載されているすべての機能を実行する、より多くの、またはより少ないモジュールを含んでよいことが知られている。メモリ210内に記憶されているすべてのモジュールは、お互いに、およびプロセッサ200と通信するのに適している。メモリ310内に記憶されているすべてのモジュールは、お互いに、およびプロセッサ300と通信するのに適している。メモリ210、310のモジュールはまた、マイクロフォン110と、インターフェイスモジュール140と、SDS100と、SDS100と通信可能に接続されている任意の外部システムと通信するのに適している。思考追跡思考追跡モジュール120は、ユーザの意図の思考追跡の結合確率分布を決定する。思考追跡モジュール120が決定する結合確率分布は、ユーザが話す言葉およびPOTモジュール220が記憶するPOTに基づいている。POTは、ベイジアンネットワークのノード値の確率分布を特定することによってドメインオントロジーを拡張するツリー構造型ベイジアンネットワークである。POTモジュール220は、任意個数のPOTを記憶することができる。図4は、一実施形態に係る、POTの一例を説明する図である。例えば、図4のPOTは、車両ナビゲーションシステム内に実装することができる。POTノードの各々は、ドメイン内にある特定の概念または下位概念を表す。図4のPOTは、行動ノード400、場所ノード402、コマンドノード404などを含む。行動ノード400は、ユーザが実行する可能性のある行動、具体的にいえば、場所ノード402に対応する場所を見つけること、コマンドノード404に対応するSDS用のコマンドを発すること、を表す。図中の確率テーブルは、いくつかのノードに対してのみ示されているが、ノードの各々は、対応する1つの確率テーブルを有することが知られている。さらに、典型的なPOTは、数百またはそれ以上のノードを有してもよいことを強調しておく。POTノードには、IS-A関係を表す特化ノードと、HAS-A関係を表す構成ノードという2種類が存在する。2つのノードがIS-A関係にあるときは、1番目のノードは、2番目のノードが表す概念の部分集合となる概念を表す。例えば、場所ノード402は、ユーザが探すと考えられる場所、具体的にいえば、レストランノード406に対応するレストラン、店舗ノード408に対応する店舗、サービスノード410に対応するサービスを表す。前記例において、レストランノード406、店舗ノード408、サービスノード410は、場所という概念の部分集合を表しており、特化ノードである。2つのノードがHAS-A関係にあるときは、これらのノードのうち1番目のノードは、2番目のノードが表す概念の特性となる概念を表す。例えば、場所ノード402はまた、通りノード412に対応する、場所が位置づけられている通りなどの、考えられる場所の特性も表す。前記例において、通りノード412は、構成ノードであり、場所ノード402の子ノードである。一実施形態において、複数の特化ノードは、ただ1つの親ノードを有しており、共通する代表親ノードを持つ特化ノードの集合に対応する下位概念の集合は、互いに素である。図4の実施形態において、行動ノード400、場所ノード402、コマンドノード404、レストランノード406、店舗ノード408、サービスノード410、開始ノード414、および取り消しノード416は、特化ノードである。一実施形態において、構成ノードは、1または複数の親ノードを有してもよいが、すべての親ノードが特化ノードであり、共通する親ノードを順繰りに有する場合には、構成ノードは、複数の親ノードを有することしかできない。図4の実施形態において、通りノード412、料理ノード418、時間ノード420、価格ノード422、店舗種類ノード424およびサービス種類ノード426は、構成ノードである。POTは、ユーザが話す言葉とは独立した概念を表している複数のノード未観測ノードと、ユーザが話す言葉の中に観測される概念を表しているノード観測ノードを含む。未観測ノードは、POTによって表される、ドメイン概念およびドメイン下位概念の各々に対して存在する。観測ノードは、思考追跡モジュール120が決定しており、ユーザが話す言葉に対応している複数のドメイン概念および複数のドメイン下位概念に対して存在する。動作中は、思考追跡モジュール120は、POTモジュール220から1つのPOTを読み出し、ユーザが話す言葉に基づいて、複数の観測ノードを前記読み出したPOTに追加する。観測ノードについては、観測モジュール240に関して説明するときに後記する。POTノードの各々は、1つの対応する確率分布を有する。POTルートノードは、未観測ノードが表す概念が、とり得る値をとる確率を表す確率分布を有する。図4の例では、行動ノード400は、場所という値をとる可能性が60であり、コマンドという値をとる可能性が40であることを示している、対応する確率分布を有する。一実施形態において、POTの各々は、ただ1つのルートノードを有する。非ルート未観測ノードは、前記非ルート未観測ノードの親ノードの値を与えたときに、非ルート未観測ノードが表す概念がとり得る値をとる確率を表す確率分布を有する。さらに、非ルート未観測ノードの確率分布は、前記非ルート未観測ノードの親ノードの値を与えたときに、非ルート未観測ノードの概念があてはまらない場合に用いられるヌル要素を含む。図4の例では、場所ノード402がレストランという値をとるときには、店舗ノード408は、40の可能性でボブという値をとり、60の可能性でヌル値をとる。同様にして、場所ノード402が店舗という値をとるときには、店舗ノード408は、40の可能性でアルという値をとり、20の可能性でボブという値をとり、50の可能性でカールという値をとる。最後に、場所ノード402の値がサービスであるときには、店舗ノード408は、100の可能性でヌル値をとる。前記した確率分布は、例えば、3つの考えられる店舗アルの店舗、ボブの店舗、カールの店舗が存在すること、ボブは、レストランおよび店舗の両方を所有していること、アル、ボブ、カールのいずれも、サービスノード410に関するサービスを提供しないこと、を示している。観測ノードは、目的とするノードおよび目的とするノード値に対応する言葉をユーザが話し、かつ、SDS100が前記目的とするノード値を正しくおよび誤って特定する確からしさを表す、1つの対応する確率分布を有する。また、観測ノードに対応する確率分布は、目的としないノードおよび目的とするノード値に対応する言葉をユーザが話し、かつ、SDSが前記目的とするノード値を正しくおよび誤って特定する確からしさを表す。複数の観測ノードに対応する確率分布については、観測ノード240に関して説明するときに詳細に後記する。POTモジュール220が記憶する複数のPOTは、SDS100が事前に生成してもよい。複数のPOTは、1または複数のオントロジーに基づいて生成される。一実施形態において、POTは、確立しているオントロジーに基づいて生成される。代替的には、POTを生成するためにオントロジーを生成、修正、カスタマイズすることができる。一旦、オントロジーを選択すると、前記オントロジーに基づいて、前記オントロジーと同じ図形構造を有するベイジアンネットワークを生成する。その後、前記ベイジアンネットワークのノードの各々に対して、確率分布テーブルを生成する。確率分布テーブルの入力値は、専門知識、学術データ、または任意の他の適切な手段に基づいているとよい。オントロジーのつじつまの合わないインスタンス化が、POT内でゼロという確率をとることを保証するために、ヌルセマンティクスを確率分布テーブルに適用する。上記したように、特化ノードに対する確率分布テーブルの入力値は、前記特化ノードの親ノードの値に従うことがある。同様にして、構成ノードに対する確率分布テーブルの入力値は、1または複数の前記構成ノードの親ノードの値に従うことがある。一実施形態において、親ノードの値がヌルであるときには、子ノードの値がヌルである確率は1である。構成ノードの親ノードがとる非ヌル値に対して、構成ノードの値を非ヌル値としようとするときには、構成ノードは、必須ノードとなる。一実施形態において、必須ノードの親ノードが非ヌル値をとるときには、必須ノードがヌル値をとる確率は、0である。POTは、マイクロフォン110を介して話された言葉を受信することに応じて、POTモジュール220から読み出される。POTのノードの各々は、1つの対話スロットに対応する。意味論的理解モジュール230は、ASR自動音声認識を用いて、話された言葉をテキストに変換する。ASRが話された言葉をテキストに正しく変換したときの信頼度に基づいて、話された言葉からテキストに変換される単語の各々に対して、単語信頼度スコアが割り当てられる。次に、意味論的理解モジュール230は、複数の単語信頼度スコアおよび複数の文法規則に基づいて、テキストを複数の対話スロットに割り当てる。スロット信頼度スコアは、観測の確実性の程度に基づいて、前記割り当てられた対話スロットに割り当てられる。同一となる1つのまたは複数の単語からなるテキストは、多重対話スロットに割り当てることができ、対話スロットへのテキストの割り当ての各々に対して、同じスロット信頼度スコアが割り当てられる。意味論的理解モジュール230は、テキストが割り当てられる複数の対話スロットに基づいて、1または複数の仮説を生成する。一実施形態において、テキストの単語の各々が一度にただ1つの対話スロットに割り当てられるように、複数の対話スロットへのテキストの複数の割り当ての固有の組み合わせの各々に対して、1つの仮説を生成する。仮説信頼度スコアは、仮説の各々に割り当てられており、対話スロットが適合する個数、単語信頼度スコア、スロット信頼度スコア、複数の割り当てられたスロット間の依存性および関係性、または任意の他の適切な要素に基づいていてもよい。一実施形態において、意味論的理解モジュール230は、最高の仮説信頼度スコアをとる仮説を選択する。次に、意味論的理解モジュール230は、決定された仮説に係るすべての対話スロットに対応するすべてのノードを特定する。観測モジュール240は、前記特定したノードに基づいて、POTモジュール220から読み出したPOT内にすべての観測ノードを生成し、前記生成した観測ノードの各々に対する複数の確率分布テーブルを生成する。観測ノードの各々は、POT内の、対応する未観測ノードの子ノードとして生成される。図4の例では、仮説は、価格ノード422および店舗種類ノード424に対応する複数の対話スロット割り当てを含む。結果として、価格ノード430が、価格ノード422の子ノードとして生成され、店舗種類ノード432が、店舗種類ノード424の子ノードとして生成される。ここで、前記価格ノード430および前記店舗種類ノード432の両方は、観測ノードである。観測ノードに対する確率分布テーブルの入力値は、選択された仮説の信頼度スコアと、POTノードのとり得る値と、話された言葉内にあってユーザが意図しているPOTノードの値とに基づいてよい。一実施形態において、ユーザに、仮説を承認するか拒否するかという選択肢を与えてもよい。その実施形態において、観測モジュール240は、ユーザが仮説を承認するまでは、観測ノードを生成しなくてもよいし、または観測ノードを生成してもよいが、ユーザが仮説を承認するまでは、観測ノードをPOTに追加しないようにしてもよい。同様にして、もし、ユーザが仮説を拒否するときには、観測モジュール240は、仮説を破棄してもよいし、仮説に対応する観測ノードをPOTから排除してもよい。一旦、仮説が選択されて、読み出されたPOTに複数の観測ノードが追加されると、結合確率モジュール250は、複数の観測変数に従って、POTノードの各々に対応するすべての確率分布テーブルを用いて、複数のPOTノード値の複数の組み合わせに対する1つの結合確率分布を計算する。最も確からしい結合確率が結果として得られるPOTノード値の組み合わせを、結合確率モジュール250は、ユーザの意図の最も可能性の高い解釈として出力する。結合確率モジュール250は、複数のPOTノード値のあらゆる組み合わせに対する結合確率を計算できるが、前記計算は、非常に膨大な記憶容量、処理能力、および時間を必要とする。前記した要件は、読み出されたPOT内のノードの数およびノードごとの、とり得る値の数によって直接的に影響を受ける。複数のノード値のすべての組み合わせに対する結合確率分布を隈なく決定することの要件を緩和するために、結合確率モジュール250は、メッセージパッシングアルゴリズムを利用して、ユーザの意図に関する最も可能性の高い解釈を決定する。メッセージパッシングアルゴリズムは、POTのリーフノードを起点として開始し、逆位相順序で、ノードレベルの複数の結合確率を決定する。一旦、1つの特定のノードに対して結合確率分布が決定されると、上位m個の結合確率は、メッセージ形式をとって前記特定のノードの親ノードへ渡される。m個の最大の結合確率が特化のいたるところで同じであることを、POTの設計によって確実にすること、および任意の結合確率において、1つのノードにつき、1つの、および1つの特化ノードの値のみを適用できることが知られている。1つのノードがそのノードの親ノードにメッセージを送信する前に、メッセージパッシングアルゴリズムは、そのノードに対して、そのノードのすべての子ノードからメッセージを受信するように要求する。メッセージパッシングアルゴリズムは、リーフノードから親ノードへ移ったメッセージを、単位ベクトルとして定義する。非リーフノードに関しては、親ノードに移ったメッセージは、すべての子ノードについて、つまり、複数の子ノードメッセージから受信した複数の上位m個の結合確率によって表される複数の派生ノード子ノード、孫ノードなどの組み合わせの各々について、子ノードの確率分布テーブルの値によって重み付けされた子ノードメッセージから受信した、上位m個の結合確率の乗算で表されるベクトルである。一旦、結合確率を計算すると、非リーフノードは、上位m個の結合確率を前記非リーフノードの親ノードに渡す。メッセージパッシングアルゴリズムは、POTのルートノードに対する上位m個の結合確率が決定されるまで、POTの階層レベルを次々と上げて繰り返される。ルートノードの最大結合確率は、最も可能性の高いユーザの意図を表すノード値の集合に対応する。結合確率モジュール250は、ノード値の集合を、最も可能性の高いユーザの意図に関する仮説として出力する。図4の例において、行動ノード400での最大結合確率が、{店舗,アル,,}という値に対応しているときには、結合確率モジュール250が出力する仮説は、対話スロット形式内にあるユーザの意図の思考状態を表しており、場所=店舗、店舗=アル、価格=などとなるであろう。一実施形態では、結合確率モジュール250は、複数の仮説を出力し、もし、仮説があればどの仮説が正しいのかを、ユーザが選択する。変換処理のパラメータ化変換処理モジュール130は、決定された思考状態および記憶された変換処理に基づいて実行することになる行動を決定し、そして、前記決定した行動を実行する。変換処理モジュール130はまた、後で使用する変換処理を学習する機能を含んでもよい。前記したように、変換処理は、行動の集合を、ユーザの意図の思考状態の集合の図にする関数である。例えば、変換処理は、ユーザの意図の、不確かまたは信頼性のない思考状態を、より多くの情報を要求するという行動の図にすることができる。一実施形態において、変換処理が複数の思考状態の図にする行動の集合は、ユーザに明瞭化を要求すること、1または複数の対話スロットを確認すること、またはユーザに通知すること、に限定される。代替的な実施形態では、上記したように、前記行動の集合は、他の行動を含んでもよい。学習モジュール320は、ユーザが所望するユーザの行動または目標が前もって知られている、シミュレートしたユーザとのやりとりに基づいて、変換処理を生成する。シミュレートしたユーザとのやりとりは、シミュレートしたユーザの話す言葉を受信すること、前記言葉に基づいてユーザの意図の思考状態を決定すること、前記思考状態に基づいて行動を実行すること、といった段階を各々含む、ユーザとマシンとの間の一連の段階を含む。他の音響ノイズが存在する環境の中でマイクロフォンを介して実際にユーザが話す言葉を受信することを最良にシミュレートするために、前記シミュレートしたユーザの話す言葉は、ノイズによって故意に不明瞭にしてもよい。学習モジュール320は、PDMDP意思決定手段を利用して、シミュレートしたユーザとのやりとりに対する成果スコアを管理することによって、複数の変換処理パラメータを更新する。上記したように、目標指向環境において、PDMDPは、成果/罰システムを用いることで、ユーザ所望の行動を実行するのに必要な段階の数を最小化しようと試みる。前記所望の行動以外の行動が実行されるたびに、成果スコアに対して罰が適用される。例えば、成果スコアを1つ減らすとよい。ユーザ所望の行動を実行するのに必要な段階の数を最小化するために、変換処理パラメータを修正すること、ユーザとのやりとりを再シミュレートすること、結果として最大成果スコアをもたらす変換処理パラメータを選択すること、を繰り返すことによって、成果スコアを最適化する。自然勾配は、パラメータ空間上の最急方向を指している。一旦、自然勾配を決定すると、学習モジュール320は、前記最急勾配が示すように変換処理パラメータを調整することによって、最急方向に1ステップ進み、1つの収束距離関数を満たすまでこのような処理を繰り返すことができる。一実施形態においては、シミュレートの間、特定の成果スコアが一貫して達成される場合に、前記収束距離関数を満たす。代替的な実施形態においては、パラメータの変化量が所定の閾値を一貫して超えることがなかった場合に、前記収束距離関数を満たす。代替的に、学習モジュール320は、収束距離関数を満たすのではなく、ある閾値数だけ繰り返してユーザとのやりとりをシミュレートしてもよい。学習モジュール320が収束距離関数または繰り返しの閾値を満たした後、複数の変換処理パラメータは、行動-思考変換処理として記憶される。変換処理インターフェイス340は、1つの思考状態または複数の思考特徴を1つの行動の図にする変換処理を読み出し、思考追跡モジュール330から1つの思考状態または複数の思考特徴を読み出す。変換処理インターフェイスモジュール340は、前記読み出された変換処理の複数の変換処理パラメータ、およびユーザが話す言葉からなる、前記思考状態または複数の思考特徴に基づいて、行動の集合内にある、可能性のある行動の各々を投票することによって、前記読み出した変換処理をユーザが話した言葉に適用する。前記行動の集合に関する投票の分布は、前記行動の集合の確率分布によって表すことができる。一実施形態において、変換処理インターフェイス340は、システム行動モジュール350に、前記行動の集合に関する投票を出力する。代替的には、変換処理インターフェイス340は、システム行動モジュール350に対して、前記行動の集合に対する確率分布を出力する。システム行動モジュール350は、変換処理インターフェイス340から受信した出力に基づいて、実行する行動を選択する。一実施形態において、システム行動モジュール350は、実行するために最もよく投票された行動、または最も可能性の高い行動を選択する。システム行動モジュール350は、インターフェイスモジュール140を用いて行動を実行することができる。システム行動モジュール350が実行できる行動の完備集合が、ユーザに明瞭化を要求すること、ユーザが話す言葉を確認すること、および、ユーザが要求した情報をユーザに通知すること、から構成される実施形態において、システム行動モジュール350は、インターフェイスモジュール140のスピーチ機能を用いて、選択された行動を実行できる。例えば、選択された行動が、1または複数の対話スロットの明瞭化をユーザに要求することを含む場合には、インターフェイスモジュール140は、複数の音響信号を用いて、前記1または複数の対話スロットを明瞭化することをユーザに促してもよいし、または、ディスプレイ上の画像信号を用いて、前記1または複数の対話スロットを明瞭化することをユーザに促してもよい。同様にして、選択された行動が、ユーザが要求した情報をユーザに通知することを含む場合には、インターフェイスモジュール140は、複数の音響信号を用いて、ユーザが要求した情報をユーザに通知してもよいし、または、ディスプレイ上の画像信号を用いて、要求された情報をユーザに提示してもよい。もし、ユーザに、明瞭化または確認を要求すれば、SDS100は、ユーザが話した他の言葉を受信し、変換処理モジュール130は、新たに実行する行動を、前記ユーザが話した他の言葉に基づいて決定することができる。前記したような循環は、変換処理モジュール130が1つの通知行動を選択するまで繰り返すことができる。システム行動モジュール350は、明瞭化を要求すること、要求を確認すること、またはユーザに通知すること、からなる内容以外の行動を選択できる。一実施形態において、SDSを車両内に実装し、システム行動モジュール350は、部分ソース車両コンピュータまたは複数の他の車両システムなどまたは外部ソース例えば、WiFi,3G,4G,LTE,WiMaxまたは任意の他の無線プロトコルのような無線通信技術を用いてインターネット上から情報を読み出すことができる。一実施形態において、システム行動モジュール350は、ユーザが要求するときに電話をかける、ユーザまたは車両の電話システムを用いる。システム行動モジュール350はまた、ヘッドライトおよび/またはワイパを作動または停止すること、ラジオまたはメディアシステムを作動、停止、または調整すること、再生するメディアコンテンツの一部を選択すること、ナビゲーションを作動または停止したり、ナビゲーションとのインターフェイスとなったりすること、または任意の他の車両の機能など、といった複数の車両の機能を実装することができる。対話システムの動作図5は、一実施形態に係る、思考追跡によってユーザの意図を決定することを説明するフローチャートである。思考追跡によってユーザの意図を決定する処理は、選択的に1または複数のPOTを構築することを含むステップ500。代替的には、既存のPOTを読み出してもよい。前記生成した、または読み出したPOTは、1つの対応する確率分布を各々が有している複数の未観測ノードを有する。ユーザが話した言葉を受信するステップ510。話した言葉は、自動音声認識、または話した言葉をテキストに変換できる任意の他の技術を用いてテキストに変換されるステップ520。変換されたテキストは、意味論的理解を用いて複数のPOTノードに対応する1または複数の対話スロットに割り当てるステップ530。意味論的理解に基づいて、話された言葉が正しくテキストに変換されたという信頼度と、テキストが1または複数の対話スロットと関係しているという信頼度とを求めることができる。一実施形態において、前記変換されたテキストは、複数の対話スロットからなる複数の組み合わせに割り当てられ、前記組み合わせのうち最大の割り当て信頼度を持つものが選択される。割り当てられた対話スロットに基づいて、POT内に複数の観測ノードを生成するステップ540。対話スロットの割り当て信頼度および複数の観測ノードのドメインに基づいて、複数の観測ノードに対して、複数の確率分布テーブルが生成される。POTの複数の未観測ノードの確率分布およびPOTの複数の観測ノードの確率分布からなる結合確率に基づいて、思考状態を決定するステップ550。図6は、一実施形態に係る、確率的オントロジーツリーの生成を説明するフローチャートである。オントロジーを読み出すステップ600。一実施形態において、オントロジーは、生成してもよいし、または、読み出したオントロジーを、POTの構築の前に修正してもよい。ノード種類による制約と、ヌルセマンティクスによる制約と、ノード必須性とによる制約を考慮して、各オントロジーノードの確率分布テーブルを決定するステップ610。前記オントロジーおよび前記決定された確率分布テーブルに基づいてベイジアンネットワークを生成するステップ620。図7は、一実施形態に係る、話された質問に応じて対話システムによる行動の実行を説明するフローチャートである。POMDPを用いて、複数の思考状態を複数の行動の図にする変換処理を任意的に生成するステップ700。一実施形態では、事前に生成した変換処理を読み出す。一実施形態では、変換処理は、複数の思考状態特徴を複数の行動の図にしてもよい。ユーザが話した言葉を受信するステップ710。話した言葉に基づいて思考状態を決定するステップ720。一実施形態においては、思考状態に代えて、または思考状態に加えて、複数の思考状態特徴を決定する。決定した思考状態および読み出した変換処理に基づいて行動を選択するステップ730。選択された行動が、ユーザにさらなるフィードバックを要求する場合にはステップ740、さらなるフィードバックを要求してステップ750、本フローチャートの処理を繰り返す。選択された行動が、ユーザにさらなるフィードバックを要求しない場合には、前記選択された行動を実行するステップ760。図8は、一実施形態に係る、変換処理の生成を説明するフローチャートである。複数の初期の変換処理パラメータを生成するステップ800。一実施形態においては、初期の変換処理パラメータは、手入力で選択してもよいし、予め生成された変換処理に基づいて選択してもよいし、またはランダムに選択してもよい。事前に決定されている目標に対応する、シミュレートしたユーザ入力を生成するステップ810。シミュレートしたユーザ入力に基づいて思考状態を決定するステップ820。一実施形態においては、実際にユーザが話す言葉が受信され、かつ、他の音響ノイズが存在してもよい環境を最良にシミュレートするために、シミュレートしたユーザ入力は、ノイズによって故意に不明瞭にする。決定された思考状態および初期の変換処理パラメータに基づいて行動を実行するステップ830。もし、行動の実行により目標が達成されないときにはステップ840、シミュレートしたユーザ入力を修正しステップ850、思考状態を再決定しステップ820、行動を再実行するステップ830。もし、行動の実行により目標が達成されたときにはステップ840、繰り返されるユーザ入力の修正および繰り返される行動実行処理に対するPOMDP成果スコアを決定するステップ860。POMDP成果スコアを決定した後、変換処理閾値を満たさないと判断されるときにはステップ870、決定された思考状態と、実行された行動と、実行された行動の数と、決定された成果スコアとに基づいて、変換処理パラメータを修正するステップ880。変換処理閾値の例は、実行される行動の所定数と、決定したPOMDPスコアに近い所定数の成果スコア閾値への収束と、変換処理パラメータの修正の収束とを含む。POMDP成果スコアを決定した後、変換処理閾値を満たすと判断されるときにはステップ870、複数の最終的な変換処理パラメータに基づいて変換処理を生成するステップ890。生成された変換処理は、対話システムが記憶して、後に使用する。さらなる考察本明細書において、一実施形態又はある実施形態と言う場合は、本発明の少なくとも1つの実施形態に、その実施形態に関連して記述される1つの特徴又は構造が含まれていることを意味する。本明細書のあちこちにある実施形態ではという語が出現しても、必ずしも同一の実施形態を指しているわけではない。後記する詳細説明のいくつかの部分は、アルゴリズム用語や、コンピュータメモリ内のデータビット作業を示す象徴的な表現による。これらのアルゴリズム的な説明や表現は、情報処理分野の当業者が、自らの業績の要旨を、同分野の他の当業者に最も効率的に伝えるために用いる手段である。アルゴリズムとは、ここでは、そして一般的にも、ある所望の結果に至る複数のステップ命令の首尾一貫したシーケンスのことを言う。ステップとは、物理量に対する物理的操作を要求するステップのことである。通常、必ずしも必要条件ではないが、それらの物理量は、記憶され、送信され、合成され、比較されかつ操作され得る、電子的、磁気的又は光学的信号の形を取る。これらの信号のことを、ビット、値、要素、シンボル、文字、語又は番号等と呼ぶことが主として用語の共通化の理由から便宜である。さらに、物理的操作、物理量の変換、または物理量の表現を要求するステップの配列のうちいくつかのものは、一般性を失うことなく、モジュール又はコードデバイスと呼ぶことが便宜である。しかしながら、このような用語の全ては適当な物理量と結びついており、これらの物理量に付された単なる便宜的なラベルに過ぎない。特段の説明がない限り、さもなければ後記の説明から明らかであるが、明細書本文全体を通じて、処理、計算、算出、決定又は表示等の用語を用いた説明は、コンピュータシステムのメモリ、レジスタ又は他の情報ストレージ装置、伝送装置または表示装置の内部で、電子的な物理量としてのデータを操作かつ変形するコンピュータシステムや同様の電子的コンピューティングデバイス例えば、専用計算機の動作や処理のことを言う。本実施形態のいくつかの側面は、アルゴリズムの形になったプロセスステップや命令を含む。本実施形態のプロセスステップや命令は、ソフトウエア、ファームウエア又はハードウェア内で具体化でき、ソフトウエア内で具体化される場合は、ダウンロードして記憶できたり、そして、多様なオペレーティングシステムが用いる別のプラットフォームから操作できたりすることに留意されたい。本実施形態はまた、コンピュータシステム上で実行可能なコンピュータプログラム製品内に導入できる。本実施形態は、操作を実行する装置にも関する。この装置は、所与の目的を達成する車両内専用装置などであってもよいし、車両内に配置できるコンピュータ内に記憶されたコンピュータプログラムによって選択的に動作したり、または再構成されたりする汎用コンピュータであってもよい。このようなコンピュータプログラムは、コンピュータが読取り可能な媒体に記憶され得る。その媒体とは、コンピュータシステムバスに接続可能な、フロッピーディスク登録商標、光ディスク、CD-ROM、電磁光学的ディスク、ROM、RAM、EPROM、EEPROM、電磁的又は光学的カード、ASIC又は電子的命令を記憶し得るあらゆる媒体を含むが、これらに限定されない。メモリは、情報、データ、プログラムを記憶できる前記した装置および/または他の装置のうち任意の装置を含むことができる。さらに、本明細書で言うコンピュータは、単体のプロセッサを含んでもよいし、コンピュータ能力を増加させるために複数のプロセッサを用いたアーキテクチャであってもよい。ここでいうアルゴリズムやディスプレイは、もともと任意の特定のコンピュータにも他の装置にも関係している訳ではない。ここで教示される内容に従って、プログラムとともに多様な一般目的システムが使用され得る。又は、さらに特化した装置を生成して、方法ステップを実行することも便宜であることがわかっている。これらのさまざまなシステムに必要となる構造は、後記する明細書本文から明らかになる。さらには、本実施形態は、任意の特定のプログラム言語を参照して記載されるものではない。本明細書に記載されている本実施形態の教示を実施するために、多様なプログラム言語が使用され得る。後記において特定の言語に言及した場合、それは本発明の実施可能性及びベストモードを開示するためである。さらに、本明細書で使用される言語は、主として意味の取りやすさ及び教示目的から選択されているのであって、発明特定事項を明確にするためや限定するために選択されているのではない。従って、本実施形態の開示は、特許請求の範囲にて記述されている本実施形態の範囲を例示するものであるが限定するものではない。本発明の具体的な実施形態および応用が説明され、記述されていてもその一方で、本発明が本明細書に開示されている、まさにその創作物および構成要素には限定されないこと、そして発明の精神および範囲から逸脱することなくさまざまな修正、変更、バリエーションが、本発明の方法および装置の設定、演算および詳細においてなされること、が理解されるであろう。"