장단점이있는 신경망의 종합적인 활성화 기능 목록


94

신경망에서 장단점과 함께 활성화 기능의 포괄적 인 목록을 제공하는 참조 문서가 있습니까?


ANN에 대해 충분히 알지 못하지만 활성화 기능의 모양이 실제로 다르지 않으면 구분하기가 매우 어렵습니다. 비슷한 상황에 대한 토론은 여기에서 내 대답을 볼 수 있습니다 : 로짓과 프로 빗 모델의 차이점 .
gung

1
아니, 그것은 큰 차이를 만듭니다.
Viliami

en.wikipedia.org/wiki/Activation_function 은 훌륭한 자료입니다. 당신은을 포함하여, 많은 사람들을 사용할 수 있습니다 sin(x)참조 openreview.net/pdf?id=Sks3zF9eg을 .
Piotr Migdal

활성화 기능에 대한 비디오 자습서를 보려면 다음 사이트를
vinay kumar

답변:


143

나는 지금까지 배운 것들의 목록을 작성하기 시작할 것입니다. @marcodena가 말했듯이 장단점은 대부분 이러한 것들을 시도하여 얻은 휴리스틱이기 때문에 더 어려워 지지만 적어도 그들이 해칠 수없는 목록을 가지고 있다고 생각합니다.

먼저 표기법을 명시 적으로 정의하여 혼동이 없도록합니다.

표기법

이 표기법은 Neilsen의 저서에서 나온 것 입니다.

피드 포워드 신경망은 서로 연결된 많은 수의 뉴런 층입니다. 입력을받은 다음 해당 입력이 네트워크를 통해 "트리 클링"되고 신경망이 출력 벡터를 반환합니다.

보다 공식적으로, 는 레이어 에서 뉴런 의 활성화 (일명 출력)를 호출 . 여기서 는 입력 벡터 의 요소입니다. j t h i t h a 1 j j t h에이제이나는제이h나는h에이제이1제이h

그런 다음 다음 레이어의 입력을 다음 관계를 통해 이전 레이어와 관련시킬 수 있습니다.

에이제이나는=σ(케이(제이케이나는에이케이나는1)+제이나는)

어디

  • σ 는 활성화 기능입니다.
  • k t h ( i - 1 ) t h j t h i t h제이케이나는 로부터의 무게 뉴런 받는 층 뉴런 층케이h(나는1)h제이h나는h
  • j t h i t h제이나는 는 레이어 에서 뉴런 의 바이어스입니다.제이h나는h
  • j t h i t h에이제이나는 는 레이어 에서 뉴런 의 활성화 값을 나타냅니다 .제이h나는h

때때로 우리 는 를 나타내는 를 작성합니다. 즉, 활성화 함수를 적용하기 전에 뉴런의 활성화 값 .k ( w i j ka i 1 k ) + b i j제이나는케이(제이케이나는에이케이나는1)+제이나는

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

더 간결한 표기법을 위해 다음과 같이 쓸 수 있습니다.

에이나는=σ(나는×에이나는1+나는)

이 공식을 사용하여 일부 입력 에 대한 피드 포워드 네트워크의 출력을 계산하려면 설정 다음 . 여기서 은 레이어 수입니다.1 = I는 2 , 3 , ... , m에서 m을나는아르 자형에이1=나는a2,a3,,amm

활성화 기능

(다음에서는 가독성을 위해 대신 를 씁니다. )e xexp(x)ex

정체

선형 활성화 기능이라고도합니다.

aji=σ(zji)=zji

정체

단계

aji=σ(zji)={0if zji<01if zji>0

단계

구간 별 선형

"범위"인 및 선택하십시오 . 이 범위보다 작은 것은 0이되고이 범위보다 큰 것은 1이됩니다. 다른 것들은 선형 보간됩니다. 공식적으로 : x 최대xminxmax

aji=σ(zji)={0if zji<xminmzji+bif xminzjixmax1if zji>xmax

어디

m=1xmaxxmin

b=mxmin=1mxmax

구간 별 선형

시그 모이 드

aji=σ(zji)=11+exp(zji)

시그 모이 드

보완 로그

aji=σ(zji)=1exp(exp(zji))

보완 로그

바이폴라

에이제이나는=σ(제이나는)={1만약 제이나는<0   1만약 제이나는>0

바이폴라

양극성 시그 모이 드

에이제이나는=σ(제이나는)=1특급(제이나는)1+특급(제이나는)
양극성 시그 모이 드

에이제이나는=σ(제이나는)=(제이나는)

탄

레쿤의 탄

효율적인 Backprop를 참조하십시오 .

에이제이나는=σ(제이나는)=1.7159(2제이나는)

레쿤의 탄

규모 :

르쿤의 탄 비늘

하드 탄

에이제이나는=σ(제이나는)=최대(1,(1,제이나는))

하드 탄

순수한

에이제이나는=σ(제이나는)= ∣제이나는

순수한

정류기

정류 선형 단위 (ReLU), 최대 또는 램프 기능 이라고도 합니다.

에이제이나는=σ(제이나는)=최대(0,제이나는)

정류기

ReLU의 수정

이것들은 내가 놀았 던 몇 가지 활성화 기능으로, 신비한 이유로 MNIST의 성능이 매우 뛰어납니다.

에이제이나는=σ(제이나는)=최대(0,제이나는)+코사인(제이나는)

RELU COS

규모 :

ReLU Cos 스케일

에이제이나는=σ(제이나는)=최대(0,제이나는)+(제이나는)

RELU 죄

규모 :

RELU 죄의 규모

부드러운 정류기

Smooth Rectified Linear Unit, Smooth Max 또는 Soft plus라고도 함

에이제이나는=σ(제이나는)=로그(1+특급(제이나는))

부드러운 정류기

로짓

에이제이나는=σ(제이나는)=로그(제이나는(1제이나는))

로짓

규모 :

로짓 스케일

프로 빗

에이제이나는=σ(제이나는)=2erf1(2제이나는1)
.

여기서 는 오류 함수 입니다. 기본 함수를 통해 설명 할 수는 없지만 해당 위키 백과 페이지와 여기 에서 그 역수를 근사하는 방법을 찾을 수 있습니다 .erf

또는 다음과 같이 표현할 수 있습니다.

에이제이나는=σ(제이나는)=ϕ(제이나는)
입니다.

여기서 는 누적 분포 함수 (CDF)입니다. 근사치에 대해서는 여기 를 참조 하십시오 .ϕ

프로 빗

규모 :

프로 빗 스케일

코사인

임의의 주방 싱크를 참조하십시오 .

에이제이나는=σ(제이나는)=코사인(제이나는)
입니다.

코사인

소프트 맥스

정규화 된 지수라고도합니다.

에이제이나는=특급(제이나는)케이특급(케이나는)

단일 뉴런의 출력이 해당 레이어의 다른 뉴런에 의존하기 때문에 이것은 조금 이상합니다. 는 매우 높은 값일 수 있으므로 계산하기가 어렵습니다 .이 경우 가 오버플로 될 수 있습니다. 마찬가지로 가 매우 낮은 값이면 언더 플로가되어 됩니다.제이나는특급(제이나는)제이나는0

이를 방지하기 위해 대신 를 계산 합니다. 이것은 우리에게 :로그(에이제이나는)

로그(에이제이나는)=로그(특급(제이나는)케이특급(케이나는))

로그(에이제이나는)=제이나는로그(케이특급(케이나는))

여기서 log-sum-exp 트릭 을 사용해야합니다 .

우리가 컴퓨팅한다고 가정 해 봅시다.

로그(이자형2+이자형9+이자형11+이자형7+이자형2+이자형5)

편의상 먼저 지수를 크기별로 정렬합니다.

로그(이자형11+이자형9+이자형5+이자형2+이자형2+이자형7)

그런 다음 이 가장 높 을 곱합니다 .이자형11이자형11이자형11

로그(이자형11이자형11(이자형11+이자형9+이자형5+이자형2+이자형2+이자형7))

로그(1이자형11(이자형0+이자형2+이자형6+이자형9+이자형13+이자형18))

로그(이자형11(이자형0+이자형2+이자형6+이자형9+이자형13+이자형18))

로그(이자형11)+로그(이자형0+이자형2+이자형6+이자형9+이자형13+이자형18)

11+로그(이자형0+이자형2+이자형6+이자형9+이자형13+이자형18)

그런 다음 오른쪽의 표현식을 계산하고 로그를 취할 수 있습니다. 과 관련하여 그 합계가 매우 작기 때문에이 작업을 수행하는 것이 좋습니다 . 따라서 0으로의 언더 플로는 어쨌든 차이를 만들 정도로 중요하지 않을 것입니다. 을 곱한 후 모든 거듭 제곱은 것이 보장되므로 오른쪽 식에서 오버플로를 발생시킬 수 없습니다 .로그(이자형11)이자형110

공식적으로 합니다. 그때:=최대(1나는,2나는,나는,...)

로그(케이특급(케이나는))=+로그(케이특급(케이나는))

그러면 softmax 기능은 다음과 같습니다.

에이제이나는=특급(로그(에이제이나는))=특급(제이나는로그(케이특급(케이나는)))

또한 부수적으로 softmax 함수의 미분은 다음과 같습니다.

σ(제이나는)제이나는=σ'(제이나는)=σ(제이나는)(1σ(제이나는))

한계에 달하다

이것도 조금 까다 롭습니다. 본질적으로 아이디어는 우리가 maxout 레이어의 각 뉴런을 많은 하위 뉴런으로 나누고 각각의 뉴런은 자체 가중치와 편향을 가지고 있다는 것입니다. 그런 다음 뉴런에 대한 입력은 대신 각 뉴런의 하위 뉴런으로 이동하고 각 서브 뉴런은 단순히 를 출력 합니다 (활성화 기능을 적용하지 않고). 그 뉴런 의 는 모든 서브 뉴런 출력의 최대 값입니다.에이제이나는

공식적으로, 단일 뉴런에서 우리는 개의 뉴런을 가지고 있다고 가정 합니다. 그때

에이제이나는=최대케이[1,]에스제이케이나는

어디

에스제이케이나는=에이나는1제이케이나는+제이케이나는

( 은 IS 내적 )

우리가 이것에 대해 생각할 수 있도록 , 시그 모이 드 활성화 함수를 사용하는 신경망 의 레이어에 대한 가중치 행렬 를 고려하십시오 . 는 2D 행렬이며, 각 열 는 이전 레이어 의 모든 뉴런에 대한 가중치를 포함하는 뉴런 대한 벡터입니다 .나는나는나는제이나는제이나는1

하위 뉴런을 가지려면 각 뉴런마다 2D 가중치 행렬이 필요합니다. 각 하위 뉴런은 이전 레이어의 모든 뉴런에 대한 가중치를 포함하는 벡터가 필요하기 때문입니다. 이것은 가 이제 3D 가중치 행렬 임을 의미합니다 . 여기서 각 는 단일 뉴런 대한 2D 가중치 행렬입니다 . 그런 다음 는 이전 레이어 의 모든 뉴런에 대한 가중치를 포함하는 뉴런 뉴런 하위 에 대한 벡터입니다 .나는제이나는제이제이케이나는케이제이나는1

마찬가지로, 시그 모이 드 활성화 함수를 다시 사용하는 신경망에서, 는 계층 각 뉴런 에 대한 바이어스 를 가진 벡터입니다 .나는제이나는제이나는

서브 뉴런이를 위해, 우리는 2 차원 바이어스 매트릭스 필요 각층 , 위한 바이어스 벡터 인 각 subneuron의 에서 뉴런.나는나는제이나는제이케이나는케이제이

각 뉴런에 대해 가중치 행렬 와 바이어스 벡터 를 으로써 위의 표현을 매우 명확하게 만들 수 있습니다. 각 서브 뉴런의 가중치 를 출력 입니다. 레이어 , 바이어스 를 적용하고 최대 값을 취합니다.제이나는제이나는제이케이나는에이나는1나는1제이케이나는

방사형 기초 기능 네트워크

방사형 기초 기능 네트워크는 피드 포워드 신경망의 수정입니다.

에이제이나는=σ(케이(제이케이나는에이케이나는1)+제이나는)

우리는 1 개 중량이 노드 당 이전 층 (정상)을, 또한 하나의 의미 벡터 및 하나의 표준 편차 벡터 각 노드에 대한 이전 레이어제이케이나는케이μ제이케이나는σ제이케이나는

그런 다음 표준 편차 벡터 와 혼동되지 않도록 활성화 함수 를 호출합니다 . 이제 를 계산하려면 먼저 이전 계층의 각 노드에 대해 하나의 를 계산해야합니다 . 한 가지 옵션은 유클리드 거리를 사용하는 것입니다.ρσ제이케이나는에이제이나는제이케이나는

제이케이나는=(에이나는1μ제이케이나는=(에이나는1μ제이케이나는)2

여기서 는 IS 의 요소 . 이것은 사용하지 않습니다 . 또는 Mahalanobis 거리가 있습니다.μ제이케이나는μ제이케이나는σ제이케이나는

제이케이나는=(에이나는1μ제이케이나는)Σ제이케이나는(에이나는1μ제이케이나는)

여기서 는 다음과 같이 정의 된 공분산 행렬입니다 .Σ제이케이나는

Σ제이케이나는=진단하다(σ제이케이나는)

즉, 는 IS 대각선 으로 매트릭스 는 대각 요소이다있다. 우리는 정의 과 이 일반적으로 사용되는 표기법 때문에 여기 열 벡터로서이.Σ제이케이나는σ제이케이나는에이나는1μ제이케이나는

이들은 실제로 Mahalanobis 거리가

제이케이나는=(에이나는1μ제이케이나는)2σ제이케이나는

여기서 인 의 요소 . 참고 항상 양수 여야하지만, 이것은 표준 편차의 일반적인 요구 사항 때문에이 것은 놀라운 일이 아니다이다.σ제이케이나는σ제이케이나는σ제이케이나는

원하는 경우, Mahalanobis 거리는 공분산 행렬 를 다른 행렬로 정의 할 수 있을 정도로 일반적 입니다. 예를 들어 공분산 행렬이 항등 행렬 인 경우 Mahalanobis 거리는 유클리드 거리로 줄어 듭니다. 는 매우 일반적이며 정규화 된 유클리드 거리라고 합니다.Σ제이케이나는Σ제이케이나는=진단하다(σ제이케이나는)

어느 쪽이든, 일단 거리 함수가 선택되면 통해 를 계산할 수 있습니다에이제이나는

에이제이나는=케이제이케이나는ρ(제이케이나는)

이 네트워크에서 그들은 활성화 기능을 적용한 후 가중치를 곱하여 선택합니다.

이것은 다층 방사형 기초 함수 네트워크를 만드는 방법을 설명하지만 일반적으로 이러한 뉴런 중 하나만 있으며 그 출력은 네트워크의 출력입니다. 단일 뉴런의 각 평균 벡터 및 각 표준 편차 벡터 는 하나의 "뉴런"으로 간주되고이 모든 출력 후에 다른 레이어가 있기 때문에 다중 뉴런으로 그려집니다. 위의 와 같이 계산 된 값에 가중치를 더한 값의 합을 취합니다 . 마지막에 "합산"벡터를 사용하여 두 레이어로 나누는 것이 이상하게 보이지만 그것이하는 일입니다.μ제이케이나는σ제이케이나는에이제이나는

또한 여기를 참조 하십시오 .

방사형 기초 기능 네트워크 활성화 기능

가우시안

ρ(제이케이나는)=특급(12(제이케이나는)2)

가우시안

다차원

어떤 점 선택하십시오 . 그런 다음 에서 까지의 거리를 계산합니다 .(엑스,와이)(제이나는,0)(엑스,와이)

ρ(제이케이나는)=(제이케이나는엑스)2+와이2

Wikipedia 에서 온 것 입니다. 제한이 없으며 정상화 할 수있는 방법이 있는지 궁금하지만 긍정적 인 가치가 될 수 있습니다.

때 , 이는 절대적으로 (수평 시프트와 등가 인 ).와이=0엑스

다차원

역다 수면

뒤집힌 것을 제외하고 2 차와 동일합니다.

ρ(제이케이나는)=1(제이케이나는엑스)2+와이2

역다 수면

SVG를 사용하여 intmath의 그래프 에서 * Graphics .


11
이력서에 오신 것을 환영합니다. +6 이것은 엄청나게 유익한 정보입니다. 앞으로 더 많은 것을 보게 되길 바랍니다.
gung

1
및 probit 형식의 부드러운 정류 선형 함수도 있습니다 . 로그(1+특급(엑스))
Memming

좋아, 나는 Logit, Probit 및 Complementary log-log를 추가했다고 생각하지만,이 주제에 대해 깊이 이해하지 못하므로 서면 양식을 오해했을 수 있습니다. 이 올바른지?
Phylliida 2016 년

3
이것은 훌륭한 참고 문헌 목록을 가진 흥미로운 논문이 될 것입니다. 예를 들어 arxiv.org/abs/1505.03654 입니다. 논문을 작성하고 다른 참고 문헌을 원한다면 저에게 연락하십시오.
Hunaphu

9
누군가 Elu, Leaky ReLU, PReLU 및 RReLU로 이것을 업데이트해야합니다.
Viliami

24

그 중 하나는 아니지만 전체 목록은 다음과 같습니다. http://cs231n.github.io/neural-networks-1/

일반적으로 사용되는 활성화 기능

모든 활성화 함수 (또는 비선형 성 )는 단일 숫자를 사용하고 특정 고정 수학 연산을 수행합니다. 실제로 발생할 수있는 몇 가지 활성화 기능이 있습니다.

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

왼쪽 : Sigmoid 비선형 성이 실수를 [0,1] 사이로 스쿼시합니다. 오른쪽 : tanh 비선형 성이 실수를 [-1,1] 사이로 스쿼시합니다.

S 자형. S 자형 비선형 성은 수학 형식 가지며 왼쪽의 위 이미지에 표시되어 있습니다. 이전 섹션에서 언급했듯이 실제 값은 0에서 1 사이의 범위로 "분할"됩니다. 특히 큰 음수는 0이되고 큰 양수는 1이됩니다. 시그 모이 드 함수는 역사적으로 자주 사용되었습니다. 그것은 전혀 발사하지 않는 것 (0)에서 가정 된 최대 주파수 (1)에서 완전 포화 된 발사까지 뉴런의 발사 속도로 잘 해석되기 때문입니다. 실제로, 시그 모이 드 비선형 성은 최근에 선호도가 떨어지고 거의 사용되지 않습니다. 두 가지 주요 단점이 있습니다.σ(엑스)=1/(1+이자형엑스)

  • S 자형은 그라디언트를 포화시키고 죽입니다 . 시그 모이 드 뉴런의 매우 바람직하지 않은 특성은 뉴런의 활성화가 0 또는 1의 꼬리에서 포화 될 때 이들 영역에서의 구배가 거의 0이라는 것이다. 역 전파 동안이 (로컬) 그라디언트는 전체 목표에 대한이 게이트 출력의 그라디언트에 곱해집니다. 따라서, 국부 구배가 매우 작은 경우, 구배를 효과적으로 "사멸 (kill)"시킬 것이며, 신호를 뉴런을 통해 그 가중치로 그리고 재귀 적으로 데이터로 거의 흐르지 않을 것이다. 또한, 포화를 방지하기 위해 시그 모이 드 뉴런의 무게를 초기화 할 때 특히주의해야합니다. 예를 들어, 초기 무게가 너무 크면 대부분의 뉴런이 포화되어 네트워크가 거의 배우지 않습니다.
  • S 자형 출력은 0 중심이 아닙니다 . 신경망에서 나중 프로세싱 계층의 뉴런이 곧 중심에 있지 않은 데이터를 수신하기 때문에 바람직하지 않습니다. 뉴런으로 들어오는 데이터가 항상 양수인 경우 (예 : 에서 요소 ), 역 전파 동안 가중치 의 기울기 는 모두 양수이거나 모두 음수입니다 (전체 식의 기울기에 따라 엑스>0에프=엑스+에프). 이것은 가중치에 대한 기울기 업데이트에서 바람직하지 않은 지그재그 역학을 야기 할 수있다. 그러나 이러한 그라디언트가 일련의 데이터에 합산되면 가중치에 대한 최종 업데이트는 가변 기호를 가질 수 있으며이 문제를 다소 완화 할 수 있습니다. 따라서 이는 불편하지만 위의 포화 활성화 문제와 비교할 때 덜 심각한 결과를 초래합니다.

tanh 비선형 성은 위 이미지의 오른쪽에 표시되어 있습니다. 실수 값을 [-1, 1] 범위로 스쿼시합니다. 시그 모이 드 뉴런과 마찬가지로 활성화는 포화되지만 시그 모이 드 뉴런과 달리 출력은 0 중심입니다. 따라서, 실제로 탄형 비선형 성은 시그 모이 드 비선형 성보다 항상 바람직하다. 또한 tanh 뉴런은 단순히 스케일링 된 시그 모이 드 뉴런이며 특히 다음을 포함합니다. .(엑스)=2σ(2엑스)1

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

왼쪽 : 정류 선형 단위 (ReLU) 활성화 기능. x <0 일 때는 0이고 x> 0 일 때는 기울기 1로 선형입니다 . 오른쪽 : Krizhevsky et al. (pdf) 용지는 tanh 장치와 비교하여 ReLU 장치와의 수렴이 6 배 개선되었음을 나타냅니다.

RELU. Rectified Linear Unit은 지난 몇 년 동안 매우 인기를 얻었습니다. 함수 합니다. 다시 말해, 활성화는 단순히 0으로 임계 값이됩니다 (왼쪽 위 이미지 참조). ReLU 사용에 대한 몇 가지 장단점이 있습니다.에프(엑스)=최대(0,엑스)

  • (+) 시그 모이 드 / 탄 함수와 비교하여 확률 적 구배 하강의 수렴 을 크게 가속시키는 것으로 밝혀졌다 (예를 들어 Krizhevsky et al. 에서 6의 인자 ). 이것은 선형의 비 포화 형태 때문이라고 주장합니다.
  • (+) 값 비싼 연산 (지수 등)을 포함하는 탄 / 시그 모이 드 뉴런과 비교하여 ReLU는 단순히 0의 활성화 매트릭스를 임계 값으로하여 구현할 수 있습니다.
  • (-) 불행히도, ReLU 장치는 훈련 중에 깨지기 쉬우 며 "죽을"수 있습니다. 예를 들어, ReLU 뉴런을 통해 흐르는 큰 구배는 뉴런이 데이터 포인트에서 다시 활성화되지 않는 방식으로 가중치가 업데이트되도록 할 수 있습니다. 이 경우 장치를 통해 흐르는 그라디언트는 그 시점부터 영원히 0이됩니다. 즉, ReLU 장치는 데이터 매니 폴드에서 노크 될 수 있기 때문에 훈련 중에 비가 역적으로 죽을 수 있습니다. 예를 들어, 학습 속도가 너무 높게 설정되어 있으면 네트워크의 40 % 정도가 "사망"(즉, 전체 교육 데이터 세트에서 활성화되지 않는 뉴런)이 될 수 있습니다. 학습 속도를 올바르게 설정하면 문제가 덜 자주 발생합니다.

새는 ReLU. 새는 ReLU는 "dying ReLU"문제를 해결하려는 시도 중 하나입니다. x <0 일 때 함수가 0이 아니라 누출 ReLU는 작은 음의 기울기를 갖습니다 (0.01 정도). 즉, 함수는 여기서 는 작은 상수입니다. 일부 사람들은 이러한 형태의 활성화 기능으로 성공을보고하지만 그 결과가 항상 일치하지는 않습니다. Kaiming He et al., 2015에 의해 정류기에 심층 분석 에서 소개 된 PReLU 뉴런에서 볼 수 있듯이, 네거티브 영역의 기울기는 각 뉴런의 매개 변수로 만들 수 있습니다 . 그러나 현재 작업 전반에 걸친 이점의 일관성은 현재 불분명합니다.에프(엑스)=1(엑스<0)(α엑스)+1(엑스> =0)(엑스)α

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

Maxout . 가중치와 데이터 사이의 내적에 비선형 성이 적용되는 기능적 형태 를 갖지 않는 다른 유형의 단위가 제안되었습니다 . 상대적으로 인기있는 선택 중 하나 는 ReLU 및 누출 버전을 일반화하는 Maxout 뉴런 (최근 Goodfellow 등이 소개 함 )입니다. Maxout 뉴런은 함수를 계산합니다 . ReLU와 Leaky ReLU는이 형식의 특별한 경우입니다 (예 : ReLU의 경우 w_1에프(엑스+)최대(1엑스+1,2엑스+2)1,1=0). 따라서 Maxout 뉴런은 ReLU 장치 (선형 작동 체제, 포화 없음)의 모든 이점을 누리며 단점이 없습니다 (ReLU 사망). 그러나 ReLU 뉴런과 달리 모든 단일 뉴런에 대한 매개 변수 수를 두 배로 늘려서 총 매개 변수 수가 많아집니다.

이것으로 가장 일반적인 뉴런 유형과 활성화 기능에 대한 논의를 마칩니다. 마지막으로, 동일한 네트워크에서 다른 유형의 뉴런을 혼합하여 일치시키는 것은 매우 드물지만 그렇게하는 데 근본적인 문제는 없습니다.

TLDR : " 어떤 뉴런 유형을 사용해야합니까? "ReLU 비선형 성을 사용하고 학습 속도에주의를 기울이고 네트워크에서 "죽은"단위의 비율을 모니터링하십시오. 이것이 문제가 될 경우 Leaky ReLU 또는 Maxout을 사용해보십시오. S 자형을 사용하지 마십시오. tanh를 시도하지만 ReLU / Maxout보다 더 나빠질 것으로 예상하십시오.


라이센스 :


MIT 라이센스 (MIT)

저작권 (c) 2015 Andrej Karpathy

이 소프트웨어 및 관련 문서 파일 (이하 "소프트웨어")의 사본을 사용하는 사람에게는 사용, 복사, 수정, 병합 권한을 포함하여 제한없이 소프트웨어를 처리 할 수있는 권한이 무료로 부여됩니다. 다음 조건에 따라 소프트웨어의 사본을 게시, 배포, 하위 사용권 허가 및 / 또는 판매하고 소프트웨어를 제공받은 사람에게 허용합니다.

상기 저작권 고지 및이 허가 고지는 소프트웨어의 모든 사본 또는 상당 부분에 포함됩니다.

본 소프트웨어는 상품성, 특정 목적에의 적합성 및 비 침해에 대한 보증을 포함하되 명시 적이든 묵시적이든 어떠한 종류의 보증없이 "있는 그대로"제공됩니다. 어떠한 경우에도 저자 또는 저작권 소유자는 계약, 불법 행위 또는 기타 행위, 소프트웨어 또는 소프트웨어의 사용 또는 기타 거래로 인해 발생하는 모든 청구, 손해 또는 기타 책임에 대해 책임을지지 않습니다. 소프트웨어.*

다른 링크들 :


10

장단점이있는 목록이 있다고 생각하지 않습니다. 활성화 기능이 높은 응용 프로그램 의존적이며, 그들은 (당신의 신경 네트워크의 아키텍처도 따라 여기에 S 상 하나와 유사하다 두 softmax를 함수의 응용 프로그램을 참조 예를 들어,).

함수의 일반적인 동작에 대한 몇 가지 연구를 찾을 수 있지만 정의 된 결정적 목록 (당신이 묻는 것 ...)을 가질 수는 없다고 생각합니다.

나는 여전히 학생이므로 지금까지 내가 아는 것을 지적합니다.

  • 여기 에서 역 전파가있는 tanh 및 sigmoid의 동작에 대한 몇 가지 생각을 찾을 수 있습니다. Tanh는 더 일반적이지만 S 자형입니다 ... (항상 "그러나")
  • 깊은 스파 스 정류기 신경망 Glorot 사비 등의 등의, 그들은 정류기는 더 생물학적으로 그럴 듯하고 그들이 다른 사람보다 더 실시 할 것을 명시 (시그 모이 / TANH)

이것이 "정답"입니다. 하나는 목록을 만들 수 있지만 장단점은 완전히 데이터에 따라 다릅니다. 실제로, 활성화 기능 학습은 이론상 훨씬 더 합리적입니다. 그것에 대한 연구가 많지 않은 이유는 시그 모이 드가 "그냥 작동"하기 때문입니다. 결국, 유일한 이익은 종종 중요하지 않은 수렴 속도입니다
runDOSrun

4

Danielle의 큰 대답을 완벽하게하기 위해 다른 패러다임이 있는데, 여기에는 액체 상태 기계 , 익스트림 학습 기계반향 상태 네트워크 와 같은 가중치 및 / 또는 활성화 유형에 대해 무작위로 '바퀴를 돌립니다' .

이러한 아키텍처를 생각하는 한 가지 방법 : 저수지는 SVM과 같은 일종의 커널이거나 데이터가 일부 초 공간에 투영되는 간단한 FFNN의 하나의 큰 숨겨진 계층입니다. 실제 학습은 없으며 만족스러운 솔루션에 도달 할 때까지 저수지가 재생성됩니다.

이 좋은 답변을 참조하십시오 .


2

최근 활성화 기능을 검토 한 기사는

Chigozie Enyinna Nwankpa, Winifred Ijomah, Anthony Gachagan 및 Stephen Marshall의 " 활성화 기능 : 딥 러닝 실습 및 연구 동향 비교 "

심층 신경망은 다양한 신흥 도메인에서 성공적으로 사용되어 현재까지 개발되고있는 더 심층 학습 (DL) 아키텍처의 실제 복잡한 문제를 해결합니다. 이러한 최첨단 성능을 달성하기 위해 DL 아키텍처는 AF (활성화 기능)를 사용하여 숨겨진 DL 레이어와 지정된 DL 아키텍처의 출력 레이어간에 다양한 계산을 수행합니다. 이 백서에서는 딥 러닝 응용 프로그램에 사용 된 기존 AF에 대한 설문 조사를 제공하고 딥 러닝 응용 프로그램에 활성화 기능을 사용하는 최근 동향에 중점을 둡니다. 이 논문의 참신한 점은 DL에 사용 된 대부분의 AF를 컴파일하고 최신 연구 결과에 대한 실제 딥 러닝 배포에서 이러한 기능의 응용 및 사용에 대한 현재 추세를 간략하게 설명합니다. 이 편집은 배포 준비가 된 특정 응용 프로그램에 가장 적합하고 적절한 활성화 기능을 선택하는 효과적인 결정을 내리는 데 도움이됩니다. AF에 관한 대부분의 연구 논문은 유사한 작업과 결과를 강조하기 때문에이 논문은시기 적절합니다.이 논문은 현재까지 딥 러닝 연구에서 발견 된 문헌의 연구 결과와 비교하여 AF 응용 프로그램의 추세를 실제로 컴파일하는 것입니다.

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