手順構造を考慮した作業映像からの手順書生成西村太一
京都大学大学院情報学研究科
nishimura.taichi.43x@st.kyoto-u.ac.jp

橋本敦史
オムロンサイニックエックス株式会社
atsushi.hashimoto@sinicx.com

牛久祥孝
オムロンサイニックエックス株式会社
yoshitaka.ushiku@sinicx.com

亀甲博貴
京都大学 学術情報メディアセンター
kameko@i.kyoto-u.ac.jp

森信介
京都大学 学術情報メディアセンター
forest@i.kyoto-u.ac.jp

1

はじめに材料リスト

手順書は，料理や科学実験などの一連の手続きをトマト

かぼちゃ

作業映像

ケチャップ マヨネーズ

手順書

自然言語で記述した文書である．手順書を作業映像から自動的に生成できるようになれば，作業者が作

手順1

手順1

1

トマトを切ります。

業内容を検証したり，同じ結果を再現したりする上手順2で有用である．本研究では，作業映像から手順書を生成することを目的とする．

手順2

正しく手順書を生成するためには，モデルは単に

手順32

かぼちゃを切り, 炒める。
手順3

3

かぼちゃをトマトに乗せる。

映像の情景を記述するのではなく，人が読んで作業を実施できるような一貫性を持った文を生成するこ

手順4

手順44とが要求される．そのためには，材料や動作の依存
図1

関係を捉えること，つまり，(1) 動作や材料の順番がケチャップとマヨネーズをかける。

物体と動作の依存関係を表現した木構造．

正しく，(2) ある手順の動作後の状態をもとに次の手順文を生成することが重要である．

実験では，映像から文を生成する従来手法と比較

我々は，材料や動作の依存関係を木構造をはじめして文の自動評価尺度において性能が向上したことするグラフ構造で表現することで [1, 2, 3]，前述と，また，定性的評価において提案手法がある程した要件を満たすモデル化が可能になると考えてい度構造を考慮しつつ文を生成できていることを示る．こうした構造を手順構造と呼び，図 1 にその一した．

例を示す．この例では，手順 1 でトマトが切られ，手順 2 においてかぼちゃが切られ炒められる．こうして得られた切ったトマト，炒められたかぼちゃが手順 1，2 のノードにそれぞれ対応し，次に手順 3

2

関連研究
画像や映像といった視覚情報から手順書を生成で使われることを示している．以前の我々の研究でする研究が近年活発に行われている．手順書の中でも，料理ドメインは Web 上で大量にデータを集めやは，動画ではなく写真列を対象に，同様の手順構造

すく，動作や材料が多様であるため，特に注目を集の半教師ありで学習しつつ，手順書を生成するモデめている．こうした研究の先駆けとして，Salvador

ルを提案した [2]．本研究では，このアイデアを動ら [4] は完成写真からタイトル，材料リスト，レシ画列へ拡張し，かつ教師なしで手順構造をモデル化ピをまとめて生成する手法を提案した．その後，することで，一貫性のある手順書を生成する手法をChandu ら [5]，Nishimura ら [6] は，1 枚の完成画像提案する．

ではなく，複数枚の作業途中の写真列からレシピを(1) 入力をエンコード
材料リスト

材料ベクトル(2.1) 手順構造の計算

手順3PEPE

Transformer (Encoder)PE

2. beat the eggs.

zv2
V,1zh,gTransformer(Encoder)Transformer(Decoder)

手順2ベクトル

zv1

PEPE

zs1

V,3zh,gK
Zh,v

前の手順

PE

Transformer(Encoder)

手順2

Q
Zh,g動画
ベクトル

動画列
手順1

V,1zh,gV,2zh,g

牛乳

1. grate some pecorino cheese.

zv1(a) 材料-手順隣接行列

Transformer(Encoder)チーズ(2.2) 手順ベクトルの計算
手順1ベクトルzg1 zg2 zg3

PE卵(3) 手順書生成(2) 手順構造を考慮した手順ベクトルの計算

zs2

V,2zh,gV,3zh,g(b) 手順-手順隣接行列

zv2V,1zh,v·ZKh,v

手順3ベクトル

3. stir cheese into the eggs.

zv3QZh,vzv3

Transformer(Decoder)V,1zh,gV,3zh,gTransformer(Encoder)Transformer(Decoder)zs3V,2zh,gV,1zh,vV,2zh,v

図2

提案手法の概要図．

生成する課題と手法を提案した．作業映像から手順る [ENC] ラベルを結合して Transformer [9] を用いて書を生成する研究も行われている．Shi ら [7] は作業エンコードする．そして，[ENC] ラベルに対応する映像と，映像中の音声の書き起こしを入力にして手ベクトルを動画ベクトルとして得る．次に，動画列順書を生成する手法を提案している．の時系列情報を考慮するために，各動画ベクトルをまた，手順書の理解に向けて，材料や動作の依存別の Transformer へ入力し，動画列の時系列情報を関係をグラフで構造的に表現する研究も行われてき考慮した動画ベクトル 𝒁 𝒗 = (𝒛1𝑣 , 𝒛 2𝑣 , . . . , 𝒛 𝑣𝑁 ) を得る．

た [2, 1, 3]．近年ではこれを拡張し，手順書に付与

ここで，𝑁 は動画列に含まれる動画数である．

された画像情報も活用してマルチモーダルに木構造

材 料 リ ス ト の エ ン コ ー ド．各 材 料 を 単 語 の 分で表現する取り組みも行われている [2, 8]．本研究

散 表 現 に 変 換 し た 後，材 料 リ ス ト 内 の 関 係 を 考

ではこの木構造の手順構造を教師なしで，入力の作慮 す る た め，Transformer を 用 い て 材 料 ベ ク ト ル

業映像から獲得しつつ，手順書を生成する手法を提𝒁 𝒈 = (𝒛1𝑔 , 𝒛 2𝑔 , . . . , 𝒛 𝑔𝑀 ) を得る．ここで，𝑀 は材料リ案する．

ストに含まれる材料数である．

提案手法

3

手順構造を考慮した手順ベクトルの計算

3.2

提案手法は大きく分けて 3 つのプロセスからなる．(1) まず，最初に動画列と材料リストをエンコー(2.1) 手順構造の計算．得られた動画ベクトル，材料ベクトルを用いて手順構造を計算する．節 1 でドし，動画，材料のベクトル表現を獲得する．(2) 次

述べた通り，手順構造は木構造として表現するこに，手順構造を獲得するために，得られた動画，材とができ，これは材料がどの手順へ接続するか，料ベクトルから材料-手順隣接行列，手順-手順隣接ある手順がどの手順へ接続するのかを材料-手順，行列を計算する．計算した隣接行列を用いて，手順手順-手順の隣接行列を計算することで得られる．

ベクトルを計算する．(3) 最後に，計算した手順ベ

本研究では，この 2 つの行列計算をマルチヘッド

クトルを入力に手順書の各手順文を生成する．

アテンションとして定式化する．まず，材料ベク

3.1

入力のエンコード

動画列のエンコード．動画列をエンコードするた
めに，動画列の各動画の先頭にエンコードを意味す

トル，動画ベクトルから各ヘッドごとの材料ベク
トル 𝒁= (𝒛1 , 𝒛2 , . . . , 𝒛 𝑀 ) ∈ ℝ | 𝒉 |×𝑀 ×𝑑ℎ ，動 画𝒉,𝒈ℎ,𝑔ℎ,𝑔ℎ,𝑔𝑁ベクトル 𝒁𝒉,𝒗 = (𝒛1ℎ,𝑣 , 𝒛 2ℎ,𝑣 , . . . , 𝒛 ℎ,𝑣) ∈ ℝ | 𝒉 |×𝑁 ×𝑑ℎ を
𝑖𝑛𝑔𝑟
得て，材料-手順 𝑃∈ ℝ | 𝒉 |×𝑀 ×𝑁 ，手順-手順行列𝑖, 𝑗

| 𝒉 |×𝑁 ×𝑁 を以下のように計算する．
𝑃𝑖,𝑖𝑛𝑠𝑡𝑗 ∈ ℝ

𝑖𝑛𝑔𝑟𝑃𝑖, 𝑗𝑃𝑖,𝑖𝑛𝑠𝑡𝑗

𝐾 𝑇
𝒁𝑄ℎ,𝑔 ( 𝒁 ℎ,𝑣 ))𝑑ℎ¤𝐾 𝑇𝒁𝑄ℎ,𝑣 ( 𝒁 ℎ,𝑣 )= Softmax()√𝑑ℎ= Softmax(√

表1(1)(2)

𝑄𝐾¤𝐾
ここで，𝒁 𝑄ℎ,𝑔 , 𝒁 ℎ,𝑣 , 𝒁 ℎ,𝑣 , 𝒁 ℎ,𝑣 はそれぞれ別の 1 層のYouCook2 材料データセットの統計情報．

訓練

検証

レシピ数

1,235429

レシピあたりの手順数

7.73

7.67

レシピあたりの材料数

10.37 10.27て，以下の負の対数尤度が最小となるように計算を行う．
𝐿(𝜽) = −線型結合層で変換されたベクトルである．計算し𝑖𝑛𝑔𝑟

た材料-手順隣接行列 𝑃𝑖, 𝑗

では，𝑖 番目の材料が 𝑗番目の手順に接続する確率を，手順-手順隣接行列
𝑃𝑖,𝑖𝑛𝑠𝑡𝑗 は，𝑖 番目の手順が 𝑗 番目の手順に接続する確

𝐷𝑗𝑗log 𝑝( 𝒚 𝑗 |𝒛 𝑠 ; 𝜽)(5)

ここで，𝜽 はモデル全体のパラメータを表す．また，デコーダには Transformer を用いる．

率を表す．ただし，𝑃𝑖,𝑖𝑛𝑠𝑡
𝑗 については，ある手順は前

4

実験番目の要素には非常に小さい値 𝜖 (= 1.0 × 10−5 ) が挿

4.1

実験設定の手順に遡って繋がらないという仮定のもと，𝑖 ≥ 𝑗入されている．

∑∑データセット．作業映像と手順書のデータセット(2.2) 手順ベクトルの計算．次に，得られた隣接として YouCook2 [10] を利用した．YouCook2 は作業行列を用いて，各手順に対応するベクトルを計算映像に対し，手順書の各手順に対応する区間がアノ𝑖𝑛𝑔𝑟する．𝑃𝑖, 𝑗 の 𝑗 列目は 𝑗 番目の手順で使われる材料の重みが，𝑃𝑖,𝑖𝑛𝑠𝑡
𝑗 の 𝑗 列目は 𝑗 番目の手順と依存テーションされたデータセットである．本研究で関係にある手順の重みが計算されているとみなす動画列を作成している．YouCook2 には材料のアノことができる．よって， 𝑗 番目の手順における各材テーションが行われていないため，材料のアノテー料，手順の隣接行列の重みと，材料，動画ベクトルションを 3 人のアノテータを介して行なった．アノを掛け合わせることによって， 𝑗 番目の手順での材料と動画の重要度を加味したベクトルを得ることができる．具体的には，材料，動画ベクトルを 1層の線型結合層で変換したベクトル 𝒁 𝑉ℎ,𝑔 , 𝒁 𝑉ℎ,𝑣 と，𝑖𝑛𝑔𝑟

は，この区間を抽出することで，各手順に対応するテーションの結果得られたデータを YouCook2 と併せて，本研究では YouCook2 材料データセットと呼ぶこととする．データセットの統計情報を表 1 に示す．なお，YouCook2 ではテストセットは公開され𝑃𝑖, 𝑗 , 𝑃𝑖,𝑖𝑛𝑠𝑡
𝑗 の 𝑗 列目を用いて， 𝑗 手順目と関係のあていないため，材料のアノテーションは行っていなる材料ベクトル，動画ベクトルを得る．

い．以後の実験結果は全て検証セットで評価されたものである．

𝑗𝒁 ℎ,𝑔𝑗𝒁 ℎ,𝑣==比較モデル．本研究と比較するモデルとして，同𝑖𝑛𝑔𝑟
𝑖𝑛𝑔𝑟
𝑖𝑛𝑔𝑟
[𝑃1, 𝑗 𝒛 𝑉ℎ,𝑔,1 , 𝑃2, 𝑗 𝒛 𝑉ℎ,𝑔,2 , . . . , 𝑃 𝑀 , 𝑗 𝒛𝑉ℎ,𝑔,𝑀 ] (3)𝑖𝑛𝑠𝑡 𝑉 ,1
𝑖𝑛𝑠𝑡 𝑉 ,2
𝑖𝑛𝑠𝑡 𝑉 , 𝑁[𝑃1,𝑗 𝒛 ℎ,𝑣 , 𝑃2, 𝑗 𝒛 ℎ,𝑣 , . . . , 𝑃 𝑁 , 𝑗 𝒛 ℎ,𝑣 ] (4)じく Transformer ベースで動画列から文章を生成するモデルである Transformer-XL [11]，MART [12] を

ここで，[·] はベクトルの結合を表す．こうして用意した．元々のモデルは材料を入力としていない得られるベクトルの各ヘッドのベクトルを結合し，ため，提案手法との公平な比較のために，提案手法

𝑗𝑗 番目の動画ベクトル 𝒛 𝑣 を結合することによって，と同様に材料リストをエンコードした後，入力の動手順書を生成するのに必要な 𝑗 番目の手順ベクトル画ベクトルと結合してモデルを学習させた．また，

𝑗𝒛 𝑠 を計算する．

3.3

手順書の生成最後に，得られた手順ベクトルから対応する手順文を生成し，それらを結合することで手順書を得

提案手法の中でどの要素が効果があったのかを調べるために，提案手法から要素を除いたモデルも学習して比較した．

4.2

定量的評価

る．手順書を 𝒀 = ( 𝒚 1 , 𝒚 2 , . . . , 𝒚 𝑁 ) とし，各 𝒚 𝑗 は手順文の自動評価尺度である BLEU，METEOR，CIDEr-文を表すとする．この時，損失関数 𝐿 は全ての動画D を用いて生成した手順書を評価した．表 2 に評列と手順書のペアからなるデータセット 𝐷 に対し価した結果を示す．全ての評価尺度において，既入力の材料, 動画列

手順構造の予測結果

材料リスト
手順1 手順2 手順3 手順4 手順5 手順6

1.

1. dough
2. sauce
3. mozzerella cheese
4. salt
5. pepper
6. bazil2.

手順1 手順2 手順3 手順4 手順5 手順6

3.
手順1

手順2

4.

5.

手順3

6.

手順4

手順5

生成した手順書

図3

提案手法 (両方)

正解の手順書1.

roll the doughplace the dough down
and roll out

2.

spread the butter
on the doughspread the sauce onto
the dough3.

add tomato sauce
on top of the pizza

place the mozzerellacheese onto the pizza.

4.

add some sauce
on top of the pizza

sprinkle salt and pepper
onto the pizza

5.

place the lettuce
and cheese on top

place basal onto
the pizza

6.

bake the pizzain the ovencook the pizzain the oven

可視化した手順構造
手順1

手順2

手順3

手順4

手順5

手順6

手順書の生成結果．手順構造の予測結果はヘッドの平均値で計算されたものである．また，可視化した手順構造は隣接行列の各行で最大の値をサンプリングすることで得られたものである．

表 2 文の自動評価尺度による評価．最も性能が高いもの
は太字に，次に性能が高いものには下線を引いている．
材料
Transformer-XL

BLEU1

BLEU4

METEOR

CIDEr-D

31.3

5.8

13.1

20.8

れる (手順 2，手順 3)．手順構造の予測結果を可視化すると，手順-手順の依存関係はある程度正しく捉えられているが，材料-手順については正しく予

36.9

7.0

14.8

31.7

測できなかった．その結果，異なる手順で異なる材

Tansformer-XL + 材料

✓34.1

6.6

14.9

28.4

MART + 材料

✓37.9

8.8

15.9

36.9

料を使用して手順書を生成していると考えられる．

39.0

7.215.4

31.1

このことから，手順構造を正しく計算しつつ，手順✓

40.4

8.9

16.6

42.4

書の生成に効果的に反映させるようにモデルを改善

38.9

7.7

15.5

33.1

40.2

8.3

16.3

44.3

MART

提案手法 (動画のみ)
提案手法 (材料-手順のみ)
提案手法 (手順-手順のみ)
提案手法 (両方)✓することを検討している．

おわりに存モデルと比較して提案手法が最も高い性能を示5した．中でも，材料-手順のみが BLEU1，BLEU4，METEOR において最も高い性能を示しており，材

本研究では，作業映像から手順書を生成する課題に取り組んだ．正しく手順書を生成するためには，料-手順の隣接行列を計算することが有効であるこ

材料と動作の依存関係をモデルが理解する必要があとが分かる．一方，手順-手順のみのモデルは，動画る．本研究では，こうした材料と動作の依存関係をのみのモデルに比べ性能は向上している．しかし，木構造として明示的に表現しつつ，文生成モデルに全てを組み込んだ両方のモデルでは CIDEr-D を除い組み込むことで正しく手順書を生成する手法を提案て材料-手順のみのモデルより悪化する結果となっした．実験では，文の自動評価尺度による評価と定ており，材料-手順と手順-手順の依存関係を同時に性的評価を行い，既存の文生成手法と比較して正し考慮する方法については未だ検討が必要である．

く手順書を生成できていることを確認した．

4.3

定性的評価

今後は検証セットに手順構造のアノテーションを行い，人のアノテーションとモデルの予測結果がど

図 3 に提案手法が生成した手順書，正解の手順の程度一致するのか調査する．また，手順書の一貫書，及び手順構造の予測結果を示す．提案手法はあ性をより詳しく評価するために，人手評価および別る程度正しく生成できた手順もある一方で (手順 1，の評価尺度を検討する．

手順 6)，誤った材料や動作の記述があるものも見ら参考文献[1]Shinsuke Mori, Hirokuni Maeta, Yoko Yamakata, and Tetsuro Sasada. Flow graph corpus from recipe texts. In LREC,2014.
[2]Taichi Nishimura, Atsushi Hashimoto, Yoshitaka Ushiku,
Hirotaka Kameko, Yoko Yamakata, and Shinsuke Mori.
Structure-aware procedural text generation from an imagesequence. IEEE Access, 2020.
[3]Chloé Kiddon, Ganesa Thandavam Ponnuraj, Luke Zettlemoyer, and Yejin Choi. Mise en place: Unsupervised interpretation of instructional recipes. In EMNLP, 2015.
[4]Amaia Salvador, Michal Drozdzal, Xavier Giro i Nieto, andAdriana Romero. Inverse cooking: Recipe generation fromfood images. In CVPR, 2019.
[5]Khyathi Chandu, Eric Nyberg, and Alan W Black. Storyboarding of recipes: Grounded contextual generation. InACL, 2019.
[6]Taichi Nishimura, Atsushi Hashimoto, and Shinsuke Mori.
Procedural text generation from a photo sequence. In INLG,2019.
[7]Botian Shi, Lei Ji, Yaobo Liang, Nan Duan, Peng Chen,Zhendong Niu, and Ming Zhou. Dense procedure captioningin narrated instructional videos. In ACL, 2019.
[8]Pan Liang-Ming, Chen Jingjing, Wu Jianlong, Liu Shaoteng,
Ngo Chong-Wah, Kan Min-Yen, Jiang Yugang, and ChuaTat-Seng. Multi-modal cooking workﬂow construction forfood recipes. In ACMMM, 2020.
[9]Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Łukasz Kaiser, and Illia
Polosukhin. Attention is all you need. In NeurIPS, 2017.
[10]Luowei Zhou, Chenliang Xu, and Jason J. Corso. Towards automatic learning of procedures from web instructional videos.
In AAAI, 2018.
[11]Zihang Dai, Zhilin Yang, Yiming Yang, Jaime Carbonell,
Quoc Le, and Ruslan Salakhutdinov. Transformer-xl: Attentive language models beyond a ﬁxed-length context. In ACL,
2019.
[12]Jie Lei, Liwei Wang, Yelong Shen, Dong Yu, Tamara Berg,and Mohit Bansal. Mart: Memory-augmented recurrent
transformer for coherent video paragraph captioning. In ACL,
2020.