見出し画像

YOLORを使ってオートアノテーションを精度向上させてみた

こんにちは。Heavy metal is very very healthyです。ナビタイムジャパンでAIやコンピュータビジョンを用いた研究開発を担当しています。

今回は、昨年登場したオブジェクト検出の機械学習/Deep Learningアルゴリズムである「YOLOR」を使ってオートアノテーションの精度を向上させてみました。

オートアノテーションとは

アノテーションは、AIの学習データの作成過程で発生する作業です。
オブジェクト検出の場合、画像に映っているAIに検出してほしい物体を一つひとつバウンディングボックスで囲み、それが車なのか人なのかといったラベル名を指定します。

この作業、実際にやってみるとかなり大変です。
数百枚の画像データでも手作業だと軽く数時間はかかってしまいます。
代行サービスもありアウトソーシングするくらいなので、AIプロセスの中で最も人的コストがかかるんですね。

そこで、わたしたちのプロジェクトでは事前学習済みのオブジェクト検出用のAIモデルを使って、この作業を自動化しています。そして、事前学習済みモデルにはYOLOv4を採用していました。

オートアノテーションの概念

YOLORとは

YOLOR(「You Only Learn One Representation」の略称)は、2021年にリリースされた、画像からのオブジェクト検出の機械学習/Deep Learningアルゴリズムです。

そして、現時点(2022/05/17) でCOCOデータセットでのベンチマークにおいてYOLOv4(Scaled-YOLOv4)を抑え、堂々の1位の精度となっています。

COCOデータセット精度ランキング1位の推移
COCOデータセット精度ランキング

Scaled-YOLOv4はスケーリングされたYOLOv4で、YOLOv4よりも高精度ながら速度改善されたアルゴリズムです。YOLORは、速度に関しても高精度を維持しつつ、そのScaled-YOLOv4よりも高速となっています。

https://github.com/WongKinYiu/yolorから引用

YOLORが高精度な理由

YOLORが高精度である理由は、論文を読むと以下の図のように形式知(Explicit Knowledge)と暗黙知(Implicit knowledge)を一つにエンコードする統合ニューラルネットワーク(Discriminator)にあります。

https://github.com/WongKinYiu/yolorから引用

これにより、カーネル空間の調整・予測・マルチタスク学習といった様々な分野でYOLOより良いパフォーマンスが得られるようになりました。

形式知だけでなく暗黙知をうまく利用しているので、まさしく人間の脳が学習を行うプロセスを、画像からのオブジェクト検出にもあてはめたわけですね。

精度比較

YOLORはかなり期待できそう!
ということで、このYOLORをオートアノテーションに適用して、YOLOv4と精度比較を行ってみました。

テストデータには、実際のサービスプロダクトのAIモデルで学習に使用する車窓からの画像データ100枚で試してみました。

YOLOR vs YOLOv4 vs Scaled-YOLOv4

なんと、正解率(Accuracy)でYOLORはYOLOv4よりも10%以上も精度向上が確認できました!適合率(Precision)に関してはほぼ100%の精度です。

一方、Scaled-YOLOv4はYOLOv4よりも精度が悪いという結果に。。。
テストデータがScaled-YOLOv4にとって相性が良くなかったのでしょうか?必ずしも、公式のベンチマーク通りの結果になるとは限りません。
自身のデータで検証することが大事であるということがよくわかります。

数値に関して、もう少し踏み込んでみてみましょう。
適合率は5%の精度向上ですが、再現率(Recall)が15%とかなり大きく改善しています。どうも、ここが今回精度が大きく上がった要因のようです。
そこで、オートアノテーションした結果を調べてみました。

その結果、テストデータの多くで車のダッシュボードをYOLOv4(Scaled-YOLOv4も)は車として誤検知していたのですが、YOLORは改善されて誤検知がなくなっていました。確かに、車窓データなのでテストデータにダッシュボードが映っている割合が高くなるのは当然です。テストデータに隠れたバイアスがかかっていたのが原因でした。

YOLOv4ではダッシュボードの誤検知が多い

このダッシュボード誤検知問題は以前から認識しており、いままでは手動と簡易プログラムで消していました。その手間がなくなるのは非常にうれしいですね。

まとめ

YOLORは、公式のベンチマークどおりにわたしたちのオートアノテーションに対しても精度を大幅に向上させてくれることがわかりました。
しかしながら、画像からオブジェクト検出の分野は日進月歩の勢いで、新しいアルゴリズムが毎年のように登場します。

オートアノテーションの主目的は人的コスト削減と精度向上です。
いかに、すばやく高精度な事前学習済みモデルを検証して
このプロセスに組み込めるかが鍵となります。

今後も新しいモデルが登場したら、今回のように精度検証を行い
良いものに変えていく取り組みを続けていく予定です!