JA EN
体系VLM・マルチモーダル
·★ 会員·論文·10分で読めます

動画理解を1から — フレームの束から時間の理解へ

動画は「画像がたくさん」ではない。何枚をどう選ぶか(サンプリング)、フレーム同士をどう混ぜるか(時間注意)、長い動画をどう縮めるか(圧縮)の3つの問いに分けて、前提知識ゼロから式・動く図・コードで解説する。

対象textタスクvision

Is Space-Time Attention All You Need for Video Understanding? (TimeSformer)


動画は「画像がたくさん」ではない

画像を読めるモデルがあるのだから、動画は1秒ずつ切って何枚も入れればいい — 最初は誰でもそう考えます。実際にやると2つの壁にぶつかります。

1つ目はの壁です。30fpsの動画は1分で1800枚。1枚を画像Transformerに通すと数百個のトークンになりますから、1分ぶんをそのまま渡すだけで数十万トークンに膨れます。文脈長がどれだけ伸びても、この掛け算には追いつきません。

2つ目は、こちらが本質的なのですが、順序の壁です。「コップを置く」と「コップを取る」は、フレームをバラして袋に入れてしまえば中身が同じで、違うのは並び順だけ。フレームを平均して1本のベクトルにする方式では、この2つを原理的に区別できません。動画を理解するとは、写っている物を当てることではなく、物がどう変わったかを読むことです。

だから動画理解は、次の3つの問いに分解できます。この記事はこの順に進みます。

  1. サンプリング: 何枚のフレームを、どこから取るか
  2. 時間注意: 取ったフレーム同士を、どう混ぜるか
  3. 圧縮: 長い動画を、どこまで縮められるか

画像1枚をどうトークンに変えるかは論文解説: ViT、そのトークンを言語モデルにどう繋ぐかはVLMの成立と現在で扱っています。ここではその先、時間軸が加わってから始まる話に絞ります。

比喩: 2時間の映画を電話で伝える

友人に2時間の映画のあらすじを電話で説明する場面を思い浮かべてください。全カットを読み上げる時間はないので、あなたは自然に3つの判断をしています。どの場面を選ぶか(均等に10分おきか、話が動いた瞬間だけか)、順番をどう伝えるか(バラバラの順で話せば意味が通じない)、長い場面をどう縮めるか(30分の会議シーンを一言にまとめる)。サンプリング・時間注意・圧縮は、この3つの判断に機械で名前を付けたものにすぎません。

サンプリング: 何枚を、どこから取るか

いちばん素朴で、いまでも最もよく使われるのが均一サンプリングです。動画全体を等間隔にN分割し、1枚ずつ取ります。

ti=iTN,i=0,1,,N1t_i = \left\lfloor \frac{i \cdot T}{N} \right\rfloor, \qquad i = 0, 1, \dots, N-1
(1)

TT は動画の総フレーム数、NN は取り出したい枚数、tit_iii 番目に取り出すフレームの位置、\lfloor \cdot \rfloor は小数の切り捨てです。要するに「動画の長さがどうであれ、必ずN枚に均等割りする」と言っているだけの式です。

利点は、入力の大きさが動画の長さによらず一定になること。GPUメモリの見積もりが立ち、バッチにまとめられます。欠点は、長い動画ほど間隔が粗くなること。2分の動画からN=8枚なら間隔は15秒で、1秒しかない出来事はほぼ確実に取りこぼします。

対する固定fpsサンプリングは「毎秒1枚」のように間隔のほうを固定します。見落としは減りますが、枚数が長さに比例します。10分で600枚、予算が先に破綻します。

学習時にはもう一工夫あります。動画をN区間に割り、各区間の中からランダムに1枚引く方式です。同じ動画でもエポックごとに違うフレームが出るので、データ拡張として効きます。推論時は区間の中央に固定するのが定番です。

もう一系統がキーフレーム抽出で、隣り合うフレームの類似度を見て変化の小さいところを捨てます。監視映像では効きますが、「3分間なにも起きなかった」ことが答えである質問には答えられなくなる。捨てたのは冗長性ではなく時間の長さの情報だった、ということが起きます。

時間注意: フレームをどう混ぜるか

選んだN枚をどう1つの理解にまとめるか。歴史的に3世代あります。

は特徴の次元数です。つまりT=32枚・N=196パッチなら系列長は6272、注意の表は約3900万マスで、フレーム数を倍にすると4倍に膨らみます。

この先にあるもの

§

ここから先は会員限定です

解説記事371本・教科書26章・学生モード48単元・論文精読6本が、月額¥490ですべて読み放題になります。新しい解説は毎日3本ずつ増えます。いつでも解約でき、解約後も期間の終わりまで読めます。

会員の方はログインすると続きが表示されます

参考文献

  1. Is Space-Time Attention All You Need for Video Understanding? (TimeSformer). arXiv:2102.05095論文ページ·PDF
  2. ViViT: A Video Vision Transformer. arXiv:2103.15691論文ページ·PDF
  3. Flamingo: a Visual Language Model for Few-Shot Learning. arXiv:2204.14198論文ページ·PDF

本記事は上記論文の本文にもとづいて執筆しています。数値・主張は原典を優先してください。

コメント

コメントにはログインが必要です