Manduss life
[Deep Learning] CNN 특징 / 발전 요인 본문
CNN 특징
- 가중치 공유
- CNN은 가중치를 공유할 수 있어 매개변수를 효율적을 활용한다. 즉, 동일한 가중치 또는 매개변수로 다양한 특징을 추출한다.
- 자동 feature 추출
- feature 추출 단게를 여러개 둠으로써 CNN은 데이터셋에서 자동으로 특징 표현을 학습할 수 있다.
- 계층적 학습
- 여러 계층으로 구성된 CNN 구조 덕분에 저수준에서 고수준까지의 feature를 학습할 수 있다.
- 시각적, 공간적 상관관게 탐색 가능
- ex) 동영상 처리 작업
CNN의 발전 요인
- 경사 소실 문제를 극복하기 위한 활성화 함수, 손실 함수 사용
- 경사 소실 문제 : chain rule에 따르면, 손실 함수의 gradient 값은 각 계층의 gradient의 곱으로 나타내는데, 이 값들이 1보다 작으면, 0으로 수렴되어 매개변수의 값을 변경할 수 없어 학습 저해 문제가 있다.
- 매개 변수 최적화
- 단순한 SGD 대신에 ADAM과 같은 optimizer 발전되어 많이 사용됨
- Regularization(정칙화)
- L2 regularization 외에 dropout, batch normalization 적용
CNN의 발전 요인 - 아키텍처
- 공간 기반
- 다양한 커널 사이즈 사용하여 다양한 수준의 시각적 특징을 탐색하기 위함
- 깊이 기반
- 여러 층의 신경망, 계층 수를 사용
- 너비 기반
- 채널, feature map 개수, 또는 데이터로부터 추출된 feature의 개수를 입력 계층에서 출력 계층으로 이동할때 늘린다.
- 다중 경로 기반
- 직접 연결만 존재하는 것이 아닌, 계층간 숏컷 연결, 스킵 연결 등의 방식 사용
SGD
- 배치 크기가 1인 경사하강법 알고리즘.
- 랜덤하게 선택된 하나의 데이터에 의존하여 학습
'전산 > Deep Learning' 카테고리의 다른 글
[Deep Learning] VGG / GooLeNet (0) | 2023.02.20 |
---|---|
[Deep Learning] LeNet / AlexNet / Fine Tuning (0) | 2023.02.05 |
[DeepLearning] Dropout/커널 크기/train, inference시 auto gradient 설정 (0) | 2023.01.31 |
[Deep Learning] Softmax / layer 층을 여러 개 쌓는 이유 (0) | 2023.01.15 |
[Deep Learning] Generalization/Overfitting/Cross-validation (0) | 2023.01.11 |
Comments