• 検索結果がありません。

今日の内容 自然言語処理システム特論 Natural Language Processing Systems 第 11 回 2019/6/26 芝浦工業大学工学部情報工学科杉本徹 自然言語対話システム 対話システムの歴史 対話システムの分類 対話

N/A
N/A
Protected

Academic year: 2022

シェア "今日の内容 自然言語処理システム特論 Natural Language Processing Systems 第 11 回 2019/6/26 芝浦工業大学工学部情報工学科杉本徹 自然言語対話システム 対話システムの歴史 対話システムの分類 対話"

Copied!
9
0
0

読み込み中.... (全文を見る)

全文

(1)

自然言語処理システム特論

Natural

Language

Processing Systems

第11回 2019/6/26

芝浦工業大学 工学部 情報工学科 杉本 徹

[email protected]

今日の内容

• 自然言語対話システム –

対話システムの歴史

対話システムの分類

対話システムの構造

対話システムの処理方式

プランに基づく対話処理

プランニング,プラン認識

輪講とレポート課題について

(音声)対話システムとは?

• ユーザによる一連の自然言語入力を「理解」

し,それに対して「適切に」応答するシステム

• 特に,音声でやり取りするものを 音声対話 システムと呼ぶ

音声対話システム特有の課題

音声認識(不確実性への対処),音声合成

より口語的な入力表現の理解(省略,言い淀みなど)

自然言語入力

(音声,タイプ入力)

応答

(音声)

対話 システム

対話システムの歴史

• ELIZA

• SHRDLU

• その後の対話システム

ELIZA [Weizenbaum 1966]

• 心理カウンセラの役割を演じる対話システム

• 例:

• 入力の表層的パターンに基づいて適当に生 成した応答を返すだけ(「人工無脳」の元祖)

• Emacs 「Esc-x doctor」で試すことができる

Doctor: Please, describe your problems.

User : I'm in trouble.

Doctor: Why do you say you are in trouble?

User : I want you some advice.

Doctor: Is It because of your plans that you say you want me some advice?

SHRDLU [Winograd 1972]

• 積木の世界におけるユーザから の指令や質問への応答を行う

• 例:

Person: PICK UP A BIG RED BLOCK.

Computer: OK. (does it) 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.

Computer: OK. (does it)

Person: WHAT DOES THE BOX CONTAIN?

Computer: THE BLUE PYRAMID AND THE BLUE BLOCK.

Person: WHAT IS THE PYRAMID SUPPORTED BY?

Computer: THE BOX.

(2)

その後の対話システム

• データベース検索インタフェース(1980年代)

• 音声認識技術の発展(1970~90年代)

• 音声対話システムの実験,実用化

– MIT Voyager システム(地理案内) 1990年前後 – DARPA ATIS(航空券案内) 1990年代 – Rochester TRIPS(経路計画) 2000年前後 –

コールセンターの自動音声応答(IVR)

• 一問一答型の音声対話システム

対話例1

• MIT Voyager システム(地理案内)

User : Can you tell me how to get to the Chinese restaurant?

Voyager: Where are you?

User : I am near a bank.

Voyager: I know of many banks. Can you specify which one you mean?

User : The one on Main Street.

Voyager: The only bank on Main Street that I know of is the Baybank at 226 Main Street in Cambridge.

The Chinese restaurants that I know of are Hong Kong and Royal East.

対話例2

• Darpa Communicator システム(航空券案内)

SYS : What airport woodja like to fly out of?

USER: MIAMI FLORIDA Voyager: Leaving from Miami,

And, what city are you flying to?

User : MINNEAPOLIS MINNESOTA Voyager: Flying from Miami to Minneapolis, What date would you like to fly?

User : UH MONDAY OCTOBER TWENTY THIRD Voyager: Leaving on the 23rd of October,

And what time didja wanna leave?

User : UH LATE MORNING

参考: 音声対話システムの系譜

(出典:河原達也「音声対話システムの進化と淘汰」人工知能学会誌 28(1), 2013)

対話システムの分類

• 対話の目的,主導権,情報の 形式,順序の自由度,モード などによる分類

対話の目的

• タスク指向型対話(task-oriented dialogue)

ユーザが何らかのタスクを遂行する目的を持ち,

システムもその目的のためのサービスを提供する

タスクの種類: 情報検索,情報伝達(予約など),

物理的行為(旅行など)

• 非タスク指向型対話(雑談)

目的がはっきりと決まっていない対話

(対話すること自体が目的)

(3)

対話の主導権

• システム主導

システムが決まった手順でユーザから情報を順次 引き出すことによって対話の目的を達成する

• ユーザ主導

ユーザが自発的に質問や要求を入力し,システム がそれに応答していく

• 混合主導

話の流れに応じて対話の主導権が移動する

例: システム主導対話の後,ユーザに主導権を渡す

参照する情報の形式,対話の順序

• 対話で参照される情報の形式 –

関係データベース

一般の知識表現 (フレーム,意味ネットワーク等)

自然言語テキスト

• 対話の順序

必須項目のやり取り中心 ⇒ 順序固定も可能

任意項目が多い場合

⇒ 順序に柔軟性が必要 –

項目立てができない場合 ⇒ ユーザ主導で

対話のモード

• タイプ入力

ある程度推敲された入力を期待できる

• 音声入力(音声対話)

音声認識(不確実性の増大)

より口語的な表現(省略,言い淀みなど)

• マルチモーダル対話

言語以外の情報(視覚情報など)を入出力に併用

顔の向き,視線,ジェスチャー,表情など

対話システムの構造

• タイプ入力の場合

• 音声入力の場合

対話システムの構造(タイプ入力)

タイプ入力

(文字列)

推論 計画 立案 応答 内容 言語 決定

理解

情報検索

操作実行 言語

生成 知識

文脈情報

意味表現 応答内容 応答出力

対話システム

対話システムの構造(音声入力)

音声入力

推論 計画 立案 応答 内容 言語 決定

理解

情報検索

操作実行

知識

文脈情報 応答出力

音声対話システム

音声 認識 認識

結果 言語 生成 音声

合成

意味 表現 応答 内容 言語

表現

(4)

対話システムの処理方式

• 状態遷移方式

• 知識駆動方式

• プランに基づく方式

状態遷移方式

• 対話の流れが固定的な場合の処理方式

• 例: 航空券予約システム

出発地はどこですか?

目的地はどこですか?

出発日は何日ですか?

空港名を入力して下さい

空港名を入力して下さい 空港名の入力

空港名の入力

空港名の入力

空港名の入力 その他の入力

その他の入力 その他 の入力

その他 の入力

知識駆動方式

• 領域知識の構造に対応した制御を行う –

例: フレーム型知識表現における slot filling ホテル検索システム

スロット名 スロット値 必須性 地域 必須 最寄り駅 任意 客室タイプ 任意 料金の制約 任意

プランに基づく方式

発話行為(speech act)の考え方

全ての発話は何らかの目的を持って行われる

• ユーザの発話の理解 ⇒ プラン認識 –

入力内容の背後にあるユーザの意図(目標)や

プランの全体像を推測する

• 応答内容決定・生成 ⇒ プラン生成・実行 –

システム自身の目標(多くの場合,ユーザの目標

達成支援)を達成するためのプランを作り,その 一環として,応答出力(や操作・検索実行)を行う

確率モデルを用いた対話制御の最適化

• 対話制御の困難さ

対象タスクが変わるたびに,制御用のルールや パラメータの再設定が必要

例1: 曖昧な事項の確認戦略

例2: 対話の主導権(システム,ユーザ,混合)

• 事例(コーパス)に基づく対話制御の最適化 –

教師あり学習(supervised learning)

強化学習(reinforcement learning)

対話制御戦略の強化学習

対話をMarkov決定過程としてモデル化 –状態の集合 S

現在の話題,確信度,履歴など システムが取りうるアクションの集合 As

値質問,値確認,DB検索,主導権変更など 状態遷移確率 P(St | St-1, at-1)

報酬 R

タスク遂行の効率性,ユーザ満足度など 戦略π:S→As

試行を繰り返すことにより高報酬の戦略を学習する

(5)

参考1: 対話に関する理論

• 発話行為論(Austin, Searle)

例: 「水をください」 → 発話行為タイプ = 依頼 命題内容 = 水を渡す –適切性条件,間接発話行為,…

• 協調の原則(Grice)

量の公理,質の公理,関連性の公理,様態の公理

• 談話構造(Grosz)

言語構造+注意状態(焦点)+意図構造(プラン)

共同行動,共通基盤,話者交代,…

参考2: 雑談対話システム

• コミュニケーション自体が目的

→情報機器やロボットと人間の新しい関わり方

• 言語理解,応答生成,対話制御

広範な話題に対応するため,タスク指向型対話システム とは異なる技術が必要

• ユーザ適応

ユーザの嗜好の把握,発話内容の記憶など

• 個性(一貫性)

性格,感情,言葉づかいなど

• 評価方法?

ニューラル対話モデル

• Recurrent Neural Network (LSTMなど)を用いて,

入力文の符号化(encode)と,得られたベクトルから の応答文の復号化(decode)を end to end で行う

学習データ: 対話コーパス中の隣接発話ペア

今日 は 暑い です

もう 夏 です

Encoder RNN

Decoder RNN

(ベクトル)

(入力文)

(応答文)

ニューラル対話モデルの課題

• 対話の流れに応じた制御が困難

• 応答の多様性に乏しい

• 外部知識の利用

• キャラクターの一貫性

プランに基づく対話処理

1.プランニング 2.プラン認識

協調的応答とプラン認識

例:

相手の発話の背後にある意図やプランを認識する ことにより,

表面上要求されている以上の情報の提供

相手のプランに含まれる問題の指摘や代替プランの提案 間接的発話の意図理解や,省略補完,参照解決

などが可能になる

乗客: 京都行きの列車は何時に出ますか?

駅員: 12時30分,16番ホームからです.

(6)

1.プランニング

プランニング(プラン生成,計画立案)

• プラン(計画)とは?

目標とする状態や行動を実現するような,プラン オペレータ(可能な動作)の系列

• プランオペレータの構成

• プランライブラリ

プラン名

前提条件 プラン実行のための必要条件 制約 プランの適切さを保証する条件 行為本体 基本行為またはプランの系列

効果 プランによって達成される状態

プランオペレータの例

• 積木の世界

積木 x を場所 from の上から to の上へ移動する プランオペレータ

Clear: 上部が空いている

プラン名 Move(x, from, to) 前提条件 On(x, from) ∧ Clear(x) ∧ Clear(to)

制約 Block(x)

行為本体

効果 On(x, to) ∧ Clear(from)

プランニング(プラン生成)

• 単純なアルゴリズム

目標リストの初期設定

目標リストから目標を1つ選ぶ

その目標を達成できる プランオペレータを1つ選ぶ

そのプランオペレータの前提条件および 行為本体の内容を目標リストに追加し,

効果の内容を目標リストから削除する

存在しなければ 終了(成功)

存在しなければ 終了(失敗)

プランニングの例

• 積木の世界

現在の状態: Block(A), Block(B), Block(C), On(A, Table), On(B, Table), On(C, B),Clear(A), Clear(C), Clear(Table)

目標: on(A, B)

プランニング: on(A, B)

Move(A, from, B) from = Table

↑ Clear(B)

Move(x, B, to) x = C, to = Table

A B

C

列車旅行のプランオペレータ

• 列車旅行

• 乗車

プラン名 TakeTrainTrip(agent, train, dest) 行為本体 BuyTicket(agent, clerk, ticket)

Board(agent, train) 制約 dest = to_station(train)

train = for_train(ticket)

効果 At(agent, dest)

プラン名 Board(agent, train) 行為本体 GoTo(agent, gate, time)

GetOn(agent, train) 制約 gate = depart_gate(train)

time = depart_time(train)

(7)

プランの例(京都へ行く)

BuyTicket (太郎,駅員,切符)

TakeTrainTrip(太郎,のぞみ29号,京都)

Board (太郎,のぞみ29号)

GoTo

(太郎,16番ホーム,12時30分) GetOn

(太郎,のぞみ29号) At(太郎,京都)

発話行為のプランオペレータ

情報伝達

依頼

プラン名 Inform(speaker, hearer, prop) 前提条件 Believe(speaker, prop)

効果 Believe(hearer, prop)

プラン名 Request(speaker, hearer, action) 前提条件 Intend(speaker, action)

効果 Intend(hearer, action) 制約 Agent(action, hearer)

参考: BDIアーキテクチャ

• 合理的な行為者のモデル

Beliefs Desires

Intentions Reasoner

Plan Library Sensors

Actuators

行為者(エージェント)

外界(環境)

発話行為のプランオペレータ

情報伝達

依頼

プラン名 Inform(speaker, hearer, prop) 前提条件 Believe(speaker, prop)

効果 Believe(hearer, prop)

プラン名 Request(speaker, hearer, action) 前提条件 Intend(speaker, action)

効果 Intend(hearer, action) 制約 Agent(action, hearer)

発話行為のプランオペレータ(続き)

真偽情報

伝達

値情報 伝達

プラン名 InformIf(speaker, hearer, prop) 前提条件 BelieveIf(speaker, prop) 行為本体 Inform(speaker, hearer, prop)または

Inform(speaker, hearer, ¬prop) 効果 BelieveIf(hearer, prop)

プラン名 InformRef(speaker, hearer, term, prop) 前提条件 BelieveRef(speaker, term, prop) 行為本体 Inform(speaker, hearer, prop)

効果 BelieveRef(hearer, term, prop)

制約 Parameter(term, prop)

発話プランの例

BelieveRef(太郎,time,

time=depart_time(のぞみ29号))

InformRef(speaker,太郎,time,

time=depart_time(のぞみ29号))

Intend(駅員,InformRef(駅員,太郎,time,

time=depart_time(のぞみ29号))

Request(太郎,駅員,InformRef(駅員,太郎,time,

time=depart_time(のぞみ29号))

speaker→駅員

「のぞみ29号は何時に出ますか?」

(8)

2.プラン認識

プラン認識とは?

• プランニング(プラン生成)の逆のプロセス –

観察された行動(発話など)から,行為者(話者)

の意図やプランの全体像を推測する

一種の仮説(説明)生成推論(abduction)

主なプラン認識手法

経験的な推論規則による方法

論理に基づく方法

数値的(確率的)なモデル

プラン認識ルールの例

ルール名 条件 結論

前提-行為 行為Aの前提条件が成立

してほしい Aが生起してほしい 行為本体-

行為

Aの行為本体が生起して

ほしい Aが生起してほしい

行為-効果 Aが生起してほしい Aの効果が実現してほしい 目標-行為 他の行為者にAを意図して

ほしい

その行為者にAを実行して ほしい 真知識 命題Pの真偽を知りたい Pが真になってほしい

偽知識 Pの真偽を知りたい Pが偽になってほしい

値知識 項tを含む命題Pの真偽を

知りたい tの値を知りたい

項知識 Pの中のtの値を知りたい tが関連する意図が実現して

ほしい

発話プラン認識の例

BelieveRef(太郎,time,

time=depart_time(京都行き列車))

InformRef(駅員,太郎,time,

time=depart_time(京都行き列車))

Intend(駅員,InformRef(駅員,太郎,time,

time=depart_time(京都行き列車))

Request(太郎,駅員,InformRef(駅員,太郎,time,

time=depart_time(京都行き列車))

「京都行きの列車は何時に出ますか?」

「行為‐効果」ルール

「目標‐行為」ルール

「行為‐効果」ルール

発話プラン認識の例(続き)

TakeTrainTrip(太郎,京都行き列車,京都) Board(太郎,京都行き列車)

GoTo(太郎,gate,time) At(太郎,京都)

BelieveRef(太郎,time,

time=depart_time(京都行き列車))

「行為‐効果」ルール

「行為本体‐行為」ルール

「行為本体‐行為」ルール

「項知識」ルール

協調的な応答生成への応用

• プラン認識によって発話の背後にある相手の意図や プランを理解し,そのプランの実現を支援するような

(例:必要な情報の提供)自分のプランを生成して 応答発話を作り出す

例: 「美術館行きのバスはどこですか?」

応答1:「3番乗り場です」

応答2:「3番乗り場です.あと5分で発車します」

応答3:「今日は美術館はお休みですよ」

応答4:「美術館はお休みなので,博物館をお勧めします」

(9)

続き

• こんな対話もありうる

「美術館行きのバスはどこですか?」

「今日は美術館はお休みですよ」

「美術館の隣のレストランへ行きたいのです」

「失礼しました.バスは3番乗り場から発車します」

ここまでのまとめ

• プランに基づく対話のモデル化と処理

対話中のそれぞれの発話は,何らかの目標を達成するプラ ンの要素として遂行される発話行為と考えられる プランニング(プラン生成)の過程を逆にたどるプラン認識の

推論により,発話者(対話システムのユーザ)が持つ意図を 理解できる

その応用として,

要求された以上の協調的な情報提供

相手(ユーザ)の誤解の指摘や代替プランの提案

間接的な発話や断片的な発話の理解 などが実現できる

今日のまとめ

• 自然言語対話システム –

対話システムの歴史

対話システムの分類

対話システムの構造

対話システムの処理方式

プランに基づく対話処理

プランニング,プラン認識

輪講とレポート課題について

次回から輪講

• 7月3日, 10日, 17日

指定された論文の中から1つ選んで2~3人で担当

• 1つの論文内で担当範囲を分担し,それぞれ自分の担当範囲 のスライド作成および発表を行う.

各グループの発表スライドは,1つのファイルにまとめる

発表には,論文内容(の要約)の紹介および論文を読んで自分 が考えた考察を含めること.

発表時間 12分間 + 質疑 8分間

成績評価は,発表の内容 と 論文の理解度 を考慮して行う.

発表時間を大幅にオーバーした場合は減点

レポート課題

• 課題: 輪講で発表した論文の内容とこれまでの講義

内容を踏まえて, 自然言語処理システム

(「対話システム」のように限定してもよいし,

一般の自然言語処理システムを対象として

もよい) の現状評価と今後の展望を論じよ.

(構成の一例: 輪講で発表した論文の要旨と考察 + より広い観点での考察)

• 分量: A4サイズ 1ページ程度

• 形式: MSワード形式,またはPDF形式のファイル (ファイル名に学籍番号を含めること)

• 提出方法: この授業のシェアフォルダに提出

• 提出期限: 7月24日(水) 23:59 まで (厳守)

参照

関連したドキュメント

高機能材料特論 システム安全工学 セメント工学 ハ バイオテクノロジー 高機能材料プロセス特論 焼結固体反応論 セラミック科学 バイオプロセス工学.

講師:首都大学東京 システムデザイン学部 知能機械システムコース 准教授 三好 洋美先生 芝浦工業大学 システム理工学部 生命科学科 助教 中村

関西学院大学手話言語研究センターの研究員をしております松岡と申します。よろ

今回の調査に限って言うと、日本手話、手話言語学基礎・専門、手話言語条例、手話 通訳士 養成プ ログ ラム 、合理 的配慮 とし ての 手話通 訳、こ れら

手話言語研究センター講話会.

司会 森本 郁代(関西学院大学法学部教授/手話言語研究センター副長). 第二部「手話言語に楽しく触れ合ってみましょう」

本センターは、日本財団のご支援で設置され、手話言語学の研究と、手話の普及・啓

と発話行為(バロール)の関係が,社会構造(システム)とその実践(行