コース進捗 コース目次 34レッスン中 34件を公開中
第0部―まず地図を広げる
第1部―簡単な目的で、なぜ動画が分かるのか
第2部―一本の動画を一台のエンコーダーへ
第3部―実験を読めてこそ、論文を読んだと言える
第4部―公式リポジトリから自分の実験へ
第5部―表現を世界モデル構想へ戻す
付録―必要なときに開く技術リュック
凍らせてから測る
- 先に分ける人物や元動画をまたがせない
- 目を凍らせるエンコーダーは更新しない
- 小さく読むプローブだけを学習
- 偽物も試す漏洩と近道を探す
- 条件を残す平均・ばらつき・失敗例
隣のページを答えにしない
一本の長い動画を二秒ずつ切り、窓を無作為に訓練用と試験用へ配ると、高得点が出やすくなります。試験片が訓練片の一秒後なら、背景、人物、透かし、撮影癖がほぼ同じだからです。モデルが動作を読んだのか、隣のページを覚えただけなのか分かりません。
そこで、切る順序を逆にします。先に元動画、人物、場所、撮影日などの独立したまとまりで訓練・検証・試験へ分け、その後に各群から短い窓を切ります。
問いごとに物差しを替える
前処理、モデル版、フレーム率を固定し、エンコーダーの全パラメータで requires_grad=False を確認します。その上で、知りたいことに合う読み出し器を選びます。
線形プローブ。 [CLS] の [B,1024] 埋め込みに線形層だけを学習します。もっとも弱い読み出しなので、「情報が素直に並んでいるか」を見やすい方法です。不均衡データなら正解率だけでなく、バランス正解率やマクロF1も示します。
**注意機構付きプローブ。**論文のプローブは、学習可能な問いベクトルで全3,137トークンを交差注意により読みます。得た値を問いへ残差加算し、二層 MLP、GELU、LayerNorm、線形分類器へ通します。線形プローブより表現力が高いので、両者の数値を同じ物差しとして混ぜません。
検索。 [CLS] を L2 正規化して余弦類似度で並べ、Recall@1/5 や mAP を測ります。同じ元動画から来た近接窓を検索候補に残すと、内容ではなく重複を当てる試験になります。
密な課題。 [CLS] を外し、残る特徴を [B,16,14,14,1024] に戻します。軽い分割頭、追跡頭、問いとパッチの類似度を試せます。ただし [CLS] は動画全体を読める一方、各時刻のパッチは未来を読めません。オンライン状態を測るときは該当時刻のパッチを使います。
@torch.inference_mode()
def extract_features(model, raw_bcthw):
mean = raw_bcthw.new_tensor([.485, .456, .406])[None, :, None, None, None]
std = raw_bcthw.new_tensor([.229, .224, .225])[None, :, None, None, None]
out = model(pixel_values=(raw_bcthw - mean) / std)
summary = torch.nn.functional.normalize(out.pooler_output, dim=-1)
patches = out.last_hidden_state[:, 1:].reshape(-1, 16, 14, 14, 1024)
return summary.cpu(), patches.cpu()
ここでは入力がすでに [0,1]、224×224だと仮定しています。標準化量やクラス重みは訓練群だけから計算し、ハイパーパラメータは訓練・検証群で決めます。試験群を見るのは最後の一度だけです。少なくとも三つの乱数種で、平均、標準偏差、クラス別標本数、混同行列を残します。試験群が小さければブートストラップ信頼区間も添えます。
ごまかし発見用の四試験
- **ラベルをシャッフルする。**それでも偶然水準を大きく上回るなら、分割や保存済み特徴に漏洩があります。
- **一枚を16回繰り返す。**動画結果がほぼ変わらなければ、外観だけで解けているかもしれません。
- **同じ16枚を逆順・無作為順にする。**画像集合は同じままなので、時間順序への感度を切り分けられます。
- **単純な基準と比べる。**無作為初期化の同型モデル、色ヒストグラム、単純な運動量などを下回るなら、どれほど複雑なプローブを使っても結論は弱いままです。
論文の69.5と55.0は、著者が特定の注意機構付き凍結プローブで報告した値です。自分のデータ、分割、読み出し器が違えば、新しい実験です。「再現した」や「上回った」とは書かず、条件ごとの結果として扱います。
参照した仕様
採点表に残す三行
- 元動画や人物を先に分け、その後で短い窓を作ると、近接した重複の漏洩を防げます。
- 線形プローブ、注意機構付きプローブ、検索、密な特徴の評価は、それぞれ異なる問いに答えます。
[CLS]は全区間の要約です。各時刻の因果的な状態を見るならパッチ特徴を使います。
試験監督の三問
- 同じ長編の隣り合う二秒を、訓練と試験へ無作為に分けてはいけないのはなぜですか。
- ラベルを乱しても高得点なら、まず何を疑いますか。
[B,3137,1024]から時空間の小片へ戻す形は何ですか。
採点する
- 背景、人物、動きがほぼ重なり、モデルが同じ内容を覚えて答えられるからです。
- データ分割、特徴のキャッシュ、評価手順の漏洩です。
[CLS]を除き、[B,16,14,14,1024]へ並べ直します。