[Dl輪読会]AdaNet: Adaptive Structural Learning of Artificial Neural Networks
Post on 21-Jan-2018
413 Views
Preview:
Transcript
DL Hacks輪読
AdaNet: Adaptive Structural Learning of Artificial Neural Networks
2017/06/02黒滝 紘生
目次
- 概要
- 手法
- 実験
- まとめ
2
書誌情報
- AdaNet: Adaptive Structural Learning of Artificial Neural Networks
- Corinna Cortes, Xavi Gonzalvo, Vitaly Kuznetsov, Mehryar Mohri, Scott Yang
- ICML 2017 Accepted
- https://arxiv.org/abs/1607.01097 (Jul 5, 2016)
- Cited by 5 (Google Scholor, Jun 2, 2017)
3
概要
- NNのパラメタ数を減らしたいとき、大きな NNから初めて枝刈りすると、無駄が出る。
チューニングも大変。
- NNの構造(レイヤー数やノード数 )と、ウェイトを同時に学習する、 "ADANET"を作った。
- 理論的保証に基づいた目的関数で、モデルの複雑さにペナルティを与えた。
- CIFAR-10の派生タスクで実験して、他に負けない性能のネットワークを
自動で習得できることを示した。
- NNの構造学習にて理論的な境界をつけたのは、筆者の知る限り初めて。
4
目次
- 概要
- 手法
- 実験
- まとめ
5
目指したい一般的なネットワーク
- 出力(緑)は全ての入力・隠れユニットにつなげる
- 赤や黄色は、自分より下のレイヤーのユニットにつなげる
6
構造拡張アルゴリズムによる実現方法
- 青と緑 からスタート
1回目:黄、2:紫、3:赤、と作っていく
- 今は、赤を拡張したい
- (a)は、赤のレイヤー数が紫と等しい (2)(b)は、赤のレイヤー数が紫プラス 1 (3)
- (a)と(b)を共に作り、目的関数を最小化
小さかった方を採用して、次の周に行く
(次頁アルゴリズム )
7
構造拡張アルゴリズム
8
←戦略(a)と(b)で、ネットhとh'を生成
←hとh'で、目的関数をそれぞれ最適化
←hとh'で、良かった方を採用
目的関数
- (4)式から導かれる (5)式のFを最適化する。
9
目的関数
- (4)式から導かれる (5)式のFを最適化する。
10
ただし、
if u = h
else
目的関数
- (4)式から導かれる (5)式のFを最適化する。
11
ただし、
付け加えたネットの出力と正解ラベルの積
if u = h
else
目的関数
- (4)式から導かれる (5)式のFを最適化する。
12
ただし、 生成したネットのどちらか
if u = h
else
目的関数
- (4)式から導かれる (5)式のFを最適化する。
13
ただし、モデルの複雑さへのペナルティ
if u = h
else
目的関数
- (4)式から導かれる (5)式のFを最適化する。
14
ただし、
生成されたネットに対応する関数仮説集合H
if u = h
else
目的関数
- (4)式から導かれる (5)式のFを最適化する。
15
ただし、
仮説集合gに対するRademacher複雑度
if u = h
else
構造拡張アルゴリズム
16
←戦略(a)と(b)で、ネットhとh'を生成
←hとh'で、目的関数をそれぞれ最適化
←hとh'で、良かった方を採用
ネットワーク拡張候補の生成(WEAKLEARNER)
17
- (5)式の目標関数Fを正則化した、 (6)式のFを、wとhについて最小化する。
- R(w, h)は正則化項。ただし、後述の CIFAR10実験ではR=0。
- 「ランダムにチョイスする手も考えられる」などと書かれている
- Appendix. Cには、別のアルゴリズムが述べられている
構造拡張アルゴリズム
18
←戦略(a)と(b)で、ネットhとh'を生成
←hとh'で、目的関数をそれぞれ最適化
←hとh'で、良かった方を採用
目次
- 概要
- 手法
- 実験
- まとめ
19
実験: CIFAR-10- 元の理論が2クラス分類なので、それに合わせて、 CIFAR10のタスクを改変した。
- deer-truck- deer-horse- automobile-truck- cat-dog- dog-horse
20
実験: CIFAR-10- ADANET、普通のNN(NN , NN-GP)、ロジスティック回帰 (LR)で比較した。
- ADANETと、LRでは、ハイパーパラメータをグリッドサーチした。
- NNは、ハイパーパラメタ+レイヤー/ノード数を、グリッドサーチするバージョン (NN)と、
ハイパーパラメタ+レイヤー/ノード数を、Gaussian process banditsで探すバージョン (NN-GP)の2通りをやった。
21
結果: CIFAR-10- ADANETは高い精度を出した。
22
結果: CIFAR-10- ADANETはユニット数が少なかった。
- 難しい"cat-dog"では、より複雑な隠れ2層を選んだ。
23
結果: CIFAR-10- ADANETの亜種を色々作り、deer-truckで精度をテストした。
- SD: Rademacher複雑度の代理に、最終隠れ層の標準偏差 (SD)を使った
- R: 正則化項を とした
- P: 付け足すネットワークは、一回前のネットワークにだけ接続できる
- D: 前に加えたネットワークに、 Dropoutを使う。
24
実験: Criteo Click Rate Prediction dataset- https://www.kaggle.com/c/criteo-display-ad-challenge
- 7日分のimpressionと、クリック・非クリックラベル
- 今回は、ADANETとNNのハイパーパラメータを共に
Gaussian processes banditsでチューニングした
25
結果: Criteo Click Rate Prediction dataset- NNはサーチの結果、隠れ 4レイヤー×512ユニットとなった。
ADANETは、隠れ1レイヤーの512ユニットで、良い精度が出た。
26
目次
- 概要
- 手法
- 実験
- まとめ
27
まとめ
- NNの構造とパラメータを同時に学習する ADANETを作った
- 強い理論的保証をうまく使った
- モデル複雑度と実験誤差最小化のトレードオフを目的関数にした
- 自動で構造を決めながらも、グリッドサーチよりも良い結果を得た
28
補足: - ADANET.CVXというネットワーク拡張戦略の亜種が、 Appendix.Cに紹介されており、
より柔軟で効率良いネットワークができる、と述べているが、実験は一切為されていない。
「ADANETよりも探索空間が狭まってしまう」らしい
29
top related