(57)【特許請求の範囲】
【請求項１】
ユーザ操作に基づく端末との間で、そのユーザと対話的にシナリオを進行するようにコンピュータを機能させるマルチモーダル対話サーバプログラムであって、
行動ａ毎に、前記端末に送信すべき対話シナリオを蓄積した対話シナリオ蓄積手段と、
状態ｓで行動ａを実行した際に得られる報酬期待値ｒ(ｓ0,ａ0)を蓄積した報酬期待値蓄積手段と、
複数の異なる入力／出力デバイス毎に、状態ｓで可用な各デバイス行動ａin／ａoutにおけるデバイス行動確率ｒ(ｓd0,ａd0)を蓄積したデバイス行動確率蓄積手段と、
前記端末に搭載された１つ以上のデバイス種別の有無を取得するデバイス種別取得手段と、
入力／出力デバイス毎に、当該端末のデバイス種別の有無と、前記デバイス行動確率ｒ(ｓd0,ａd0)とを乗算し、デバイス可用報酬値ｒ(ｓd,ａd)を算出するデバイス可用報酬値算出手段と、
前記報酬期待値蓄積手段の前記報酬期待値ｒ(ｓ0,ａ0)に対して、前記デバイス可用報酬値ｒ(ｓd,ａd)を重み付けた報酬期待値ｒ(ｓ,ａ)を算出する報酬期待値算出手段と、
前記報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する部分観測マルコフ決定ＰＯＭＤＰ(Partially-Observed Markov Decision Process)処理手段と、
前記対話シナリオ蓄積手段から、決定された前記行動ａに基づく対話シナリオを取得し、該対話シナリオを前記端末へ送信する対話シナリオ送信手段と
してコンピュータを機能させるマルチモーダル対話サーバプログラム。
【請求項２】
前記部分観測マルコフ決定処理手段は、
行動ａを実行した後の状態ｓ'について観測ｏ'を受け取る観測期待確率Ｐ(ｏ'｜ｓ',ａ)と、行動ａを実行した後に状態ｓから状態ｓ'へ移行する状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを蓄積した行動系列蓄積手段と、
前記観測期待確率Ｐ(ｏ'｜ｓ',ａ)と前記状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを用いて、時刻ｔにおける確率分布ｂt(ｓ)を算出する確率分布算出手段と、
前記報酬期待値ｒ(ｓ,ａ)と前記確率分布ｂt(ｓ)とを用いて、報酬Ｖtを算出する報酬算出手段と、
前記報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する行動決定手段と
を含むことを特徴とする請求項１に記載のマルチモーダル対話サーバプログラム。
【請求項３】
前記デバイス行動確率蓄積手段について、前記デバイス行動確率ｒ(ｓd0,ａd0)は、当該対話シナリオに対して当該デバイスの使用可否を、１（使用すべき）〜０〜−１（使用すべきでない）の範囲で表した確率であり、
前記デバイス可用報酬値算出手段について、前記端末に搭載された１つ以上のデバイス種別の有無を、１（有効）／０（無効）で表したものである
ことを特徴とする請求項１又は２に記載の対話サーバプログラム。
【請求項４】
請求項１から３のいずれか１項に記載のマルチモーダル対話サーバプログラムをコンピュータで機能させる対話サーバと、
ユーザ操作可能であって、１つ以上の入力／出力デバイスを有する端末と、
を有するマルチモーダル対話システムであって、
前記端末は、
前記デバイス種別毎の有効／無効を、前記対話サーバへ送信するデバイス情報送信手段と、
前記対話サーバから受信した前記対話シナリオを、出力デバイスによってユーザへ提示する出力デバイス制御手段と、
ユーザ操作によって入力された入力デバイスに対する回答情報を、前記対話サーバへ送信する入力デバイス制御手段と
を有することを特徴とするマルチモーダル対話システム。
【請求項５】
前記システムは、ユーザ観測情報分析サーバを更に有し、
前記端末は、当該入力デバイス毎に検出された観測特徴量を、前記ユーザ観測分析サーバへ送信する観測特徴量送信手段を更に有し、
前記ユーザ観測情報分析サーバは、前記端末から受信した観測特徴量に基づいて、前記ユーザにおける回答情報を導出し、該回答情報を、前記対話サーバへ送信する
ことを特徴する請求項４に記載のマルチモーダル対話システム。
【請求項６】
ユーザ操作に基づく端末と、そのユーザと対話的にシナリオを進行する対話サーバとを有するシステムにおけるマルチモーダル対話方法であって、
前記対話サーバは、
行動ａ毎に、前記端末に送信すべき対話シナリオを蓄積した対話シナリオ蓄積部と、
状態ｓで行動ａを実行した際に得られる報酬期待値ｒ(ｓ0,ａ0)を蓄積した報酬期待値蓄積部と、
複数の異なる入力／出力デバイス毎に、状態ｓで可用な各デバイス行動ａin／ａoutにおけるデバイス行動確率ｒ(ｓd0,ａd0)を蓄積したデバイス行動確率蓄積部と
を有し、
前記対話サーバが、
前記端末に搭載された１つ以上のデバイス種別の有無を取得する第１のステップと、
入力／出力デバイス毎に、当該端末のデバイス種別の有無と、前記デバイス行動確率ｒ(ｓd0,ａd0)とを乗算し、デバイス可用報酬値ｒ(ｓd,ａd)を算出する第２のステップと、
前記報酬期待値蓄積部の前記報酬期待値ｒ(ｓ0,ａ0)に対して、前記デバイス可用報酬値ｒ(ｓd,ａd)を重み付けた報酬期待値ｒ(ｓ,ａ)を算出する第３のステップと、
前記報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する部分観測マルコフ決定ＰＯＭＤＰ(Partially-Observed Markov Decision Process)処理の第４のステップと、
前記対話シナリオ蓄積部から、決定された前記行動ａに基づく対話シナリオを取得し、該対話シナリオを前記端末へ送信する第５のステップと
を有することを特徴とするマルチモーダル対話方法。
【請求項７】
前記対話サーバは、行動ａを実行した後の状態ｓ'について観測ｏ'を受け取る観測期待確率Ｐ(ｏ'｜ｓ',ａ)と、行動ａを実行した後に状態ｓから状態ｓ'へ移行する状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを蓄積した行動系列蓄積部を更に有し、
前記対話サーバの第４のステップについて、
前記観測期待確率Ｐ(ｏ'｜ｓ',ａ)と前記状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを用いて、時刻ｔにおける確率分布ｂt(ｓ)を算出するステップと、
前記報酬期待値ｒ(ｓ,ａ)と前記確率分布ｂt(ｓ)とを用いて、報酬Ｖtを算出するステップと、
前記報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定するステップと
を含むことを特徴とする請求項６に記載のマルチモーダル対話方法。
【請求項８】
前記対話サーバの前記デバイス行動確率蓄積部について、前記デバイス行動確率ｒ(ｓd0,ａd0)は、当該対話シナリオに対して当該デバイスの使用可否を、１（使用すべき）〜０〜−１（使用すべきでない）の範囲で表した確率であり、
前記対話サーバの第２のステップについて、前記端末に搭載された１つ以上のデバイス種別の有無を、１（有効）／０（無効）で表したものである
ことを特徴とする請求項６又は７に記載のマルチモーダル対話方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチモーダル対話(Multimodal Interaction)システムの技術に関する。
【背景技術】
【０００２】
「マルチモーダル対話システム」は、文字による入力情報だけではなく、音声処理や画像処理の技術を用いて、ユーザと対話的にシナリオを進行することよって、最適な結果へ導く技術をいう。この技術によれば、自然な対話によって、ユーザ毎に最適に対象機器を制御することができる。「マルチモーダル」とは、「多モード」を意味し、文字のほか、音声や映像等の異なるメディアを用いることができることを意味する。
【０００３】
従来、人間に対する対話の待ち時間を短縮することによって、自然な対話を実現した対話装置の技術がある（例えば特許文献１参照）。この技術によれば、端末は、ＰＤＡ(Personal Digital Assistance)やパーソナルコンピュータであって、ユーザからの音声を入力するマイク部と、ユーザの身体の動きを撮影するビデオカメラ部とを有する。マイク部によってユーザの声が検出されなくても、ビデオカメラ部によって撮影された身体の動き、例えば「相づち」を検出することによって、対話の終了（応答）を予測することができる。ユーザにおける対話の終了を検出することによって、次の対話シナリオへ進行することができ、人間に対する応答の待ち時間を短縮することができる。
【０００４】
また、マルチモーダル対話システムを、オンラインショッピング(Online Shopping)に適用した技術もある（例えば非特許文献１参照）。この技術によれば、ショッピングで用いるドキュメントを格納するドキュメントサーバモジュールと、対話進行を管理する対話制御モジュールと、入出力端末を管理するフロントエンドモジュールとから構成される。ドキュメントサーバモジュールが蓄積するドキュメントとは、例えば、対話シナリオ、顧客・商品データ（ＸＭＬ(Extensible Markup Language)形式）、表示スタイル等を含む。このシステムによれば、フロントエンドモジュールを搭載する端末として、パーソナルコンピュータを想定している。パーソナルコンピュータにおける音声入力部、ポインティング入力部、合成音声出力部、擬人化エージェント出力部等を利用して、ショッピング対話を進行することができる。
【０００５】
更に、部分観測マルコフ決定過程ＰＯＭＤＰ(Partially-Observed Markov Decision Process)を用いた対話心理学習の技術もある（例えば特許文献２参照）。部分観測マルコフ決定過程（以下「ＰＯＭＤＰ」という）とは、報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する処理をいう。以下では、ＰＯＭＤＰについて、詳細に説明する。
【０００６】
図１は、ＰＯＭＤＰを対話システムに適用したシステム構成図である。
【０００７】
図１によれば、対話サーバモジュールプログラム１と、端末モジュールプログラム２とから構成されている。例えば、対話サーバモジュールプログラム１はサーバによって実行され、ネットワークを介して、端末モジュールプログラム２は端末によって実行される。
【０００８】
対話サーバモジュールプログラム１は、報酬期待値蓄積部１１と、ＰＯＭＤＰ部１２と、対話シナリオ蓄積部１３と、回答情報受信部１４と、対話シナリオ送信部１５とを有する。
【０００９】
報酬期待値蓄積部１１は、状態ｓで行動ａを実行した際に得られる報酬期待値ｒ(ｓ,ａ)を蓄積している。「報酬期待値」とは、状態ｓで行動ａを実行した際に得られる報酬の「見込み」を表したものである。報酬期待値ｒ(ｓ,ａ)は、一般に、経験値によって設定される。
【００１０】
対話シナリオ蓄積部１３は、行動ａ毎に、端末に送信すべき対話シナリオを蓄積している。「対話シナリオ」とは、質問と回答とからなるツリー状に表現されるデータ構造をいう。例えば、質問「何色の機種がお好みですか？」に対する、回答「赤色」「青色」「白色」等に応じて、色毎に異なる次の質問（又は情報提供）へ移行する。
【００１１】
部分観測マルコフ決定過程ＰＯＭＤＰ部１２は、報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する。図１によれば、ＰＯＭＤＰ部１２は、行動系列蓄積部１２１と、確率分布算出部１２２と、報酬算出部１２３と、行動決定部１２４とを有する。
【００１２】
行動系列蓄積部１２１は、以下の確率を蓄積している。
・観測期待確率Ｐ(ｏ'｜ｓ',ａ)：
行動ａを実行した後の状態ｓ'について観測ｏ'を受け取る確率
・状態遷移確率Ｐ(ｓ'｜ｓ,ａ)：
行動ａを実行した後に状態ｓから状態ｓ'へ移行する確率
ここで、以下のように定義する。
Ｓ：有限な「状態ｓ」の集合，{ｓ}
Ｏ：有限な「観測ｏ」の集合，{ｏ}
Ａ：有限な「行動ａ」の集合，{ａ}
【００１３】
観測期待確率Ｐ(ｏ'｜ｓ',ａ)及び状態遷移確率Ｐ(ｓ'｜ｓ,ａ)は、大量の対話シミュレーションの実験による蓄積された行動系列データ（学習データ）に基づいて、機械学習分野における強化学習（例えばQ-learningやTD-learning）方法で得られる。
【００１４】
「状態ｓ」は、以下のような４つに区分される。
「ｓ0」：初期状態
「ｓ1」：ユーザからの回答情報の入力なし
「ｓ2」：対話シナリオの範囲内で、ユーザからの回答情報の入力あり
「ｓ3」：ユーザからの回答の入力は必要なく、次の動作へ自動遷移
「ｓ4」：その他の状態
【００１５】
「行動ａ」は、以下のように３つに区分される。
「ａin」：入力受け付け
「ａout」：情報を提供する
「ａwait」：待機
ここで、各行動ａは、対話シナリオ蓄積部１３に蓄積された各対話シナリオと対応付けられている。例えば、「携帯電話機の機種選定」をタスクとした場合に、以下のような行動ａの対話シナリオがある。
「ａin」：入力受け付け
「携帯電話の色を入力」、「年齢を入力」、・・・
「ａout」：情報を提供する
「対話装置の紹介」、「携帯電話の色に関する質問」、・・・
【００１６】
確率分布算出部１２２は、観測期待確率Ｐ(ｏ'｜ｓ',ａ)と状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを用いて、時刻ｔにおける確率分布ｂt(ｓ)を算出する。確率分布とは、各状態ｓ（確率変数）に対する、その起こりやすさを表す。対話状態に応じて最適な行動系列を出力する方策関数を決めるために、時刻tにおける状態の確率分布ｂt(ｓ')は、１つ前の時刻における状態の確率分布ｂt-1(ｓ)を用いて、以下の式によって算出される。
【数１】
0005578571.tif 000002
η：はｂtの総和を１にするための正規化定数
【００１７】
報酬算出部１２３は、報酬期待値ｒ(ｓ,ａ)と確率分布ｂt(ｓ)とを用いて、報酬Ｖtを算出する。行動系列ａτ+tが与えられた場合、時刻t以降に獲得できる報酬Ｖtは、以下の式によって表される。
【数２】
0005578571.tif 000003
γ：１より小さい正定数
【００１８】
行動決定部１２４は、報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する。ここで、決定された行動ａに対応する対話シナリオを、対話シナリオ蓄積部１３から取得する。取得された対話シナリオは、ユーザに対して提示される。
【００１９】
回答情報受信部１４は、端末モジュールプログラム２から、入力デバイスに基づく回答情報を受信する。受信された回答情報は、ＰＯＭＤＰ部１２の行動決定部１２４へ入力される。
【００２０】
対話シナリオ送信部１５は、ＰＯＭＤＰ部１２の行動決定部１２４によって取得された対話シナリオを、端末モジュールプログラム２へ送信する。
【００２１】
端末モジュールプログラム２は、ユーザに対する入力デバイス及び出力デバイスを有する。入力デバイスがマイクである場合、入力音声処理部は、マイクによって取得された音声信号を回答情報に変換し、その回答情報を対話モジュールプログラム１へ送信する。また、出力デバイスがスピーカである場合、出力音声処理部は、対話モジュールプログラム１から受信した回答情報を音声信号に変換し、その音声信号がスピーカから出力される。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開２００３−２２８４４９号公報
【特許文献２】特開２０１０−１２９０３３号公報
【非特許文献】
【００２３】
【非特許文献１】小林剛典、中村有作、桂田浩一、山田博文、小林聡、新田恒雄、「ＭＭＩ記述言語ＸＩＳＬによるオンラインショッピングシステムの開発」、[online]、［平成２３年２月６日検索］、インターネット＜URL:http://ci.nii.ac.jp/naid/110002917299＞
【発明の概要】
【発明が解決しようとする課題】
【００２４】
近年、ユーザ操作可能な端末は、パーソナルコンピュータに限られず、カーナビゲーション端末、デジタルサイネージ端末、デジタルフォトフレーム、携帯電話機、スマートフォン等、様々な機器に広がってきた。これら多様な端末に、対話的（インタラクティブ）なインタフェースをユーザに提供することによって、様々な機器に対する操作の利便性を向上させることが期待されている。
【００２５】
しかしながら、対話シナリオは、一般に、端末に搭載される入出力デバイスに対応させて記述されている。前述した特許文献１及び非特許文献１によれば、端末が、マイク部及びビデオカメラ部を予め搭載していることを前提としており、その対話シナリオも、マイク部及びビデオカメラ部を用いるように予め設計されている。そうすると、マイク部及びビデオカメラ部を予め搭載していないカーナビゲーション端末やデジタルサイネージ端末等は、この対話システムに適用することはできない。即ち、対話シナリオは、搭載されている入出力デバイスが異なる端末毎に、設計又は調整されなければならない。
【００２６】
一方で、近年、端末毎に、多様な入出力デバイスが複数搭載されている。入出力デバイスとしても、例えば、カメラ、タッチパネル、ディスプレイ（タッチパネルディスプレイ、マルチタッチスクリーン、３次元ディスプレイ）、マイク、スピーカ（イヤホン）、加速度センサ、地磁気センサ、温度センサ、気圧センサ、振動子等、様々なものがある。また、同一種別の入出力デバイスであっても、その端末種別に応じて、異なる特性（例えば表示サイズ）を搭載している場合もある。このような様々な入出力デバイスを搭載した端末毎に、対話シナリオを設計又は調整することは高コストを招く。
【００２７】
そこで、本発明は、１つの対話シナリオを設計するだけで、様々な入出力デバイスを搭載した端末毎に、異なる対話シナリオを進行させることができるマルチモーダル対話プログラム、システム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００２８】
本発明によれば、ユーザ操作に基づく端末との間で、そのユーザと対話的にシナリオを進行するようにコンピュータを機能させるマルチモーダル対話サーバプログラムであって、
行動ａ毎に、端末に送信すべき対話シナリオを蓄積した対話シナリオ蓄積手段と、
状態ｓで行動ａを実行した際に得られる報酬期待値ｒ(ｓ0,ａ0)を蓄積した報酬期待値蓄積手段と、
複数の異なる入力／出力デバイス毎に、状態ｓで可用な各デバイス行動ａin／ａoutにおけるデバイス行動確率ｒ(ｓd0,ａd0)を蓄積したデバイス行動確率蓄積手段と、
端末に搭載された１つ以上のデバイス種別の有無を取得するデバイス種別取得手段と、
入力／出力デバイス毎に、当該端末のデバイス種別の有無と、デバイス行動確率ｒ(ｓd0,ａd0)とを乗算し、デバイス可用報酬値ｒ(ｓd,ａd)を算出するデバイス可用報酬値算出手段と、
報酬期待値蓄積手段の報酬期待値ｒ(ｓ0,ａ0)に対して、デバイス可用報酬値ｒ(ｓd,ａd)を重み付けた報酬期待値ｒ(ｓ,ａ)を算出する報酬期待値算出手段と、
報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する部分観測マルコフ決定ＰＯＭＤＰ(Partially-Observed Markov Decision Process)処理手段と、
対話シナリオ蓄積手段から、決定された行動ａに基づく対話シナリオを取得し、該対話シナリオを端末へ送信する対話シナリオ送信手段と
してコンピュータを機能させることを特徴とする。
【００２９】
本発明のマルチモーダル対話サーバプログラムにおける他の実施形態によれば、
部分観測マルコフ決定処理手段は、
行動ａを実行した後の状態ｓ'について観測ｏ'を受け取る観測期待確率Ｐ(ｏ'｜ｓ',ａ)と、行動ａを実行した後に状態ｓから状態ｓ'へ移行する状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを蓄積した行動系列蓄積手段と、
観測期待確率Ｐ(ｏ'｜ｓ',ａ)と状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを用いて、時刻ｔにおける確率分布ｂt(ｓ)を算出する確率分布算出手段と、
報酬期待値ｒ(ｓ,ａ)と確率分布ｂt(ｓ)とを用いて、報酬Ｖtを算出する報酬算出手段と、
報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する行動決定手段と
を含むものであってもよい。
【００３０】
本発明のマルチモーダル対話サーバプログラムにおける他の実施形態によれば、
デバイス行動確率蓄積手段について、デバイス行動確率ｒ(ｓd0,ａd0)は、当該対話シナリオに対して当該デバイスの使用可否を、１（使用すべき）〜０〜−１（使用すべきでない）の範囲で表した確率であり、
デバイス可用報酬値算出手段について、端末に搭載された１つ以上のデバイス種別の有無を、１（有効）／０（無効）で表したものであってもよい。
【００３１】
本発明によれば、前述のマルチモーダル対話サーバプログラムをコンピュータで機能させる対話サーバと、
ユーザ操作可能であって、１つ以上の入力／出力デバイスを有する端末と、
を有するマルチモーダル対話システムであって、
端末は、
デバイス種別毎の有効／無効を、対話サーバへ送信するデバイス情報送信手段と、
対話サーバから受信した対話シナリオを、出力デバイスによってユーザへ提示する出力デバイス制御手段と、
ユーザ操作によって入力された入力デバイスに対する回答情報を、対話サーバへ送信する入力デバイス制御手段と
を有することを特徴とする。
【００３２】
本発明のマルチモーダル対話システムにおける他の実施形態によれば、
システムは、ユーザ観測情報分析サーバを更に有し、
端末は、当該入力デバイス毎に検出された観測特徴量を、ユーザ観測分析サーバへ送信する観測特徴量送信手段を更に有し、
ユーザ観測情報分析サーバは、端末から受信した観測特徴量に基づいて、ユーザにおける回答情報を導出し、該回答情報を、対話サーバへ送信する
ものであってもよい。
【００３３】
本発明によれば、ユーザ操作に基づく端末と、そのユーザと対話的にシナリオを進行する対話サーバとを有するシステムにおけるマルチモーダル対話方法であって、
対話サーバは、
行動ａ毎に、端末に送信すべき対話シナリオを蓄積した対話シナリオ蓄積部と、
状態ｓで行動ａを実行した際に得られる報酬期待値ｒ(ｓ0,ａ0)を蓄積した報酬期待値蓄積部と、
複数の異なる入力／出力デバイス毎に、状態ｓで可用な各デバイス行動ａin／ａoutにおけるデバイス行動確率ｒ(ｓd0,ａd0)を蓄積したデバイス行動確率蓄積部と
を有し、
対話サーバが、
端末に搭載された１つ以上のデバイス種別の有無を取得する第１のステップと、
入力／出力デバイス毎に、当該端末のデバイス種別の有無と、デバイス行動確率ｒ(ｓd0,ａd0)とを乗算し、デバイス可用報酬値ｒ(ｓd,ａd)を算出する第２のステップと、
報酬期待値蓄積部の報酬期待値ｒ(ｓ0,ａ0)に対して、デバイス可用報酬値ｒ(ｓd,ａd)を重み付けた報酬期待値ｒ(ｓ,ａ)を算出する第３のステップと、
報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する部分観測マルコフ決定過程ＰＯＭＤＰの第４のステップと、
対話シナリオ蓄積部から、決定された行動ａに基づく対話シナリオを取得し、該対話シナリオを端末へ送信する第５のステップと
を有することを特徴とする。
【００３４】
本発明のマルチモーダル対話方法における他の実施形態によれば、
対話サーバは、行動ａを実行した後の状態ｓ'について観測ｏ'を受け取る観測期待確率Ｐ(ｏ'｜ｓ',ａ)と、行動ａを実行した後に状態ｓから状態ｓ'へ移行する状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを蓄積した行動系列蓄積部を更に有し、
対話サーバの第４のステップについて、
観測期待確率Ｐ(ｏ'｜ｓ',ａ)と状態遷移確率Ｐ(ｓ'｜ｓ,ａ)とを用いて、時刻ｔにおける確率分布ｂt(ｓ)を算出するステップと、
報酬期待値ｒ(ｓ,ａ)と確率分布ｂt(ｓ)とを用いて、報酬Ｖtを算出するステップと、
報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定するステップと
を含むものであってもよい。
【００３５】
本発明のマルチモーダル対話方法における他の実施形態によれば、
対話サーバのデバイス行動確率蓄積部について、デバイス行動確率ｒ(ｓd0,ａd0)は、当該対話シナリオに対して当該デバイスの使用可否を、１（使用すべき）〜０〜−１（使用すべきでない）の範囲で表した確率であり、
対話サーバの第２のステップについて、端末に搭載された１つ以上のデバイス種別の有無を、１（有効）／０（無効）で表したものであってもよい。
【発明の効果】
【００３６】
本発明のマルチモーダル対話プログラム、システム及び方法によれば、１つの対話シナリオを設計するだけで、様々な入出力デバイスを搭載した端末毎に、異なる対話シナリオを進行させることができる。
【図面の簡単な説明】
【００３７】
【図１】部分観測マルコフ決定過程ＰＯＭＤＰを対話システムに適用したシステム構成図である。
【図２】本発明におけるマルチモーダル対話システムの構成図である。
【図３】本発明におけるマルチモーダル対話プログラムの機能構成図である。
【図４】本発明における対話シナリオの流れを表す説明図である。
【図５】ユーザ動向分析サーバを含むシステム構成図である。
【発明を実施するための形態】
【００３８】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【００３９】
図２は、本発明におけるマルチモーダル対話システムの構成図である。
【００４０】
図２によれば、対話サーバ１と、様々な種類の端末２とが、ネットワークを介して接続されている。端末２としては、デジタルサイネージ端末、デジタルフォトフレーム、携帯電話機、スマートフォン等があり、各端末には、カメラ、スピーカ、ディスプレイ、センサ等の様々な入出力デバイスが搭載されている。端末２は、例えばＷｅｂブラウザにプラグインされたFLASH Player（登録商標）又はOpenGL（登録商標）に基づいて、入出力デバイスが制御される。Adobe Systems社によるFLASH Playerは、音声、動画、ベクターグラフィックスのアニメーションを組み合わせたＷｅｂコンテンツを再生するソフトウェアであって、ユーザによる入力操作も可能なアプリケーション実行環境を提供する。Silicon Graphics社によるOpenGLは、グラフィックス処理のためのプログラミングインターフェースを提供する。例えば、ユーザが、FLASHやOpenGLによって表示されたアバタと対話するように実現できる。
【００４１】
尚、図２によれば、対話サーバ１は、端末２に送信すべき対話シナリオに基づくコンテンツを、コンテンツサーバ４から取得するものであってもよい。コンテンツサーバ４は、具体的には、対話シナリオに基づく静止画像、動画像、合成音声等のコンテンツを蓄積する。
【００４２】
また、図２によれば、ユーザ動向分析サーバ３が、ネットワークに更に接続されている。ユーザ動向分析サーバ３は、端末２から、入力デバイスにおける観測特徴量を受信し、その特徴を分析することによって、対話サーバ１に対する回答情報を生成する。その回答情報は、対話サーバ１へ送信される。
【００４３】
図２によれば、対話サーバ１に搭載されたコンピュータで、対話サーバモジュールプログラムを実行させる。また、端末２に搭載されたコンピュータで、端末モジュールプログラム２を実行させる。勿論、両モジュールプログラムが、単体装置の１つのコンピュータによって一体的に実行されるものであってもよい。本発明によれば、サーバモジュールプログラムと端末モジュールプログラムとそれぞれが実行されるべき対象装置は、特定されるものではない。
【００４４】
図３は、本発明におけるマルチモーダル対話プログラムの機能構成図である。
【００４５】
図３によれば、マルチモーダル対話プログラムにおける対話サーバモジュールプログラム１は、ユーザ操作に基づく端末２との間で、そのユーザと対話的にシナリオを進行するようにコンピュータを機能させる。図３によれば、対話サーバモジュールプログラム１は、図１と同様に、報酬期待値蓄積部１１と、部分観測マルコフ決定過程ＰＯＭＤＰ部１２と、対話シナリオ蓄積部１３と、回答情報受信部１４と、対話シナリオ送信部１５とを有する。これら機能構成部の処理内容は、基本的に、従来技術として前述した図１と同じである。
【００４６】
本発明の対話サーバモジュールプログラム１によれば、更に、デバイス行動確率蓄積部１６と、デバイス種別取得部１７と、デバイス可用報酬値算出部１８と、報酬期待値算出部１９とを有する。
【００４７】
［デバイス行動確率蓄積部１６］
デバイス行動確率蓄積部１６は、複数の異なる入力／出力デバイス毎に、状態ｓで可用な各デバイス行動ａin／ａoutにおけるデバイス行動確率ｒ(ｓd0,ａd0)を蓄積している。デバイス行動確率ｒ(ｓd0,ａd0)は、当該対話シナリオに対して当該デバイスの使用可否を、１（使用すべき）〜０〜−１（使用すべきでない）の範囲で表した確率である。
【００４８】
デバイス行動ａの集合Ａは、Ａ｛ａin,ａout,ａwait｝であって、例えば以下のように表される。
ａin1：「カメラによる入力要求」
ａin2：「タッチパネルによる入力要求」
ａin3：「マイクによる入力要求」
ａout1：「スピーカで情報提供」（音声の発声）
ａout2：「ディスプレイで情報提供」（吹き出しによって文字の表示）
ａout3：「ディスプレイで関連情報の提供」（関連画像の表示）
【００４９】
また、例えば以下のような入出力デバイスがあるとする。勿論、以下の入出力デバイスを搭載しているか否かは、ユーザ操作に基づく端末によって異なる。
［入力デバイス］
SM：マイク状態
SC：カメラ状態
ST：タッチパネル状態
［出力デバイス］
SS：スピーカ状態
SD：ディスプレイ状態
【００５０】
具体的なデバイス行動確率ｒ(ｓd0,ａd0)のテーブルは、例えば以下のように表される。
【表１】
0005578571.tif 000004
【００５１】
例えば、行動「ａin1」は、カメラ入力の行動を必要とするために、デバイス「カメラSC」の行動確率値は「１」（使用すべき）となっている。ここで、デバイス「マイクSM」の行動確率値は「−１」（使用すべきでない）であり、デバイス「タッチパネルST」の行動確率値も「−１」（使用すべきでない）である。
【００５２】
また、図３によれば、例えば、行動「ａout1」は、音声出力の行動を必要とするために、デバイス「スピーカSS」の行動確率値は「１」（使用すべき）となっている。ここで、デバイス「ディスプレイSD」の行動確率値は「０．５」である。これは、音声出力の行動「ａout1」の場合であっても、出力デバイスとしてディスプレイを用いる確率は、幾分高いことを意味する（１〜０〜−１の範囲によれば、０．５は上位１／４に相当）。尚、デバイス行動確率のテーブル値は、経験値によって設定するか、又は、大量の利用者評価データに基づいた統計値によって設定する。
【００５３】
［デバイス種別取得部１７］
デバイス種別取得部１７は、端末に搭載された１つ以上のデバイス種別の有無を取得する。例えば端末がフォトフレームである場合、端末は、以下のようなデバイス種別情報を、対話サーバ１へ送信する。
Sd_t＝「SM,SC,ST,SS,SD」＝「0,0,1,1,1」
0：無効    1:有効
このデバイス種別情報によれば、当該端末は、タッチパネル、スピーカ及びディスプレイを搭載しているが、マイク及びカメラは搭載していないことを表す。また、端末は、入出力デバイスの有無が変化した際に、リアルタイムに、デバイス種別情報を対話サーバ１へ送信する。
【００５４】
［デバイス可用報酬値算出部１８］
デバイス可用報酬値算出部１８は、入力／出力デバイス毎に、当該端末のデバイス種別の有無と、デバイス行動確率ｒ(ｓd0,ａd0)とを乗算し、デバイス可用報酬値ｒ(ｓd,ａd)を算出する。例えば、デバイス種別情報Sd_t＝[SM,SC,ST,SS,SD]＝[0,0,1,1,1]と、表１のデバイス行動確率ｒ(ｓd0,ａd0)とを乗算すると、以下のｒ(SM,ainα)、ｒ(SS,aoutβ)等の確率のテーブルが計算される。αとβはainとaoutそれぞれの添字である。
【表２】
0005578571.tif 000005
ｒ(ｓd,ａd)は、各テーブルの値を加算したものである。
ｒ(ｓd,ａd)＝
（ｒ(SM,ainα）＋ｒ(SC,ainα）＋ｒ(ST,ainα）＋
ｒ(SS,aoutβ)＋ｒ(SD,aoutβ))
【００５５】
［報酬期待値算出部１９］
報酬期待値算出部１９は、状態ｓに、行動ａを実行した際に得られる報酬期待値ｒ(ｓ0,ａ0)に対して、デバイス可用報酬値ｒ(ｓd,ａd)を重み付けた報酬期待値ｒ(ｓ,ａ)を算出する。これは、既存の報酬期待値ｒ(ｓ0,ａ0)を、デバイス可用報酬値ｒ(ｓd,ａd)によって最も適切な行動ａに導くことができる。
【００５６】
これによって、部分観測マルコフ決定過程ＰＯＭＤＰ部１２は、報酬期待値ｒ(ｓ,ａ)を用いて、報酬Ｖtが最大となるように、状態ｓにおける行動ａを決定する。ＰＯＭＤＰ部１２は、前述した式２の中の行動ａに対する報酬rについて、以下のように定義される。
【数３】
0005578571.tif 000006
s0及びa0は、対話状態と対話装置行動に関するパラメータである。
sd及びadは、デバイス可用報酬値と対話装置動作タイプに関するパラメータである。
【００５７】
図４は、本発明における対話シナリオの流れを表す説明図である。
【００５８】
図４によれば、端末２がフォトフレームの場合であって、そのフォトフレームは、入力デバイスとしてタッチパネルSTを有し、出力デバイスとしてスピーカSS及びディスプレイSDとを有する。
【００５９】
［時刻ｔ＝０］（状態Ｓ０）
初期状態について、ｒ(s0,Ａ)を最大とする動作ａを決定する。このとき、以下の動作ａが決定されたとする。
動作ａ＝「ａout」
デバイス行動＝(ａout1、ａout3)
ここでの対話シナリオは、例えば以下のようになる。
「ａout1」：スピーカから、「こちらは携帯電話機の推薦サービスです」と発声する。
「ａout3」：ディスプレイに、関連情報として、キャラクタの口から最新機種やキャンペーン情報の文字の吹き出しを表示する。
【００６０】
［時刻ｔ＝１］
次に、前述した式２及び式３（ＰＯＭＤＰ処理）によって、状態ｓ３へ移行している。そして、報酬Ｖtが最大となる動作ａ（デバイス行動）が決定される。例えば以下のように決定されたとする。
動作ａ（デバイス行動）＝(ａout1,ａin2)
「ａout1」：スピーカから、「何の色が好きですか」と発声する。
「ａin2」 ：タッチパネルに色の選択ボタンを表示して、ユーザのタッチを受け付ける。
【００６１】
［時刻ｔ＝２］
これに対し、ユーザがタッチパネルに対して「赤」ボタンに触れたとする。これによって、回答情報red@touchを得られたとする。次に、前述した式２及び式３（ＰＯＭＤＰ処理）によって状態ｓ２へ移行している。そして、報酬Ｖtが最大となる動作ａ（デバイス行動）が決定される。例えば以下のように決定されたとする。
動作ａ（デバイス行動）＝(ａout1,ａout3)
「ａout1」：スピーカから、「お勧めの赤色の携帯はS005とCA006です」と発声する。
「ａout3」：ディスプレイに、S005とCA006の機能情報や口コミ情報のような関連情報を表示する。
【００６２】
ここで、時刻ｔ＝２のとき、ユーザが、端末２のスピーカをミュート（消音）にしたとする（又はスピーカが故障となってもよい）。このとき、端末２は、対話サーバ１へ、スピーカSSが無効(0)になったことを表すデバイス種別情報を送信する。本発明によれば、端末は、有効／無効のデバイス種別情報をリアルタイムに検出し、その情報は直ぐに対話サーバ１へ送信される。
【００６３】
このとき、以下のように変更される。
Sd_t＝「SM,SC,ST,SS,SD」＝「0,0,1,0,1」
これによって、デバイス可用報酬値ｒ(ｓd,ａd)も以下のように変更される。
【表３】
0005578571.tif 000007
【００６４】
これによって、報酬Ｖtが最大となる動作ａ（デバイス行動）が異なることとなる。例えば以下のように決定されたとする。
動作ａ（デバイス行動）＝(ａout2,ａout3)
「ａout2」：ディスプレイのキャラクタの口元に「お勧めの赤色の携帯はS005とCA006です」と吹き出し文字で表示される。
「ａout3」：ディスプレイに、S005とCA006の機能情報や口コミ情報のような関連情報を表示する。
これによって、スピーカに代えて、ディスプレイを用いて、対話シナリオを進行させることができる。
【００６５】
図５は、ユーザ動向分析サーバを含むシステム構成図である。
【００６６】
図５によれば、端末２は、入力デバイス（例えばカメラ、マイク、タッチパネル）から観測特徴量を取得し、その観測特徴量をユーザ動向分析サーバ３へ送信している。観測特徴量としては、例えば以下のようなものがある。
【００６７】
「ユーザの顔映像観測特徴量」O_face：  カメラから得られる観測特徴量
検出された顔の顔向き情報
顔向き角度の軌跡
ユーザの顔合わせ数
顔映像（静止画像）中から直接取り出した低レベルGabor特徴量
顔画像特徴量（顔画像のHaar-Like特徴量）
「ユーザの音声観測特徴量」O_voice：  マイクから得られる観測特徴量
音声のパワー・ピッチの平均・標準偏差・最大・最大−最小値差
音声特徴量（音声パワー情報、ＭＦＣＣ情報、ピッチ情報等）
「ユーザのタッチ操作観測特徴量」O_touch：  タッチパネルから得られる特徴量
タッチしたパネル座標
タッチしたイベント情報（リンク情報など）
【００６８】
端末２は、入力デバイスから取得されたデータを対話サーバ１へ送信すると共に、入力デバイスによって検出された観測特徴量をユーザ動向分析サーバ３へ送信する。ユーザ動向分析サーバ３は、観測特徴量に基づいた回答情報（認識結果）を、対話サーバ１へ送信する。これによって、対話サーバ１は、その回答情報も考慮して、対話シナリオを進行させることができる。
【００６９】
以上、詳細に説明したように、本発明のマルチモーダル対話プログラム、システム及び方法によれば、１つの対話シナリオを設計するだけで、様々な入出力デバイスを搭載した端末毎に、異なる対話シナリオを進行させることができる。特に、端末に搭載された入出力デバイスの構成に対応させて、対話シナリオを進行させることができる。
【００７０】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００７１】
１  マルチモーダル対話プログラム、対話サーバ
１１  報酬期待値蓄積部
１２  部分観測マルコフ決定過程ＰＯＭＤＰ部
１２１  行動系列蓄積部
１２２  確率分布算出部
１２３  報酬算出部
１２４  行動決定部
１３  対話シナリオ蓄積部
１４  回答情報受信部
１５  対話シナリオ送信部
１６  デバイス行動確率蓄積部
１７  デバイス種別取得部
１８  デバイス可用報酬値算出部
１９  報酬期待値算出部
２  端末
３  ユーザ動向分析サーバ
４  コンテンツサーバ
【図１】
0005578571.tif 000008
【図２】
0005578571.tif 000009
【図３】
0005578571.tif 000010
【図４】
0005578571.tif 000011
【図５】
0005578571.tif 000012