코세라 앤드류 응 AI 강의 리뷰

[인공지능 강의 리뷰] 16 - 왜 활성화 함수에 비선형 함수를 써야할까?

파요요요 2022. 5. 17. 15:57
활성화 함수에 대해 이해하기

이번 시간에는 왜 활성화 함수에는 비선형 함수만 사용되는지 간단하게 알아보겠습니다.

일단, 활성화 함수부터 뭔지부터 간단히 알아보겠습니다.


활성화 함수를 통해서 하는 일

활성화 함수(Activation functions)를 통해서,

저희는 매개변수 W, b를 수정하고 손실을 줄여나갈 수 있게 됩니다.

------>

활성화 함수로 많이 쓰는 시그모이드 함수

딥러닝에서 주요 사용하는 활성화 함수(Activation function)

저희가 배운 시그 로이드 함수(sigmoid function)나,

---------->

활성화 함수로 많이 쓰는 RELU 함수

저희가 배우지는 않았지만, (tanh 함수, ReLU 함수, Leaky Relu 함수)가 자주 쓰입니다.

-------------------->

주로 쓰는 활성화 함수들

( 자료는 딥러닝에서 쓰이는 활성화 함수 그래프입니다)

딥러닝 학습에 쓰이는 활성화 함수들은

모두 선형 함수(Linear function)가 아닌 비선형 함수(non-Linear function)의 형태인데,

왜 활성화 함수는 비선형 함수일까?

왜 모두 비선형 함수인 걸까요? 선형 함수는 쓰이면 안 되는 걸까요? 그 이유를 알아보겠습니다.

반응형

활성화 함수 이해하기

저희는 신경망 학습 과정에서, 오차를 최소화하는 경사 하강법을 통해 매개변수를 수정했습니다.

만약 활성화 함수가 선형 함수라면, 신경망을 거쳐 학습을 하는 의미가 사라지기 때문입니다.

예를 들어, 활성화 함수를 y = x 함수로 사용한다고 해봅시다.

--> y = 2x, y = 3x+ 1 등등 다 마찬가지입니다!

신경망을 거쳐서, a[2] = w [2] w [1] * x + (w [2] b [1]+b [2]) 가 나왔습니다.

하지만 w, b는 매개변수이기에, w [2] w [1]은 w(1) , (w [2] b [1]+b [2])은 b(1)으로 생각할 수 있습니다.

즉, 결과적으론 학습을 하나 안 하나, w(1) x + b(1)로 귀결되니

신경망을 거치는 학습의 의미가 사라지고, 경사 하강법을 통한 매개변수 수정 또한 의미가 없게 됩니다.

--> 이에 대한 상세한 설명은 따로 빼서, 인공지능 정보 글에 올리겠습니다.

주로 쓰는 활성화 함수 그래프들

다시, 딥러닝에서 활성화 함수로 쓰이는 비선형 함수(non_linear function)의 모습을 보겠습니다.

sigmoid , tanh 함수는 입력값에 따라 도함수의 값이 변하고,

Relu , leaky Relu는 0을 기점으로 모양이 변하므로,

도함수의 값을 이용하여 매개변수를 수정하는 경사 하강법을 사용할 수 있게 되며,

신경망을 통한 학습이 의미 있는 결과를 가지게 해 줍니다.

총정리 :

선형 함수 (Linear function)활성화 함수(Activation funtion)으로 사용하면,

신경망을 거치는 의미가 사라지고 경사 하강법을 사용하지 못하게 된다.


 ++ 매개변수 w를 0으로 초기화하면 안 되는 이유

매개변수를 0으로 초기화 하면 안되는 이유

매개변수를 초기화할 때 , w, b의 값을 0으로 초기화하면,

(활성화 함수를 선형 함수로 사용할 때처럼) 신경망을 거쳐 학습을 하나 안 하나 결과가 같게 됩니다.

이러한 이유로,    매개변수를 초기화해줄 때, b 0으로 초기화해도 되지만 w0으로 초기화하면 안 됩니다.

w를 너무 크게하면 연산이 복잡해져서 , 0.01을 곱함

또한,  w 너무 크게 초기화해도 안되기에, 랜덤 값에 0.01을 곱해줍니다.

------> w의 값을 너무 크게 초기화하면,

도함수 값이 0에 가까워져서 학습의 의미가 퇴색되거나,

함숫값이 너무 커져서 학습 속도가 느려지게 되는 문제가 생깁니다.


이상으로, 3주 차 수업내용을 마쳤습니다, 다음 시간에는 3주 차 내용을 총정리하는 퀴즈를 풀어봅시다.

이 내용들은 모두 coursera에서 앤드루 응 교수님의 강의를 요약정리 및 쉽게 재 풀이하여 적은 글이며,

내용에는 생략되거나 변형된 부분이 많으니 직접 강의를 들어보시는 걸 추천드립니다!

이 글은 상업적 목적이 아닌, 한국에서 인공지능을 배우고 싶은 분들을 위해 적은 교육적 목적에서 작성하였습니다.

반응형