저스틴 존슨 교수님 강의 정리
8강 합성곱 신경망 아키텍처 5 - Others
이번 자료에서 핵심 주제로 아래의 5가지를 꼽았다.
- 신경망 아키텍처의 복잡도 비교
- ResNext
- 모바일 신경망
- 신경망 아키텍처 탐색법
- 신경망 아키텍처 정리
1. 다양한 신경망 아키텍처들의 복잡도 비교
- 이번에는 그 동안 배웠던 다양한 신경망 아키텍처들의 복잡도를 그래프를 통해서 살펴볼 수 있었습니다. 각 모델들의 학습 파라미터의 수가 모델의 크기, x축을 모델의 연상량, y축을 모델의 에러율로 하는 그래프로 가장 먼저 보았던 AlexNet 부터 VGG, GoogLeNet, ResNet 등과 추가로 인셉션 모듈과 ResNet을 결합한 Inception-v4 모델 까지 보면서 더 가벼우면서도 더 좋은 성능을 보이는 흐름을 전체적으로 살펴볼수 있습니다.
2. ResNeXt
- 이전 시간에 봤던 ResNet을 계층 순서를 바꾸면서 성능을 약간 더 개선 시킬수 있었지만, 기존의 병목 블록을 병렬화 시켜 개선시킨 모델인 ResNeXt에 대해서 살펴봤습니다. ResNet에서 병목 블록은 기본 블록의 앞 뒤에 커널의 크기가 작은 합성곱 계층을 추가 시킴으로서 연산량을 줄이고 더 깊게 만든 블록이었습니다.
하지만 ResNeXt에서는 이 병목 블록을 병목 블록과 동일한 연산량을 가지는 병렬 병목 블록들을 만들어 성능 개선을 할 수 있었습니다. 기존의 병목 블록을 병렬화 시키는 만큼 병목 통로 당 계산량은 줄었지만 전체적인 병렬 병목 블록의 계산은 동일하도록 채널 수를 조절한 덕분에 계산량이 늘어나지 않으면서 병렬 그룹을 많이 만들어 성능 향상에 기여시켰습니다.
3. MobileNet
- 지금까지 본 신경망들은 효율성을 고려해서 더 좋은 성능을 낼수 있도록 만든 아키텍쳐들이지만 저성능 디바이스나 모바일 환경에서 사용하기는 어려웠습니다. 그래서 정확도는 떨어지더라도 이런 한정된 자원의 임베디드 시스템에서도 가볍게 사용가능한 MobileNet과 ShuffleNet 같은 모델들이 나오게 되었습니다.
MobileNet은 기존 합성곱 블록을 깊이단위 분리 합성곱으로 바꾸어 쌓은 모델로 깊이단위 합성곱층과 점단위 합성곱층을 분리하여 연산량을 크게 줄일수있었습니다. 점단위 합성곱 계층의 경우 커널 크기가 1 x 1로 하여 소수 연산을 줄일수 있었고, 깊이 단위 합성곱층에서는 그룹합성곱으로 나누어 기존 합성곱층보다 연산량 1/C배 만큼 줄일 수 있었습니다. 이런 덕분에 기존의 합성곱 블록보다 가장 작은 경우 1/9가 될만큼 가볍게 만들 수가 있었어요.
4. 신경망 아키텍처 탐색
- 다음에 본 신경망 아키텍처는 신경망 아키텍처 탐색 모델로 신경망을 만드는 신경망 모델이라고 할수 있습니다. 이 모델은 컨트롤러라고 부르는 부모 신경망으로 자신 신경망을 생성하고 이 자식 신경망의 정확도를 비용으로 사용해 부모 신경망을 학습시키는 모델로 신경망을 만드는 신경망인 만큼 초기 모델은 한 단계 학습 시키는대만 800개의 GPU를 사용해서 28일이 걸릴 만큼 연산량이 많았으나 차후 연구를 통해 학습 속도를 빠르게 키울 수 있었습니다. 이 모델을 이용하여 자동적으로 탐색한 신경망 모델들은 기존의 방식으로 만든 신경망들보다 가볍고 뛰어난 성능을 보였습니다.
5. 신경망 아키텍처 정리
- 그 동안 배운 신경망 아키텍처에 대해서 정리를 하면 맨 초기 2012년 시행 착오를 통해 하이퍼 파라미터를 탐색하여 만든 AlexNet이 기존의 혼합 특징 기반 방법보다 우수한 성능을 보이면서 딥러닝이 크게 활성화 되기 시작하였습니다. 이후 더 시행착오를 거쳐 더 큰 모델, 더 좋은 성능을 보이는 ZFNet이 2013년도에 나왔습니다.
2014년도에는 시행 착오를 통해 하이퍼파라미터를 찾던것과 달리 설계 규칙을 통해 신경망 모델을 만드는 VGG모델과 효율성과 성능 두가지 목표를 잡기 위해 집중적 다운샘플링, 인셉션 모듈, 전역적 풀링 등의 기법을 활용한 GoogLeNet이 나왔으며,
배치 정규화가 나와 더 깊은 신경망을 만들 수 있었으나 제대로 학습이 되지 않는 문제를 개선하기 위해 스킵 커낵션을 활용한 ResNet이 나오면서 100층 넘어가는 신경망 모델이 나오기도 하였습니다. 이 외에 가벼운 환경에서 사용할수 있는 MobileNet과 ShuffleNet 등 많은 모델들이 나왔으며, 신경망을 만드는 신경망 아키텍처 NAS까지 기존의 사람이 만든 신경망보다 훨씬 뛰어난 성능의 모델을 찾을수가 있었습니다.
'번역 > 컴퓨터비전딥러닝' 카테고리의 다른 글
딥러닝비전 10. 신경망 학습하기 파트 1 - 2. 데이터 전처리 (0) | 2021.02.23 |
---|---|
딥러닝비전 10. 신경망 학습하기 파트 1 - 1. 활성화 함수 (0) | 2021.02.21 |
컴퓨터 비전과 딥러닝 관련 퀴즈 (0) | 2021.02.18 |
딥러닝비전 8. 합성곱 신경망 아키텍처 4 - ResNet (0) | 2021.02.14 |
딥러닝비전 8. 합성곱 신경망 아키텍처 3 - GoogLeNet (0) | 2021.02.14 |