2021 네이버 부스트캠프 - Ai tech

Week_2 딥러닝에서 비선형성이 중요한 이유

미미수 2021. 8. 12. 13:44

이전 시간에 다뤘던 MLP의 내용을 다시 떠올려봅니다!

Multi-Layer-Perceptron이란 여러층의 퍼셉트론으로 이루어진 신경망으로,

 

 

왼쪽은 퍼셉트론의 예시입니다.

어떤 신호를 입력받아 y라는 결과를 출력하는 흐름을 가지고 있습니다.

 

 

 

 

 

흔히, 딥러닝에서는 Activation Function을 사용하는게 중요하다고들 하는데, 활성화 함수가 뭐가 특별하기에 중요한걸까요?

cs231n_6 ☜ 활성화 함수 대한 정리

 

정답은 바로 비선형성에 있습니다!

 

1900년대 인공지능의 침체기를 야기한 영구미제(지금은 아님ㅎㅎ) XOR problem에 대해 알아보겠습니다.

 

x1, x2입력이 있을때, 출력값 y를 0과 1로 나누는 기준선을 찾고싶은데, w1x1 + w2x2 = y의 일반적인 선형회귀로는 찾을 수 없었습니다.

따라서 퍼셉트론을 여러개 쌓아보는 시도를 하게 됩니다.

 

 

하나의 hidden layer를 거친 입력값은 새로운 space로 맵핑됩니다. 그리고 그제서여 직선으로 분리가 가능해집니다.

이렇게 새로운 space에 맵핑해가는 식으로 XOR를 해결할 수 있었습니다.

 

여기서 여러개의 층도 중요하지만, 비선형성도 중요합니다.

 

복잡한 현상일수록 선형방정식으로 푸는건 불가능해집니다. 

가령 WX+b라는 선형식이 있을때, Wx+b도 W(Wx+b)+b도 W(W(Wx+b)+b)+b도 결과적으로는 선형식입니다. 

하하지만 여기에 W(f(Wx+b))+b처럼 활성화 함수를 끼워넣으면 더이상 선형식이 아니게 되고 더 풍부한 표현을 할 수 있게 됩니다.

 

 

결과적으로 결론은!

복잡한 모델을 근사하기 위해서는 단순히 선형 결합을 여러번 반복해서 되지 않는다.!
비선형 함수가 필요하다. (RELU, Sigmoid 등등)