신경망에서 maxout이란 무엇입니까?


42

신경망에서 maxout 단위가 무엇인지 설명 할 수 있습니까? 그들은 어떻게 수행하고 기존 장치와 어떻게 다릅니 까?

Goodfellow 의 2013 "Maxout Network" 논문 을 읽으려고했습니다 . (요슈아 벤 지오 교수의 그룹에서), 그러나 나는 그것을 얻지 못합니다.

답변:


26

maxout 레이어는 활성화 기능이 입력의 최대 인 레이어입니다. 본 백서에 명시된 바와 같이, 최대 2 개의 단위를 가진 MLP조차도 모든 기능에 근접 할 수 있습니다. maxout의 성능이 좋은 이유에 대한 몇 가지 이유가 있지만 주된 이유는 다음과 같습니다.

드롭 아웃은 반복 할 때마다 임의의 하위 네트워크가 훈련되고 결국 다른 임의의 네트워크의 가중치가 평균화되는 모델 평균화의 형태로 생각할 수 있습니다. 가중치를 명시 적으로 평균화 할 수 없으므로 근사값이 사용됩니다. 이 근사값은 선형 네트워크에 대해 정확 합니다
. maxout에서는 입력을 maxout 레이어에 드롭하지 않습니다. 따라서 데이터 포인트의 최대 값을 출력하는 입력의 ID는 변경되지 않습니다. 따라서 드롭 아웃은 MLP의 선형 부분에서만 발생하지만 maxout 레이어로 인해 여전히 모든 기능에 근접 할 수 있습니다.
드롭 아웃은 선형 부분에서만 발생하므로 평균 근사치가 선형 네트워크에 대해 정확하기 때문에 모델 평균화가 더 효율적이라고 추측합니다.

그들의 코드는 여기에 있습니다 .


1
감사! 지금 maxout을 수행하는 방법을 이해합니다. 질문이 몇 개 있습니다. (1) "maxout에서 입력을 maxout 레이어에 드롭하지 않습니다."라고 쓴 내용에 따라 maxout out 전에 드롭 아웃을하지 않습니다. (2) MLP의 선형 부분은 무엇을 의미합니까? "드롭 아웃은 MLP의 선형 부분에서만 발생하지만 maxout 레이어로 인해 여전히 어떤 기능에 근접 할 수 있습니다."(3) 평균화가 더 좋은 이유는 무엇입니까? "선형 부분에서만 이탈이 발생하기 때문에 평균 근사치가 선형 네트워크에 대해 정확하므로 모델 평균화가 더 효율적이라고 추측합니다."
RockTheStar

2
max(zi)zi=kxk

감사! (3) "정확한"의 의미는 무엇이며 왜 NN이 maxout과 함께 선형화 되는가? 당신의 도움을 주셔서 대단히 감사합니다.
RockTheStar

1
Nah maxout은 네트워크 아키텍처입니다. 드롭 아웃은 정규화 기술입니다.
Opt

1
-1 Goodfellow의 maxout 활성화 기능을 올바르게 정의하지 않았습니다. @ toussaint-louverture의 답변이 맞습니다. stats.stackexchange.com/a/298705/20587
Trisoloriansunscreen

15

maxout 단위는 최대 k 개까지 조각 별 선형 볼록 함수를 학습 할 수 있습니다 . 1

k가 2 일 때 ReLU, absolute ReLU, leaky ReLU 등을 구현하거나 새로운 기능을 구현하는 방법을 배울 수 있습니다. k가 10이라고 가정하면 볼록 함수를 대략적으로 배울 수 있습니다.

k가 2 인 경우 :

Maxout 뉴런은 함수를 계산합니다 . ReLU와 Leaky ReLU는이 형식의 특별한 경우입니다 (예 : ReLU의 경우 w_1 ). 따라서 Maxout 뉴런은 ReLU 장치 (선형 작동 체제, 포화 없음)의 모든 이점을 누리며 단점이 없습니다 (ReLU 사망).max(w1Tx+b1,w2Tx+b2)w1,b1=0

그러나 ReLU 뉴런과 달리 모든 단일 뉴런에 대한 매개 변수 수를 두 배로 늘려서 총 매개 변수 수가 많아집니다. 2

자세한 내용은 여기를 참조하십시오.
1. DL 책
2. http://cs231n.github.io/neural-networks-1


모든 가중치가 아니라 바이어스 매개 변수의 수를 두 배로 늘립니다.
hans
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.