物体検出をsim2realとドメインランダマイゼーションで学習の効率化
初めまして、みずぺーといいます。
このnoteを機に初めて私を知った方のために、箇条書きで自己紹介を記述します。
年齢:28歳
出身:長崎
大学:中堅国立大学
専門:河川、河川計画、河道計画、河川環境
転職回数:1回(建設(2年9か月)→IT系年収100万up(現職3か月))
IT系の資格:R5.4基本情報技術者試験合格💮、R5.5G資格
本日は物体検知の中でも学習コストを下げる可能性のあるsim2realとドメインランダマイゼーションを開設しようと思います。
物体検知の障壁
物体検知の障壁を説明するために、そもそも物体検知が何なのかを説明しないといけません。
物体検知とは
入力:犬が映った画像
出力:犬+犬の存在領域を認識
それでは出力で以上の画像を認識させるためにはどうすればいいのか。
それは物体の画像をあらかじめ人間の手によってラベリング及び場所を覚えさせる必要があります。
そして物体検知ではここが一番作業コストがかかる部分となります。
学習にかかるコスト
学習モデルに十分な量の画像を認識させるために必要な枚数は数千枚と言われています。
今回はラベル付けを行うためにlabelimgというツールを用いて話を進めていきます。
毎回この画像を開いては緑の枠で囲む作業を人間が行っていると想像してください。
例えば上記の犬の画像を数千枚毎回をやろうと思うと、一日は余裕でかかりますよね。
それが100個の物体を読み込ませたい!となると100日分の作業がかかることになります。
さらにその過程では間違ってラベル付けを行う可能性も出てくるかもしれません。
そのため作業コストを下げることが問題となります。
そこで本記事では物体検出の精度を保ちつつ作業時間を減らす観点でアノテーションに変わる新たな手法(ドメインランダマイゼーション)を提案を行おうと思っております。
ドメインランダマイゼーション
ドメインランダマイゼーションが使用されるようになった背景
背景と問題は前項で述べたように、物体検知には学習コストがかかることでした。
解決策はsim2realでシミュレーション上でモデルを学習させることで、学習コストを減らす手法が考えられます。
その時に問題となるのはシミュレータと現実世界のギャップによってモデルの精度が下がる「リアリティギャップ」が生じることです。
そのための解決策としてドメインランダマイゼーションによって複数の条件を試しモデルの頑健性の向上が考えられます。
ドメインランダマイゼーション方法
以上の三つの工程を挟んでAIに学習を行わせることによって、多くのラベル付けされた物体を学習させることが可能となります。
ドメインランダマイゼーションを使用した物体検出の精度向上の例
以下ではドメインランダマイゼーションを用いた精度向上の例を紹介します。
Road Debris Detection by Augmentation of Synthetic Models
背景と問題点
この論文では、合成モデルを用いて未見の道路の異物を検出するアルゴリズムを提案。
道路の異物の早期検出は、自動運転やアシストドライブの安全性にとって重要だが堅牢な道路異物検出モデルの開発は広く議論されていない。
課題
道路異物検出器を構築する上での2つの主な課題があります。
データ収集の困難性(道路落下物は落ちてない)
道路対象物の種類の多さ
方法
課題を克服するために、ドメインランダマイゼーションを用いて実際の道路画像に合成モデルを拡張する道路異物のフューショット学習に対する新しいアプローチを提案します。
対象領域を道路上の一般的でない物体に制約し、深層ニューラルネットワークであるHazardNetに道路異物を学習させて未見の道路異物を検出することを可能にした。
結果
HazardNetが拡張画像内の合成物体のみで訓練された場合でも、実際の道路異物を正確に検出することができることを示しています。
学習データセットが三種類の少ない、普通、多いの三つで検証しております。
最後に
ドメインランダマイゼーションは対象物を実験場で複数撮影せずとも、
天候、時刻条件
物体の撮影方向
これらの問題を解決する可能性を秘めています。
私もこれまでは物体を現実世界で撮影を行い学習を行わせることしかしてこなかったため、今後はsim2realを用いてオンライン上で学習を行わせる方法も学んでいこうと思います。