Source-linked AI summary

Maxout Networks

Ian J. Goodfellow, David Warde-Farley, Mehdi Mirza, Aaron Courville, Yoshua Bengio

arXiv:1302.4389v4stat.MLcs.LG

TL;DR

이 논문은 dropout의 근사적 모델 평균을 더 효과적으로 활용하도록 모델을 설계하는 방법을 다룬다. dropout을 사용한 최적화와 평균화를 개선하기 위해 maxout을 도입하고, 네 개의 벤치마크 데이터셋에서 최고 수준의 classification 성능을 달성한다.

  • 문제

    이 논문은 dropout을 위해 특별히 설계한 모델이 임의의 모델보다 dropout의 근사적 모델 평균화 동작을 더 효과적으로 활용할 수 있는지 묻는다.

  • 방법

    저자들은 dropout을 사용한 최적화를 촉진하고 dropout의 근사적 모델 평균화를 개선하도록 설계된 모델인 maxout을 도입한다.

  • 결과

    dropout을 적용한 maxout은 평가한 네 개의 벤치마크 데이터셋 모두에서 최고 수준의 성능을 달성했다.

  • 핵심 시사점 및 한계

    이 결과는 maxout이 dropout을 사용한 학습에 특히 적합한 activation function임을 뒷받침한다.

Abstract

from arXiv · show

We consider the problem of designing models to leverage a recently introduced approximate model averaging technique called dropout. We define a simple new model called maxout (so named because its output is the max of a set of inputs, and because it is a natural companion to dropout) designed to both facilitate optimization by dropout and improve the accuracy of dropout's fast approximate model averaging technique. We empirically verify that the model successfully accomplishes both of these tasks. We use maxout and dropout to demonstrate state of the art classification performance on four benchmark datasets: MNIST, CIFAR-10, CIFAR-100, and SVHN.

1. 서론

Dropout은 parameter-sharing model ensemble을 학습하고 그 모델들의 예측을 낮은 비용으로 근사 평균하는 방법을 제공하며, 다양한 과제에서 성능을 향상시킨다(Hinton et al., 2012). 이 논문은 dropout의 model-averaging 능력을 강화하는 모델을 설계해야 한다고 주장하고, 네 개의 benchmark dataset에서 state-of-the-art 결과를 달성하는 maxout을 제안한다.

  • 배경: Dropout은 대규모 parameter-sharing ensemble을 학습하고 그 모델들의 예측을 낮은 비용으로 근사 평균한다.이는 audio classification과 large-scale object recognition을 포함한 과제에서 state-of-the-art 성능을 향상시켰다(Hinton et al., 2012).
  • 동기: 이 논문은 dropout을 무차별적이고 제한적인 개선책으로 다루는 관점에 문제를 제기하고, 대신 dropout의 averaging mechanism을 중심으로 구체적으로 모델을 설계할 것을 주장한다.이 접근법은 dropout을 임의로 적용하기보다 그 능력을 강화하는 것을 목표로 한다.
  • 동기: Dropout 학습은 일반적인 stochastic gradient descent와 상당히 다르며, parameter space에서 상대적으로 큰 보폭으로 update할 때 가장 효과적이다.이 영역에서는 각 update가 모델에 유의미한 변화를 줄 수 있다.
  • 기여: Maxout은 dropout을 사용한 optimization과 dropout의 model-averaging 성능을 모두 향상시키도록 설계된 단순한 모델로 제안된다.저자들은 dropout과 함께 maxout을 사용해 네 개의 benchmark dataset에서 state-of-the-art 결과를 달성한다.

2. dropout 검토

Dropout은 각 training example마다 서로 다른 binary mask를 사용해 parameter를 공유하는 masked sub-model ensemble을 학습한다. 기하급수적으로 큰 ensemble은 비용 효율적인 predictive averaging을 필요로 하며, 여기에는 적절한 model family에 대한 geometric mean이 포함된다.

  • Dropout은 input과 hidden layer의 variable을 무작위로 masking해 하나의 parameter set을 공유하는 sub-model을 학습한다.각 mask μ는 member distribution p(y | v; θ, μ)를 정의하며, training은 각 example에서 그 gradient를 따른다.
  • Dropout은 기하급수적으로 많은 model을 생성하므로, prediction에는 그 output을 averaging하기 위한 계산 가능한 근사가 필요하다.Model의 functional form에 따라 ensemble의 prediction을 효율적으로 결합하는 방법이 결정된다.
  • Softmax model에서는 masked model의 predictive distribution에 대한 geometric mean을 renormalizing하면 비용 효율적인 ensemble prediction을 얻을 수 있다.

3. maxout 설명

Maxout은 hidden layer에서 학습된 affine response들의 최댓값을 취하는 maxout unit을 사용하는 feed-forward architecture다. Weight multiplication 전에 input을 masking해 dropout을 지원하며, 폭넓은 convex activation class를 근사할 수 있다.

  • Maxout unit: Maxout은 conventional activation을 k개의 학습된 affine feature response 중 최댓값을 계산하는 unit으로 대체한다.Convolutional network에서는 spatial location에 더해 feature map이 k개 channel에 걸쳐 pooling된다.
  • Dropout: Dropout training 중에는 max operator의 input이 아니라 weight와의 multiplication 직전에 mask를 적용한다.
  • Activation flexibility: Multiple dimension에서 maxout unit은 arbitrary convex function을 근사할 수 있으며, rectified-linear, absolute-value, approximate quadratic activation에 대응하는 동작도 포함한다.Figure 1은 one-dimensional input을 사용한 two-dimensional diagram에서 이러한 activation-function construction을 보여준다.
  • Representation properties: Maxout representation은 sparse하지 않지만 gradient는 매우 sparse하며, dropout은 training 중 effective representation을 인위적으로 sparsify한다.Maxout은 한쪽 또는 다른 쪽에서 saturate할 수 있지만, 이는 measure-zero event로 설명된다.

4. Maxout은 universal approximator다

Maxout network는 universal approximator다. unit당 affine component를 임의로 많이 사용하면, 두 개의 hidden maxout unit만으로도 compact domain에서 임의의 continuous function을 임의의 정밀도로 근사할 수 있다. 이 증명은 piecewise-linear approximation과 continuous piecewise-linear function을 convex piecewise-linear function 두 개의 차로 표현하는 방법을 결합한다.

  • 증명 메커니즘: 이 구성은 모든 continuous piecewise-linear function을 convex piecewise-linear function 두 개의 차로 표현할 수 있기 때문에 성립한다.각 convex component는 원하는 근사 정밀도를 달성할 수 있도록 affine component를 충분히 갖춘 maxout unit으로 표현된다.
  • 증명 메커니즘: Stone-Weierstrass 정리에 따르면 compact domain 위의 모든 continuous function은 먼저 continuous piecewise-linear function으로 임의의 정밀도까지 근사할 수 있다.임의의 양의 ϵ에 대해 근사 함수 g는 compact domain 전체에서 |f(v) − g(v)| < ϵ를 만족한다.
  • Universal approximator 정리: 두 개의 hidden maxout unit은 compact domain에서 모든 continuous function을 임의의 정밀도로 근사할 수 있다.이는 maxout network에 대한 universal approximator 정리다.
  • 증명 메커니즘: 각 unit이 affine component를 충분히 많이 가지면, 결과적인 piecewise-linear 표현은 두 개의 hidden unit으로 구성된 maxout network와 정확히 일치한다.affine component의 수를 늘리면 원하는 근사 정확도를 조절할 수 있다.

5. 벤치마크 결과

Maxout은 MNIST, CIFAR-10, CIFAR-100, SVHN에서 당시 최고 수준의 분류 성능을 달성했다. 보고된 테스트 오류율은 MNIST 0.45%, CIFAR-10 11.68%, CIFAR-100 38.57%, SVHN 2.47%였다.

  • 전체 결과: Maxout은 평가한 네 벤치마크 데이터셋 모두에서 당시 최고 기록을 세웠다.
  • MNIST: 표준 MNIST에서 0.45% 테스트 오류율을 달성해 spatial max pooling을 적용한 세 개의 convolutional maxout layer로 새로운 최고 기록을 세웠다.
  • CIFAR-10: CIFAR-10에서 11.68% 테스트 오류율을 달성해 convolutional maxout, dropout, data augmentation으로 최고 기록을 2 percentage point 이상 개선했다.
  • CIFAR-100: CIFAR-100에서 38.57% 테스트 오류율을 달성했으며, 광범위한 cross-validation 없이 CIFAR-10에서 찾은 hyperparameter를 적용했음에도 당시 최고 기록이었다.
  • SVHN: SVHN에서 2.47% 테스트 오류율을 달성해 세 개의 convolutional maxout hidden layer와 하나의 densely connected maxout layer로 당시 최고 기록을 세웠다.

6. rectifier와의 비교

대규모 cross-validation 실험에서 maxout은 rectifier보다 명확히 우수했으며, preprocessing과 model size를 적용하자 rectifier와 dropout의 성능도 기존 state of the art를 넘어섰다. rectifier가 maxout의 일반화 성능에 근접하려면 대략 k배 더 많은 state와 parameter가 필요했다.

  • rectifier와의 비교: 대규모 cross-validation 실험에서 maxout은 rectifier보다 명확한 개선을 보였으며, preprocessing과 model size를 적용하자 rectifier와 dropout의 결과도 기존 state of the art를 넘어섰다.비교에는 네 가지 architecture가 사용되었으며, parameter 수와 unit 수를 각각 맞춘 rectifier network와 더 큰 rectifier model이 포함되었다.
  • rectifier와의 비교: rectifier의 성능은 output unit 수와 상관되는 반면, maxout의 성능은 filter 수와 상관된다.rectifier unit은 cross-channel pooling의 이점을 거의 얻지 못하지만, maxout은 filter를 늘릴수록 성능이 향상된다.
  • rectifier와의 비교: rectifier가 비슷한 일반화 성능에 도달하려면 maxout보다 약 k배 더 많은 state와 parameter가 필요하다.가장 강력한 rectifier 설정은 cross-channel pooling 없이 동일한 filter 수를 사용하지만, unit은 k배 더 많이 필요하다.

7. 모델 averaging

이 절에서는 locally linear한 deep network에서 dropout averaging이 정확하고 tanh보다 maxout에서 더 정확함을 보여 maxout과 dropout의 호환성을 설명한다. 또한 dropout이 maxout unit으로 하여금 training input 주변에 넓은 linear region을 형성하도록 유도한다고 주장한다.

  • Model averaging: 샘플링된 sub-model의 prediction이 이에 가까워지고 있음에도 weight를 2로 나누는 방식이 최상의 test error를 달성하며, 이는 dropout이 여러 model의 averaging을 근사한다는 해석을 뒷받침한다.Figure 7에 따르면 이러한 대응은 maxout에서 더 분명하다.
  • Model averaging: 서로 다른 dropout mask에서 방문하는 input에 대해 locally linear한 경우, 더 깊은 architecture에서 dropout은 exact model averaging을 수행한다.이러한 exactness는 softmax regression에서 multiple linear layer로 확장되며, multiple linear layer는 동일한 representational power를 유지하지만 factorized weight를 통해 다른 inductive bias를 부과한다.
  • Model averaging: Dropout training은 maxout unit이 training input 주변에 넓은 linear region을 발달시키도록 유도하여, input이 drop될 때 sub-model이 유사한 activation을 유지하도록 돕는다.각 sub-model이 잘 prediction해야 하므로 각 unit은 dropout mask 전반에서 대략 동일한 activation을 가져야 한다. 반면 임의의 parameter는 effective input을 clean-input region 바깥으로 이동시킬 수 있다.
  • Model averaging: Dropout의 weight-division approximation은 tanh unit보다 maxout unit에서 sampled-model averaging과 더 정확하게 일치한다.Figure 8은 divided-weight prediction과 sampled-model prediction의 geometric mean 사이의 KL divergence를 사용해 이러한 일치도를 측정하며, sample 수가 증가할수록 divergence가 감소한다.

8. 최적화

Maxout은 training error를 낮추고, 깊이가 증가해도 optimization을 유지하며, filter 사용과 gradient 변동성을 개선해 pooled rectifier unit보다 dropout optimization을 향상한다. Dropout은 큰 learning rate의 이점을 얻고 변동하는 objective를 빠르게 탐색한다는 점에서 SGD와 다르다.

  • Optimization 실험: Maxout은 SVHN training error를 rectifier unit의 7.3%에서 5.1%로 낮췄으며, 여섯 층과 일곱 층의 pooled rectifier와 달리 깊이가 증가해도 성능이 완만하게 저하됐다.SVHN test에는 두 개의 hidden layer를 갖는 소형 convolutional model을 사용했으며, 깊이 실험에는 layer당 80 units와 k=5를 갖는 MNIST model을 사용했다.
  • Activation dynamics: Dropout training 중 rectifier는 반대 방향보다 positive activation에서 zero activation으로 더 자주 전이하는 반면, maxout은 positive와 negative sign 사이를 대략 같은 비율로 오간다.이러한 activation-transition 대비는 rectifier unit과 maxout unit의 optimization 관련 차이로 제시된다.
  • Dropout optimization: Dropout optimization은 큰 learning rate와 변동하는 objective의 이점을 얻어 여러 방향을 빠르게 탐색하고, 성능을 악화시키는 방향은 배제한다. 이는 안정적인 작은 step을 사용하는 SGD와 다르다.Dropout mask가 gradient를 크게 변화시키기 때문에 dropout은 일반적인 stochastic gradient descent와 다르게 동작한다. 그렇지 않으면 training은 SGD로 단순화된다.
  • Gradient flow: MNIST dropout training 중 Maxout은 rectifier보다 output-weight gradient variance가 1.4× 더 컸고, first-layer gradient variance는 3.4× 더 컸다.rectifier 네트워크가 하위 층으로 전달되는 gradient flow 감소를 겪는지 확인하기 위해 dropout mask 전반의 variance를 모니터링한 측정이다.

9. 결론

이 논문은 dropout에 적합하고 universal approximation theorem으로 뒷받침되는 activation function인 maxout을 제안한다. 실험 결과, deep model에서 dropout은 model averaging을 잘 근사하며, tanh unit보다 maxout에서 averaging이 더 정확한 것으로 나타난다.

  • Maxout은 dropout을 사용한 학습에 특히 적합하도록 설계된 새로운 activation function이며, universal approximation theorem이 증명되어 있다.
  • Dropout은 deep model에서 model averaging을 경험적으로 잘 근사한다.
  • Model-averaging approximation은 tanh unit보다 maxout unit에서 더 정확하므로, maxout은 dropout의 averaging 동작을 활용할 수 있다.
Loading 1302.4389v4…