マルチメディア言語処理
手順書の解析・生成と計算機の思考の言語化
京都大学 学術情報メディアセンター
森 信介

Part 1

自己紹介 & 研究室紹介

自己紹介• 使用言語 (今でも学習中)– 日本語, Englis., França.., Itali..., Esp...., Po.......

• 研究経歴– 京都大学 学士 → 修士 → 博士
• 自然言語処理– 日本アイ・ビー・エム• 音声認識・合成– 京都大学学術情報メディアセンター 准教授 →教授• 自然言語処理• メディア融合

3統計的仮名漢字変換• [情処論99] (第５８回電気科学技術奨励賞)– Google, Microsoft, Apple と自分が使っている (特許をとってれば…)• [Coling-ACL06]– 大規模テキストの部分文字列の列挙• [EMNLP15]– ユーザーの変換ログからの言語知識の獲得

4

自然言語処理研究者としての位置• 統計的手法– 卒論の1994年では先駆的, 現在は当然• 基礎的な言語解析– 形態素解析・固有表現認識・係り受け解析– 照応解析・意味解析・文法理論• 応用課題の提案・解決 (データ作成 → モデル構築)• 対象言語は主に日本語 (引用数を稼ぎにくいが…)– 論文発表– 言語資源・ツールの公開
5

自作自演主義• コーパス [Mori+ LREC16] (自分でアノテーション)• 実世界参照言語処理• 単語分割 [Kameko+ EMNLP15]• 固有表現認識 [Tomori+ ACL16]• 自動解説 [Kameko+ CIG15]• 非言語データの言語による検索 [Ushiku+ SIGIR17]6

研究室 2016 Apr. ～• 京都大学 学術情報メディアセンター 大規模テキ
ストアーカイブ分野– 学内の情報サービス– 他部局と協力（ex. 東南アジア地域研究研究所）• 情報学研究科知能情報専攻（兼担）– 学部: 配属なし
– 修士課程: 4名, 2名– 博士課程: 2名, 2名

http://www.ar.media.kyoto-u.ac.jp/

8Part 2

言語処理の基礎研究

基礎的言語処理を自前のツールでカバー

1. 単語分割・品詞推定・読み推定 [LREC10, ACL11, IS11]
彼/名詞 と/助詞 清水/名詞 寺/名詞 に/助詞 行く/動詞

2. 用語認識／固有表現認識 [PACLING15, ACL16]
彼/名詞 と/助詞 清水/名詞 寺/名詞 に/助詞 行く/動詞

3. 係り受け解析 [IJCNLP11, NLP12, LREC14, IWPT15]
彼/名詞 と/助詞 清水/名詞 寺/名詞 に/助詞 行く/動詞

4. 共参照解析 [IJCNLP13, LREC16]
彼/名詞 と/助詞 清水/名詞 寺/名詞 に/助詞 行く/動詞= バラク・オバマ= 音羽山清水寺

10

次のツール化の目標• 時空間表現の絶対値推定– 今日は清水さんにお参りして…
→ (北緯34度59分41.39秒, 東経135度47分6.01秒)• モダリティー解析– 先手が勝ちそうだ→ 確度 ≒ 90%• 述語項構造解析• Wikification [Murawaki+, LREC16]11多様な実テキストに強い手法• 形態素解析器 KyTea http://www.phontron.com/kytea/– 未知語に対して頑健– Cf. JUMAN: 基本語彙に豊富な情報– Cf. MeCab: Web 企業での利用多数– Twitter の形態素解析で最高精度• JUMAN, MeCab に対してデフォルトで優位

96.00
F-mesure• 分野適応が容易• 言語資源の追加でさらに精度向上• 医薬・特許・レシピ・学内アナウンス– 言語資源の追加は加法的な効果 [LRE16]

95.00
94.00
93.00
01000

2000

3000

#sentences12言語処理ツールの開発・公開
1. 形態素解析（日本語・中国語）– KyTea

http://www.phontron.com/kytea/

2. 固有表現認識–PWNER

http://www.ar.media.kyoto-u.ac.jp/tool/PWNER/home.html

3. 係り受け解析– EDA

http://plata.ar.media.kyoto-u.ac.jp/tool/EDA/

4. 述語項構造解析, Wikification

形態素解析
1. 単語分割
2. 品詞推定
3. その他タグ (読み, 原型, 正規表記, …)

隠れセミマルコフモデルに基づく教師なし完全形態素解析
内海 慶, 塚原 裕史, 持橋 大地, NLP2015•

KyTea [Neubig+, ACL11][Mori+, InterSpeech11]14超短単位 SSUW
• 基本的には短単位 (国語研 KOTONOHAプロジェクト)• 生成＆グラウンディングを意識した単位• 活用語を語幹と語尾に分割 (|V|x5 v.s. |V|+5)• 語幹: 内容に対応 (実世界・他言語)• 語尾: 純粋に文法的要素ex.) 久しぶり | に | 会 | っ | た | 友達 | と | 飲み歩 | く15固有表現認識• 固有表現: 単語列とその種類

種類: 人名, 地名, 組織名, 金額, 日付, 時間, 割合, 人工物• 実世界に対応するのは単語列 (単語の定義の問題)• 拡張固有表現: 約200種
彼/名詞と/助詞
清水/名詞
寺/名詞に/助詞
行く/動詞

•

Other
Other
Loc-Begin
Loc-Intermediate
Other
Other

種類の定義は課題依存• PWNER [Sasada+, PACLING15]
16

係り受け解析• 単語単位
1. 係り先の推定
2. 省略可能か否かのフラグ• EDA [Flannery+, IJCNLP11] [Flannery+, IWPT15]
17

Wikification•mention から Wikipedia entry への mapping•表層ゆれ解消+曖昧性解消（多対多）清水の舞台なう
清水寺もいったし八坂さんもいったし、最高や西国三十三札所巡りもついに第25番清水寺
清水寺八坂神社

清水寺 (加東市)
18

Wikification の利点
観光ガイド

写真

位置

19

Part 3

最近および今後の研究
1. 手順書の理解・生成
2. 計算機の思考の言語化グラウンディングに基づく言語の生成・理解• 手順文書• 作業実施映像

r-FG corpus [Mori+ LREC14]

KUSK Dataset [Hashimoto+ CEA15]

文生成• 思考・判断

文理解

• 物体
• 動作
• 中間生成物• 解説[Mori+ LREC16] [Matsuyoshi+ LREC18]
３四/Po 角/Pi は 、詰めろ/Mn で すね 。しかし 、 先手/Tu 玉/Pi に ８七/Po歩/Pi 成/Mc から の即詰み/Me が あ ります。

••
•
•

“物体”
“比喩”
時制
モダリティ

“すべての単語” が ”実世界” に対応• グラウンディングモジュールの評価データ

21手順書の理解・生成Procedural text

Flow graph[Mori+, LREC14]

1. 両手鍋で油を熱する。
セロリと青ねぎとニンニクを加え、１分ほど炒める。
2. ブイヨンと水とマカロニと胡椒を加えて、パスタが柔らかくなるまで煮る。
3. 刻んだセージをまぶす。

•2014-2017 基盤B

Cooking robot[Bollini+, ISER13]

Smart kitchen[Hashimoto+, IPMU08]

Intelligent search[Yamakata+, SocInfo13]

Cut garlic
Then add it

www.denso.co.jp

22

Flow Graph [Mori+ LREC14]• Direct acyclic graph (DAG) representing work flow23

Vertex Labels
Tag MeaningRemarks

FFood

Eatables including intermediate products,TTool

Knife, container, etc.

DDuration

Duration for cooking

Q

Quantity

Quantity of food

AcAction bychef

Verbs representing chef’s actions (stemonly)

Af

Action byfoodVerbs representing food’s actions (stemonly)

SfFood state

Food’s initial or intermediate states

St

Tool stateTool’s initial or intermediate states24Arc Labels
Label

Meaning

RemarkAgentAction agent

Relationship with actions (Ac or Af)

Targ

Action target

Dest

Action destination

T-compTool complement

Tool used in an action

F-compFood complement

Food used as a toolF-eq

Food equality

Identical foodF-part-of

Food part-ofRefer to a part of a food

F-set

Food set

Refer to a set of foods

T-eq

Tool equality

Identical tool

T-part-of

Tool parf-ofRefer to a part of a tool

A-eq

Action equality

Identical action (Ac, Af)

V-tm

Head verb for timing, etc.

other-mod

Other relationships25

• 20 recipes• 40 cookging
videos

EXAMPLEKUSK Dataset [Hashimoto+, CEA15]
Recipe says; cut chicken into bite-size pieces
Then human will do …

26

Procedural Text Understanding
1. 両手鍋で油を熱する。
(In a Dutch oven, heat oil.)
セロリと青ねぎとニンニクを加え、(Add celery, green onions, and garlic.)
１分ほど炒める。
(Cook for about 1 minute.)
2. ブイヨンと水とマカロニと胡椒を加えて、パスタが柔らかくなるまで煮る。
(Add broth, water, macaroni, and pepper,and simmer until the pasta is tender.)3. 刻んだセージをまぶす。
(Sprinkle the snipped sage.)

1. Word segmentation
2. Concept identification
3. Flow graph estimation27

Procedural Text
1. 両手鍋で油を熱する。
(In a Dutch oven, heat oil.)
セロリと青ねぎとニンニクを加え、1分ほど炒める。
(Add celery, green onions, and garlic. Cook for about 1 minute.)
2. ブイヨンと水とマカロニと胡椒を加えて、(Add broth, water, macaroni, and pepper,パスタが柔らかくなるまで煮る。
and simmer until the pasta is tender.)3. 刻んだセージをまぶす。
(Sprinkle the snipped sage.)28

Step 1.

Word Segmentation

Result:1. 両手 鍋 で 油 を 熱 する 。
(In a Dutch oven, heat oil.)
セロリ と 青 ねぎ と ニンニク を 加え 、 1 分 ほど 炒め る 。
(Add celery, green onions, and garlic. Cook for about 1 minute.)
2. ブイヨン と 水 と マカロニ と 胡椒 を 加え て 、(Add broth, water, macaroni, and pepper,
パスタ が 柔らか く な る まで 煮 る 。
and simmer until the pasta is tender.)3. 刻 ん だ セージ を まぶ す 。
(Sprinkle the snipped sage.)29

Step 2.

Concept Identification

Result:
1. /両手 鍋/T で /油/F を /熱/Ac する 。
(Dutch oven)(oil)(heat)/セロリ/F と /青 ねぎ/F と /ニンニク/F(celery)(green onions)(garlic)/ 1 分 ほど/D(about 1 minute)を /加え/Ac(add)、/炒め/Ac る 。
(cook)

2. /ブイヨン/F と /水/F と /マカロニ/F と /胡椒/F を /加え/Acて 、(broth)(water)(macaroni)(pepper)(add)/パスタ/F が /柔らか/Sf く /な/Af る まで /煮/Ac る 。
(pasta)(tender)(is)(simmer)
3. /刻/Ac ん だ /セージ/F を /まぶ/Ac す 。
(snipped)(sage)(sprinkle)

30

Step 3.

Flow Graph Estimation

Parsing of a document, not a sentence
Result:Step 3.

Flow Graph Estimation

1. Maximum Spanning Tree search–

Logistic regression (LR) scores–

1st order

2. Arc addition–

DAG constrains–

LR score ≶ penalty(n)32Text Parsing on a Raw Text
TaskInput

F

Word segmentation (WS)

Raw Recipe Texts

98.6

Concept Identification (CI)Gold WS results

90.7

Flow Graph Estimation (FGE)Gold WS/CI results

72.1

WS + CI + FGE

Raw Recipe Texts

51.6• WS• Enough high and well solved• CI• Less accurate than WS• Needs improvement or more resource• FGE• Least accurate, most difficult• Needs more resource or more sophisticated techniques33

調理動画からのレシピの生成 [IJCNLP17]34

初期の結果• まだまだ不正確– 日本語がヘン– 前後がつながらない• マルチメディア手順書

自動生成の結果
フライパンに熱を入れ、炒めを炒める。
ボウルを２つ用意。
包丁ですを使、油をしいて炒める
挽肉を炒める。
お好みででる。
（砂糖を使う方は、ここで一緒に。
好みでコショウを加える。
お好みででをかけてもる。
キャベツはざく切り。
卵はほぐしておく。
フライパンに豆腐を入れ炒める。

– 実験記録– 伝統芸能の保存– 災害時の対応
35

写真列からのレシピ生成 [INLG19]•

仮定– レシピ := 工程+•タスク– 写真+ ⇒ 工程+– 工程 := 手順文+
– 工程 ⇔ 写真36

写真列からのレシピ生成 [INLG19]•••

画像と言語の共有の埋め込み空間の学習
写真から類似の K 工程を検索
K 写真と K 工程から encode-decode37写真列からのレシピ生成 [INLG19]••

Cookpad データで実験提案手法が機能している38

実タスクでの評価•

レシピからのフローグラフ推定 [IWPT15]– 知識獲得の前提 (相互依存している…)•

写真・動画からのレシピ生成 [IJCNLP17, INLG19]•

調理補助対話 (TODO)– 「次は野菜の準備です」

39データ・思考の自動解説
入力: 将棋の局面

出力: 解説

戦型 はSt/横歩取りになった。
•2014-2016 萌芽40

利用可能な資源• Position andCommentary• Junisen C1, C2– 2003～2013– 3,786 match– 212,066
sent.
41

将棋解説コーパス [Mori+ LREC16]• 2,508文と対応する局面• 人手アノテーション• 単語分割• 用語 (将棋固有表現)••

21種
BIO2 タグ体系• http://plata.ar.media.kyoto-u.ac.jp/data/game/42モダリティーの学習

Real World•

居飛車ではなかった角換わりになった
St: 横歩取り最新型になりそうExpression

モダリティー表現（否定, 蓋然性, ...）の実世界対応•

用語のグラウンディングを前提に

43

Part 4

対話システム1. Smart Kitchen (状況の観測とさりげない補助)
2. 将棋の解説 (質問応答)

Smart Kitchen•Help the chef by indicating the next action– Having a specified recipein flow graph form
– Knowing what was done
and what to do•Give a small talk when the chef is free

Add garlicto the oven

– Next recipe to try– Knowledge of ingredients, etc.
45

Hardware•

A kitchen equipped with– Touch screen

Cut garlicto the oven

• System shows the next action• Chef checks what was done
– Speaker• System talks– Microphone (noisy)• Chef tells what was done
• Chef asks the next action, etc.
– Camera (three or one wide)• System recognizes the situation46

Twitter での QA
配信SNS質問▲６五金と香を外して大丈夫です

解説

先手玉は危なくないの?

視聴47

解説ロボ
• 盤の横に置駒• 置駒内にPC–

上部にカメラ

先手玉に８七歩成からの即詰みがあります。
カメラ• ディスプレイ–

読みを表示• スピーカー• マイク48

グラウンディングに基づく言語の生成・理解• 手順文書• 作業実施映像

r-FG corpus [Mori+ LREC14]

KUSK Dataset [Hashimoto+ CEA15]

文生成• 思考・判断

文理解

• 物体
• 動作
• 中間生成物• 解説[Mori+ LREC16] [Matsuyoshi+ LREC18]
３四/Po 角/Pi は 、詰めろ/Mn で すね 。しかし 、 先手/Tu 玉/Pi に ８七/Po歩/Pi 成/Mc から の即詰み/Me が あ ります。

•••
•

“物体”
“比喩”
時制モダリティ“すべての単語” が ”実世界” に対応• グラウンディングモジュールの評価データ

49