数学がわからない

日々の勉強をアウトプットする。

論文を読む「Online Model Distillation for Efficient Video Inference」⑦

背景

「蒸留(Distillation)」に関して、論文"Ravi Teja Mullapudi, Online Model Distillation for Efficient Video Inference."を読む。

蒸留とは、「何でも理解できるが重いネットワークよりも、実運用を考慮して特定の対象に特化させることで軽いネットワークを作る手法」と理解。
しかし、問題は「特定の対象」を何にするか、が難しいことで、本論文は「特定の対象」あらかじめ準備して訓練するのではなく、「オンライン」で訓練する方法を提案している。

従来手法はモデル圧縮(model compression)であり、これを「オンライン」訓練にする。
しかし、「オンライン」訓練には原理的に問題があるという。ただ、その辺の詳細な話には踏み込まず、本題であるJust-In-Time Model Distillationを読み進める。

本論文の提案する手法は、ビデオの毎フレームを処理する学生モデル「JITNet」の作り方である。「JITNet」には、高解像度入力からの推論、高学習率更新での安定性が求められるが、エンコーダ・デコーダに類似した、内部に修正ResNetブロックを持つアーキテクチャで目的が達成できるとのこと。詳細に理解するには、参考文献へ進む必要があるかもしれない。

3. Just-In-Time Model Distillation-3

Google翻訳した上で、自分の理解しやすいように修正する。

表1に、NVIDIA V100 GPU上における720pビデオフレームでのJITNetとMRCNNの両方のパラメータ数、浮動小数点演算数、および処理時間を示す。(JITNetについては推論と訓練コストの両方を示す。)

MobileNet V2 [38, 46]に基づくモデルのようなコンパクトなセグメンテーションモデルは、高解像度でJITNetよりも3〜4倍遅く、また高速で安定したオンライン訓練用に設計されてもいない。

標準的なセマンティックセグメンテーションデータセット上のJITNet分散の分析は、効率のために設計された他のアーキテクチャと比較してそれを根拠とするために付録で提供されている。

表1:JITNetとMRCNNの両方のFLOPS(推論、トレーニング)、パラメータ数、および実行時間。 JITNetのパラメータは47倍少なく、MRCNN推論よりも91倍(推論)および40倍(トレーニング)少ないFLOPSしか必要としない。

学生モデルJITNetは教師モデルMRCNNの91倍速い、ということは、オンライン学習でMRCNNがあるフレームに対してJITNet用の教師データを作るとしたら、91フレームの遅れが生じるということ?

3.2. Online Training with Gradient Descent

オンライントレーニングには多くの課題がある:

ビデオストリームからのトレーニングサンプル(フレーム)が高く相関している、コンテンツの分布が継続的にシフトしている(過去は未来を代表していない)そして、教師予測は「ground truth」のためのプロキシとして用いられ、トレーニング時に一時的な不安定性やエラーを示す。

JITNetのパラメータを更新する方法は、これらの課題を考慮する必要がある。

オンライントレーニングの多くの課題

学生モデルを訓練する教師モデルの推論にかかる時間が大きすぎるようだが、これがオンライントレーニングの課題の3つ目に相当するということでいいのだろうか?

まとめ

学生モデルのアーキテクチャの説明、学生モデルをオンライントレーニングするための課題まで読んだ。
本当に理解が正しいか自信がない。