Fast R-CNNは、物体検出と位置特定のための機械学習モデルであり、2015年4月に元のR-CNNの改良版として導入された。これは、領域ベースの畳み込みニューラルネットワーク(R-CNN)ファミリーに属し、バウンディングボックスとカテゴリラベルを生成することで画像内の物体を識別することを目的としている。Fast R-CNNは、基礎となるニューラルネットワークを、数千の候補領域それぞれに対して個別に実行するのではなく、画像全体に対して一度だけ実行することで、前身の主要な非効率性に対処し、精度を維持しながらトレーニングと推論を高速化している。
このモデルは、Ross Girshickによって開発され、R-CNNでの初期の研究に基づいている。これは、選択的検索アルゴリズムを使用して関心領域(ROI)を提案し、その後、畳み込みネットワークによって処理される。専用のROIPoolingモジュールは、各ROIに対して固定サイズの特徴マップを抽出し、その後、分類され、バウンディングボックス回帰のために調整される。この設計は、各ROIに対して独立して特徴を計算したR-CNNと比較して、計算の冗長性を大幅に削減する。
アーキテクチャ
Fast R-CNNのアーキテクチャは、入力画像を一度処理して特徴マップを生成する畳み込みバックボーン(例:VGG16)で構成される。選択的検索は、画像から最大2000の領域提案を生成する。各提案は特徴マップ内の領域にマッピングされ、ROIPoolingはその領域を固定グリッド(例:7x7)に分割し、最大プーリングを適用して固定サイズの出力を生成する。これらのプールされた特徴は、ソフトマックスクラス確率とバウンディングボックスオフセットを出力する全結合層に供給される。ネットワーク全体は、分類と回帰を組み合わせたマルチタスク損失を使用してエンドツーエンドでトレーニングされる。
各コンポーネントに個別のトレーニング段階を必要とした元のR-CNNとは異なり、Fast R-CNNはすべての層を共同で最適化し、トレーニングパイプラインを簡素化する。ROIPoolingの使用により、バックプロパゲーション中に勾配が領域提案を通じて流れることが可能になり、効率的な学習が可能になる。
R-CNNからの改善点
Fast R-CNNの主な改善点は、計算効率である。R-CNNは、2000のROIそれぞれをCNNを通じて独立に処理し、大量の冗長な計算を引き起こした。Fast R-CNNは、すべてのROI間で畳み込み計算を共有し、トレーニング時間を数日から数時間に短縮し、推論を200倍以上高速化する。さらに、Fast R-CNNは、分類とバウンディングボックス回帰を同時に最適化するマルチタスク損失を使用し、R-CNNの個別のトレーニング段階と比較して位置特定精度を向上させる。
もう一つの注目すべき変更は、R-CNNで使用されたサポートベクターマシン(SVM)の代わりにソフトマックス分類器を使用することであり、モデルを簡素化し、性能を向上させる。ROIPooling層はまた、元のR-CNNではその分離されたトレーニング手順のために不可能だったエンドツーエンドのトレーニングを可能にする。
影響と遺産
Fast R-CNNは、物体検出における重要なマイルストーンであり、その後のモデルに影響を与えた。2015年6月には、選択的検索をニューラルネットワークに統合された領域提案ネットワークに置き換えたFaster R-CNNが続き、速度と精度をさらに向上させた。その後の拡張には、インスタンスセグメンテーションのためのMask R-CNN(2017年3月)、増加するIoUしきい値での位置特定改善のためのCascade R-CNN(2017年12月)、3Dメッシュ生成のためのMesh R-CNN(2019年6月)が含まれる。R-CNNファミリーは、ドローンカメラからの物体追跡、テキスト位置特定、Google Lensの強化などのタスクに適用されてきた。
Fast R-CNNのアーキテクチャ、特にROIPoolingは、その後の多くの検出フレームワークに影響を与えた。共有計算とエンドツーエンドのトレーニングというその原則は、深層学習アプリケーションで使用されるものを含む現代の物体検出器において標準となっている。
トレーニングと性能
Fast R-CNNは、PASCAL VOCやCOCOなどのデータセットで、学習率スケジュールを使用した確率的勾配降下法を用いてトレーニングされる。通常、事前トレーニングされたバックボーン(例:VGG16)をターゲットデータセットに微調整して使用する。このモデルは、ベンチマークデータセットで高い平均平均精度(mAP)を達成し、R-CNNと比較して大幅な高速化を実現する。例えば、PASCAL VOC 2012では、Fast R-CNNは66%のmAPを達成し、推論時にはR-CNNよりも約25倍高速である。
トレーニングプロセスには、バッチごとに少数の画像からROIをサンプリングし、正例と負例のバランスを取ることが含まれる。マルチタスク損失は分類と回帰の重みを調整し、ハイパーパラメータは最適な性能のために調整される。Fast R-CNNの効率性は、実世界のアプリケーションに実用的であることを可能にし、コンピュータビジョンの研究と産業での広範な採用に貢献した。