앞서 알아보았듯 인공지능의 발전은 영상 처리의 발전과 큰 연관성을 갖는다. 이제 영상 처리를 위해 신경망을 이용한 인공지능 알고리즘의 여러 종류를 알아보자.
1. 신인식기 / LeNet-5
1970년 후반, 허블과 비셀의 연구 결과로부터 감명을 받은 일본인 전자공학자 후쿠시마 구니히코(Fukushima Kunihiko)는 ‘신인식기’라 불리는 머신러닝 알고리즘에 대한 논문을 발표한다.[1] 이 알고리즘은 허블과 비셀의 연구를 인용하여, 생물학적 뉴런의 배열처럼 인공 뉴런을 계층적으로 정렬함으로 복잡하고 추상적 객체를 구분할 수 있음을 보였다.
이후, 얀 르쿤과 벤지오는 LeNet-5라는 신인식기보다 정확도와 효율성 면에서 큰 발전을 이룬 모델을 발표했다. 이 모델은 허블과 비셀의 연구와 후쿠시마 구니히코의 연구를 기반으로 하여, 모델을 구성하였다. 이때, 역전파 알고리즘의 개발과 모델의 훈련에 적합한 많은 데이터, 발전된 컴퓨팅 성능 등에 힘입어 많은 개선을 이루어 낼 수 있었다.
LeNet-5모델은 2개의 CNN Layer를 가지며, 각각의 레이어는 6개의 필터와 16개의 필터를 사용한다. 또한, 그 사이에 풀링 층을 첨가하여, 총 두번의 풀링을 진행하여 계산의 복잡도를 줄인다.
2. AlexNet / VGGNet
앞선 LeNet모델은 2개의 CNN Layer와 2개의 풀링층을 가졌는데, 일반적으로 합성곱 신경망에서는 1~3개의 CNN Layer와 1개의 풀링층을 하나의 그룹으로 묶는다. (이 그룹을 conv-pool 블록이라 표현하기도 한다.) 이 그룹을 여러 번 반복하는 형태로 모델을 구성하고, 마지막에 하나 이상의 Dense Layer와 출력층을 구성하여 모델을 완성한다.
2012년 딥러닝 혁신의 시발점이 된 컴퓨터 비전 대회의 우승 알고리즘인 AlexNet모델은 이와 같은 합성곱 층 블록 방식을 적용한 모델이다. 이 모델의 경우 앞쪽 CNN Layer(얕은 부분의 Layer)에 큰 크기의 필터를 사용하고, 모델의 과대적합을 막기 위해 모델 출력에 가까운 Dense Layer에만 드롭아웃을 사용한다. 큰 크기의 필터를 사용하므로 앞쪽 CNN Layer에서 훈련 데이터 이외에도 잘 일반화되는 공간 특성을 학습할 수 있게 한다. 이후, 밀집층에서 일어나는 특성의 재조합의 경우, 훈련 데이터 세트에 고유한 형태를 가지므로 잘 일반화가 일어나지 않을 수 있다. 이를 해결하기 위해, 모델 출력에 가까운 Dense Layer에서 드롭아웃을 적용하는 것이다.
이후 2014년 ILSVRC 대회 2위 입상 알고리즘인 VGGNet의 경우 AlexNet과 유사하게 여러 번 반복되는 conv-pool블록을 사용한다. 이때, 단순히 더 작은 커널 크기로 더 많은 연산을 수행하게 하므로, AlexNet에 비해 성능 향상을 이루어냈다.
VGGNet을 포함하여 AlexNet이후의 딥러닝 모델들은 신경망이 점점 더 깊어지고, 한 층의 커널 크기가 작아지는 경향을 갖게 됐다. 그러나 이는 심층 CNN의 최대 난제 중 하나인 그레이디언트 소멸 문제를 가져왔다. 이를 해결하기 위해, 잔차 네트워크가 도입되게 되었다.
3. 잔차 네트워크 - Residual Network (ResNet)
그레이디언트 소실 문제는 신경망 앞쪽 파라미터가 오차함수에서 멀리 떨어져 있기 때문에 발생한다. 역전파되는 오차의 크기가 너무 작아 파라미터가 유의미하게 갱신되지 못하기 때문이다. 이로 인해, 심층망의 깊이가 깊어질수록, 앞쪽 측의 훈련은 어려워진다.

이러한 형태의 잔차 모듈을 동일성 함수라고 한다. 이 형태의 모듈은 신경망의 오류를 줄이거나, 동일성 매핑을 수행하여 아무것도 하지 않는다. 즉, 이 경우의 잔차 연결은 모듈 안의 모든 함수를 건너 뛰는데, 이와 같은 잔차 연결을 스킵 연결(Skip connection)이라 표현하기도 한다.

결론적으로, 잔차 모듈과 스킵 연결을 적절히 배치하여 쌓는 것은 다양한 깊이를 가진 많은 얕은 신경망의 복잡한 조합을 만들어내는 것으로 생각할 수 있다. 이를 통해 역전파 알고리즘이 충분히 효율적으로 신경망들을 갱신 시키도록 할 수 있어 더 좋은 성능을 가지는 모델을 만들어낼 수 있다.
2015년 마이크로소프트 리서치에서 ILSVRC대회에 출품한 심층 잔차 네트워크 ResNet은 사람의 성능을 뛰어넘는 모습을 보여주며 그 대회에서 우승하였다. 이를 통해, 잔차 네트워크를 적절히 활용하면, 문제에 유용한 정보를 학습하지 못해도 추가된 층을 통해 성능이 감소하지 않으면서 더 깊은 구조를 구현할 수 있어 신경망의 성능을 한계치 까지 끌어올릴 수 있음이 증명되었다.
앞으로 딥러닝을 공부하며 각각의 모델들을 한번씩 구현해볼 것이다.
[1] Fukushima, K. (1980). ‘Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position.’, Biological Cynbernetics, 36, 193-202