音声対話システム理論と 音声対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 1/42 本講義の目次 はじめに ルールベース対話システム – 古典的対話システム – 現代におけるルールベース対話システム 非ルールベース対話システム – 情報検索技術を用いた対話システム – 機械学習を用いた対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 2/42 音声対話システムとは 音声による一連の入力発話を理解 – 入出力が1対1に対応していない(非コマンド&コントロール型). – 入力発話として自然言語を扱う. If in=あー then out=コーラ If in=いー then out=お茶 あー ・・・ 非自然言語 コマンド&コントロール型 非音声対話システムの例 適切に応答 – – (一般的には)与えられた課題を効率よく達成 (一般的には)ユーザの満足度を高い形で達成 2015©Hiraoka AHC-Lab, IS, NAIST 3/42 Siri(対話システム例) URL: http://www.youtube.com/watch?v=uxWcxEqt4b8 2015©Hiraoka AHC-Lab, IS, NAIST 4/42 一般的な音声対話システムの構成 本講義の対象 何時ですか? 何時ですか [ask time] 言語理解 音声認識 対話行為 入出力:音声 対話制御 2時です 音声合成 言語生成 [answer time] 2時です 2015©Hiraoka AHC-Lab, IS, NAIST 5/42 本講義の目次 はじめに ルールベース対話システム – 古典的対話システム – 現代におけるルールベース対話システム 非ルールベース対話システム – 情報検索技術を用いた対話システム – 機械学習を用いた対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 6/42 古典的な対話システムの特徴 人手による規則に基づく言語理解と対話制御 知識ベース 関係データベース 言語理解 対話制御 決定的写像 (SQL) 決定的写像 (フロー固定, or一問一答) – 言語理解:人がテキストからSQLコマンドへの変換規則を記述 – 対話制御:人が言語理解結果に対する対話の流れや返答規則 を記述 2015©Hiraoka AHC-Lab, IS, NAIST 7/42 古典的な対話システムの例 ELIZA [Weizenbaum, 1966] – 言語理解:パターンマッチによる応答文の決定 – 対話制御:なし(一問一答) SHRDLU[Winograd, 1968] – 言語理解:パターンマッチを用いた論理式への変換 – 対話制御:積み木の世界に関する知識を利用したプランニング 2015©Hiraoka AHC-Lab, IS, NAIST 8/42 ELIZAとの対話例 Young woman: Men are all alike.(男は皆同じ) Eliza: in what way?(どのように?) Young woman: They’re always bugging us about something specific or other.(彼らはいつも私たちを悩ませるの) Eliza: can you think of specific example?(例えば?) Young woman: well, my boyfriend made me come here. (ええと,私のボーイフレンドがここに来させたの) Eliza: your boyfriend made you come here? (あなたのボーイフレンドがここに来させたの?) Young woman: He says I’m depressed much of the time. (彼は私が落ち込んでるって言うの) Eliza: I am sorry to hear you are depressed. (あなたが落ち込んでいると聞いて残念です) 2015©Hiraoka AHC-Lab, IS, NAIST 9/42 A.L.I.C.E. (Elizaと同タイプの音声対話システム) URL: http://www.youtube.com/watch?v=ZZlRMsrOvB4 2015©Hiraoka AHC-Lab, IS, NAIST 10/42 ELIZAで利用されているルール ルール例: ユーザの発話文中に” i remember“が含まれている と出力文候補からランダムに応答を決定 ルール名:remember 5 パターン: * i remember * 出力文: Do you often think of (2)? 出力文:What else do you recollect? 出力文:Why do you remember (2) just now? 出力文:What else does (2) remind you of ルールを利用した応答例: – User:Well, I remenber the dog. – Eliza: Do you often think of the dog? 2015©Hiraoka AHC-Lab, IS, NAIST 11/42 古典的な対話システムの例 ELIZA – 言語理解:パターンマッチによる応答文の決定 – 対話制御:なし(一問一答) SHRDLU – 言語理解:パターンマッチを用いた論理式への変換 – 対話制御:積み木の世界に関する知識を利用したプランニング 2015©Hiraoka AHC-Lab, IS, NAIST 12/42 SHRDLUとの対話例 Person: Pick up a big red block. (大きな赤ブロックを拾い上げて) Computer: OK. Person: Grasp the pyramid. (ピラミッドを掴んで) Computer: I don’t understand which pyramid you mean. (どのピラミッドを指しているのか分かりません.) Person: Find a block which is taller than the one you are holding and put it into the box. (持っているブロックよりも高いブロックを見つけてそれを箱の中 に入れて) Computer: By “it”, I assume you mean the block which is taller than the one I am holding. (“それ”とは,私が持っているブロックよりも高いブロックと 推測します) 13/42 2015©Hiraoka AHC-Lab, IS, NAIST SHRDLU URL: http://www.youtube.com/watch?v=QAJz4YKUwqw 2015©Hiraoka AHC-Lab, IS, NAIST 14/42 本講義の目次 はじめに ルールベース対話システム – 古典的対話システム – 現代におけるルールベース対話システム 非ルールベース対話システム – 情報検索技術を用いた対話システム – 機械学習を用いた対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 15/42 現在も利用されている ルールベース対話制御(MMDAgent) MMDAgent (2009年初版リリース): – 言語理解:特定キーワードの抽出(キーワードスポッティング) – 対話制御:有限状態オートマトン(FSA)を用いた対話の流れの記述 入力発話:こんにちは,メイちゃん 応答文:こんにちは。 キーワードスポッティング MMDAgent用スクリプトと応答例 2015©Hiraoka AHC-Lab, IS, NAIST 16/42 MMDAgent URL: http://www.youtube.com/watch?v=hGiDMVakggE 2015©Hiraoka AHC-Lab, IS, NAIST 17/42 FSAを用いた対話制御 FSAの定義 – : 入力記号 – S : 状態集合 – S0 : 初期状態 – δ : 状態遷移関数 – F : 受理状態集合 FSAを用いた対話モデリング – S : システムの対話状態 – : ユーザからの入力,イベント 2015©Hiraoka AHC-Lab, IS, NAIST 18/42 FSAを用いた対話制御例 (レストラン情報検索) 本例では,対話状態を直前のシステムの発話とする. (システムは,状態遷移を行った際に,状態に対応する発話を行うとする) 料理以外 こちらは生駒レストラン案内です。 どのような料理がお好みでしょう か? 料理 料理以外 和食、洋食、中華、ファースト フードからお選びください 料理 ご予算はおいくらぐらいですか? 金額以外 金額以外 予算を「3000円以下」のように おっしゃって下さい 金額 検索します。 金額 2015©Hiraoka AHC-Lab, IS, NAIST 19/42 FSAを用いた対話制御例 (レストラン情報検索) 本例では,ユーザの発話に対するキーワードスポッティング結果 (ここでは,料理に関するキーワードが含まれているかどうか) 料理以外 こちらは生駒レストラン案内です。 どのような料理がお好みでしょう か? 料理 料理以外 和食、洋食、中華、ファースト フードからお選びください 料理 ご予算はおいくらぐらいですか? 金額以外 金額以外 予算を「3000円以下」のように おっしゃって下さい 金額 検索します。 金額 2015©Hiraoka AHC-Lab, IS, NAIST 20/42 (非決定性FSA)を用いた対話制御例 (レストラン情報検索) 本例では,現在システムが知っている情報に応じて状態遷移 (”!変数名”はその変数に関する情報をシステムが知らないこと表わす) こちらは生駒レストラン案内です。 どのようなレストランをお探しですか。 FSAに比べて少数の状態数 や遷移規則で記述可能 判定 !地域 どの地域ですか。 !料理 !予算 どのような料理が お好きですか。 予算はいくらぐら いですか。 検索します 2015©Hiraoka AHC-Lab, IS, NAIST 21/42 本講義の目次 はじめに ルールベース対話システム – 古典的対話システム – 現代におけるルールベース対話システム 非ルールベース対話システム – 情報検索技術を用いた対話システム – 機械学習を用いた対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 22/42 古典的な対話システムの問題点と 最近の展望 古典的な対話システムの問題点: – ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望: – 実用的側面:情報検索技術の言語理解部への導入 – 研究的側面:言語理解部と対話制御部への機械学習の導入 言語理解 対話制御 関係データベース 決定的写像 (SQL) 決定的写像 (フロー固定, or一問一答) RDB・Web・大規模 文書集合 ベクトル空間 モデル 一問一答 知識ベース 大規模知識を 利用した応答 2015©Hiraoka AHC-Lab, IS, NAIST 23/42 IBM Watson URL: http://www.youtube.com/watch?v=Wq0XnBYC3nQ 2015©Hiraoka AHC-Lab, IS, NAIST 24/42 しゃべってコンシェル URL: http://www.youtube.com/watch?v=-3T7SeXQ0Us 2015©Hiraoka AHC-Lab, IS, NAIST 25/42 ベクトル空間モデルを用いた言語理解 1. 入力発話例/応答文対を用意 入力発話例 応答文 こんにちは こんにちは お手洗いはどこですか? トイレは入口の近くにあります 今何時ですか? 今は<Hour>時<Minute>分です 2. 入力発話例との類似度を計算 – 類似度の尺度例:ユークリッド距離,コサイン距離,etc 0.2 こんにちは,お手洗いを探しています 0.5 0 2015©Hiraoka AHC-Lab, IS, NAIST こんにちは お手洗いはどこですか? 今何時ですか? 26/42 本講義の目次 はじめに ルールベース対話システム – 古典的対話システム – 現代におけるルールベース対話システム 非ルールベース対話システム – 情報検索技術を用いた対話システム – 機械学習を用いた対話システム 2015©Hiraoka AHC-Lab, IS, NAIST 27/42 古典的な対話システムの問題点と 最近の展望 古典的な対話システムの問題点: – ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望: – 実用的側面:情報検索技術の言語理解部への導入 – 研究的側面:言語理解部と対話制御部への機械学習の導入 言語理解 対話制御 関係データベース 決定的写像 (SQL) 決定的写像 (フロー固定, or一問一答) 関係データベース 統計的識別 モデル(1) 強化学習(1,2) 知識ベース 1:曖昧な事象 のモデリング 2:応答規則の 自動学習 2015©Hiraoka AHC-Lab, IS, NAIST 28/42 京都観光案内システム:AssysTra (機械学習に基づく音声対話システム例) システム: 京都観光案内システムです,お好みの 観光スポットを推薦します。(オープニング) ユーザ: 桜の綺麗なところを教えて。 システム: 桜ですと,南禅寺,仁和寺,二条城が有名です ユーザ: じゃあ,仁和寺を見せて。 システム: 仁和寺の桜ですね.御室桜は,樹高が低く単 弁の香り高い白花を根元から咲かせる珍しい桜です。 開花時期が遅く,京都の春の終わりを飾ります。 システム: 仁和寺はアクセスが便利で,庭園で有名です. また境内の散策できます。何か説明しましょうか? 次にどのような内容を推薦するかをユーザや対話状況に応じて最適化 2015©Hiraoka AHC-Lab, IS, NAIST 29/42 AssisTra URL: http://www.youtube.com/watch?v=kL6GuBa3VRY 2015©Hiraoka AHC-Lab, IS, NAIST 30/42 統計的識別モデルを用いた言語理解 1. [モデルの学習]:学習データに基づき予測モデルを構築 – モデルの例:サポートベクターマシン,条件付き確率場,etc 対話行為 「こんにち」が含まれる->Greetingらしさ+5 こんにちは Greeting 「何時」が含まれる->Ask_Timeらしさ+3 今は何時ですか? Ask_Time ・・・ 入力発話 予測モデル例 学習データ例 2. [対話行為の推定]:モデルを用いて入力発話の対話行為 を予測 今何時? 予測モデル Greeingらしさ 0 Ask_Timeらしさ 3 入力発話例 2015©Hiraoka AHC-Lab, IS, NAIST 31/42 古典的な対話システムの問題点と 最近の展望 古典的な対話システムの問題点: – ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望: – 実用的側面:情報検索技術の言語理解部への導入 – 研究的側面:言語理解部と対話制御部への機械学習の導入 言語理解 対話制御 関係データベース 決定的写像 (SQL) 決定的写像 (フロー固定, or一問一答) 関係データベース 統計的識別 モデル(1) 強化学習(1,2) 知識ベース 1:曖昧な事象 のモデリング 2:応答規則の 自動学習 2015©Hiraoka AHC-Lab, IS, NAIST 32/42 強化学習とは “強化学習(RL)は,環境との相互作用,動作の結果から, 学ぶ”.これは,マルコフ決定過程(MDP)という数学的枠組 みの中で実現される.MDPは,周りの環境と相互作用しな がら長時間の累積報酬を最大化する意思決定エージェント と深く結び付いている.“(by Sutton) モデル:MDP,POMDP 学習方法:強化学習 2015©Hiraoka AHC-Lab, IS, NAIST 33/42 マルコフ決定過程(MDP)概略 (強化学習):対話における一連の報酬を最大化 するようにs’からaを決定する規則(方策)を学習 対話システム 行動a 状態s’ 報酬r ユーザ 1.システムはユーザの状態sに基づき行動aを実行 2.行動aと状態遷移確率Pに基づき,ユーザは状態s からs’へ遷移. 34 2015©Hiraoka AHC-Lab, IS, NAIST 3.対話システムは報酬rを獲得. /42 強化学習概略 様々アイデアに基づく強化学習の解法が存在 モデル MDP 状態 観測可能 環境が既知 強化学習の解法 未知 モンテカルロ法 TD学習 既知 動的計画法 (価値反復,方策反復) POMDP 観測不可能 未知 モンテカルロ法 TD学習 既知 動的計画法 (価値反復,方策反復) 本講義で紹介 2015©Hiraoka AHC-Lab, IS, NAIST 35/42 強化学習概略 (Temporal Difference Learning : TD学習) a1 S1 a1 a1 S2 S3 v:価値 a1 S4 r:報酬 F a2 a2 a2 1.各状態S{S1,…,S4}において対話システムはランダムに 行動a{a1,a2}を選択.もし,状態が終端状態Fならば終了. 2.報酬rや状態の価値vを前状態に伝搬 3. 1と2を繰り返す 一通り価値の伝搬が終わると, 36 2015©Hiraoka AHC-Lab, IS, NAIST 対話システムは各状態で最も価値の高い行動を選択 /42 部分観測マルコフ決定過程概略 対話システムは観測値o から環境の状態を推定 対話システム 行動a 観測値o’ ユーザ 報酬r ユーザの状態 は直接観測 不可能 1.システムは推定した状態に基づき行動aを実行 2.行動aと状態遷移確率Pに基づき,環境は状態s からs’へ遷移. 2015©Hiraoka AHC-Lab, IS, NAIST 3.システムは報酬rとユーザの観測値o’を得る. 37/42 POMDPによる対話のモデル化例 例:チケット購入 観測値o: “キャンセルします” “発券してください” 行動a: 状態s: 1.キャンセル 2.発券 1.キャンセルする 2.発券する 3.確認する 目標: 1.誤認識によって,誤って発券しない. 2.誤認識によって,誤ってキャンセルしない. 2015©Hiraoka AHC-Lab, IS, NAIST 38/42 POMDPによる対話のモデル化例2 間違って発券したりキャンセルすると 負の報酬を与える 例:チケット購入 行動:a 報酬:r(s,a) キャンセル 発券する 確認する 状態:s キャンセル 5 発券 -10 観測確率:P(o’|s’,a) a=“確認する” 観測 値:o’ キャンセ ルします -20 -1 5 -1 状態遷移確率:P(s’|s,a) 状態:s’ 状態:s キャン 発券 セル キャンセル 発券 1.0 0.0 0.0 1.0 0.7 発券してく 0.3 ださい 0.3 0.7 次状態:s’ キャン セル 発券 音声認識誤りを表現 (30%の確率で誤認識) 2015©Hiraoka AHC-Lab, IS, NAIST 39/42 さいごに 2015©Hiraoka AHC-Lab, IS, NAIST 40/42 タスク指向対話システム 特定のタスク達成(例:チケット予約、情報検索)を目的とし てユーザと対話を行う対話システム – ルールベース: SHRDLU, MMDAgent 知識ベース 関係データベース 言語理解 対話制御 決定的写像 (SQL) 決定的写像 (フロー固定) – 非ルールベース: AssisTra, SimSensei 関係データベース 統計的識別 モデル 2015©Hiraoka AHC-Lab, IS, NAIST 強化学習 41/42 非タスク指向対話システム タスク達成を目的とせず対話そのものを目的(例: 雑談)と する対話システム – ルールベース:Eliza, A.L.I.C.E. 知識ベース 関係データベース 言語理解 対話制御 決定的写像 (SQL) 一問一答 – 非ルールベース: Jabberwacky, KELDIC RDB・Web・大規模 文書集合 ベクトル空間 モデル 2015©Hiraoka AHC-Lab, IS, NAIST 一問一答 42/42 参考文献 部分観測マルコフ決定過程Partially observable Markov decision process(POMDP)を用いたインタラクション制御入門 [南, 2011 ] An Introduction to Spoken Dialogue System[翠, 2012] 音声対話システム[河原ら, 2006] 音声対話システムの進化と淘汰[河原ら, 2013] 2015©Hiraoka AHC-Lab, IS, NAIST 43/42
© Copyright 2024 ExpyDoc