VVNN
Resnet 본문
layer가 많이, 깊이 쌓을 수록 성능이 좋아지는가? 그렇지 않았음.
오버피팅때문도 아니었고,, 모델이 깊어지면서 최적화optimization에서 문제가 생김 = 모델이 깊어질수록 gradient의 영향력이 감소함.
따라서 망을 무조건 깊게 하는게 능사가 아니었음을 알게 됨..
레이어가 깊어질수록 곱해지는 미분값이 증가하면서 초기값에 집중하지 못해 CNN의 효과가 떨어짐.
그래서 등장한 개념이 Residual(잔여의, 나머지의..) block
입력값을 출력값에 더해줄 수 있도록 지름길(shortcut)을 하나 만들어주는 것
기존 방식은 입력값 x에 타겟값 y로 매핑하는 함수 H(x)를 얻는게 목적이었음.
그러나 Resnet은 F(x) + x를 최소화하는 것을 목적으로 함.
x는 현 시점에서는 변할 수 없는 값이므로 F(x)를 0에 가깝게 만드는 것이 핵심이다.
F(x) = 0이 되면 출력과 입력이 모두 x로 같아지게 됨.
F(x) = H(x) - x이므로 F(x)를 최소화해준다는 것은 H(x) - x를 최소로 해주는 것과 같은 의미를 지닌다.
이때 H(x) - x를 잔차(Residual)이라고 한다. 이 Residual을 최소화해준다는 뜻으로 Resnet이라는 이름이 붙음.
기본적으로 VGG-19을 뼈대로 하고, Conv층을 추가해 깊게 만든 다음 shortcut을 추가한 구조를 갖고 있음.
'스터디' 카테고리의 다른 글
SISR - DeepLearning (0) | 2023.04.11 |
---|---|
Resnet의 변형 구조 (0) | 2023.03.15 |
Unity에서 HTC Vive Pro Eye 입력 매핑 (0) | 2022.07.29 |
Unity에 이미지 넣기 (0) | 2022.07.27 |
빛 관련 용어 (0) | 2022.05.02 |
Comments