딥러닝: 깊게 구성된 신경망
연구자들이 더 좋은 성능을 내는 딥네트워크를 만들기 위해서 다양한 방법을 적용
-> 사전학습된 네트워크(Pre-trained network)들은 Tensorflow나 PyTorch 등 프레임워크 차원에서 지원
2010년 ILSVRC2010를 시작으로 대량의 이미지 데이터를 포함하는 데이터셋. 1만 개가 넘는 카테고리에 대해 100만 장 규모의 이미지를 가지고 있음.
당시 모델들에 비해 레이어가 많이 생겼으며 MNIST에 CNN과 클래스가 많이 있는 네트워크. ReLU 활성화 함수와 드롭아웃(Dropout) 그리고 오버래핑 풀링(Overlapping pooling) 등이 적용.
간결한 구조로 현재까지도 많은 활용이 이루어지고 있음. 당시 다른 모델보다 레이어를 많이(깊게) 쌓음.
3x3 커널을 사용해서 더 많은 레이어를 쌓고 이미지의 비선형적 특성을 더 잘 잡아낼 수 있게 만듦.
우리 네트워크는 Gradient descent를 통해서 기울기를 학습하는데 깊은 레이어에는 데이터에 따른 차이가 충분하게 반영되지 못함.
이렇게 Gradient가 매우 작아져서 레이어를 학습시키기 위해 충분한 값을 표현하지 못할 경우를 Vanshing 했다고 하여 기울기 소실(경사소실, Vanishing Gradient) 이라고 함.
Vanishing 또는 Exploding Gradient의 문제가 발생하는 원인은, 레이어가 깊어지면서 Gradient가 매우 커지거나 작아지기 때문.
레이어의 가중치가 반복돼서 곱해지면, 1보다 작을 때에는 0에 너무 가까워져 버리고, 1보다 클 때에는 그 값이 기하급수적으로 커지게 됨.
ResNet은 레이어를 깊게 쌓으면서 생기는 Vanishing/Exploding Gradient 문제를 해결하기 위해 Skip Connection을 적용
Skip Connection은 레이어의 입력을 다른 곳에 이어서 Gradient가 깊은 곳까지 이어지도록 함.