SlideShare a Scribd company logo
1 of 37
© DeNA Co., Ltd.
論文紹介
Efficient Neural
Architecture Search via
Parameters Sharing
ICML2018読み会
July 28, 2018
Tomohiro Kato
AI System Dept.
DeNA Co., Ltd.
© DeNA Co., Ltd.
本資料について
 本資料は ICML2018読み会@DeNA (2018/07/28) の発表資料です
⁃ https://connpass.com/event/92705/
2
© DeNA Co., Ltd.
Agenda
 はじめに
 Neural Architechture Searchの概要
 論文紹介
 まとめ・所感
3
© DeNA Co., Ltd.
自己紹介
 加藤 倫弘 (かとう ともひろ)
 ㈱ DeNA システム本部 AIシステム部
 Computer Vision関連のプロジェクトを担当
 最近書いた(link)
 Chainer → NNVM/TVM → Androidの話
 NN DistillerでPytorchモデルのpruningする
 DeepLearningのモデル軽量化 (ICLR2018)
4
@_tkato_Twitter
© DeNA Co., Ltd.
はじめに
 Efficient Neural Architecture Search via Parameters Sharing(ENAS)[1]
Hieu Pham Melody Guan Barret Zoph Quoc Le Jeff Dean
⁃ 1000x less expensive than standard Neural Architecture Search
⁃ 450 GPUs for 3~4 days → 1 GPU for <16 hours
 論文の選択理由
⁃ 現実的な時間で実験可能なNAS
• 自分のタスクでも試してみたい
⁃ 著者らの公式実装(TensorFlow)に惹かれた
• ポイントであるParameters Sharingの実装が面白い
• 実際に実装を解読して深く理解したい → Chainerで再現実装
5
© DeNA Co., Ltd.
Neural Architecture Search
 目的に最適なモデルアーキテクチャを自動設計したい
 強化学習(RL)ベース[1,3,4]、進化的計算(GA)ベース、Progressive Search[5]など
 課題1:報酬計算のために、大量の候補モデル (child) の学習が必要で遅い
⁃ 精度推定用のモデルを使う
⁃ 候補モデルのweightを共有する(ENAS, DARTS[2])
 課題2:探索空間が膨大
⁃ 選択候補をあらかじめhandcraftしたり、モデルの一部を探索+繰り返し構造(NASNet[4])
6
評価(精度、計算量、実行速度...)選択
探索空間
(レイヤー種別, パラメータ数...)
良いモデル
© DeNA Co., Ltd.
NAS family
7
NASNet[4] 1707.07012 CVPR2018
450GPU(P100) 3~4days
NAS[3] 1611.01578 ICLR2017
800GPU(K40) 21~28days
PNAS[5] 1712.00559
100GPU(P100) 1.5days
ENAS[1] 1802.03268 ICML2018
1GPU(1080Ti) 0.45days
© DeNA Co., Ltd.
実験結果: CIFAR10
8ENAS[1]のTable.2 より NAS familyをplot
800GPU(K40) 21~28days
100GPU(P100) 1.5days
1GPU(1080Ti) 0.45days
450GPU(P100) 3~4days ★
© DeNA Co., Ltd.
実験結果: CIFAR10
 1 GPUで 0.45日
 精度はNASNet-A + CutOut
よりやや劣る(- 0.34%)
⁃ 探索空間の大きさ?
9from Table.2 [1]
K40
1080Ti
1080Ti
P100
P100
© DeNA Co., Ltd.
ENASの基本設計
10
Child
Controller
1 2 3 4
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
from [1]
※1
© DeNA Co., Ltd.
ENASの基本設計
11
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
12
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
13
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
14
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
15
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
16
Child
Controller
1 2 3 4
交互に出力(softmax)
・ノードの入力となるindex
・ノードのOp種
from [1]
※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4])
※2 論文では定義されていないが、説明のため本スライドで定義
探索空間はhandcrafted
タスクによりメタなアーキテクチャ※2を決める
※1
© DeNA Co., Ltd.
ENASの基本設計
 前記+2のメタアーキテクチャを定義
17
CNN micro search space
RNN cell
2種類のセルのstack
セル内部が探索対象
活性化関数と入力を推定
ControllerController
Child
Child
from [1]
LSTMやGRUのようなcellをつくりたい
© DeNA Co., Ltd.
ENAS key contribution
 探索空間を1つのDAGとして定義し、subgraphをchildとする
 child間でweight sharingするので、child毎にスクラッチ学習不要
18
接続するノードを都度controllerが決める
...
from [1]
© DeNA Co., Ltd.
ENAS training loop
 1-iteration毎にcontrollerからchildをサンプルして学習
⁃ controllerのweightは固定だが、確率的にactionを出力するので毎回異なる
⁃ 1つの大きなグラフの1部だけをforward/backwardする
⁃ controllerは、childのvalidation accuracyを最大化させるように強化学習
19
for epoch
for batch
controllerでchildを1つ出力
childを1iteration学習
controllerをn-iteration学習
探索後、一番精度が良いモデルをベースにスクラッチで学習
(weight sharing用の制約がなくなるのでメタアーキテクチャを若干変える)
© DeNA Co., Ltd.
CNN micro serach space
 Cellのスタックとしてモデルを設計しCell内をControllerで決める(NASNet[4])
 macro search spaceより高精度
20
各セルはレイヤー間ではアーキテクチャ同一
ただしWeightはそれぞれ独立
ChildController
from [1]
© DeNA Co., Ltd.
CNN micro serach space: Childの階層
21
Layer
Cell
Node
Op
add
sep
3x3
sep
5x5
max
3x3
avg
3x3
id
concat
gather
※ 説明のため、一連の論文/実装とは厳密には異なる定義がありますfrom [1]
© DeNA Co., Ltd.
Cell
 Conv CellとReduction Cellを定義(NASNet[3])
22
Op種: sep3x3, sep5x5, max3x3, avg3x3, id
接続ルール
• add(op1, op2)を5つconcatする
• 各Opの入力は
• 自Opより前のOp出力
• 2個前までのレイヤーの出力
Conv/Reductionは基本同じ構成
ただしReductionは
• Cell入力前にstride2でdownsampling
• 同時に出力チャネル数を2倍にする
from [1]
© DeNA Co., Ltd.
23
h[t-1] h[t]
conv
1x1
concat
Cell
W0 W1 W2 W3 W4
Nodeの入出力のI/F (=NCHW) は基本同じだが、
チャネル数が異なる場合はconv1x1でI/Fをあわせる
入力毎にWeightが独立
入力に応じて選択
※h[t],h[t-1]から各nodeへの入力は本来4本あるが、簡略化のため省略
※
接続しうる全てのエッジを表示
この中からcontrollerで選択
© DeNA Co., Ltd.
24
h[t-1] h[t]
conv
1x1
concat
Cell
W0 W1 W2 W3 W4
Nodeの入出力のI/F (=NCHW) は基本同じだが、
チャネル数が異なる場合はconv1x1でI/Fをあわせる
入力毎にWeightが独立
入力に応じて選択
© DeNA Co., Ltd.
25
h[t-1] h[t]
conv
1x1
concat
Cell
W0 W1 W2 W3 W4
Nodeの入出力のI/F (=NCHW) は基本同じだが、
チャネル数が異なる場合はconv1x1でI/Fをあわせる
入力毎にWeightが独立
入力に応じて選択
© DeNA Co., Ltd.
26
h[t-1] h[t]
conv
1x1
concat
Cell
W0 W1 W2 W3 W4
Nodeの入出力のI/F (=NCHW) は基本同じだが、
チャネル数が異なる場合はconv1x1でI/Fをあわせる
入力毎にWeightが独立
入力に応じて選択
© DeNA Co., Ltd.
Node, Op
27
sep
3x3
sep
5x5
max
3x3
avg
3x3
id
concat
gather
C ch
5*C ch
C ch
 5種類のOpを事前に定義し、Controllerに 1つだけ 選択させる
Op2
Add
Op1
separable conv pooling 何もしない
NASNet[4]では
sep7x7, conv1x3など
12種のバリエーションがあった
© DeNA Co., Ltd.
Opの実装: sep3x3
28
c*h*w
5c*h*w
c*h*w
pw
1x1
dw
3x3
W0 W1 W2
W0 W1 W2
W0 W1 W2
bn
relu
h0 h1 h2
h5
※1
sep
3x3
入力に応じてWeightを切り替える
(予め、入力しうる数のWeightを持っておく)
※2
※1 同様にseparable convを繰りかえす
※2 dwとpwの間にrelu-bnはなし(NASNet[4])
© DeNA Co., Ltd.
Opの実装: sep3x3
29
c*h*w
5c*h*w
c*h*w
pw
1x1
dw
3x3
W0 W1 W2
W0 W1 W2
W0 W1 W2
bn
relu
h0 h1 h2
h5
※1
sep
3x3
※1 同様にseparable convを繰りかえす
※2 dwとpwの間にrelu-bnはなし(NASNet[4])
入力に応じてWeightを切り替える
(予め、入力しうる数のWeightを持っておく)
※2
© DeNA Co., Ltd.
Opの実装: sep3x3
30
c*h*w
5c*h*w
c*h*w
pw
1x1
dw
3x3
W0 W1 W2
W0 W1 W2
W0 W1 W2
bn
relu
h0 h1 h2
h5
※1
sep
3x3
入力に応じてWeightを切り替える
(予め、入力しうる数のWeightを持っておく)
※2
※1 同様にseparable convを繰りかえす
※2 dwとpwの間にrelu-bnはなし(NASNet[4])
© DeNA Co., Ltd.
Child全体
31
展開すると意外と大きい
メタアーキテクチャとして必要な命令が多い
(I/Fをあわせたり, downsamplingしたり)
DAG全体のパラメータ数は5.3M (ResNet-50の1/5)
childのパラメータ数は4.6M (from [1] Table.2)
3x3 or 5x5 の depthwise-conv と 1x1convがメイン
1-Childを全て書くと... (DAG全体でないので注意)
※Chainerによる実装
(Functionのみ表示)
from [1]
© DeNA Co., Ltd.
controller
 あるOpの前のindexとOp種を、2つずつ交互に出力
⁃ 出力は決定的でなく確率的(uniform distribution)
⁃ sep3x3, sep5x5が出力されやすいようにバイアスの初期値を調整
32
外部入力なし。自身の埋め込みベクトルが最初の入力
from [1]
© DeNA Co., Ltd.
実験条件(ENAS固有のもの)
 Child
⁃ Momentum SGD with Nesterov (learning rateはcosine scheduling)
⁃ 1 iteration毎にchildを変えながら学習
⁃ 精度向上のため、auxiliary head も lossに追加 (勾配増強、正則化の効果)
⁃ 探索後のスクラッチ学習ではScheduledDropPath (NASNet[4])
 Controller
⁃ Adam / REINFORCE with baseline
⁃ rewardは valデータのランダムな1バッチのaccuracy (高速化)
33
© DeNA Co., Ltd.
実験結果: CNN micro architecture CIFAR10
 著者公開実装を利用した再試 https://github.com/melodyguan/enas
⁃ ./scripts/cifar10_micro_{serach or final}.sh を変更せず実行
 architecture search時の学習曲線
34
child train loss child val/test acc controller reward
lr
search後のスクラッチ学習では test accuracy: 96.22% (err 3.78% <= 論文はerr 3.54%)
subgraphを切り替えながら学習しているのに
lossがきれいに落ちていくのは興味深い
© DeNA Co., Ltd.
まとめと所感
 Efficient Neural Architecture Search via Parameters Sharing(ENAS)
⁃ 1000x less expensive than standard Neural Architecture Search
⁃ 1つの計算グラフの一部をchildとして学習させる
⁃ Weight Sharingして学習するために、Weightの切り替えなど複雑なグラフ
 所感
⁃ Chainerの再現実装(CNN micro search)を後日公開予定
35
© DeNA Co., Ltd.
Reference
1. Hieu Pham. 2018. Efficient Neural Architecture Search via Parameters Sharing. ICML2018
⁃ http://proceedings.mlr.press/v80/pham18a.html https://github.com/melodyguan/enas
2. Hanxiao Liu. 2018. DARTS: Differentiable Architecture Search. arXiv:1806.09055
⁃ https://arxiv.org/abs/1806.09055 https://github.com/quark0/darts
3. Barret Zoph. Neural Architecture Search with Reinforcement Learning. ICML2017
⁃ https://arxiv.org/abs/1611.01578
4. Barret Zoph. Learning Transferable Architectures for Scalable Image Recognition. CVPR2018
⁃ https://arxiv.org/abs/1707.07012
⁃ https://github.com/tensorflow/models/tree/master/research/slim/nets/nasnet
5. C. Liu. Progressive Neural Architecture Search. arXiv:1712.00559
⁃ https://arxiv.org/abs/1712.00559
36
© DeNA Co., Ltd.
37
EOF

More Related Content

What's hot

Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAGIRobots
 
Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイcvpaper. challenge
 
深層生成モデルと世界モデル
深層生成モデルと世界モデル深層生成モデルと世界モデル
深層生成モデルと世界モデルMasahiro Suzuki
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解するAtsukiYamaguchi1
 
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII
 
CNNの構造最適化手法について
CNNの構造最適化手法についてCNNの構造最適化手法について
CNNの構造最適化手法についてMasanoriSuganuma
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情Yuta Kikuchi
 
【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習cvpaper. challenge
 
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜SSII
 
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative ModelsDeep Learning JP
 
[DL輪読会]Explainable Reinforcement Learning: A Survey
[DL輪読会]Explainable Reinforcement Learning: A Survey[DL輪読会]Explainable Reinforcement Learning: A Survey
[DL輪読会]Explainable Reinforcement Learning: A SurveyDeep Learning JP
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised LearningまとめDeep Learning JP
 
Anomaly detection 系の論文を一言でまとめた
Anomaly detection 系の論文を一言でまとめたAnomaly detection 系の論文を一言でまとめた
Anomaly detection 系の論文を一言でまとめたぱんいち すみもと
 
モデルアーキテクチャ観点からの高速化2019
モデルアーキテクチャ観点からの高速化2019モデルアーキテクチャ観点からの高速化2019
モデルアーキテクチャ観点からの高速化2019Yusuke Uchida
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門Takuji Tahara
 
モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化Yusuke Uchida
 
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
[DL輪読会]Learning Transferable Visual Models From Natural Language SupervisionDeep Learning JP
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてSho Takase
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!TransformerArithmer Inc.
 

What's hot (20)

Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
 
Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイ
 
深層生成モデルと世界モデル
深層生成モデルと世界モデル深層生成モデルと世界モデル
深層生成モデルと世界モデル
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解する
 
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
 
CNNの構造最適化手法について
CNNの構造最適化手法についてCNNの構造最適化手法について
CNNの構造最適化手法について
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
 
【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習
 
ResNetの仕組み
ResNetの仕組みResNetの仕組み
ResNetの仕組み
 
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
 
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
 
[DL輪読会]Explainable Reinforcement Learning: A Survey
[DL輪読会]Explainable Reinforcement Learning: A Survey[DL輪読会]Explainable Reinforcement Learning: A Survey
[DL輪読会]Explainable Reinforcement Learning: A Survey
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
 
Anomaly detection 系の論文を一言でまとめた
Anomaly detection 系の論文を一言でまとめたAnomaly detection 系の論文を一言でまとめた
Anomaly detection 系の論文を一言でまとめた
 
モデルアーキテクチャ観点からの高速化2019
モデルアーキテクチャ観点からの高速化2019モデルアーキテクチャ観点からの高速化2019
モデルアーキテクチャ観点からの高速化2019
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門
 
モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化
 
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!Transformer
 

Similar to Efficient Neural Architecture Search via Parameters Sharing @ ICML2018読み会

「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!Hirotaka Sato
 
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)VirtualTech Japan Inc.
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Db2 Warehouse セッション資料 db tech showcase
Db2 Warehouse セッション資料 db tech showcase Db2 Warehouse セッション資料 db tech showcase
Db2 Warehouse セッション資料 db tech showcase IBM Analytics Japan
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)NTT DATA Technology & Innovation
 
Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化Takashi Kanai
 
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)NTT DATA Technology & Innovation
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVRToru Makabe
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストールYasuhiro Arai
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGHideki Saito
 
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...Deep Learning JP
 
OSC 2011 Hokkaido 自宅SAN友の会(後半)
OSC 2011 Hokkaido 自宅SAN友の会(後半)OSC 2011 Hokkaido 自宅SAN友の会(後半)
OSC 2011 Hokkaido 自宅SAN友の会(後半)Satoshi Shimazaki
 
NetBackup AIR CLI
NetBackup AIR CLINetBackup AIR CLI
NetBackup AIR CLIvxsejapan
 
CouchDB JP & BigCouch
CouchDB JP & BigCouchCouchDB JP & BigCouch
CouchDB JP & BigCouchYohei Sasaki
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことbitbank, Inc. Tokyo, Japan
 

Similar to Efficient Neural Architecture Search via Parameters Sharing @ ICML2018読み会 (20)

「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
 
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
 
PostgreSQL 9.5 新機能紹介
PostgreSQL 9.5 新機能紹介PostgreSQL 9.5 新機能紹介
PostgreSQL 9.5 新機能紹介
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Db2 Warehouse セッション資料 db tech showcase
Db2 Warehouse セッション資料 db tech showcase Db2 Warehouse セッション資料 db tech showcase
Db2 Warehouse セッション資料 db tech showcase
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
 
Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化
 
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
 
HDFS Deep Dive
HDFS Deep DiveHDFS Deep Dive
HDFS Deep Dive
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
 
Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUG
 
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...
[DL輪読会]Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-...
 
OSC 2011 Hokkaido 自宅SAN友の会(後半)
OSC 2011 Hokkaido 自宅SAN友の会(後半)OSC 2011 Hokkaido 自宅SAN友の会(後半)
OSC 2011 Hokkaido 自宅SAN友の会(後半)
 
OSSを活用したIaCの実現
OSSを活用したIaCの実現OSSを活用したIaCの実現
OSSを活用したIaCの実現
 
NetBackup AIR CLI
NetBackup AIR CLINetBackup AIR CLI
NetBackup AIR CLI
 
OpenStack Updates
OpenStack UpdatesOpenStack Updates
OpenStack Updates
 
CouchDB JP & BigCouch
CouchDB JP & BigCouchCouchDB JP & BigCouch
CouchDB JP & BigCouch
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたこと
 

Recently uploaded

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 

Recently uploaded (9)

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 

Efficient Neural Architecture Search via Parameters Sharing @ ICML2018読み会

  • 1. © DeNA Co., Ltd. 論文紹介 Efficient Neural Architecture Search via Parameters Sharing ICML2018読み会 July 28, 2018 Tomohiro Kato AI System Dept. DeNA Co., Ltd.
  • 2. © DeNA Co., Ltd. 本資料について  本資料は ICML2018読み会@DeNA (2018/07/28) の発表資料です ⁃ https://connpass.com/event/92705/ 2
  • 3. © DeNA Co., Ltd. Agenda  はじめに  Neural Architechture Searchの概要  論文紹介  まとめ・所感 3
  • 4. © DeNA Co., Ltd. 自己紹介  加藤 倫弘 (かとう ともひろ)  ㈱ DeNA システム本部 AIシステム部  Computer Vision関連のプロジェクトを担当  最近書いた(link)  Chainer → NNVM/TVM → Androidの話  NN DistillerでPytorchモデルのpruningする  DeepLearningのモデル軽量化 (ICLR2018) 4 @_tkato_Twitter
  • 5. © DeNA Co., Ltd. はじめに  Efficient Neural Architecture Search via Parameters Sharing(ENAS)[1] Hieu Pham Melody Guan Barret Zoph Quoc Le Jeff Dean ⁃ 1000x less expensive than standard Neural Architecture Search ⁃ 450 GPUs for 3~4 days → 1 GPU for <16 hours  論文の選択理由 ⁃ 現実的な時間で実験可能なNAS • 自分のタスクでも試してみたい ⁃ 著者らの公式実装(TensorFlow)に惹かれた • ポイントであるParameters Sharingの実装が面白い • 実際に実装を解読して深く理解したい → Chainerで再現実装 5
  • 6. © DeNA Co., Ltd. Neural Architecture Search  目的に最適なモデルアーキテクチャを自動設計したい  強化学習(RL)ベース[1,3,4]、進化的計算(GA)ベース、Progressive Search[5]など  課題1:報酬計算のために、大量の候補モデル (child) の学習が必要で遅い ⁃ 精度推定用のモデルを使う ⁃ 候補モデルのweightを共有する(ENAS, DARTS[2])  課題2:探索空間が膨大 ⁃ 選択候補をあらかじめhandcraftしたり、モデルの一部を探索+繰り返し構造(NASNet[4]) 6 評価(精度、計算量、実行速度...)選択 探索空間 (レイヤー種別, パラメータ数...) 良いモデル
  • 7. © DeNA Co., Ltd. NAS family 7 NASNet[4] 1707.07012 CVPR2018 450GPU(P100) 3~4days NAS[3] 1611.01578 ICLR2017 800GPU(K40) 21~28days PNAS[5] 1712.00559 100GPU(P100) 1.5days ENAS[1] 1802.03268 ICML2018 1GPU(1080Ti) 0.45days
  • 8. © DeNA Co., Ltd. 実験結果: CIFAR10 8ENAS[1]のTable.2 より NAS familyをplot 800GPU(K40) 21~28days 100GPU(P100) 1.5days 1GPU(1080Ti) 0.45days 450GPU(P100) 3~4days ★
  • 9. © DeNA Co., Ltd. 実験結果: CIFAR10  1 GPUで 0.45日  精度はNASNet-A + CutOut よりやや劣る(- 0.34%) ⁃ 探索空間の大きさ? 9from Table.2 [1] K40 1080Ti 1080Ti P100 P100
  • 10. © DeNA Co., Ltd. ENASの基本設計 10 Child Controller 1 2 3 4 ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める from [1] ※1
  • 11. © DeNA Co., Ltd. ENASの基本設計 11 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 12. © DeNA Co., Ltd. ENASの基本設計 12 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 13. © DeNA Co., Ltd. ENASの基本設計 13 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 14. © DeNA Co., Ltd. ENASの基本設計 14 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 15. © DeNA Co., Ltd. ENASの基本設計 15 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 16. © DeNA Co., Ltd. ENASの基本設計 16 Child Controller 1 2 3 4 交互に出力(softmax) ・ノードの入力となるindex ・ノードのOp種 from [1] ※1 B.Zoph氏らの強化学習ベースのNASは基本同じ(NAS[3], NASNet[4]) ※2 論文では定義されていないが、説明のため本スライドで定義 探索空間はhandcrafted タスクによりメタなアーキテクチャ※2を決める ※1
  • 17. © DeNA Co., Ltd. ENASの基本設計  前記+2のメタアーキテクチャを定義 17 CNN micro search space RNN cell 2種類のセルのstack セル内部が探索対象 活性化関数と入力を推定 ControllerController Child Child from [1] LSTMやGRUのようなcellをつくりたい
  • 18. © DeNA Co., Ltd. ENAS key contribution  探索空間を1つのDAGとして定義し、subgraphをchildとする  child間でweight sharingするので、child毎にスクラッチ学習不要 18 接続するノードを都度controllerが決める ... from [1]
  • 19. © DeNA Co., Ltd. ENAS training loop  1-iteration毎にcontrollerからchildをサンプルして学習 ⁃ controllerのweightは固定だが、確率的にactionを出力するので毎回異なる ⁃ 1つの大きなグラフの1部だけをforward/backwardする ⁃ controllerは、childのvalidation accuracyを最大化させるように強化学習 19 for epoch for batch controllerでchildを1つ出力 childを1iteration学習 controllerをn-iteration学習 探索後、一番精度が良いモデルをベースにスクラッチで学習 (weight sharing用の制約がなくなるのでメタアーキテクチャを若干変える)
  • 20. © DeNA Co., Ltd. CNN micro serach space  Cellのスタックとしてモデルを設計しCell内をControllerで決める(NASNet[4])  macro search spaceより高精度 20 各セルはレイヤー間ではアーキテクチャ同一 ただしWeightはそれぞれ独立 ChildController from [1]
  • 21. © DeNA Co., Ltd. CNN micro serach space: Childの階層 21 Layer Cell Node Op add sep 3x3 sep 5x5 max 3x3 avg 3x3 id concat gather ※ 説明のため、一連の論文/実装とは厳密には異なる定義がありますfrom [1]
  • 22. © DeNA Co., Ltd. Cell  Conv CellとReduction Cellを定義(NASNet[3]) 22 Op種: sep3x3, sep5x5, max3x3, avg3x3, id 接続ルール • add(op1, op2)を5つconcatする • 各Opの入力は • 自Opより前のOp出力 • 2個前までのレイヤーの出力 Conv/Reductionは基本同じ構成 ただしReductionは • Cell入力前にstride2でdownsampling • 同時に出力チャネル数を2倍にする from [1]
  • 23. © DeNA Co., Ltd. 23 h[t-1] h[t] conv 1x1 concat Cell W0 W1 W2 W3 W4 Nodeの入出力のI/F (=NCHW) は基本同じだが、 チャネル数が異なる場合はconv1x1でI/Fをあわせる 入力毎にWeightが独立 入力に応じて選択 ※h[t],h[t-1]から各nodeへの入力は本来4本あるが、簡略化のため省略 ※ 接続しうる全てのエッジを表示 この中からcontrollerで選択
  • 24. © DeNA Co., Ltd. 24 h[t-1] h[t] conv 1x1 concat Cell W0 W1 W2 W3 W4 Nodeの入出力のI/F (=NCHW) は基本同じだが、 チャネル数が異なる場合はconv1x1でI/Fをあわせる 入力毎にWeightが独立 入力に応じて選択
  • 25. © DeNA Co., Ltd. 25 h[t-1] h[t] conv 1x1 concat Cell W0 W1 W2 W3 W4 Nodeの入出力のI/F (=NCHW) は基本同じだが、 チャネル数が異なる場合はconv1x1でI/Fをあわせる 入力毎にWeightが独立 入力に応じて選択
  • 26. © DeNA Co., Ltd. 26 h[t-1] h[t] conv 1x1 concat Cell W0 W1 W2 W3 W4 Nodeの入出力のI/F (=NCHW) は基本同じだが、 チャネル数が異なる場合はconv1x1でI/Fをあわせる 入力毎にWeightが独立 入力に応じて選択
  • 27. © DeNA Co., Ltd. Node, Op 27 sep 3x3 sep 5x5 max 3x3 avg 3x3 id concat gather C ch 5*C ch C ch  5種類のOpを事前に定義し、Controllerに 1つだけ 選択させる Op2 Add Op1 separable conv pooling 何もしない NASNet[4]では sep7x7, conv1x3など 12種のバリエーションがあった
  • 28. © DeNA Co., Ltd. Opの実装: sep3x3 28 c*h*w 5c*h*w c*h*w pw 1x1 dw 3x3 W0 W1 W2 W0 W1 W2 W0 W1 W2 bn relu h0 h1 h2 h5 ※1 sep 3x3 入力に応じてWeightを切り替える (予め、入力しうる数のWeightを持っておく) ※2 ※1 同様にseparable convを繰りかえす ※2 dwとpwの間にrelu-bnはなし(NASNet[4])
  • 29. © DeNA Co., Ltd. Opの実装: sep3x3 29 c*h*w 5c*h*w c*h*w pw 1x1 dw 3x3 W0 W1 W2 W0 W1 W2 W0 W1 W2 bn relu h0 h1 h2 h5 ※1 sep 3x3 ※1 同様にseparable convを繰りかえす ※2 dwとpwの間にrelu-bnはなし(NASNet[4]) 入力に応じてWeightを切り替える (予め、入力しうる数のWeightを持っておく) ※2
  • 30. © DeNA Co., Ltd. Opの実装: sep3x3 30 c*h*w 5c*h*w c*h*w pw 1x1 dw 3x3 W0 W1 W2 W0 W1 W2 W0 W1 W2 bn relu h0 h1 h2 h5 ※1 sep 3x3 入力に応じてWeightを切り替える (予め、入力しうる数のWeightを持っておく) ※2 ※1 同様にseparable convを繰りかえす ※2 dwとpwの間にrelu-bnはなし(NASNet[4])
  • 31. © DeNA Co., Ltd. Child全体 31 展開すると意外と大きい メタアーキテクチャとして必要な命令が多い (I/Fをあわせたり, downsamplingしたり) DAG全体のパラメータ数は5.3M (ResNet-50の1/5) childのパラメータ数は4.6M (from [1] Table.2) 3x3 or 5x5 の depthwise-conv と 1x1convがメイン 1-Childを全て書くと... (DAG全体でないので注意) ※Chainerによる実装 (Functionのみ表示) from [1]
  • 32. © DeNA Co., Ltd. controller  あるOpの前のindexとOp種を、2つずつ交互に出力 ⁃ 出力は決定的でなく確率的(uniform distribution) ⁃ sep3x3, sep5x5が出力されやすいようにバイアスの初期値を調整 32 外部入力なし。自身の埋め込みベクトルが最初の入力 from [1]
  • 33. © DeNA Co., Ltd. 実験条件(ENAS固有のもの)  Child ⁃ Momentum SGD with Nesterov (learning rateはcosine scheduling) ⁃ 1 iteration毎にchildを変えながら学習 ⁃ 精度向上のため、auxiliary head も lossに追加 (勾配増強、正則化の効果) ⁃ 探索後のスクラッチ学習ではScheduledDropPath (NASNet[4])  Controller ⁃ Adam / REINFORCE with baseline ⁃ rewardは valデータのランダムな1バッチのaccuracy (高速化) 33
  • 34. © DeNA Co., Ltd. 実験結果: CNN micro architecture CIFAR10  著者公開実装を利用した再試 https://github.com/melodyguan/enas ⁃ ./scripts/cifar10_micro_{serach or final}.sh を変更せず実行  architecture search時の学習曲線 34 child train loss child val/test acc controller reward lr search後のスクラッチ学習では test accuracy: 96.22% (err 3.78% <= 論文はerr 3.54%) subgraphを切り替えながら学習しているのに lossがきれいに落ちていくのは興味深い
  • 35. © DeNA Co., Ltd. まとめと所感  Efficient Neural Architecture Search via Parameters Sharing(ENAS) ⁃ 1000x less expensive than standard Neural Architecture Search ⁃ 1つの計算グラフの一部をchildとして学習させる ⁃ Weight Sharingして学習するために、Weightの切り替えなど複雑なグラフ  所感 ⁃ Chainerの再現実装(CNN micro search)を後日公開予定 35
  • 36. © DeNA Co., Ltd. Reference 1. Hieu Pham. 2018. Efficient Neural Architecture Search via Parameters Sharing. ICML2018 ⁃ http://proceedings.mlr.press/v80/pham18a.html https://github.com/melodyguan/enas 2. Hanxiao Liu. 2018. DARTS: Differentiable Architecture Search. arXiv:1806.09055 ⁃ https://arxiv.org/abs/1806.09055 https://github.com/quark0/darts 3. Barret Zoph. Neural Architecture Search with Reinforcement Learning. ICML2017 ⁃ https://arxiv.org/abs/1611.01578 4. Barret Zoph. Learning Transferable Architectures for Scalable Image Recognition. CVPR2018 ⁃ https://arxiv.org/abs/1707.07012 ⁃ https://github.com/tensorflow/models/tree/master/research/slim/nets/nasnet 5. C. Liu. Progressive Neural Architecture Search. arXiv:1712.00559 ⁃ https://arxiv.org/abs/1712.00559 36
  • 37. © DeNA Co., Ltd. 37 EOF

Editor's Notes

  1. 各childは50epoch x 12800 childとか
  2. RNNは、LSTMのようなセルを生成するということ
  3. NASNet-A? から。
  4. varianceをへらすためのbaseline async データ拡張 henormal