역 전파 신경망에서 비선형 활성화 함수를 사용해야하는 이유는 무엇입니까?


139

신경망에서 몇 가지 내용을 읽었으며 단일 계층 신경망의 일반적인 원리를 이해합니다. 추가 레이어의 필요성을 이해하지만 왜 비선형 활성화 함수가 사용됩니까?

이 질문은 다음과 같습니다 : 역 전파에 사용되는 활성화 함수의 파생물은 무엇입니까?


답변:


167

활성화 기능의 목적은 네트워크에 비선형 성 을 도입 하는 것입니다

결과적으로 설명 변수와 비선형 적으로 변하는 응답 변수 (일명 대상 변수, 클래스 레이블 또는 점수)를 모델링 할 수 있습니다.

비선형 출력 (- 이것 단어 인 직선을 렌더링하는 출력과 동일하지 입력의 선형 조합으로부터 재생 될 수 없다는 것을 의미 아핀 ).

그것을 생각하는 또 다른 방법 : 네트워크에 비선형 활성화 함수가 없으면 NN은 레이어 수에 관계없이 단일 레이어 퍼셉트론처럼 작동합니다.이 레이어를 합하면 또 다른 선형 함수가 제공되므로 (위의 정의 참조).

>>> in_vec = NP.random.rand(10)
>>> in_vec
  array([ 0.94,  0.61,  0.65,  0.  ,  0.77,  0.99,  0.35,  0.81,  0.46,  0.59])

>>> # common activation function, hyperbolic tangent
>>> out_vec = NP.tanh(in_vec)
>>> out_vec
 array([ 0.74,  0.54,  0.57,  0.  ,  0.65,  0.76,  0.34,  0.67,  0.43,  0.53])

백프로 프 ( 쌍곡 탄젠트 )에 사용되는 공통 활성화 함수 는 -2에서 2까지 평가되었습니다.

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


15
왜 선형성을 제거하고 싶습니까?
corazza

17
모델링하려는 데이터가 비선형 인 경우 모델에서 해당 데이터를 고려해야합니다.
doug

38
한 문장의 답 : << 단일 퍼셉트론처럼 행동하는 레이어 수에 관계없이 (선형 함수가 함께 추가되어 선형 함수를 제공하기 때문에). >> . 좋은!
자치

12
eski가 언급했듯이 정류 선형 활성화 함수는 매우 성공적이며, 목표를 모델링 / 대략적인 함수로 만드는 것이라면 모든 단계에서 비선형 성을 제거하는 것이 반드시 올바른 대답은 아닙니다. 충분한 선형 조각을 사용하면 거의 모든 비선형 함수를 높은 정확도로 근사 할 수 있습니다. 나는 이것이 정류 선형 유닛이 왜 작동하는지에 대한 좋은 설명을 찾았습니다. stats.stackexchange.com/questions/141960/…
tegan

11
@tegan 정류 된 선형 활성화 함수는 비선형입니다. 귀하의 의견이 답변과 어떤 관련이 있는지 잘 모르겠습니다.
endolith

49

그러나 매우 제한된 경우에 선형 활성화 기능을 사용할 수 있습니다. 실제로 활성화 기능을 더 잘 이해하려면 일반적인 최소 제곱 또는 선형 회귀를 보는 것이 중요합니다. 선형 회귀 분석은 입력 값과 결합 할 때 설명 변수와 목표 변수간에 최소 수직 효과를 초래하는 최적의 가중치를 찾는 것을 목표로합니다. 요컨대, 예상 출력에 아래와 같이 선형 회귀가 반영되면 선형 활성화 기능을 사용할 수 있습니다. 그러나 아래 두 번째 그림에서와 같이 선형 함수는 원하는 결과를 얻지 못합니다. (중간 그림). 그러나 아래에 표시된 비선형 함수는 원하는 결과를 생성합니다.

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

선형 활성화 기능이있는 신경망은 아키텍처가 얼마나 복잡한 지에 관계없이 한 층 깊이에서만 유효하기 때문에 활성화 함수는 선형 일 수 없습니다. 네트워크 입력은 일반적으로 선형 변환 (입력 * 가중치)이지만 실제 환경과 문제는 비선형입니다. 들어오는 데이터를 비선형으로 만들기 위해 활성화 함수라는 비선형 매핑을 사용합니다. 활성화 기능은 특정 신경 기능의 존재를 결정하는 의사 결정 기능입니다. 0과 1 사이에 매핑되며 0은 기능이 없음을 의미하고 1은 기능이 있음을 의미합니다. 불행히도, 가중치에서 발생하는 작은 변화는 0 또는 1 만 취할 수 있기 때문에 활성화 값에 반영 될 수 없습니다. 따라서 비선형 함수는이 범위에서 연속적이고 차별화되어야합니다. 신경망은 -infinity에서 + infinite까지 모든 입력을받을 수 있어야하지만, 경우에 따라 {0,1} 또는 {-1,1} 사이의 출력에 매핑 할 수 있어야합니다. 활성화 기능이 필요합니다. 신경망에서의 목표는 가중치와 입력의 비선형 조합을 통해 비선형 결정 경계를 생성하는 것이기 때문에 활성화 함수에 비선형 성이 필요합니다.


1
+1, 그러면 비선형 함수가 완벽한 경계를 설정하는 데 사용된다고 추론 할 수 있습니까?
SIslam

1
그렇습니다. 단지 0 또는 1을 계속 생성하면 0.4 또는 0.78을 생성하여 경계 범위에서 연속적으로 만들 수 있습니다.
chibole

3
신경망은 -infinity에서 + infinite까지 입력을받을 수 있어야하지만 {0,1} 또는 {-1,1} 사이의 출력에 매핑 할 수 있어야합니다. ReLU 제한은 신경망 모델의 숨겨진 계층 내에서만 사용해야한다는 것입니다.
Cloud Cho

21

신경망에서 선형 활성화 함수 만 허용하면 출력은 입력 의 선형 변환 일 뿐이므로 범용 함수 근사값 을 형성하기에 충분하지 않습니다 . 이러한 네트워크는 행렬 곱셈으로 표현 될 수 있으며 그러한 네트워크에서 매우 흥미로운 동작을 얻을 수 없습니다.

모든 뉴런이 아핀 활성화 함수 (즉, 선형 활성화 함수의 일반화 인 상수 및 형태 f(x) = a*x + c인 활성화 함수)를 갖는 경우에도 마찬가지 입니다. 입력에서 출력으로 아핀 변환 이 발생합니다. 별로 흥미롭지 않습니다.ac

신경망은 출력 계층에서와 같이 선형 활성화 기능을 가진 뉴런을 매우 잘 포함 할 수 있지만, 네트워크의 다른 부분에서 비선형 활성화 기능을 가진 뉴런 회사가 필요합니다.

참고 : 흥미로운 예외는 DeepMind의 합성 그라디언트 입니다. 이는 작은 신경망을 사용하여 활성화 값이 지정된 역 전파 패스의 그라디언트를 예측하고 숨겨진 레이어가없는 신경 네트워크를 사용하여 벗어날 수 있음을 발견했습니다. 선형 활성화 만 가능합니다.


1
복수의 숨겨진 레이어를 사용하는 선형 활성화 기능으로 고차 함수를 근사화 할 수 있습니다. 범용 근사 정리는 숨겨진 계층이 하나만있는 MLP에만 적용됩니다.
eski

실제로, 나는 당신이 아핀 활성화 함수에 대한 당신의 진술에서 아핀 변환을 초래한다고 믿지만, 변형이 역 전파 (또는 다른 수단)를 통해 학습된다는 사실은 원래의 질문에 관한 한 완전히 쓸모가 없습니다.
eski

4
@eski 아니요, 선형 활성화 함수만으로 고차 함수를 근사화 할 수 없으며 , 레이어 수에 관계없이 선형 (또는 마지막 레이어에 추가 상수 노드가있는 경우 추가) 함수 및 변환 만 모델링 할 수 있습니다. 있다.
HelloGoodbye

활성화 함수의 주요 목적은 신경망이 비선형 결정 경계를 생성하도록하는 것입니다.
stackoverflowuser2010

@ stackoverflowuser2010 그것을 보는 한 가지 방법입니다. 그러나 활성화 기능에는 그 이상이 있습니다. 활성화 함수 에 대한 Wikipedia의 기사 는 여러 가지 활성화 함수를 나열합니다 (하나는 비선형). 그리고 활성화 함수가 가질 수있는 다른 품질을 비교합니다.
HelloGoodbye

9

선형 활성화 및 임의의 수의 숨겨진 층을 갖는 피드-포워드 신경망은 숨겨진 층이없는 선형 신경망과 동일하다. 예를 들어 두 개의 숨겨진 레이어가 있고 활성화되지 않은 신경망을 생각해 봅시다. 여기에 이미지 설명을 입력하십시오

y = h2 * W3 + b3 
  = (h1 * W2 + b2) * W3 + b3
  = h1 * W2 * W3 + b2 * W3 + b3 
  = (x * W1 + b1) * W2 * W3 + b2 * W3 + b3 
  = x * W1 * W2 * W3 + b1 * W2 * W3 + b2 * W3 + b3 
  = x * W' + b'

여러 선형 변환 조합을 하나의 변환으로 대체 할 수 있고 여러 바이어스 항의 조합이 단일 바이어스이기 때문에 마지막 단계를 수행 할 수 있습니다. 선형 활성화를 추가하더라도 결과는 동일합니다.

그래서 우리는이 신경망을 단일 층 신경망으로 대체 할 수있었습니다. 이것은 층으로 확장 될 수 있습니다 n. 이것은 레이어를 추가해도 선형 신경망의 근사 력이 전혀 증가하지 않음을 나타냅니다. 비선형 함수를 근사화하려면 비선형 활성화 함수가 필요하며 대부분의 실제 문제는 매우 복잡하고 비선형입니다. 실제로 활성화 함수가 비선형 일 때, 충분히 많은 숨겨진 단위를 가진 2 계층 신경망은 보편적 인 함수 근사치 인 것으로 입증 될 수 있습니다.


5

"이 논문은 Stone-Weierstrass Theorem과 Gallant and White의 코사인 스 쿼셔를 사용하여 브리티시 스쿼시 기능을 사용하는 표준 멀티 레이어 피드 포워드 네트워크 아키텍처가 원하는 정도의 정확도로 거의 모든 관심 기능을 근사 할 수 있음을 확립합니다. 단위를 사용할 수 있습니다. " ( Hornik et al., 1989, Neural Networks )

스 쿼싱 함수는 예를 들어 시그 모이 드 활성화 함수와 같이 [0,1]에 매핑되는 비선형 활성화 함수입니다.


3

순수한 선형 네트워크가 유용한 결과를 제공 할 수있는 경우가 있습니다. 모양이 (3,2,3) 인 3 개의 계층으로 구성된 네트워크가 있다고 가정합니다. 중간 레이어를 2 차원으로 만 제한함으로써 원래 3 차원 공간에서 "가장 적합한 평면"인 결과를 얻습니다.

그러나 NMF, PCA 등과 같은이 형태의 선형 변환을 쉽게 찾을 수있는 방법이 있습니다. 그러나 이는 다중 계층 네트워크가 단일 계층 퍼셉트론과 같은 방식으로 작동하지 않는 경우입니다.


2

비선형 활성화 함수 의 논리를 이해하려면 먼저 활성화 함수가 사용되는 이유를 이해해야합니다. 일반적으로 실제 문제에는 사소하지 않은 비선형 솔루션이 필요합니다. 따라서 비선형 성을 생성하는 함수가 필요합니다. 기본적으로 활성화 함수는 입력 값을 원하는 범위로 매핑하면서이 비선형 성을 생성하는 것입니다.

그러나 선형 활성화 함수는 선형 회귀와 같은 숨겨진 레이어가 필요하지 않은 매우 제한된 경우에 사용할 수 있습니다. 숨겨진 계층의 수와는 무관하게,이 네트워크는 단 한 단계로 수행 될 수있는 입력의 선형 조합을 생성 할 것이기 때문에 이러한 종류의 문제에 대해 신경망을 생성하는 것은 무의미합니다. 즉, 단일 레이어처럼 동작합니다.

연속적인 차별화 와 같은 활성화 기능에 대한 몇 가지 더 바람직한 특성이 있습니다. 우리는 역 전파를 사용하기 때문에 우리가 생성하는 함수는 언제라도 구별 할 수 있어야합니다. 나는 강하게에서 활성화 기능에 대한 위키 피 디아 페이지를 확인하기 위해 조언을 여기에 주제의 더 나은 이해를 할 수 있습니다.


2

몇 가지 좋은 답변이 있습니다. Christopher M. Bishop의 "Pattern Recognition and Machine Learning"책을 지적하는 것이 좋습니다. 여러 ML 관련 개념에 대한 심층적 인 통찰력을 얻는 데 도움이되는 책입니다. 229 쪽에서 발췌 (5.1 항) :

네트워크에있는 모든 숨겨진 장치의 활성화 기능이 선형 인 경우 그러한 네트워크에 대해 숨겨진 장치가없는 동등한 네트워크를 항상 찾을 수 있습니다. 이는 연속 선형 변환의 구성 자체가 선형 변환이라는 사실에서 비롯됩니다. 그러나 숨겨진 단위의 수가 입력 또는 출력 단위의 수보다 적 으면 네트워크에서 생성 할 수있는 변환은 입력에서 출력으로의 가장 일반적인 선형 변환이 아닙니다. 숨겨진 단위. 12.4.2 절에서 우리는 선형 단위의 네트워크가 주요 성분 분석을 일으킨다는 것을 보여준다. 그러나 일반적으로 선형 단위의 다층 네트워크에는 거의 관심이 없습니다.


1

내가 기억하는 것처럼-sigmoid 함수는 BP 알고리즘에 적합한 파생물을 계산하기 쉽기 때문에 사용됩니다. f (x) (1-f (x))와 같은 간단한 것입니다. 나는 수학을 정확히 기억하지 못한다. 실제로 파생물이있는 모든 기능을 사용할 수 있습니다.


7
내가 기억하는 것처럼 함수는 여전히 단조 증가하고 싶습니다. 따라서 어떤 기능도 없습니다 .
Novak

1

여러 뉴런의 계층화 된 NN을 사용하여 선형 적으로 분리 할 수없는 문제를 배울 수 있습니다. 예를 들어 XOR 기능은 단계 활성화 기능이있는 두 개의 레이어로 얻을 수 있습니다.


0

가능한 한 간단하게 설명하겠습니다.

신경망은 패턴 인식에 사용됩니까? 패턴 찾기는 매우 비선형 기술입니다.

인수를 위해 모든 단일 뉴런에 대해 선형 활성화 함수 y = wX + b를 사용하고 y> 0-> class 1 else class 0과 같은 것을 설정한다고 가정하십시오.

이제 우리는 제곱 오차 손실을 사용하여 손실을 계산하고 다시 전파하여 모델이 잘 학습하도록 할 수 있습니까?

잘못된.

  • 마지막 숨겨진 레이어의 경우 업데이트 된 값은 w {l} = w {l}-α * X입니다.

  • 마지막으로 숨겨진 두 번째 레이어의 경우 업데이트 된 값은 w {l-1} = w {l-1}-α * w {l} * X입니다.

  • i 번째 마지막 숨겨진 계층의 경우, 업데이트 된 값은 w {i} = w {i}-α * w {l} ... * w {i + 1} * X입니다.

이로 인해 모든 가중치 행렬을 곱하여 다음과 같은 가능성을 얻을 수 있습니다. A) w {i} 소멸 구배로 인한 변화 거의 없음 B) w {i} 변화 구배로 인해 급격하고 부정확하게 변화 C) w {i} 변화 우리에게 좋은 점수를 줄만큼

C가 발생하는 경우 우리의 분류 / 예측 문제는 아마도 단순한 선형 / 로지스틱 회귀 기반의 것으로 아마도 처음에는 신경망이 필요하지 않았 음을 의미합니다!

NN이 아무리 강력하고 강력하게 조정 되더라도 선형 활성화 기능을 사용하면 비선형 요구 패턴 인식 문제를 해결할 수 없습니다.


-3

전혀 요구되는 것은 아닙니다. 실제로, 정류 된 선형 활성화 기능 은 큰 신경망에서 매우 유용합니다. 그래디언트를 계산하는 것이 훨씬 빠르며 최소 경계를 0으로 설정하여 희소성을 유발합니다.

자세한 내용은 다음을 참조하십시오 : https://www.academia.edu/7826776/Mathematical_Intuition_for_Performance_of_Rectified_Linear_Unit_in_Deep_Neural_Networks


편집하다:

정류 된 선형 활성화 함수를 선형 함수라고 부를 수 있는지에 대한 논의가있었습니다.

예, x = 0 지점에서 선형이 아니기 때문에 기술적으로 비선형 함수이지만 다른 모든 지점에서 선형이라고 말하는 것이 여전히 옳으므로 여기서 nitpick하는 것이 유용하지 않다고 생각합니다.

나는 정체성 기능을 선택할 수 있었지만 여전히 그렇 겠지만 최근 인기 때문에 ReLU를 예로 선택했습니다.


8
정류 된 선형 활성화 기능도 비선형입니다 (이름에도 불구하고). 양수 값에 대해서만 선형입니다
Plankalkül

4
기술적으로 정확합니다. 전체 도메인에서 선형이 아니며 특히 x = 0입니다 (f (x) = 0은 선형 함수이므로 x <0에 대해 선형입니다). 또한 차별화 할 수 없으므로 그래디언트 기능도 완전히 계산할 수 없지만 실제로는 이러한 기술을 쉽게 극복 할 수 있습니다.
eski

4
그는 기술적으로 정확할뿐만 아니라 실제로 (또는 이와 비슷한) 옳습니다. 그것들을 유용하게 만드는 것은 ReLU의 비선형 성입니다. 그것들이 선형이라면, f(x) = a*x(선형 활성화 함수의 유일한 유형이기 때문에) 형태로 활성화 함수를 가지고 있었을 것입니다. 이것은 비선형 활성화 함수와 결합하지 않는 한 활성화 함수로 쓸모없습니다. ).
HelloGoodbye

10
ReLU (Rectified Linear Unit)는 선형이 아니며 사람들이 nitpicking하는 "사소한 세부 사항"이 아니라 시작하는 것이 유용한 중요한 이유입니다. 신원 매트릭스 또는 활성화 함수로 사용되는 규칙적인 선형 단위를 갖는 신경망은 비선형 함수를 모델링 할 수 없습니다. 그것이 0보다 선형이기 때문에 실제로 선형 함수라는 것을 의미하지는 않습니다. 새는 ReLU도 0 미만의 "선형"이지만 여전히 선형 함수가 아니며 ID 함수로 대체 할 수는 없습니다. 비선형 성은 가장 확실한 요구 사항입니다.
Essam Al-Mansouri

3
실제로는 조각 선형 함수라는 개념입니다.
eski
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.