사유하고 질문하라

Deep Learning 2020.05.06 댓글 개 PEB풍

[비전공자를 위한 딥러닝] Chapter 2. 싱글 인풋 뉴런

본 시리즈는 허민석 님의 유튜버 채널, 딥러닝 이론을 바탕으로 하고 있습니다.

 

앞서서 우리는 뇌의 뉴런 모습을 살펴보았고 뉴런을 코드로 구현해 봤습니다.  

자 그럼 이 코드가 어떻게 쓰이는지 슬슬 궁금하지 않나요?

 

결론부터 말씀드리면 

 

그림1. 3Blue1Brown에서 가져온 영상

 

위 그림과 같이 손글씨를 입력받으면 해당되는 숫자를 출력할 수 있습니다.

저 원 하나가 뉴런이고, 뉴런이 여러개 모여서 신경망을 만드는 것입니다.

지금으로써는 너무나도 어려워 보이네요...

 

그렇지만 앞으로 하나씩 살펴보면서 그림의 동작 원리를 살펴보려고 합니다.

이번 챕터에서는 싱글 인풋 뉴런에서 Activation function를 살펴보고,
bias가 존재할 때 과연 결과 값의 차이가 어떤지 볼 것입니다.

 

 

1. 싱글 인풋 뉴런

 

그림2. 싱글 인풋 뉴런

뇌에는 1000억 개의 뉴런이 있다고 합니다. 

그중에서 한 개의 뉴런을 보면, 위와 같은 그림이 됩니다. 

 

입력 신호가 뉴런에 가해지면 그 자극(pressure)에 대한 가중치(weight)가 부여됩니다. 

가중치는 자극에 곱해져서 활성화 함수(activation function)에 인자 값으로 들어갑니다. 

활성화 함수는 기댓값 이상일 경우에 높은 값을, 기대값 이하일 경우에 낮은 값을 출력합니다.

 

 

2. 활성화 함수(activation function)

 

Activation function의 함수를 조금 알아보고 갑시다.

 

그림3. Activation function의 종류들

 

위의 4가지 함수들이 대표적으로 있지만, 실제로는 더 많은 함수들이 존재한다고 합니다.

들어오는 신호의 값은 모든 실수가 될 수 있습니다.

또한 가중치가 곱해지면 다양한 숫자들이 존재하게 됩니다.

우리는 이 신호들을 0~1의 값으로 나타내려고 합니다.

 

여기서 문제를 한 번 풀어보겠습니다. 

 

그림4. 싱글 인풋 뉴런 Sign 함수

입력이 3이고 가중치가 1일 경우 activation은 1이 나옵니다.

그런데 만약 자극과 가중치가 모두 양수라고 가정할 때 -1이 출력이 될 수 있을까요?

현재로써는 무조건 1이 나오게 됩니다. 

 

 

3. 바이어스(bias)

그림5. 바이어스가 추가된 싱글 인풋 뉴런

 

bias란 activation function을 보다 쉽게 활용하기 위해서 추가된 입력입니다.

추가된 bias로 다양한 파라미터를 만들 수 있습니다.

그림 4를 그대로 가져와 bias = -5를 추가해 주면 net input은 -2가 되고 

f(-2) = -1 이 출력되게 됩니다.

 

 

정리하자면

 

1) 싱글 인풋 뉴런에서는 자극, 가중치가 활성화 함수에 들어간다.

2) 활성화 함수는 인자 값을 0~1 값으로 만들어준다.

3) activation 함수가 다양한 파라미터를 입력받을 수 있게 bias를 사용한다.

 

 

다음 챕터에서는 인풋이 두 개가 있는 경우에 대해서 알아볼 예정입니다.

인풋이 두 개일 경우 한 개인 경우보다 다양한 상황을 해석할 수 있을 것입니다.

'Deep Learning' 카테고리의 다른 글

[비전공자를 위한 딥러닝] Chapter 1. 딥러닝 이론  (0) 2020.05.05