SW/인공지능

인공지능 : ReLU(Rectified Linear Unit) : 개념, 원리, 개요

얇은생각 2019. 8. 13. 07:30
반응형

소개

ReLU(Rectified Linear Unit)는 딥 러닝 모델에서 가장 일반적으로 사용되는 활성화 함수입니다. 이 함수는 음의 입력을 받으면 0을 반환하지만 양수 x의 경우 해당 값을 다시 반환합니다. 따라서 f (x) = max (0, x)로 쓸 수 있습니다.


그래픽적으로는 다음과 같습니다


인공지능 : ReLU(Rectified Linear Unit) : 개념, 원리, 개요



이러한 간단한 함수(두 개의 선형 부분으로 구성된 함수)가 모델이 비선형과 상호 작용을 잘 설명 할 수 있다는 것은 놀라운 일입니다. 그러나 ReLU 기능은 대부분의 응용 프로그램에서 훌륭하게 작동하며 결과적으로 매우 널리 사용됩니다.




작동하는 이유


인터랙션 및 비선형성 소개

활성화 기능은 두 가지 주요 목적으로 사용됩니다. 1) 모델이 인터랙션 효과를 설명하도록 도와줍니다.

인터랙션 효과는 무엇입니까? B의 가치에 따라 하나의 변수 A가 예측에 다르게 영향을 미치는 경우입니다. 예를 들어, 어떤 모델에서 특정 체중이 당뇨병 위험 증가를 나타내는 지 알고 싶다면 개인의 키를 알아야합니다. 일부 체중은 키가 큰 사람들에게는 건강이 좋은 반면, 키가 작은 사람들에게는 높은 위험을 나타냅니다. 따라서 당뇨병 위험에 대한 체중의 영향은 키에 달려 있으며 체중과 키는 인터랙션 효과가 있다고 말합니다.


2) 비선형 효과에 대한 모델 설명을 도와줍니다. 즉, 가로 축에 변수를 그래프로 표시하고 세로 축에 대한 예측을 표현하면 직선이 되지 않습니다. 또 다른 방식으로 이야기하면, 예측자를 1씩 증가시키는 효과는 예측 자의 다른 값과 다르다.




ReLU가 인터랙션 및 비선형성을 캡처하는 방법

인터랙션 : 신경망 모델에서 단일 노드를 상상해보십시오. 간단히하기 위해 A와 B라는 두 개의 입력이 있다고 가정합니다. A와 B에서 노드까지의 가중치는 각각 2와 3입니다. 따라서 노드 출력은 f (2A + 3B)입니다. f에 ReLU 기능을 사용할 것입니다. 따라서 2A + 3B가 양수이면 노드의 출력 값도 2A + 3B입니다. 2A + 3B가 음수이면 노드의 출력 값은 0입니다.


구체적으로, A = 1이고 B = 1 인 경우를 고려하십시오. 출력은 2A + 3B이고 A가 증가하면 출력도 증가합니다. 반면에 B = -100이면 출력은 0이고 A가 약간 증가하면 출력은 0으로 유지됩니다. 따라서 A는 출력을 증가 시키거나 그렇지 않을 수 있습니다. 그것은 단지 B의 가치가 무엇인지에 달려 있습니다.


노드가 상호 작용을 캡처한 간단한 경우입니다. 더 많은 노드와 더 많은 레이어를 추가하면 상호 작용의 잠재적 복잡성이 증가합니다. 그러나 이제 활성화 기능이 상호 작용을 캡처하는 데 어떻게 도움이되었는지 확인해야합니다.


비선형성 : 기울기가 일정하지 않은 경우 함수는 비선형입니다. 따라서 ReLU 함수는 0 주위에서 비선형이지만 기울기는 항상 0 (음수 값) 또는 1 (양수 값)입니다. 이것은 매우 제한된 유형의 비선형 성입니다.


그러나 딥 러닝 모델에 대한 두 가지 사실을 통해 ReLU 노드를 결합하는 방법에서 다양한 유형의 비선형 성을 만들 수 있습니다.


첫째, 대부분의 모델에는 각 노드에 대한 바이어스 용어가 포함됩니다. 바이어스 항은 모델 훈련 중에 결정되는 상수입니다. 간단하게하기 위해 A라는 단일 입력과 바이어스를 가진 노드를 고려하십시오. 바이어스 항의 값이 7이면 노드 출력은 f (7 + A)입니다. 이 경우 A가 -7보다 작으면 출력은 0이고 기울기는 0입니다. A가 -7보다 크면 노드의 출력은 7 + A이고 기울기는 1입니다.


바이어스 항은 경사가 변하는 곳으로 이동할 수 있습니다. 지금까지 여전히 두 개의 다른 슬로프를 가질 수 있습니다.


그러나 실제 모델에는 많은 노드가 있습니다. 각 노드 (단일 레이어 내에서도)는 바이어스에 대해 다른 값을 가질 수 있으므로 각 노드는 입력에 대해 다른 값으로 기울기를 변경할 수 있습니다.


결과 함수를 다시 추가하면 여러 곳에서 경사를 변경하는 결합 함수를 얻게됩니다.


이 모델은 비선형 함수를 생성하고 인터랙션을 잘 설명 할 수 있는 유연성을 갖습니다 (더 나은 예측을 제공 할 경우). 각 레이어에 더 많은 노드 (또는 컨볼 루션 모델을 사용하는 경우 더 많은 컨볼 루션)를 추가 할 때 모델은 이러한 인터랙션과 비선형성을 나타내는 능력이 훨씬 향상됩니다.




그라디언트 디센트 촉진

이 섹션은 위에있는 것보다 기술적인 부분입니다. 어려운 점이 있다면 이 기술 배경 없이도 딥 러닝을 사용하면 많은 성공을 거둘 수 있습니다.


역사적으로 딥 러닝 모델은 s 자형 곡선으로 시작했습니다(아래의 tanh 함수와 같은).


인공지능 : ReLU(Rectified Linear Unit) : 개념, 원리, 개요


tanh에는 몇 가지 장점이 있습니다. 평평 해지더라도 완전히 평평하지는 않습니다. 따라서 출력은 항상 입력의 변경 사항을 반영하므로 좋은 것으로 기대할 수 있습니다. 둘째, 비선형 (또는 모든 곳에서 구부러짐)입니다. 비선형성에 대한 설명은 활성화 기능의 주요 목적 중 하나입니다. 따라서 우리는 비선형 함수가 잘 작동 할 것으로 기대합니다.


그러나 tanh 함수를 사용할 때 연구자들은 많은 레이어로 모델을 만드는 데 큰 어려움을 겪었습니다. 매우 좁은 범위 (약 -2 ~ 2 범위)를 제외하고는 비교적 평평합니다. 입력이이 좁은 범위에 있지 않으면 함수의 미분은 매우 작으며,이 편평한 미분은 그라디언트 디센트를 통해 가중치를 향상시키는 것을 어렵게합니다. 이 문제는 모델에 레이어가 많을수록 악화됩니다. 이것을 소실 그라디언트 문제라고했습니다.


ReLU 함수는 범위 (음수)의 절반에 대해 0의 미분 값을 갖습니다. 양수 입력의 경우 미분 값은 1입니다.


합리적인 크기의 배치에 대해 훈련 할 때 일반적으로 주어진 노드에 양수 값을 제공하는 일부 데이터 요소가 있습니다. 따라서 평균 미분은 거의 0에 가깝지 않으므로 그래디언트 디센트가 계속 진행됩니다.




대안

잘 작동하는 많은 유사한 대안이 있습니다. Leaky ReLU는 가장 잘 알려진 것 중 하나입니다. 양수에 대해서는 ReLU와 동일합니다. 그러나 모든 음수 값에 대해 0이 아닌 일정한 기울기를 갖습니다 (1 미만).


이 기울기는 모델을 만들 때 사용자가 설정하는 매개 변수이며 종종 α라고합니다. 예를 들어, 사용자가 α = 0.3을 설정하면 활성화 함수는 f (x) = max (0.3 * x, x)입니다. 이것은 모든 값에서 x의 영향을 받음으로써 x에 포함된 정보를 보다 완전하게 활용할 수 있다는 이론적인 장점을 가지고 있습니다.


그것들은 다른 대안이지만, 실무자와 연구자들은 일반적으로 ReLU 이외의 것을 사용하여 정당화하는 데 불충분한 이익을 발견했습니다.

반응형