shimopino / papers-challenge

Paper Reading List I have already read
30 stars 2 forks source link

ImageNet-trained CNNs are biased towards texture; increasing shape bias improves accuracy and robustness #37

Open shimopino opened 4 years ago

shimopino commented 4 years ago

論文へのリンク

[arXiv:1811.12231] ImageNet-trained CNNs are biased towards texture; increasing shape bias improves accuracy and robustness

著者・所属機関

Robert Geirhos, Patricia Rubisch, Claudio Michaelis, Matthias Bethge, Felix A. Wichmann, Wieland Brendel

投稿日時(YYYY-MM-DD)

2018-11-29

1. どんなもの?

人間が行う画像認識では物体の形状から対象が何なのかを判断している。しかしImageNetで学習したCNNは、物体の形状ではなくテクスチャをより学習してしまうことを実験で示し、CNNの新たな学習方法を提案した。

image

2. 先行研究と比べてどこがすごいの?

従来CNNを用いたネットワークでは、浅い層で物体の基本的な形状(カーブやエッジなど)を学習し、深い層になるにつれてこれらの形状を組み合わせた複雑な形状を認識できるようになると考えられていた。

この仮定を強化する論文も反対の意見を述べている論文もある。本論文では、「CNNが物体を認識するとき、物体の形状よりも局所的なテクスチャをより重視する」という仮定の正しさを検証した。

実験として同じ形状の画像からテクスチャのみを変化させた画像をCNNと人間でどのように識別結果が異なるのか調査した。またCNNに物体の形状も学習させるためには使用するデータセットがより重要であり、正しいデータセットで学習させたCNNは、より形状の歪みに頑強であることが分かった。

3. 技術や手法の"キモ"はどこにある?

CNNがテクスチャ情報を重視して学修するのか確かめるために、以下の3つの実験を行った。

  1. 同じ画像を人間が識別した場合とCNNで識別を行った場合とを比較する。この時に使用する画像は、同じ画像に対してテクスチャ情報を操作したり、形状のみを抽出したものにする。
  2. ImageNetデータセットに対してAdaINのスタイル変換を施した画像を使用し、CNNの識別精度がどのように変化するのか調べる。

image

4. どうやって有効だと検証した?

同じ画像に対してテクスチャ情報を操作し、人間とCNNによる識別を比較した。形状とテクスチャが保持されている画像に対してはどちらも高い精度を示しているが、シルエット画像やエッジ画像など形状情報のみしかない場合、人間は正しく識別できているが、CNNは形状情報をうまく学習できていないことがわかる。

image

次にImageNetの各画像に、異なるクラスのテクスチャ情報を加えた画像を使用して、人間とCNNが形状とテクスチャのどちらの情報をより重視しているのか調べた。

下の表からわかるように、人間は物体の形状で画像を識別していることがわかるが、CNNは反対に加えられた別のクラスのテクスチャを重視して学習していることがわかる。

image

次にStylized ImageNetで学習させたCNNの性能を調べた。このデータセットは、物体の形状に対して対象のクラスとは無関係なテクスチャ情報を加えており、CNNが正しく識別するためには、テクスチャではなく形状からクラスを判断する必要がある。

ImageNetと比較すると、CNNがより形状を重視して学習を行っていることがわかる。

image

次にImageNet(IN)とStylized ImageNet(SIN)をそれぞれ学習に使用し、互いのデータセットで性能を比較した結果を見てみる。

INを使用しテクスチャ情報をより重視して学習させたCNNは、SINをテストに使用するとほとんど性能が発揮されていない。逆にSINで物体の形状を学習させたCNNは、INのデータセットに対しても高い性能を発揮していることがわかる。 

image

次にCNNが形状を学習できていることを確認するために、画像に歪みを加えたデータに対して性能を評価した。

image

それぞれのデータセットで学習させたCNNに対して、歪みを加えた画像に対する精度を比較すると以下になる。ほとんどのタスクにおいてSINで学習させたモデルの性能が優れていることがわかる。

ローパスフィルタに関しては、SINを使用してエッジを学習させたモデルに対し、エッジをぼやかす処理を加えているため、性能が出ていないと考えられる。

image

5. 議論はあるか?

実験によりCNNが物体の形状ではなく、局所的なテクスチャ情報を重視して識別を行っていることが判明した。

6. 次に読むべき論文はあるか?

論文情報・リンク

shimopino commented 4 years ago

https://github.com/rgeirhos/texture-vs-shape

https://github.com/rgeirhos/Stylized-ImageNet