You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Text Sequence Encoders(Fig 3 左)
x1,...,xnをz1,...,znにエンコードする.トークンレベル埋め込み,ポジションエンコーディング、レイヤー正規化から成る.
またstackedなTransformer encoder blocksも試しており,自己アテンションのフィードフォワードレイヤーと我々のアプローチと比較している(Table 4, Row A and B-1).またソースシーケンスの埋め込みの重さは,query, video caption, 対話履歴で共有で利用.
Video Encoders(Fig 3 右)
n枚のビデオフレームを利用するスライディングウインドウで抽出し,n枚のフレーム毎に特徴量を得る.ビデオには映像と音声が含まれる(M=(v,a))ため,それぞれでエンコードする.我々は事前学習ずみの特徴量抽出器を利用し,学習中は抽出器のパラメタは固定.その後にReLUを通し,Text encodersと同様のポジションエンコーディングを行う.最後に正規化レイヤーを通した.
jojonki
changed the title
🚧 2019: Multimodal Transformer Networks for End-to-End Video-Grounded Dialogue Systems
2019: Multimodal Transformer Networks for End-to-End Video-Grounded Dialogue Systems
Jul 15, 2019
Multimodal Transformer Networks for End-to-End Video-Grounded Dialogue Systems
Hung Le, Doyen Sahoo, Nancy F. Chen, Steven C.H. Hoi
Accepted at ACL 2019 (Long Paper)
https://arxiv.org/abs/1907.01166
pytorch's code: https://github.com/henryhungle/MTN
概要
Video-Grounded Dialogue Systems (VGDS)の研究.音声付き動画とそのキャプションが与えられ,それに関する質問に答える能力を評価する.この問題に対して,我々はMultimodal Transformer Networks (MTN)を提案.ビデオをエンコードし,複数のモダリティの情報を取り込むことができる.また非テキストから得られるquery-awareな特徴量を抽出するため,auto-encoderを通してquery-awareアテンションを提案.推論時は生成応答の品質を改善するために,トークンレベルのデコーディングをシミュレートする.提案モデルはDSTC7でSOTA.さらに他のvisual-grounded dialog taskでも汎化できることを確認した.
イントロ
今回扱うような事例はFig 1.// スクショになっているが,動画である
VQAなどと比べても,静止画でないのでかなりチャレンジングなタスクになっている.
マルチモーダルの多くの研究はRNNをベースにモデルを構築するものになっている.また中にはモデルに特定の特徴量にアテンションするようなことを可能にしたモデルもある.ただしこれらの研究でも,ビデオフレームのような複雑で長いシーケンシャルのデータに対してはうまく適用できていない.
関連研究
スキップ.VisionとNLPに関する研究などが記載されている.2章参照.
Multimodal Transofrmer Networks (MTN)
ビデオV,キャプションC,t-1ターンまでの対話コンテキスト((Q1, A1), ..., (Qt-1, At-1)),が与えられ,Qtが与えられ,Atを生成する問題.我々はTransformerを使い,異なるモダリティを表現し,queryに関連する特徴量を異なるモダリティの中からアテンションし利用して推論するモデルを提案.
MTNは3つのコンポーネントから成る.
Encoder layers
テキストシーケンスとビデオをエンコードし,系列表現を得る.位置エンコーディングでは,トークンにおける入力テキストの系列特徴量,ビデオフレームにおけるビデオ特徴量を抽出するために利用される
Decoder layers
ターゲットシーケンスを出力し,マルチヘッドアテンションを利用して複数特徴量にアテンションし推論を行う.アテンションレイヤーは、feed-forwardとresidual接続を組み合わせ,応答生成モジュールに渡す前にN回のアテンションステップを通してターゲットシーケンスを処理する.
Auto-encoder layers
入力ビデオの映像と音声におけるquery-awareなアテンションを張り,ビデオ特徴量を強化する.マルチヘッドアテンションのネットワークは,クエリのauto-encoderとして利用され,教師なしのマナーでアテンションを学習する.
上記3つを組み合わせたものをMultimodal Transoformer Networksモデルを呼び,E2Eで学習.アーキテクチャはFig 2で詳しくは次の章で.
3.1 Encoder Layers
Text Sequence Encoders(Fig 3 左)
x1,...,xnをz1,...,znにエンコードする.トークンレベル埋め込み,ポジションエンコーディング、レイヤー正規化から成る.
またstackedなTransformer encoder blocksも試しており,自己アテンションのフィードフォワードレイヤーと我々のアプローチと比較している(Table 4, Row A and B-1).またソースシーケンスの埋め込みの重さは,query, video caption, 対話履歴で共有で利用.
Video Encoders(Fig 3 右)
n枚のビデオフレームを利用するスライディングウインドウで抽出し,n枚のフレーム毎に特徴量を得る.ビデオには映像と音声が含まれる(M=(v,a))ため,それぞれでエンコードする.我々は事前学習ずみの特徴量抽出器を利用し,学習中は抽出器のパラメタは固定.その後にReLUを通し,Text encodersと同様のポジションエンコーディングを行う.最後に正規化レイヤーを通した.
Decoder Layers
各ソースシーケンスxsの連続表現zsを受けて,ztがターゲットシーケンスとして出てくる.ここのdecoderでは,出力シーケンス(, y2, ..., ym)を出力する.decoderはN個のスタックレイヤーとなっており,さらに各レイヤーは,ターゲットシーケンスzt, 対話履歴zhis, ビデオキャプションzcap,ユーザークエリzque, そしてビデオから動画と音声のfa, fvのサブレイヤーから成る.
各サブレイヤーはマルチヘッドアテンション機構であり、position-wiseなフィードフォワードレイヤーになっている.各フィードフォワードは2つの線形変換+ReLUから成る.さらにresidual接続と正規化レイヤーを各アテンションブロックに採用.zsにおけるマルチヘッドアテンションは下記のように定義できる.
ユーザークエリ(テキスト)でアテンションしているため,テキストシーケンスの特徴量から,映像と音声の特徴量にアテンションすることで,ビデオの異なるポジションにおけるアテンションが可能になり情報を抽出できる.
Auto-Encoder Layers
マルチヘッドアテンションは,異なる入力コンポーネントに動的にアテンションするため,入力クエリと入力ビデオの非テキストの基本的なインタラクションは完全に実装されていない.またresidual接続が採用され,デコーダーレイヤーの最後にビデオアテンションブロックが入ったが,ビデオ特徴量のアテンションは最適ではないかもしれない.そこで別コンポーネントとしてビデオ特徴量におけるquery-awareなアテンションを考える.それをビデオ特徴量のquery-related特徴量に注目できるようにquery auto-encoderを作る.このauto-encoderはN個のスタックレイヤーであり,各レイヤーはqueryの自己アテンション,ビデオ特徴量(映像と音声)のquery-awareアテンションをもつ.
Generative Network
線形変換レイヤー+softmaxでトークンレベルで単語を予測.AEも同様.
Simulated Token-level Decoding
学習時と異なり,推論時はデコーディングは,トークン単位で文を生成する自己回帰プロセス.学習時にこのプロセスを再現するために下記を行った.これにより学習と推論でのデコーダーへの入力ミスマッチを減らすことができる.またターゲットシーケンスのみにこのプロセスは適用し,query AEには利用しない
- 以前述べたようにターゲットシーケンスはデコーダーへの入力として1つ位置文オフセットされる
実験
DSTC7
DSTC7を利用.統計情報はTable 1.音声と映像特徴量の抽出器にはYouTubeとKineticsデータセットにおける事前学習ずみの抽出器を利用.// see Kay 2017, Hori, 2018
また他具体的な処理はA.1
Training
生成するターゲットシーケンスと入力クエリ(AEの出力)に対する一般的な最尤推定を目的関数に採用.またレイヤーのスタック数や隠れ層のサイズを変えて,BASEとLARGEを作った.
他ハイパパラメタは4.2参照.PyTorchのgithubコードもある
Video-Grounded Dialogues
提案するMTNモデルとベースライン(Hori 2018),他のDSTC7 Track 3に提出されたモデルを比較.評価メトリクスは,BLEU, CIDEr, ROUGE-L, METEOR.テストデータのリファレンスと比較する形で評価. // see 参考リンク
結果はTable 3.
トークンレベルデコーディングシミュレーションのインパクト
トークンレベルデコーディングシミュレーションの分析をするためにテキスト飲みの対話を検討(映像と音声なし).またqueryのAEも取り除いた.クロップする確率を0, 0.1,...,1.0と変えていってパフォーマンスの違いをみた.Fig 4にあるように,p=0.5周辺で性能向上が見られル.p=1では必ずクロップされたものが渡されるのでパフォーマンスが低くなっているようだ.
Ablation Study
Visual Dialogues
他のビジョン対話であるVisDial (画像を与えてそれについての対話,Das 2017a)を使ってMTNの汎化性能を確かめる.DSTC7よりはるかに学習データが多く,COCOデータセットからの120万以上の対話データがある.このタスクでは応答は生成でなく,100個の応答候補から選ぶ問題.ただMTNの応答生成モデルはそのままで学習時は同様に最尤推定し,推論時は応答をランクづけする形.またposition encodingも動画でなく静止画なので使っていない.他のコンポーネントおよびパラメタは変更なし.
Normalized Discouted Cumulative Gain (NDCG)スコアtいうものを評価サーバーに送る形で評価.
Table 2にその結果.興味深いことにMTNが既存のretrievalスタイルのアプローチよりもよかった.NDCGスコアが他にもよかったモデルがリーダーボードに提出されていたが,それらのアプローチが比較するにはクリアでなかったため記載していない.// 手法に関してペーパーが出ていない手法なのか?
定性分析
Fig 6にbaseline(Hori, 2018)と比較した対話応答がある.
Fig 5にbaselineと比べてCIDErスコアを掲載.1~10ターンにおいていずれも優れている.さらに短い対話でもうまくいっているし,長い対話でもうまくいっている
結論
マルチモーダルの設定でマルチヘッドアテンションを採用したMTNを紹介.DSTC7でSOTA.静止画対話においても良い結果になった.BERTやimageでグラウンドした事前学習型単語埋め込みでモデルが改善するかも見てみたい
参考
The text was updated successfully, but these errors were encountered: