딥러닝의 가장 기초적인 알고리즘인 인공신경망 (artificial neural network)에 대해서 정리한다.
Aritificial neural network는 feedforward Neural Network (FFNN) 이라고도 불린다.
본 내용은 다음의 블로그 내용을 적극 참조하고 있음.
딥러닝 알고리즘의 시작, 인공신경망(artificial neural network)
오늘은 딥러닝에서 가장 기초적인 알고리즘인 인공신경망(artificial neural network)에 대해서 다루도록 하겠습니다. 참고로 인공신경망은 피드포워드신경망(feedforward neural network)으로 불리기도 합니
bskyvision.com
뉴런과 뉴런은 시냅스를 통해 연결된다 [출처: https://commons.wikimedia.org/wiki/File:Axo-axonic_synapse.svg]
딥러닝의 핵심인 인공신경망은 사람 뇌의 피질 영역 (cortical area)의 형태를 본 뜬 것이다. 해당 피질 영역 내에는 수많은 뉴런들이 존재하고, 각각의 뉴런들은 시냅스를 통해 연결되어 있다.
인공신경망은 이러한 형태를 인공적으로 흉내낸 것이다.
인공신경망의 구조 [출처: https://commons.wikimedia.org/wiki/File:Artificial_neural_network.svg]
인공신경망은 input layer(입력층), hidden layer(은닉층) 그리고 output layer(출력층)으로 구성되어 있고, 은닉층은 필요에 따라 여러 층을 쌓을 수 있다. 각 층은 여러 개의 노드들로 구성되어 있고, 노드들은 위 그림과 같이 서로 연결되어 있다. 이 때, 한 노드와 다른 노드 사이의 연결되어 있는 정도를 weight (가중치) 라고 하는데, 가중치가 클 수록 서로 강하게 연결되어 있고, 가중치가 작을수록 서로 약하게 연결되어 있다고 본다. 초기 Weight는 랜덤한 값으로 설정되어 있으며, 이후 훈련과 학습을 통해 weight 값을 적절하게 형성해 나가는 것이 딥러닝의 학습이라고 볼 수 있다.
인공신경망은 기존의 SVM과 같은 머신러닝 알고리즘과 유사한 성능을 보이기도 하지만, 은닉층의 갯수가 많아지면 앞쪽에 있는 은닉층들의 가중치가 제대로 훈련되지 않는 등의 한계점도 보인다. 이를 gradient descend vanishing (경사감소소멸)이라고 부르며, 이러한 한계들을 극복하기 위해 대부분 많이 들어봤을 DBN (Deep Belief Network), SAE (Stacked Auto-encoder), CNN (Convolutional Neural Network) 등의 딥러닝 알고리즘들이 인공신경망을 기반으로 해서 나타났다.
'Artificial Intelligence > DL' 카테고리의 다른 글
[개념 정리] LeNet-5 (0) | 2021.01.05 |
---|---|
[개념 정리] AlexNet (0) | 2021.01.05 |