ImageNetの学習で得た頑健性は転移学習で下流タスクに活かせるか?
3つの要点
✔️ アーキテクチャの違いは頑健性の転移に関係している
✔️ 全層を再学習させる条件下ではTransformerアーキテクチャは、データ拡張を用いたCNNよりも効果的である
✔️ 物体検出やセマンティックセグメンテーションよりも、画像分類に対するImageNetからの転移が困難である
Does Robustness on ImageNet Transfer to Downstream Tasks?
written by Yutaro Yamada, Mayu Otani
(Submitted on 8 Apr 2022)
Comments: CVPR 2022
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
はじめに
近年、画像認識モデルに関する研究が盛んに行われています。
その中でもImageNetは重要なベンチマークとして機能しており、ImageNetを活用した数多くのモデルや学習技術が生まれています。
このImageNetに対する精度は機械学習システムの進歩を測る代用として考えられてきたが、画像にノイズが加わるとモデルの精度が大きく下がる頑健性の欠如が存在するという問題が指摘されています。
こうした問題を解決するためにモデルの頑健性を向上させる方法の1つとしてデータ拡張(ANT、AugMix、DeepAugなど)があります。
データ拡張では、元の学習データに何らかの変換をかけ人為的に破損させた追加データを用いて学習させることでモデルの頑健性を向上させることを目指しています。
これまでデータ拡張をはじめとしたモデルの頑健性向上を目指す研究の多くは、ImageNetにおける精度の変化をもとにモデルの頑健性を検証してきました。一方で、モデルを実際に活用する場面では、ImageNetなどの大規模データセットで事前学習されたモデルの特徴抽出能力を利用する転移学習を行われることが一般的です。
転移学習では、元の画像認識モデルの精度が高いほどモデルの特徴抽出能力が高いため、転移学習後の精度が高くなると言われていたが、頑健性という点に着目した転移学習の効果の研究はあまり行われていませんでした。
そこで、本研究では「主要な画像認識データセットで高い頑健性を有するモデルの事前学習済みパラメータを用いて転移学習を行った場合、そのモデルは必ずしも下流のタスクに対しても頑健性を示すのか 」という問題設定に関して調査を行いました。
次章以降では、事前知識として転移学習とViT(Vision Transformer)について簡単に説明した後に、実験内容と結果について解説していきます。
転移学習とは
転移学習では、事前に何らかのデータを学習したモデルからパラメータを流用することで、学習済みのモデルを再利用します。
ここで、事前に学習したデータをソースデータ、事前にソースデータを学習したモデルをソースモデルとします。
また、次に学習するデータをターゲットデータ、学習するモデルをターゲットモデルとします。
ソースモデルは学習によって、ソースデータの特徴を検出できるようになっており、そのソースモデルを再利用することで、ターゲットデータからソースデータと共通の特徴を検出できる状態から学習をスタートでき、これにより、少ない学習量で高精度なモデルを作成することが可能になるという手法です。
転移学習には、以下の図に示すようにソースモデルのパラメータは更新せず、ソースモデルから流用した部分以外をターゲットデータで更新する方法と、ターゲットデータを用いて全層を再学習する方法の2種類があり、場合によって使い分けられています。
ViT(Vision Transformer)とは
ViT(Vision Transformer)とはAn Image is Worth 16×16 Words: Transformers for Image Recognition at Scaleで提案された画像認識のためのアーキテクチャで、自然言語処理に用いられるTransformerを画像認識タスクに用いたもので、以下の図に示すような構造をしています。
ViTはImageNet/ImageNet-Realに関するタスクについてSoTAモデルと同程度、またはそれを上回る性能を達成しただけでなく、計算量を1/15程度まで落とすことに成功しており、近年注目を集めています。
先行研究と研究目的
ViTの一種であるSwin Transformerを用いた先行研究で、Swin TransformerとCNNのImageNet-C(ImageNetの画像に変換をかけたもの、以下に参考画像)に対する精度を比較した結果Swin TransformerがCNNよりも優れているもと報告されています。
先行研究のこの結果から、ViTはCNNに比べノイズへの耐性が強いことが示唆されています。
一方で、CNNが学習するデータにデータ拡張を用いるとSwin Transformerと同等の精度を発揮したことも報告されています。
これらの結果から、本論文では以下の2点について確認するための実験を行いました。
- データ拡張を使用したCNNは転移学習時、頑健性を下流タスクに転移することができるのか
- データ拡張とアーキテクチャの違いはどちらが頑健性の転移に影響あるのか
実験条件・内容
実験条件
ImageNet-1kに対して、データ拡張手法ANTを用いて事前学習させたCNNと、データ拡張手法DeepAugとAugMixを用いて事前学習させたCNNの2つのCNNと、同様にImageNet-1kを用いて事前学習させたSwin Transformerを用意しました。
ただし、Swin Transformerの事前学習にはデータ拡張は使用しませんでした。
ここで、モデルサイズを同程度にするためCNNとしてResNet50(パラメータ数:25M)と、Swin TransformerとしてSwin Transformer-Tiny(パラメータ数:28M)をそれぞれ実験に使用しました。
また、物体検出タスクのためにMask-RCNNを、セマンティックセグメンテーションタスクのためにUperNetをヘッドに使用しました。
実験内容
ImageNet分類モデルが下流タスクにどの程度頑健性を転移性能について測定しました。
下流タスクへの頑健性の転移性能を測定するために、ImageNet-Cで導入された「noise」,「blur」,「weather」,「digital」 の4つのカテゴリに分類される15種類の変換画像に対してモデルを評価したときに、精度がクリーンな画像に対する精度と比べ、どの程度低下するかを計算することによって、ImageNet分類モデルのノイズに対する頑健性を測定しました。
具体的には以下に示す2式によって、モデルの平均性能低下と相対性能を定義し、頑健性の評価に用いました。
また、ここで下流タスクに使用するデータセットとして、物体検出ではMS-COCOを、セマンティックセグメンテーションではADE20Kを、画像分類ではCIFAR-10をそれぞれ使用しました。
結果と考察
はじめに、転移学習においてソースモデルのパラメータは更新せず、ソースモデルから流用した部分以外をターゲットデータで更新する方法を用いた際の実験結果を以下に示します。
上の図が物体検出タスクに対する精度低下を、下の図がセマンティックセグメンテーションタスクに対する精度低下をまとめた表になっています。
ここで、各手法は以下のような設定となっています。
- Regular:ImageNet(クリーン画像)で事前学習したResNet50をソースモデル
- ANT:データ拡張手法であるANTによって変換したデータを用いて事前学習したResNet50をソースモデル
- DeepAug+:データ拡張手法であるDeepAug+によって変換したデータを用いて事前学習したResNet50をソースモデル
- Swin-T:ImageNet(クリーン画像)で事前学習したSwin Transformer-Tinyをソースモデル
この結果からデータ拡張を用いたCNN(DeepAug+,ANT)はRegularより精度の低下度合いが低く、頑健性が高いことが確認できます。
また、Swin-Tは一部のノイズに対してデータ拡張を用いたCNNを上回る精度を発揮することが確認できます。
これに加え、Swin-Tがデータ拡張を用いたCNNを上回ることがあることから、アーキテクチャの違いは頑健性の転移に関係していると考えられます。
次に、転移学習においてターゲットデータを用いて全層を再学習させた際の実験結果を以下に示します。
全層を再学習するとソースモデルの頑健性が失われる可能性があり、最初の実験において一部の条件でSwin-Tがデータ拡張を用いたCNNを上回ったことからTransformerアーキテクチャは、データ拡張を用いたCNNよりも効果的であると考えることもできます。
データ拡張を用いたCNN(DeepAug+,ANT)はRegularより精度の低下度合いが低く、頑健性が高いことが確認できました。
また、Swin-TはANTよりもわずかに高い頑健性を示していること確認できました。
更に、Swin-Tは物体検出とセマンティックセグメンテーションで最高の性能を示しました。
これは、DeepAug+とANTがSwin-TよりもImageNet-Cの頑健性を下流タスクに転移できていないことを示していると同時に全層を再学習させる条件下ではTransformerアーキテクチャは、データ拡張を用いたCNNよりも効果的であることを裏付ける結果ともなりました。
また、ImageNet-CからCIFAR10への頑健性を検証したところ、データ拡張を用いたCNNはRegularを上回らないことがわかりました。
このことから、物体検出やセマンティックセグメンテーションよりも、画像分類に対するImageNetからの転移が困難であると考えられます。
まとめ
本研究では「主要な画像認識データセットで高い頑健性を有するモデルの事前学習済みパラメータを用いて転移学習を行った場合、そのモデルは必ずしも下流のタスクに対しても頑健性を示すのか 」という問題設定に関して調査を行いました。
実験の結果、固定特徴の転移学習では、ImageNetのバックボーンの頑健性は下流のタスクに部分的に保存されることがわかりました。
しかし、より実用的な全層を再学習させる転移学習では、Transformerアーキテクチャの寄与が、データ拡張がCNNに及ぼす影響よりも重要であることが分かりました。
この記事に関するカテゴリー