‘딥러닝’이라는 단어를 한번쯤은 들어본 적 있을 것이다. 인공지능(AI)이 딥러닝을 통해 바둑도 잘 두게 되고, 자연언어도 처리하게 되는 건 알겠는데, 왜 ‘Deep’ 이라고 표현할까? 깊은 공부를 한다는 뜻인가?
정답은 ‘신경망 층이 깊어서’이다. 신경망 층이 깊다는 것은 무엇을 의미할까? 사람의 신경에 각종 정보를 전기신호로 전달하는 ‘뉴런’이 있듯이 AI 내부에도 정보를 입력 받아서 출력하는 단위인 ‘퍼셉트론(perceptron)’이 존재한다. 아래 사진과 같이 하나의 퍼셉트론은 여러 개의 입력층과 한 개의 출력층으로 이루어져 있다.

[JurafskyandMartin. SpeechandLanguageProcessing.(3rded.) ch7. p5.]
위의 사진에서는 선형 함수를 적용한 퍼셉트론의 예시를 보여주고 있다. 선형 함수란 함수식이 1차 함수로 표현되는 함수를 말한다. 위의 사진에서 화살표 위에 적혀 있는 숫자가 각각의 입력층(x_1, x_2, 1)에 적용되는 가중치를 의미한다. 입력층의 맨 끝에 1이 포함된 이유는 기계학습에 사용되는 편향(bias)라는 매개변수 때문이다. 원래는 가중치 행렬(일반적으로 W로 나타냄)과 편향을 따로 설정해야 하지만, 퍼셉트론 계산의 편의를 위해 입력층 단자에 1을 추가하고 가중치 행렬에 편향 값을 추가해준다.
따라서 위의 사진 (a)에서 편향 값은 -1이 된다. 이렇게 가중치와 편향이 정해진 후 (a)의 계산을 수행해보면 1∙x_1 1∙x_2 (-1)∙1 이 된다. 이렇게 입력된 정보에 정해진 함수를 적용하여 출력층에 전달하는 것이 퍼셉트론의 역할이다.
이 퍼셉트론으로 보다 정밀한 기계학습을 수행하기 위해 여러 개의 퍼셉트론을 사용하는데, 이때 바로 ‘층’이 생긴다. 보통 딥러닝에 사용되는 퍼셉트론은 10억 개 이상이다. 이들이 일정 단위로 묶여 하나의 층을 형성하고, 수행해야 하는 작업이 복잡해질수록 더 많은 퍼셉트론, 즉 더 많은 ‘층’을 필요로 한다. 따라서 많은 계산을 수행하여 원하는 값을 출력해내는 기계학습, ‘딥러닝’이 탄생하게 되는 것이다. 아래는 다층 퍼셉트론, 신경망의 예시이다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]