본문 바로가기

AI시작

3-3 활성화 함수

정의 : 입력 신호의 총합을 출력신호로 변환하는 함수

가중치를 곱한 입력 신호의 총합을 활성화 함수로 결과를 내는 처리이다.

가중치를 곱한 입력 신호의 총합을 활성화 함수로 결과를 내는 처리이다.

가중치가 달린 입력 신호와 바이어스의 총합을 계산한 것이 바로 a 이고

이것을 활성화 함수 h() 에 넣어 y 를 출력한다.

(뉴런 == 노드 : 같은 의미)

 

시그모이드 함수

활성화 함수에서 자주 이용하는 시그모이드 함수는 다음과 같다.

여기서 e : 자연상수로 2.7182.. 의 값을 갖는 실수이다.

 

시그모이드 함수에 1.02.0 을 넣어면 0.731, 0.880 과 같이 특정값을 출력한다.

신경망에서는 활성화 함수로 시그모이드 함수를 이용하여 신호를 변환하고, 그 변환된 신호를 다음 뉴런에 전달한다.

마치 물레방아처럼 흘러온 물의 양에 비례해 흐르는 물의 양을 조정하며

입력이 작을 때는 0에 가까운 출력, 클때는 출력이 1에 가깝게 출력하는 구조이며, 비선형 함수이다.

 

 

비선형 함수

신경망에서는 활성화 함수로 비선형 함수를 사용해야합니다. 선형 함수를 이용하면 신경망의 층을 깊게 하는 의미가 없어지기 때문입니다.

 

시그모이드의 특성

결과값이 [0,1] 사이로 제한됨

뇌의 뉴런과 유사하여 많이 쓰였음

 

시그모이드의 단점

시그모이드의 단점은 Gradient Vanishing

 

- 시그모이드와 같이 결과값이 포화(saturated)되는 함수는 gradient vanishing 현상을 야기한다.

- 이전 레이어로 전파되는 그라디언트가 0에 가까워 지는 현상

- 레이어를 깊게 쌓으면 파라미터의 업데이트가 제대로 이루어지지 않음

- 이는 양 극단의 미분값이 0에 가깝기 때문에 발생하는 문제이다.

 

ReLU 함수

Rectified Linear Unit

입력이 0을 넘으면 그 입력을 그대로 출력하고, 0이하이면 0을 출력하는 함수

 

 

 

ReLU 의 장점

선형아니야? NO! 0에서 확 꺾이기 때문에 비선형이다.

 

(1) 양 극단값이 포화되지 않는다. (양수 지역은 선형적)

(2) 계산이 매우 효율적이다 (최대값 연산 1)

(3) 수렴속도가 시그모이드류 함수대비 6배 정도 빠르다.

 

ReLU 의 단점

 

(1) 중심값이 0이 아님 (마이너한 문제)

(2) 입력값이 음수인 경우 항상 0을 출력함 (마찬가지로 파라미터 업데이트가 안됨)

 

추가 설명 링크

https://pythonkim.tistory.com/40