擬人化エージェントGalateaのための VoiceXML処理系 西本卓也・嵯峨山茂樹(東京大学) 人工知能学会全国大会 オーガナイズドセッション 「VoiceXMLを利用した研究・開発事例」 2003年6月26日 1 背景 • 音声対話システムへの期待 • 擬人化音声対話エージェント – GUIを超えるHMI手段としての可能性 • VoiceXML利用の意義 – 対話実験を効率的に行う手段 2 VoiceXMLの概要 • 音声対話パターンの記述言語 – 電話回線から音声でウェブを利用する技術 – World Wide Web Consortium (W3C) で標準化 • 現在 Ver.2.0 Candidate Recommendation • 対話の単位=フォーム/メニュー • フォーム=複数のフィールドから構成される – 音声出力 <prompt> – 音声入力 <grammar> – 入力の後処理 <filled> 3 本報告の概要 • 擬人化エージェントの役割 • 求められるツール – 音声対話研究におけるVoiceXML利用 • カスタマイズ性の高い実験環境 – Galatea ツールキット – モジュール拡張 – 対話マネージャ(Galatea DM)の実装 4 擬人化エージェントへの期待 • 視覚的な表現の可能性 – 内部状態を直観的に開示(システムの透過性) – 同じ時間で多くの情報を提示 • 研究課題 – 視覚的表現の利用指針 • どのような方針に基づいて用いるべきか – 表現手段やアプリケーションの詳細に依存 • 試行錯誤が必要 – 魅力的なアプリケーション/デモ 5 デモ(小話) • おぬしは洒落の名手だそうだな? 庭の前の池にカニがたわむれているが, あれで何か洒落をいってみるがよい • 仰せではございますが, そうニワカニは洒落られません。 • なんだと? わしの申しつけなのに洒落られないとは! 6 Galatea VoiceXMLによる記述例 7 音声対話研究におけるVoiceXML • ブートストラップ段階での開発効率化 – タスク記述の可読性が高い – 対話の流れのカスタマイズが可能 • 変数や条件分岐などの併用 VoiceXML 処理系 • VoiceXMLファイルの動的生成 – 不足する機能を補える VXML ファイル Web サーバ (CGI) データベース 8 VoiceXMLを用いた反復的開発 • 対話コーパス収集とシステム改良の効率化 – [Araki et al, 2003] 被験者とシステムによる音声対話 実験者による監視 ・操作の代行 (文法外の発話などに対処) ・ログの分析とフィードバック 9 VoiceXML処理系への要求 • 外部(実験者)の関与 – 音声入力の代行 – 誤認識/文法外発話への対処 • 現状 – VoiceXMLコンテンツへの埋め込みが必要 • 対話タスク機能のための要素 • 評価実験支援のための要素 – 非音声の入力手段の制約 • DTMF(数字)入力のみ 10 対話実験支援ツールの開発 • 目標 – 反復的開発の支援 – 柔軟なモジュール構成 • 複数モダリティの入出力を容易に追加できる – 実験監視者のための機能 • ログ取得 • 外部からの操作/入力代行 • 実現方法 – Galateaツールキットの拡張 11 Galateaツールキット • 擬人化音声対話エージェントの構築ツール – IPAの支援で開発 – Linux版を使用 DM: 対話管理部 (VoiceXML処理系) • 主なモジュール – 音声認識(SRM) – 音声合成(SSM) – 顔画像生成(FSM) – エージェント管理(AM) – 対話管理(DM) AM: 各モジュールの制御 AM-MCL: 出力同期 FSM 顔合成 SSM 音声合成 SRM 音声認識 12 Galateaの拡張性 • 各モジュールのカスタマイズ性評価 – 共通の仮想マシンモデルに基いて通信 – カスタマイズ・単体での実装・テストが容易 • [川本ら, 2002] • 未検討項目 – モジュール追加など構成のカスタマイズ • さらに機能を追加して制御できるか? – 対話タスク記述における制御の柔軟性 • VoiceXMLによる記述で制御できるか? 13 モジュールの追加 追加モジュール DM: 対話管理部 (VoiceXML処理系) AM: 各モジュールの制御 DM-MCL: 入力制御 AM-MCL: 出力同期 FSM 顔合成 SSM 音声合成 SRM 音声認識 SND 音声再生 SIM 意味解釈 GUI ユーザ 画面 MON 監視者 画面 14 出力手段の追加 • ユーザ向け出力 – テキストや画像の表示 – オーディオ出力 – 状況に応じた顔画像の制御 • 実験者向けモニタ出力 – サブモジュールのログ出力 – 対話管理部の内部状態出力 15 制御コマンドの例 • モジュール SND, GUI, MON の入出力例 [to SND] set Play = /path/file.wav [from SND] tell start /path/file.wav tell end /path/file.wav 音声ファイル出力 [to GUI] set Text = message [to MON] set LogText = message set AppLogText = message テキスト表示・ログ出力 16 入力手段の追加 • 情報統合モジュール(SIM) – スケルトンのみ実装 将来の拡張に備える DM: 対話管理部 (VoiceXML処理系) 「はい」が入力された DM-MCL(入力制御) メッセージの流れを 制御する SIM 意味解釈 SRM 音声認識 「はい」と発 話 GUI ユーザ 画面 MON 監視者 画面 「はい」 ボタンが 押され た 17 想定する利用方法 • 必要なボタンを事前に監視者画面に作成 音声認識の一時無効化 SIM 意味解釈 SRM 音声認識 VXML ファイル 音声入力の代行 (WOZ) MON 監視者 画面 あいづち等のジェスチャ操作 「お待ちください」などの発話 18 対話マネージャの拡張 • キューによって同期的に出力 • VoiceXML2.0準拠の出力項目 – Voice: リップシンクを含む音声出力 – Audio: 音声ファイル出力 – Log: ログ出力 • 新たな出力項目 – Native: プラットフォーム依存の命令 Voice Native Audio Log 19 VoiceXMLによる記述例 • 顔の向きを変えて「こんにちは」と発話し, 顔の向きを元に戻す <block> <log>greeting begin</log> <native>to @FSM set HeadRotAbs.1 = 0 10 0</native> <prompt>こんにちは</prompt> <native>to @FSM set HeadRotAbs.1 = 0 0 0</native> <log>greeting end</log> </block> 20 動的な指定(変数の利用) • 発話内容 – <prompt> <value expr="a"/> 円です</prompt> • ログ文字列 – <log>状態<value expr="status" />です。</log> • エージェント制御命令 – <var name="face1" expr=" 'to @FSM set Mask = man01' " /> <native expr="face1"/> 21 検討 • 動作確認:Redhat Linux 8.0 – 既存モジュールの改変は不要 • GUIによる音声入力の代行操作 – GUIモジュールへのボタン追加 – 各モジュールは独立=機能の改変が容易 • VoiceXML拡張による同期的制御 – 表情(感情),顔の向き,人物の切替 22 まとめ • 音声対話の実験環境の構築 – 擬人化エージェントの制御 – VoiceXMLによる対話記述 • 今後の課題 – 並列的な出力処理とその記述 • 表情や画像と音声の出力 – 発話意味解釈/マルチモーダル化 – 効果的なエージェント利用方法の検討 – ツールの公開 23
© Copyright 2024 ExpyDoc