저는 아래의 해당 책을 통해 정리하였지만, 해당 책은 수식에 대한 설명 위주라서 서치해서 찾은 자료를 함께 정리하였습니다. 참고 바랍니다.🏃♀️
위 그림은 사람의 뇌 속에 있는 뉴런(Neuron)이다. 뉴런은 가장 작은 정보처리 단위로서 세포체(cell body), 수상돌기(dendrite) 축삭(axon)으로 구성된다. 세포체는 가장 간단한 연산을 담당, 수상돌기는 다른 뉴런으로부터 신호를 받고, 축삭은 처리 결과를 다른 뉴런에 전달한다.
위의 그림은 축삭이 화학물질을 이용하여 신호를 어떻게 전달하는지 설명한다. 뉴런은 망을 형성하므로 뉴런의 집합을 신경망(neural network) 이라고 하며, 인공 신경망이 등장한 이후에는 생물신경망(biological neural network)이라고도 한다.
1940년대 들어 생물신경망 연구자 중 일부가 신경망 동작을 인공적으로 모방하는 일에 관심을 두게 되었다. 조금 이따 다룰 퍼셉트론은 이렇게 탄생한 초창기 인공신경망 모델이다.
1960년대에는 신경망으로 모든 문제를 해결할 수 있는 것처럼 학계에 과장되었다. 하지만 1969년에 민스키와 페퍼트는 'Perceptrons'라는 저서에서 퍼셉트론의 한계를 수학적으로 입증하였다.
퍼셉트론은 선형 분류기에 불과하므로 XOR 분류도 못한다고 단정한 것이다. 이후 신경망에 대한 연구가 퇴조했지만, 꾸준히 연구는 지속되긴 했다.
1986년에는 루멜하트와 동료들이 은닉층을 가진 다층 퍼셉트론과 오류 역전파 알고리즘을 제시하였다.
이 신경망은 필기 숫자 인식과 같은 복잡한 분류 문제를 훌륭하게 해결할 수 있음이 입증되었고, 신경망은 분류를 포함하여 복잡한 문제 해결을 위해 널리 사용되는 도구가 되었다.
1990년대 들어 SVM이 신경망보다 좋은 성능을 보여 신경망이 SVM에 밀리게 되었지만, 딥러닝이 실현되어 다시 신경망이 기계 학습의 주류로 자리 잡았다.
신경망은 다른 방식의 어떤 기계 학습보다 모델이 다양하다. 여기서는 신경망을 세 가지 기준으로 나누어 살펴본다.
책에는 전방(feedforward) 신경망과 순환(recurrent) 신경망이라고 소개되어 있지만 그냥 feedforward neural network, RNN 등으로 더 많이 부른다.
feedforward neural network는 그림 3-2의 (a)를 참고하면 된다. 모든 계산이 왼쪽에서 오른쪽으로 진행된다. 반면, 오른쪽 그림의 recurrent neural network는 오른쪽에서 왼쪽으로 진행하는 피드백 계산도 포함한다.
퍼셉트론, 다층 퍼셉트론, 깊은 다층 퍼셉트론(DMLP), CNN은 모두 feedforward neural network에 속한다. RNN과 LSTM은 recurrent neural network에 속한다.
Shallow Neural Network는 얕은 신경망, Deep Neural Network 깊은 신경망이라고도 한다.
3-2(b)의 왼쪽 그림처럼 은닉층이 1~2개 정도인 신경망을 Shallow Neural Network이라고 하고, 오른쪽 그림처럼 더 많은 은닉층을 가진 신경망을 Deep Neural Network라고 한다.
하지만 이 두 개를 몇 개의 은닉층을 기준으로 나누지는 않는다. 두 신경망의 동작 원리와 학습 알고리즘은 공통점이 많다.
Deterministic Neural Network는 결정론 신경망, Stochastic Neural Network는 스토캐스틱 신경망이라 한다.
Deterministic Neural Network는 입력이 같으면 항상 같은 출력이 나온다. 계산식에 임의성이 전혀 없기 때문이다.
반면, Stochastic Neural Network는 계산식이 확률에 따른 난수를 사용하므로 입력이 같아도 매번 다른 출력만 나온다. RBM, DNB이 이에 속하고, 나머지는 Deterministic Neural Network이다. 이는 분류나 회귀 같은 예측만 할 수 있지만, Stochastic Neural Network는 예측뿐 아니라 유사한 패턴을 생성하는 능력을 부여하면 생성 모델로 사용할 수 있다.