音声対話システム理論と
音声対話システム
/42
本講義の目次
はじめに
ルールベース対話システム
–
古典的対話システム–
現代におけるルールベース対話システム 非ルールベース対話システム
–
情報検索技術を用いた対話システム–
機械学習を用いた対話システム2015©Hiraoka AHC-Lab, IS, NAIST 2
音声対話システムとは
音声による一連の入力発話を理解
–
入出力が1対1に対応していない(非コマンド&コントロール型).–
入力発話として自然言語を扱う. 適切に応答
–
(一般的には)与えられた課題を効率よく達成–
(一般的には)ユーザの満足度を高い形で達成あー
非音声対話システムの例
If in=
あーthen out=
コーラIf in=
いーthen out=
お茶・・・
コマンド
&
コントロール型 非自然言語/42
Siri( 対話システム例 )
URL: http://www.youtube.com/watch?v=uxWcxEqt4b8
2015©Hiraoka AHC-Lab, IS, NAIST 4
一般的な音声対話システムの構成
入出力:音声 何時ですか?
音声認識 言語理解
対話制御
言語生成 音声合成
何時ですか
[ask time]
[answer time]
2
時です2
時です本講義の対象
対話行為
/42
本講義の目次
はじめに
ルールベース対話システム
–
古典的対話システム–
現代におけるルールベース対話システム 非ルールベース対話システム
–
情報検索技術を用いた対話システム–
機械学習を用いた対話システム2015©Hiraoka AHC-Lab, IS, NAIST 6
古典的な対話システムの特徴
人手による規則に基づく言語理解と対話制御
–
言語理解:人がテキストからSQL
コマンドへの変換規則を記述–
対話制御:人が言語理解結果に対する対話の流れや返答規則を記述
決定的写像
(SQL)
言語理解
決定的写像
(フロー固定,
or
一問一答)対話制御
関係データベース
知識ベース
/42
古典的な対話システムの例
ELIZA [Weizenbaum, 1966]
–
言語理解:パターンマッチによる応答文の決定–
対話制御:なし(一問一答) SHRDLU[Winograd, 1968]
–
言語理解:パターンマッチを用いた論理式への変換–
対話制御:積み木の世界に関する知識を利用したプランニング2015©Hiraoka AHC-Lab, IS, NAIST 8
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.
(あなたが落ち込んでいると聞いて残念です)
/42
A.L.I.C.E.
(Eliza と同タイプの音声対話システム )
URL: http://www.youtube.com/watch?v=ZZlRMsrOvB4
2015©Hiraoka AHC-Lab, IS, NAIST 10
ELIZA で利用されているルール
ルール例:
ルール名:
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?
ユーザの発話文中に
” i remember“
が含まれている と出力文候補からランダムに応答を決定/42
古典的な対話システムの例
ELIZA
–
言語理解:パターンマッチによる応答文の決定–
対話制御:なし(一問一答) SHRDLU
–
言語理解:パターンマッチを用いた論理式への変換–
対話制御:積み木の世界に関する知識を利用したプランニング2015©Hiraoka AHC-Lab, IS, NAIST 12
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.
(“それ”とは,私が持っているブロックよりも高いブロックと
推測します)
/42
SHRDLU
URL: http://www.youtube.com/watch?v=QAJz4YKUwqw
2015©Hiraoka AHC-Lab, IS, NAIST 14
本講義の目次
はじめに
ルールベース対話システム
–
古典的対話システム–
現代におけるルールベース対話システム 非ルールベース対話システム
–
情報検索技術を用いた対話システム–
機械学習を用いた対話システム/42
入力発話:こんにちは,メイちゃん
現在も利用されている
ルールベース対話制御(MM DAgent )
MMDAgent (2009 年初版リリース ):
–
言語理解:特定キーワードの抽出(キーワードスポッティング)–
対話制御:有限状態オートマトン(FSA)
を用いた対話の流れの記述2015©Hiraoka AHC-Lab, IS, NAIST 16
MMDAgent
用スクリプトと応答例キーワードスポッティング
応答文:こんにちは。
MMDAgent
URL: http://www.youtube.com/watch?v=hGiDMVakggE
/42
FSA を用いた対話制御
FSA の定義
– :
入力記号– :
状態集合– :
初期状態– :
状態遷移関数– :
受理状態集合 FSAを用いた対話モデリング
– :
システムの対話状態– :
ユーザからの入力,イベント2015©Hiraoka AHC-Lab, IS, NAIST 18
S
S 0
δ F
S
FSA を用いた対話制御例
(レストラン情報検索)
こちらは生駒レストラン案内です。
どのような料理がお好みでしょう か?
ご予算はおいくらぐらいですか?
検索します。
和食、洋食、中華、ファースト フードからお選びください
予算を「3000円以下」のように おっしゃって下さい
料理
料理以外
金額
金額以外
料理以外
金額以外
金額 料理
本例では,対話状態を直前のシステムの発話とする.
(システムは,状態遷移を行った際に,状態に対応する発話を行うとする)
/42
FSA を用いた対話制御例
(レストラン情報検索)
2015©Hiraoka AHC-Lab, IS, NAIST 20
こちらは生駒レストラン案内です。
どのような料理がお好みでしょう か?
ご予算はおいくらぐらいですか?
検索します。
和食、洋食、中華、ファースト フードからお選びください
予算を「3000円以下」のように おっしゃって下さい
料理
料理以外
金額
金額以外
料理以外
金額以外
金額 料理
本例では,ユーザの発話に対するキーワードスポッティング結果
(ここでは,料理に関するキーワードが含まれているかどうか)
( 非決定性FSA ) を用いた対話制御例
(レストラン情報検索)
こちらは生駒レストラン案内です。
どのようなレストランをお探しですか。
判定
どの地域ですか。 どのような料理が お好きですか。
予算はいくらぐら いですか。
!
地域!
料理!
予算検索します
本例では,現在システムが知っている情報に応じて状態遷移
(
”
!変数名”
はその変数に関する情報をシステムが知らないこと表わす)FSA
に比べて少数の状態数 や遷移規則で記述可能/42
本講義の目次
はじめに
ルールベース対話システム
–
古典的対話システム–
現代におけるルールベース対話システム 非ルールベース対話システム
–
情報検索技術を用いた対話システム–
機械学習を用いた対話システム2015©Hiraoka AHC-Lab, IS, NAIST 22
古典的な対話システムの問題点と 最近の展望
古典的な対話システムの問題点:
–
ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望:
–
実用的側面:情報検索技術の言語理解部への導入–
研究的側面:言語理解部と対話制御部への機械学習の導入決定的写像
(SQL)
言語理解
決定的写像
(フロー固定,
or
一問一答)対話制御
関係データベース
知識ベース
ベクトル空間
モデル 一問一答
RDB
・Web
・大規模 文書集合 大規模知識を利用した応答
/42
IBM Watson
URL: http://www.youtube.com/watch?v=Wq0XnBYC3nQ
2015©Hiraoka AHC-Lab, IS, NAIST 24
しゃべってコンシェル
URL: http://www.youtube.com/watch?v=-3T7SeXQ0Us
/42
ベクトル空間モデルを用いた言語理解
1. 入力発話例 / 応答文対を用意
2. 入力発話例との類似度を計算
–
類似度の尺度例:ユークリッド距離,コサイン距離,etc
2015©Hiraoka AHC-Lab, IS, NAIST 26
入力発話例 応答文
こんにちは こんにちは
お手洗いはどこですか? トイレは入口の近くにあります 今何時ですか? 今は
<Hour>
時<Minute>
分ですこんにちは,お手洗いを探しています
こんにちは
お手洗いはどこですか?
今何時ですか?
0.2 0.5
0
本講義の目次
はじめに
ルールベース対話システム
–
古典的対話システム–
現代におけるルールベース対話システム 非ルールベース対話システム
–
情報検索技術を用いた対話システム–
機械学習を用いた対話システム/42
古典的な対話システムの問題点と 最近の展望
古典的な対話システムの問題点:
–
ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望:
–
実用的側面:情報検索技術の言語理解部への導入–
研究的側面:言語理解部と対話制御部への機械学習の導入2015©Hiraoka AHC-Lab, IS, NAIST 28
決定的写像
(SQL)
言語理解
決定的写像
(フロー固定,
or
一問一答)対話制御
関係データベース
知識ベース
統計的識別
モデル
(1)
強化学習(1,2)
1:
曖昧な事象 のモデリング2:
応答規則の自動学習
関係データベース
京都観光案内システム: AssysTra
( 機械学習に基づく音声対話システム例 )
システム : 京都観光案内システムです,お好みの 観光スポットを推薦します。 ( オープニング )
ユーザ : 桜の綺麗なところを教えて。
システム : 桜ですと,南禅寺,仁和寺,二条城が有名です ユーザ : じゃあ,仁和寺を見せて。
システム : 仁和寺の桜ですね.御室桜は,樹高が低く単 弁の香り高い白花を根元から咲かせる珍しい桜です。
開花時期が遅く,京都の春の終わりを飾ります。
システム : 仁和寺はアクセスが便利で,庭園で有名です.
また境内の散策できます。何か説明しましょうか?
次にどのような内容を推薦するかをユーザや対話状況に応じて最適化
/42
AssisTra
URL: http://www.youtube.com/watch?v=kL6GuBa3VRY
2015©Hiraoka AHC-Lab, IS, NAIST 30
統計的識別モデルを用いた言語理解
1. [ モデルの学習 ] :学習データに基づき予測モデルを構築
–
モデルの例:サポートベクターマシン,条件付き確率場,etc
2. [ 対話行為の推定 ] :モデルを用いて入力発話の対話行為 を予測
今何時?
入力発話 対話行為
こんにちは
Greeting
今は何時ですか?Ask_Time
学習データ例
「こんにち」が含まれる
->Greeting
らしさ+5
「何時」が含まれる
->Ask_Time
らしさ+3
予測モデル例
・・・
入力発話例
Greeing
らしさ0
Ask_Time
らしさ3
予測モデル/42
古典的な対話システムの問題点と 最近の展望
古典的な対話システムの問題点:
–
ユーザ発話の多様性,音声認識誤りや曖昧な事象に対して脆弱 最近の展望:
–
実用的側面:情報検索技術の言語理解部への導入–
研究的側面:言語理解部と対話制御部への機械学習の導入2015©Hiraoka AHC-Lab, IS, NAIST 32
決定的写像
(SQL)
言語理解
決定的写像
(フロー固定,
or
一問一答)対話制御
関係データベース
知識ベース
統計的識別
モデル
(1)
強化学習(1,2)
1:
曖昧な事象 のモデリング2:
応答規則の自動学習
関係データベース
強化学習とは
“強化学習( RL )は,環境との相互作用,動作の結果から,
学ぶ”.これは,マルコフ決定過程( MDP )という数学的枠組 みの中で実現される.MDPは,周りの環境と相互作用しな がら長時間の累積報酬を最大化する意思決定エージェント と深く結び付いている.“ (by Sutton)
モデル: MDP,POMDP
学習方法:強化学習
/42
マルコフ決定過程 (MDP) 概略
2015©Hiraoka AHC-Lab, IS, NAIST 34
対話システム
ユーザ
行動 a 状態 s’ 報酬 r
1. システムはユーザの状態 s に基づき行動 a を実行 2. 行動 a と状態遷移確率 P に基づき,ユーザは状態 s から s’ へ遷移.
3. 対話システムは報酬 r を獲得.
( 強化学習 ) :対話における一連の報酬を最大化
するように s’ から a を決定する規則(方策 ) を学習
強化学習概略
様々アイデアに基づく強化学習の解法が存在 モデル 状態 環境が既知 強化学習の解法 MDP 観測可能 未知 モンテカルロ法
TD 学習
既知 動的計画法
(価値反復,方策反復)
POMDP 観測不可能 未知 モンテカルロ法
TD学習
既知 動的計画法
(価値反復,方策反復)
本講義で紹介
/42
強化学習概略
( Temporal Difference Learning : TD 学習)
2015©Hiraoka AHC-Lab, IS, NAIST 36
S 1 S 2 S 3 S 4 F
1. 各状態 S{S 1,…, S 4 } において対話システムはランダムに
行動 a{a 1 ,a 2 } を選択.もし,状態が終端状態 F ならば終了.
2. 報酬 r や状態の価値 v を前状態に伝搬 3. 1 と 2 を繰り返す
a 1 a 1 a 1 a 1
a 2 a 2 a 2
r :
報酬v :
価値一通り価値の伝搬が終わると,
対話システムは各状態で最も価値の高い行動を選択
/42
部分観測マルコフ決定過程概略
37
対話システム
ユーザ
行動 a 観測値 o’ 報酬 r
1. システムは推定した状態に基づき行動 a を実行 2. 行動 a と状態遷移確率 P に基づき,環境は状態 s から s’ へ遷移.
3. システムは報酬 r とユーザの観測値 o’ を得る.
ユーザの状態 は直接観測 不可能
対話システムは観測値 o
から環境の状態を推定
/42
POMDP による対話のモデル化例
例:チケット購入
2015©Hiraoka AHC-Lab, IS, NAIST 38
行動 a:
1. キャンセルする
2. 発券する
3. 確認する
目標:
1. 誤認識によって,誤って発券しない.
2. 誤認識によって,誤ってキャンセルしない.
状態 s:
1. キャンセル 2. 発券
観測値 o:
“ キャンセルします ”
“発券してください”
POMDP による対話のモデル化例2
例:チケット購入
報酬 :r(s,a)
行動:
a
キャンセル 発券する 確認する 状態
:s
キャンセル5 -20 -1
発券
-10 5 -1
状態遷移確率 :P(s’|s,a)
状態:
s
キャンセル 発券 次状態
:s’
キャンセル
1.0 0.0
発券
0.0 1.0
a=“
確認する”
状態:s’
キャン セル
発券 観測
値
:o’
キャンセ ルします
0.7 0.3
発券してください
0.3 0.7
観測確率 :P(o’|s’,a)
間違って発券したりキャンセルすると 負の報酬を与える
音声認識誤りを表現
(
30%
の確率で誤認識)/42
さいごに
2015©Hiraoka AHC-Lab, IS, NAIST 40
タスク指向対話システム
特定のタスク達成(例:チケット予約、情報検索)を目的とし てユーザと対話を行う対話システム
–
ルールベース:SHRDLU, MMDAgent
–
非ルールベース: AssisTra, SimSensei
決定的写像
(SQL)
言語理解
決定的写像
(フロー固定
)
対話制御
関係データベース
知識ベース
統計的識別
モデル 強化学習
関係データベース
/42
非タスク指向対話システム
タスク達成を目的とせず対話そのものを目的(例 : 雑談)と する対話システム
–
ルールベース:Eliza, A.L.I.C.E.
–
非ルールベース: Jabberwacky, KELDIC
2015©Hiraoka AHC-Lab, IS, NAIST 42
決定的写像
(SQL)
言語理解
一問一答
対話制御
関係データベース
知識ベース
ベクトル空間
モデル 一問一答