Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Searching for A Robust Neural Architecture in Four GPU Hours

Searching for A Robust Neural Architecture in Four GPU Hours

6/30 第53回コンピュータビジョン勉強会

tereka114

March 15, 2022
Tweet

More Decks by tereka114

Other Decks in Programming

Transcript

  1. 1 Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    Searching for A Robust Neural Architecture in Four GPU Hours 2019/6/30 Acroquest Technology Co, Ltd ⼭本 ⼤輝(@tereka114)
  2. ⾃⼰紹介 1. ⼭本 ⼤輝(@tereka114) 2. Acroquest Technology株式会社 3. 画像処理・⾃然⾔語処理の研究開発 4.

    Kaggle Master ① Home Credit Default Risk 2nd ② IEEE Signal Processing 10th 5. Interface 12⽉号 AIひょっこり猫カメラ (2018)
  3. Acroquestのミッション・ビジョン Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    3 テクノロジストチームとして ビジネスの⾰新的価値創出に挑戦する ビジョン Acroquestの創り出す技術で 地球を感動で進化させる ミッション
  4. 本発表の想定 Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    5 • Neural Networkで利⽤されるモデル・関数について知っている。 • ResNet/DenseNet • Convolution、Dilated Convolutionなど。 • Neural Architecture Searchは知らなくて問題ありません。 • 発表前の私も知らなかったので、説明します。
  5. Outline Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    6 1. 紹介する論⽂の概要 2. Neural Architecture Search(NAS)とは︖ 3. NASの関連研究の紹介 4. 提案⼿法 5. 実験結果 6. 論⽂の結論 7. (個⼈的な)考察・感想
  6. 1. 紹介する論⽂の概要 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 7 • Searching for A Robust Neural Architecture in Four GPU Hours • Baido Researchが発表した論⽂。 • 実装︓https://github.com/D-X-Y/GDAS • 提案⼿法は従来の3000GPU時間->4GPU時間(0.1%)でNASの実 ⾏が完了する。また、従来⼿法より精度が⾼い(複数のSoTA) 0 500 1000 1500 2000 2500 3000 3500 従来⼿法 提案⼿法 性能 性能 0.1%
  7. 1. なぜ、この論⽂を読んだのか。 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 8 • Google Auto MLなど⾃動的にモデルを最適化するサービスが展開 されてきている。 • NASは膨⼤な量のリソースを使って、最適化している印象があった。 • 私がNeural Architecture Search(NAS)に詳しくない。 そのため、実際にどの程度のことができているのかを知りたかった。
  8. 2. Neural Architecture Search(NAS)とは Copyright © Acroquest Technology Co., Ltd.

    All rights reserved. 9 • ニューラルネットワークのアーキテクチャを⾃動的に作成する。 • 従来研究では、VGG/ResNet/DenseNetなど⼈間がニューラルネ ットワークの構造を定義していた。 • NASでこの構造を⾃動的に探索する。
  9. 3. NASの関連研究の紹介 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 10 • Neural Architecture Search with Reinforcement Learning • DARTS: Differentiable Architecture Search
  10. 3. Neural Architecture Search with Reinforcement Learning Copyright © Acroquest

    Technology Co., Ltd. All rights reserved. 12 • 機械で⾃動的に良いアーキテクチャを作る研究 n ニューラルネットワークのデザインは難しい。 • Controller(RNN)によるデザインとスコアによる報酬の関係性を元にアーキ テクチャを改良した。 • 学習するデータセットが巨⼤な場合、学習コストが増⼤する。
  11. 3. DARTS: Differentiable Architecture Search Copyright © Acroquest Technology Co.,

    Ltd. All rights reserved. 13 • ニューラルネットワークのアーキテクチャのトポロジーを微分でき る式で定義し、勾配法で学習できるようにした。 →従来まで時間がかかっていたNASの時間を⼤幅に短縮した。
  12. 4. 提案⼿法の概要 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 14 • 勾配法を利⽤した最適化⼿法を使い、ニューラルネットワークのアーキテクチ ャを⽰すパラメータと重みを最適化。 • 更に計算時にメモリや計算時間を短縮する⼯夫を⼊れた。 • 実験結果でも、この効果が出ている。 • 複数のデータセットの実験で従来⼿法よりも⾼速、かつ、SoTAを実現した。 • 提案⼿法の名前はGDASと命名されている。 Gradient-based search using Differentiable Architecture Sampler
  13. 4. 提案⼿法の流れ(GDAS) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 15 1. 探索空間を定義する。 2. 最適化を⾏う。 ① パラメータの更新 ② アーキテクチャを⽰すパラメータの更新 3. アーキテクチャの決定 パラメータの 更新 アーキテクチャを ⽰すパラメータの 更新 探索空間を 定義 アーキテクチャ の決定
  14. 4. 提案⼿法の流れ(GDAS) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 16 1. 探索空間を定義する。 2. 最適化を⾏う。 ① パラメータの更新 ② アーキテクチャを⽰すパラメータの更新 3. アーキテクチャの決定 パラメータの 更新 アーキテクチャを ⽰すパラメータの 更新 探索空間を 定義 アーキテクチャ の決定
  15. 4-1. 探索空間の定義 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 17 • NASでアーキテクチャを作るための探索すべきパラメータを定義す る。 →後述にてどのような指定が必要かを説明する。 • 探索空間の説明の前に本⼿法で扱うアーキテクチャの表現⽅法を紹 介する。
  16. 4-1. アーキテクチャの表現 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 18 • 提案⼿法はアーキテクチャをDAG(⾮循環有向グラフ)で表現する。 • 本⼿法で扱う概念は次の通り。 • ノードの関係は次の数式で⽰すことができる。 No. 項⽬ 説明 1 ノード 関数の計算結果(出⼒) 2 セル ノードの集合 3 ブロック セルの集合 →後述に図があり。 ノード= テンソル セル エッジ=関数 ノードi (計算結果) ノードk ノードj 関数
  17. 4-1. 探索空間の定義 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 19 No. ハイパーパラメータ 説明 1 関数空間 何を計算すべきかの候補を定義する。 本⼿法で利⽤した関数は後述 2 計算ノード (論⽂中のB) 計算⽤のセルの数を定義する。 3 Convolutionのチャネ ル数(論⽂中C) Convolutionのチャネル数を⽰す。 4 ブロック数 セルをいくつ使って、ブロックを構成するか
  18. 4-1. GDASのアーキテクチャ Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 20 ・探索セル ・Normal Cell: ・通常のセル ・Reduction Cell: ・画像のサイズを減 少させるセル
  19. 4-1. GDASの探索空間(関数) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 21 • Identity • Zeroise • 3x3 depth-wise separate conv • 3x3 dilated depse-wise separate conv • 5x5 depth-wise separate conv • 5x5 dilated depth-wise separate conv • 3x3 average pooling • 3x3 max pooling
  20. 4. 提案⼿法の流れ(GDAS) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 22 1. 探索空間を定義する。 2. 最適化を⾏う。 ① パラメータの更新 ② アーキテクチャを⽰すパラメータの更新 3. アーキテクチャの決定 パラメータの 更新 アーキテクチャを ⽰すパラメータの 更新 探索空間を 定義 アーキテクチャ の決定
  21. 4-2. 最適化の内容 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 23 1. 学習で最適化するのは次の2つ、これら2つを交互に更新する。 ① ニューラルネットワークのアーキテクチャの重み ② アーキテクチャを⽰すパラメータAの更新 – 最終的にアーキテクチャを決定する⽅法は後述 2. 次の数式は1の⽅式を⽰す。 選択されたアーキテクチャの 中で最も良いパラメータ アーキテクチャ選択による誤差 を最⼩にする。
  22. 4-2. 最適化のアルゴリズム(疑似コード) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 24 重みを更新 アーキテクチャの パラメータを更新 データを学習データか らサンプリングする。 データを検証データか らサンプリングする。 汎化性能向 上のため、 検証データ を利⽤
  23. 4-2. ⽬的関数 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 25 Negative log likelihood アーキテクチャαをサンプ リング サンプリングしたαの重み
  24. 4-2. GDASのアーキテクチャ構築 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 26 誤差逆伝搬法で更新できないため Gumbel-Max Trickを用いて更新 関数の集合から関数を サンプリング 最も⾼い値を選択 argmaxをsoftmaxに緩和する。 argmaxだと特定のインデックス のみにしか勾配法を適⽤できない ため、分布の学習が難しい アーキテクチャを ⽰すパラメータ
  25. 4-2. Gumbel-Max Trick Copyright © Acroquest Technology Co., Ltd. All

    rights reserved. 27 • カテゴリカルな分布からサンプリングを⾏うためのテクニック。 1. ノイズoをGumbel分布から⽣成する。 – 必ず同じ値が⽣成されず、ランダム要素が含まれる。 – Gumbel分布は極値分布の⼀種 2. 1で⽣成したoとargmaxを⽤いて擬似的にサンプリングする。 • 論⽂はsoftmax(argmaxではない)を利⽤して、学習する。 • argmaxでは、特定のインデックスのみ学習が⾏われ、分布が正しく学習で きない。
  26. 4-2. Acceleration(最適化の⼯夫) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 28 1. Forward, Backwardでargmaxのみを計算する。 ① Forward︓関数空間の中で最も確率が⾼いものを残す。 ② Backward:⽣成された乱数に基づき、最も確率が⾼い部分の勾配を利⽤する。 2. このAccelerationの効果として次が望める。 ① GPUメモリの節約(関数空間の数= F Times) ② 計算時間の節約(関数空間の数=F Times) 3. 後述の実験で検証されているが、Accelerationを挟むことで収束ま での時間は早い。(ステップあたりは遅い)
  27. 4. 提案⼿法の流れ(GDAS) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 29 1. 探索空間を定義する。 2. 最適化を⾏う。 ① パラメータの更新 ② アーキテクチャを⽰すパラメータの更新 3. アーキテクチャの決定 パラメータの 更新 アーキテクチャを ⽰すパラメータの 更新 探索空間を 定義 アーキテクチャ の決定
  28. 4-3. 最終的なアーキテクチャの決定 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 30 1. 最適化で得られたパラメータ(A)から、最終的なアーキテクチャを 決定する。 ① ノード間の重要度を定義する。 ② ノード間で重要度の⾼い接続(T)を残す。 ③ 最も重要度の⾼い関数をノード間で適⽤する。 2. 従来研究より、前ノードからの接続(T)はCNNは2, RNNは1とし た。 ノード間の重要度 を計算する式
  29. 4-3. 最終的なアーキテクチャの決定 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 31 前ノードの⼊⼒(2) 前ノードの⼊⼒(1) 出⼒
  30. 5. 実験内容 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 32 1. 計測条件(その他は記述なし) • GPU︓Tesla V100 2. データセット No. データセット名 データセットの説明 1 CIFAR-10/CIFAR-100 画像分類のデータセット 2 ImageNet 画像分類のデータセット (1と⽐較してデータの規模が⼤きい) 3 Pen Tree Bank ⾃然⾔語処理で利⽤されるデータセット 前の単語から、後ろの単語を推測する。 4 WikiText-2 (WT2) ⾃然⾔語処理で利⽤されるデータセット 前の単語から、後ろの単語を推測する。 (3と⽐較してデータの規模が⼤きい)
  31. 5. 実験結果(PTB) Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 35 著者のコードが最適化 されておらず、 理論値的には改善可能
  32. 6. 論⽂の結論 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 37 • 勾配法で最適化するNASの⼀種、GDASの提案を⾏った。 • 従来⼿法よりも効率よく、⾼速に探索できた。 • 10000倍の性能改善を実現した。 • CNN/RNNのタスクでState of the Artを出した。
  33. 7. 考察・感想 Copyright © Acroquest Technology Co., Ltd. All rights

    reserved. 38 • GTX 1080Tiでも7GPU hoursであれば、個⼈的な利⽤⽤途でも、 計算可能である。 • 新しいデータセットに対して最適なアーキテクチャを素早く作るなど。 • 推論の性能による制約は未知数と感じている。このあたりは今後の 発展に期待。 →CVPR2019でAcceptされたFBNetは性能も考慮した勾配系の論 ⽂らしいので興味あり。 • 研究の進展が早いので、今後の発展に期待してます。