はじめに
実際に読んでみて自分が理解した内容に関して、もしくはわからなかった内容について記載します。
間違っている内容もあるかも...
とりあえず何が言いたいのかだけさらっと
内容紹介
論文のリンク先はこちら → https://arxiv.org/abs/2202.12509
Overview
- object detectionやclassificationのタスクにおいてCNNがよく用いられるが、回転不変性(rotation invariance)に限界がある。
- そこで、RRLというmoduleを作成し、現行のCNNを用いたarchitectureに追加して回転したデータに対する検出結果を確認する。
- LeNet-5、ResNet-44、MobileNet-tiny-yolov3においてaccuracyやmAPの向上が見られた。
Contents
Introduction
主張:CNNには大きな回転を処理する能力がない!RRLというものを作ってCNNに埋め込んだらいい感じの結果になった!
CNNが持つ回転不変性の限界って一般的な知識?何が原因か知らないので要調査
Related Work
主張:回転に対抗するための従来手法はいくつか存在している!ただし、回転等価を実現するために新たなパラメータを設定する必要がある!
- Data Augmentation
- TI-Pooling
- Polar Transformer Network(PTN)
- Polar Coordinate Convolutional Neural Network (PCCNN)
- Group Equivariant Convolutional Networks (GCNN)
- steerable CNNs
- Spherical CNNs
- Rotation Equivariant Vector Field Networks (RotEqNet)
- Deep Rotaion Equivariant Network
Rotation invarinace based on LBP operator
Local Binary Pattern
主張:LBPという演算子を用いて、回転不変性を達成するためにLBP最小となる状態まで回転することにした!
回転不変性達成とLBP最小のつながりが見えない。元論文で主張があるのだろうか?
「LBP最小」という制約をつけることで、同じ範囲を精査している場合同じ値になるからってこと?
Regional Rotation Layer
主張:特徴マップ上にsliding windowを用意、各windowごとにLBPを算出することで回転していても同じLBPの情報を得ることができる!
Rotation Equivarianca and Invariance derivation
主張:式変形の結果から全結合層の前で特徴マップを逆回転させればCNN全体が回転不変になる!
式変形はおいおい追っていく。
Integrate RRL with CNN
主張:適切な位置にRRLを追加するとモデルの回転不変性を実現することができる!
Experiments
Image classification based on LeNet-5
元データセット:CIFAR-10
回転を加えたデータセットを作成
本文より引用
- CNNの構造を保ったままRLLをいくつか挿入するだけで回転画像の認識精度を大きく向上させることができる
- Data AugmentationをしてしまうとLeNet-5の特性上、汎化が低下してしまう
- RLLがない場合、Data Augmentationで認識精度はいくらか向上するが、学習コストが上がるため根本的な問題解決にならない
Image classification based on ResNet-18
ResNet-18の場合、RRLを追加しても先の結果より差が小さい
主張:RRLは小、中規模のNNや学習サンプルや計算資源が限られている場合に適している。ただし、回転したデータに対し汎化性の向上が見られた。
Plankton Recognition based on ResNet-44
元データセット:Plankton dataset by cowen et al. 2015
主張:モデルパラメータの増加なしに性能の向上と汎化性能の向上を確認できた。
Object detection based on MobileNet-tiny-yolov3
元データセット:Pascal VOC dataset、2007, 2012
主張:位置誤差はあるものの、各オブジェクトを検出できているのでRRLを追加した改良モデルの方がいい!
Conclusion
主張:LBP演算子を用いて作成したRRLをCNNのネットワークに組み込むことで、回転に対してもパラメータ数を増やすことなく精度向上を図ることが可能になった。
さいごに
RRLを組み合わせることである程度精度向上を図れているが、それでも難しいところは多い。
bboxの形式だと特徴量の構成を変えないように回転させないとそもそも答えが異なってしまうため、正確に精度を測れないなどの問題も発生する。
とはいえ、ベースのCNNの議論で「なぜ回転の処理に弱いのか」という部分がイマイチ理解できていないので、そこから探ることにする。