0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Neural Architecture Searchの最前線 P-DARTSについて【論文読み】

Last updated at Posted at 2024-03-27

Neural Architecture Search P-DARTSについての説明

Neural Architecture Search(以下よりNAS)について何か知りたい人は近日公開の別の記事をお読みください。
ここでは微分可能であるNASのDARTSよりも良い性能である論文を読んだので、読んだことをまとめようと思います。
原論文は以下のサイトから

要約

左が今までのNASの手法。基本的には浅いネットワークを探索してしまう。しかし提案手法の右側はより深いネットワークを探索することでerrorが2.5%とよりよい性能を出した

論文図1より
image.png

↓もう少し詳しく知りたい人
(微分可能なNASは計算コストを抑える。この論文ではNASは小さな浅いネットワークやスキップ接続を多いに使ったネットワークをよく用いる。しかし実際は深いネットワークの方がより良い性能を出す。このギャップを埋める。深いネットワークを探索できるようにする。(図1)

貢献

この論文では少ない計算量でより深いネットワークを探索し、これまでのNASよりもよい精度を出した。

↓もう少し詳しく知りたい人
1.cifar-10ではGPU0.3daysで2.50%のエラー率でDARTSやENASの精度を上回った
2.ImageNetではtop1のエラーが24.4%,top5のエラー率が7.4%
3.他のデータセットに適用しやすいcifar-100では15.92%のエラー率
この3つの貢献を計算コストを抑えながら行った。

提案手法の全体

深さを増やすネットワークを作成するが、計算コストと深さはトレードオフの関係。
これを改善するために以下の2つを行う。

  1. Search Space Approximation(探索空間の近似)
  2. Search Space Regularization(探索空間の正規化)

これらのおかげで深いネットワークを計算コストを抑えながら探索することができる。

Search Space Approximation

図2より
image.png
探索空間を3つのステージに分解する。ネットワークの深さは5,11,17とだんだん増やしていく。
(1) Initial Stage
始めのステージでは5つの候補から一番小さい重みのものをドロップアウトする。

(2) Intermediate Stages
このステージは論文では1つだが、いくつかあってもよい。
ここでも1と同様に重みが小さいものをドロップアウトする。図の例では0.14,0.006,0.38の中から一番小さい0.006がドロップアウトされる。

(3) Fianl Stage
ここでも2つのうち小さい重みをドロップアウトする。
ドロップアウトのおかげで少ないGPUでも簡単に実装が可能に!

Search Space Regularization

NASの特性としてスキップ接続を多いに用いる。これにより過学習を引き起こしている。なので正規化を用いる。正規化には2つのプロセルがある。

1.スキップ接続のドロップアウト
スキップ接続をドロップアウトすることで他の候補解も探索できるようにする。しかし他の候補解は重みが小さく、ドロップアウトされる可能性があるので、ドロップアウト率をはじめは小さく、だんだん層が増えるごとに大きくしていく。

2.スキップ接続の最大値
スキップ接続は画像検出において影響が強すぎるため、スキップ接続の個数を制限する。
これにより最大値M個を超えた場合はスキップ接続の重みを0にしもう一度学習する。この2つ目の方法はスキップ接続のドロップアウトがあってこその意味がある。

実験

データセット

cifar-10,cifar-100,ISLVRC2012の3つを使用。ISLVRC2012はcifar-10,100で行ったアーキテクチャの転移性を調べるために使用

結果

image.png
(a) Stage1
(b) Stage2
(c) Stage 3
(d) DARTS
のようになっている。(c)Stage3のfianl Stageでは(d)のDARTSと比較してより複雑な関係になっており、深いアーキテクチャを表現できている。またP-DARTSはcifar-100での学習も可能にした。(表2)
表2より
image.png
P-DARTSはGPU0.3daysでエラー率2.5%を達成

discussion

image.png
P-DARTS(提案手法)が上回っている。cifar-10で学習させたものをcifar-100に転移させるとcifar-100で学習したよりも精度がよくなる。逆でも同じことがいえる。cifar-100で学習したのり、cifar-10に転移させるとよくなる。データセットのバイアスが問題である。

ImageNetに移植させた場合でも表2より、DARTASやSNAS,ProxylessNASよりも良い性能を実現できている。すごいことは、mageNet用に carefully designed された検索空間を持つMnasNet [31]やProxylessNAS [2]よりも低いテストエラーを達成していることです。

検討

stageごとにaccuracyを調査した。(図3)final stageが一番低いことから提案手法の有効性がある。また、(a)などは浅い接続だけで終わってしまっているが、stageがあがるにつれ、後ろのノードは中間ノードの出力を待ってから接続されているようになっている。

またdropout率の有効性を検証するためにdropout率をなしと、0,0.3,0.6と変化させながら行う。結果が2.93%,3.28%,3.51%とdropout率を関係している。

またスキップ接続の最大値Mに対してはMの値を2,3,4と変化させた場合、それぞれ2.93%,3.28%,3.51%となる。

なのでドロップアウト率やスキップ接続の個数は結果に大きく影響をもたらす。しかし、スキップ接続の個数は小さい方が良いというわけではない。Mを0〜4まで変化させた場合、2.78%,2.68%,2.69%,2,84%となる。0にしたからといっていいわけではない。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?