내키는 대로 쓰는 글이라 두서가 없습니다.
활성화 함수란 무엇인가?
활성함수는 인공 신경망에서 입력을 변환하는 함수이다. ReLU, Sigmoid, tanh 함수 등이 대표적인 활성함수이다.
출처 : https://ko.wikipedia.org/wiki/%ED%99%9C%EC%84%B1%ED%95%A8%EC%88%98
위키백과에서는 신경망에서 입력을 변환하는 함수라고 정의를 하고 있다. 그렇다면 왜 입력을 변환해야 할까?
그 이유는 비선형성에 있다. 신경망에서 말하는 비선형성은 출력의 변화가 입력의 변화에 비례하지 않는 성질을 말한다.
쉽게 말하면 신경망의 출력이 입력의 상수인가 아닌가로 생각해도 괜찮을 것 같다.
그렇다면 왜 신경망에 비선형성이 필요한가는 간단한 논리연산인 AND, OR, XOR을 살펴보면 쉽게 이해가 가능하다.
신경망을 이용해 AND, OR, XOR 형태를 띄는 데이터를 분류한다고 가정해보자.

가장 먼저 AND 문제. 위 그림의 왼쪽과 같은 데이터가 있을 때 이를 색깔별로 분류하기 위해서는 오른쪽에 보이는 선분 한개면 충분하다.

OR 연산도 마찬가지로 선분 한개로 데이터들의 분류가 가능하다.

하지만 XOR 문제에 대해서는 직선 1개로 표현이 불가능하다.
이런 문제는 은닉층을 늘린다고 해도 해결이 되지 않는다. 비선형성이 확보되지 않은 상태에서 은닉층을 늘려봤자 선분의 길이만 달라지기 때문이다.
결국 이런 문제를 해결하기 위해서는 직선이 아닌 곡선 형태로 데이터를 분류할 수 있어야 한다.
결론
활성화 함수는 신경망의 비선형성 확보를 위해 사용한다.
다음글에서는 여러가지 형태의 활성함수에 대해서 정리하겠습니다.
'Deep Learning' 카테고리의 다른 글
[Deep Learning] 활성화 함수의 종류 (0) | 2022.11.07 |
---|