함수가 매끄럽다면 왜 그라데이션 하강 속도가 빨라 집니까?


10

이제 "Scikit-Learn 및 TensorFlow를 사용한 실습 머신 러닝" 이라는 책을 읽었으며 11 장에는 ELU (지수 적 ReLU)에 대한 설명이 있습니다.

셋째,이 기능은 z = 0을 포함하여 모든 곳에서 부드럽습니다. z = 0만큼 좌우로 튀지 않기 때문에 그라데이션 하강 속도를 높이는 데 도움이됩니다.

여기에 이미지 설명을 입력하십시오

z수단은 상기 그래프에서 X 축. z < 0선에 곡선이 있고 해당 영역에서 도함수가 더 이상 같지 않기 때문에 도함수가 매끄럽다는 것을 이해합니다 0.

그러나 왜 함수가 "z = 0을 포함하여 모든 곳에서 부드럽다"고 그라디언트 디센트 (gradient descent)가 빨라지는 이유는 무엇입니까?


BTW 올바른 SE에 있습니까? 데이터 과학, 인공 지능 및 교차 검증 (및 MathSE) ... 많은 주제가 서로 밀접하게 관련되어있는 것 같습니다 ...
Blaszard

2
이 질문을 Data Science 또는 Cross Validated에 안전하게 게시하는 것이 좋습니다. 아마도 인공 지능에도 괜찮을지 모르지만 그 사이트에는 익숙하지 않습니다.
닐 슬레이터

좋은 질문. 매끄러움을 사용하면 다음 단계에서 기울기가 급격히 변할 수 있기 때문에 잠깐 동안 아기 단계를 취하는 대신 올바른 방향으로 대담한 단계를 수행 할 수 있습니다. 수렴 분석은 예를 들어, 매끄럽고 강하게 볼록한 최적화를위한 Nesterov의 가속 그라데이션 하강
Emre

@NeilSlater AI의 범위는 매우 불분명합니다. 그들은 그런 질문을 끝냅니다. 따라서 DS와 CV가 최선의 선택이 될 것입니다 :)
Dawny33

답변:


1

ReLU가 0에 불연속 미분을 가지고 있기 때문에 파생 상품 때문이라고 생각합니다. 따라서 정의를 사용하면 :

ff(x+ϵ)f(xϵ)2ϵ

그리고 매우 0에 가까운, 당신은 사람들의 많은 얻을 것이다 '점프'.x


0

예비 : 여기에 관련된 기능의 세 가지 속성이 있습니다 : 연속, 단조 및 차별화. RELU는 z = 0에서 구별 할 수없는 연속적이고 단조로운 너트입니다. 지수 relu 또는 ELU는 이러한 세 가지 속성입니다.

차이 또는 그라디언트는 방향을 제공합니다. 함수의 미분 값이 한 지점에서 정의되지 않은 경우 그라디언트의 방향은 해당 지점에서 결정되지 않습니다.

그래디언트 디센트를 적용 할 때 손실 함수가 꾸준히 감소하도록 매개 변수를 지속적으로 수정하려고합니다.

손실 함수의 미분 값이 어느 시점에서 정의되지 않으면 기울기가 결정되지 않습니다. 이것은 경사 하강이 잠재적으로 잘못된 방향으로 움직일 수 있음을 의미합니다. 이 불확실성으로 인한 지연의 크기는 학습 속도 및 기타 하이퍼 파라미터에 따라 다릅니다. 하이퍼 파라미터에 관계없이 통계적으로 z = 0에서 RELU의 미정의 미분은 경사 하강의 수렴 둔화에 기여합니다.


초기화 후 매개 변수가 정확히 z = 0이 될 가능성은 거의 없습니다.
Pieter

0

더 빠르거나 낮다는 것은 상대적인 용어이며 비교 대상의 맥락에서 이해되어야합니다. 따라서이를 이해하려면 먼저 다른 유형의 활성화 기능과 함께 경사 하강이 작동하는 방식을 고려해야합니다.

설정 예

크기가 1 인 숨겨진 레이어가 있는 MLP를 고려하십시오 .n

z1=W1x+b1

a1=f(z1)

...

zn=Wnan1+bn

y=f(zn)

여기서 는 활성화 함수입니다.f

탄과 시그 모이 드-사라지는 그라디언트

가 Tanh 또는 Sigmoid 활성화 기능 이라고 가정하십시오 . 이러한 함수의 파생은 -1에서 1 사이 또는 임의의 대해 공식적으로 사이에 경계가 있습니다 .ff(x)(1,1)x

이것은 "그라데이션 소실 문제"로 알려진 딥 러닝에서 매우 중요한 문제를 일으 킵니다. wrt 의 미분을 고려해 봅시다 . 체인 규칙에 따라 yW1

dfdW1=dfdWndWndWn1...dW2dW1

및 대 예고 그 0<i<n

dXidXi1=f(Wi1ai2+bi1)×ai2(1,1)

(첫 번째 항은 사이 하기 때문에 앞서 설명한 바와 같이 경계되고 사이도 로서 스쿼시 입력 값).(1,1)fai2(1,1)

따라서 은 기본적으로 각각 (0, 1) 사이의 많은 용어의 곱입니다. 이 클수록 (네트워크가 더 깊을수록) 곱해야 할 항이 많아지고 의 결과 기하 급수적으로 작아집니다. 이 지수 관계로 인해 그라디언트가 너무 작아 져 효과적으로 0으로 간주 할 수 있습니다. 그라디언트 하강에 대한 업데이트 규칙이 해당 그라디언트를 기반으로하기 때문에 그라디언트가 0 인 결과 학습이 전혀 발생하지 않습니다.dfdW1ndfdW1

RELU와 데드 뉴런

Relu는 일 때 미분 값이 항상 1 이므로 가 RELU 일 때 다음과 같이 소멸 구배 문제를 해결하기 위해 발명되었습니다 . ai>0f

dXidXi1=ai2
dfdW1=a1a2a3...an1

일 때 모두 좋고 훌륭 하지만 일 때마다 문제가 발생합니다. 이번에는 기울기가 0에 매우 가깝을뿐만 아니라 순수한 0입니다. 뉴런이 그곳에 도달하면 다시 돌아올 기회는 없습니다. 이것이 "Dead Neuron"문제로 알려진 이유입니다x>0x<0

새는 RELU와 ELU

누출 된 RELU 및 ELU는 RELU 이후의 자연스러운 개발입니다. 그것들은 일 때 1과 같지만 때 0 파생을 피함으로써 "죽은 뉴런"을 피함으로써 RELU와 유사합니다 .x>0x<1

나는 둘 사이의 차이점에 대한 원본 논문 을 인용한다 .

LReLU 및 PReLU도 음수 값을 갖지만 잡음이 강한 비활성화 상태를 보장하지는 않습니다. ELU는 더 작은 입력으로 음의 값으로 포화되어 앞으로 전파되는 변동 및 정보를 줄입니다.

직관적 인 설명은 다음과 같습니다. ELU에서 x가 충분히 작아 질 때마다 그라디언트는 매우 작고 포화되었습니다 (Tahn 및 Sigmoid와 동일한 방식으로). 작은 기울기는 학습 알고리즘이 포화 뉴런과의 상호 작용에 대해 걱정하지 않고 다른 가중치의 조정에 집중할 수 있음을 의미합니다.

3 차원 공간에서 매끄러운 표면으로 표현 될 수있는 차수 2의 다항식을 고려하십시오. 국소 최소값을 찾으려면 그라디언트 디센트 알고리즘은 x 및 y 방향의 가파른 정도를 고려해야합니다. x 방향과 y 방향에서 그래디언트가 음수이면 어느 쪽이 더 나은지 명확하지 않습니다. 따라서 중간에 경로를 선택하는 것이 합리적입니다. 그러나 우리가 이미 x 방향에서 모든 것이 평평하다는 것을 알고 있다면 (y 그라디언트), y 방향으로가는 것은 쉬운 일이 아닙니다. 즉, 검색 공간이 훨씬 작아집니다.

특별 참고

딥 러닝에는 충분한 경험적 증거 나이를 뒷받침 할 수있는 심층적 인 이해없이 많은 주장이 있습니다. ELU의 경우 일부 데이터 세트에 대해 더 빠른 수렴이 발생하는 것이 사실 일 수도 있지만 다른 데이터 세트에 대해 학습 알고리즘이 로컬 최대 값에 머물러있게하는 것도 사실 일 수 있습니다. 우리는 아직 충분히 모른다.


0

왜 매끄러운 함수가 더 빨리 최적화되지만 수학적인 증거가 없는지에 대한 직관적 인 개념이 있습니다.

그라디언트 디센트는 무게 변화를 결정하기 위해 활성화 함수의 미분을 계산합니다. 활성화 기능에 하드 컷 (예 : ReLu의 경우 z = 0)이있는 경우 가중치 변경시 장치의 활성화가 특정 데이터 포인트에 대해 급격히 (즉, 항상 0 또는 선형) 변경 될 수 있습니다.

다른 가중치는 특정 데이터 포인트에 대해 특정 단위의 이처럼 근본적으로 다른 동작에 적응해야합니다. 그러나 다음 에포크 동안 장치의 동작이 급격히 다시 변경되면 네트워크는 이전 에포크의 변경에 계속 적응합니다.

매끄러운 기능으로 그러한 급진적 인 변화는 없습니다. 따라서 네트워크가 더 점진적으로 안정화 될 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.