R-CNN

領域ベースの畳み込みニューラルネットワーク (Region Based Convolutional Neural Networks, R-CNN)は、コンピュータビジョン、特に物体（オブジェクト）検出のための機械学習モデルの 1 つ。

歴史 
R-CNN の当初の目的は、入力画像を受け取り、出力としてバウンディングボックスの集合を生成することだった。各バウンディングボックスには、物体とそのカテゴリ（車や歩行者など）が含まれる。最近では、R-CNN は拡張され、他のコンピュータビジョンタスクを実行できるようになった。これまでに開発された R-CNN のバージョンをいくつか紹介する。

R-CNN（2013 年 11 月）
R-CNN は、入力画像が与えられると、選択的検索（selective search）と呼ばれる手法を適用して関心領域（regions of interest; ROI）を抽出する。一つ一つの ROI は画像内の物体の境界を表す長方形である。シナリオによっては、2,000 もの ROI が存在する。その後、各 ROI をニューラルネットワークに通し、特徴量を出力する。各 ROI が出力した特徴量に対して、一連のサポート ベクター マシン分類器を使用し、その ROI に含まれる物体のカテゴリを決定する。 

Fast R-CNN（2015 年 4 月）
オリジナルの R-CNN では、関心領域（ROI）のそれぞれについてニューラル ネットワークの特徴量を独立して計算したが、Fast R-CNN は、画像全体に対して 1 回だけニューラル ネットワークを実行する。ネットワークの最後には ROI プーリングと呼ばれる新しい手法があり、ネットワークの出力テンソルから各 ROI を切り出し、形状を変更して分類する。オリジナルの R-CNN 同様、選択的検索を使用して ROI を抽出する。

Faster R-CNN（2015 年 6 月）
R-CNN では選択的検索を用いて ROI を抽出したが、Faster R-CNN では、選択的検索ではなく、ROI 生成をニューラル ネットワーク自体に統合している。

Mask R-CNN（2017 年 3 月）
物体検出に加え、インスタンスのセグメンテーションも行う。ROI プーリングを ROI Align と呼ばれる新しい手法に置き換え、ピクセルの断片を表現できるようにした 。

Mesh R-CNN（2019 年 6 月）
2D 画像から 3D メッシュを生成する機能が追加されている。

応用 
R-CNN は、ドローンに搭載されたカメラからのオブジェクトの追跡、画像内のテキストの位置の特定、Google レンズでのオブジェクト検出などで使用されている。Mask R-CNN による物体検出は、ニューラルネットワークの学習速度を競う MLPerf トレーニングベンチマークにおける 7 つのタスクのうち 1 つに位置付けられている。

参考文献 

人工ニューラルネットワーク
機械学習
ディープラーニング