딥러닝 기초이론

[딥러닝 기초이론3] 인간의 신경계를 모티브로 한 인공신경망

컴퓨터비전 LCK 2024. 3. 6. 14:55

 

인공신경망의 구조

 

위 사진은 '딥러닝' 이라고 검색하면 가장 쉽게 볼 수 있는 이미지 중 하나이다.

 

이전 포스팅에서 인공지능이 어떻게 구현되는지를 설명했었는데, 그 계산 과정을 이러한 인공신경망으로 도식화 할 수 있다.

 

이 과정을 이해해보도록 하는 시간을 가져보도록 하겠다.

 

 

위 사진을 통해 사람의 뉴런이 신호를 전달하는 법을 알아보자. 

 

먼저 자극을 받아들이는 부분이 존재하고 그 자극을 전달하는 부분이 존재한다. 그 후 다시 해당 자극을 다른 뉴런의 수상돌기로 보낸다.

 

이를 우리가 실습했던 수면시간에 따라 피로도를 계산하는 메커니즘과 접목시켜 보면 다음과 같이 도식화된다.

 

 

 

x는 수면시간이고 y를 피로도라고 생각하면 실습에서 했던 내용과 같다는 것을 알 수 있다.

 

외부에서 들어오는 x는 데이터이다. 해당 데이터에 우리가 학습시켜 얻은 w값이 곱해지고 b와 더해져 z가 만들어진다.

 

후에 h(z)라는 활성 함수를 거쳐 최종 output인 y가 산출된다.(출력값은 모델에 따라 다른 뉴런의 인풋으로 들어가게 되기도 한다.)

 

우리의 예제에서는 활성함수가 없다. ( 입력값과 출력값이 동일하므로 h(z)=z 로 봐도 무방하다. )

 

인공신경망 모형으로는 이런 형태의 신경망이 생성된것이다.(활성함수와 b는 인공신경망 표현에서는 생략된다.)

 

더보기

          이해를 돕기 위해 두가지 특성에 영향을 받는 y의 예시를 첨부하였다.

y값을 예측하기 위해 고려하는 특성이 많아질수록 x의 개수는 늘어난다. 첫번째 층의 두께가 두꺼워진다고 볼 수 있다.

(컴퓨터 비전에서는 픽셀의 개수만큼의 인풋이 생긴다.)

 

 

 

이 그림 역시 2개의 input을 고려하여 1개의 output을 내는 인공신경망이다.

 

hidden layer는 설계자가 원하는 만큼 만들 수 있다. 그러나 무턱대고 많이 만들다가는 성능이 보다 저하되는 경우가 대부분이다.(그 이유는 과적합 가능성이 높아지기 때문인데 추후에 포스팅 하게 될 것 같다.)

 

 

지금까지 딥러닝 기초이론 1~2에서 실습했던 내용이 어떻게 인공신경망에서의 표현대로 도식화 되는지를 간략하게 알아보았다.

 

여기까지가 딥러닝으로 가는 기초스텝이라고 볼 수 있다. 이후에 응용되며 여러가지 모델을 만드는 기반이 되는 내용이기 때문에 딥러닝을 공부하는 중이라면 확실하게 알고 넘어갈 것을 권한다.